- remove table elemeorder

This commit is contained in:
gazebo
2019-02-12 16:41:14 +08:00
parent 65000be3d0
commit 35db92c039
2 changed files with 54 additions and 69 deletions

View File

@@ -341,60 +341,60 @@ func TransferLegacyJdOrder(ctx *jxcontext.Context, isAsync, isContinueWhenError
}
func TransferLegacyElmOrder(ctx *jxcontext.Context, isAsync, isContinueWhenError bool) (hint string, err error) {
sqlBatchCount := 1000
rootTask := tasksch.NewSeqTask("TransferLegacyElmOrder", ctx.GetUserName(), func(rootTask *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
sql := `
SELECT t1.*
FROM elemeorder t1
LEFT JOIN goods_order_original t2 ON t2.vendor_order_id = t1.orderid
WHERE t2.id IS NULL AND LENGTH(t1.data) > 10
ORDER BY t1.order_created_at
LIMIT ?
`
db := dao.GetDB()
var elmOrderList []*legacymodel2.Elemeorder
if err = dao.GetRows(db, &elmOrderList, sql, sqlBatchCount); err != nil {
return "", err
}
if len(elmOrderList) > 0 {
task := tasksch.NewParallelTask("TransferLegacyElmOrder2", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError).SetBatchSize(40), ctx.GetUserName(), func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
var orderDetailList []*model.GoodsOrderOriginal
for _, v := range batchItemList {
elmOrder := v.(*legacymodel2.Elemeorder)
if len(elmOrder.Data) > 10 {
var detail map[string]interface{}
if err = utils.UnmarshalUseNumber([]byte(strings.Replace(strings.Replace(elmOrder.Data, "\n", "", -1), "\r", "", -1)), &detail); err != nil {
return nil, err
}
orderDetail := &model.GoodsOrderOriginal{
VendorOrderID: elmOrder.Orderid,
VendorID: model.VendorIDELM,
AccountNo: "fakeelm",
OrderCreatedAt: utils.Str2Time(detail["activeAt"].(string)),
OriginalData: elmOrder.Data,
}
orderDetailList = append(orderDetailList, orderDetail)
}
}
if len(orderDetailList) > 0 {
err = dao.CreateMultiEntities(db, orderDetailList)
}
return nil, err
}, elmOrderList)
// rootTask.AddChild(task).Run()
task.Run()
_, err = task.GetResult(0)
} else {
rootTask.Cancel()
}
return nil, err
}, math.MaxInt32)
tasksch.ManageTask(rootTask).Run()
if !isAsync {
_, err = rootTask.GetResult(0)
} else {
hint = rootTask.ID
}
// sqlBatchCount := 1000
// rootTask := tasksch.NewSeqTask("TransferLegacyElmOrder", ctx.GetUserName(), func(rootTask *tasksch.SeqTask, step int, params ...interface{}) (result interface{}, err error) {
// sql := `
// SELECT t1.*
// FROM elemeorder t1
// LEFT JOIN goods_order_original t2 ON t2.vendor_order_id = t1.orderid
// WHERE t2.id IS NULL AND LENGTH(t1.data) > 10
// ORDER BY t1.order_created_at
// LIMIT ?
// `
// db := dao.GetDB()
// var elmOrderList []*legacymodel2.Elemeorder
// if err = dao.GetRows(db, &elmOrderList, sql, sqlBatchCount); err != nil {
// return "", err
// }
// if len(elmOrderList) > 0 {
// task := tasksch.NewParallelTask("TransferLegacyElmOrder2", tasksch.NewParallelConfig().SetIsContinueWhenError(isContinueWhenError).SetBatchSize(40), ctx.GetUserName(), func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
// var orderDetailList []*model.GoodsOrderOriginal
// for _, v := range batchItemList {
// elmOrder := v.(*legacymodel2.Elemeorder)
// if len(elmOrder.Data) > 10 {
// var detail map[string]interface{}
// if err = utils.UnmarshalUseNumber([]byte(strings.Replace(strings.Replace(elmOrder.Data, "\n", "", -1), "\r", "", -1)), &detail); err != nil {
// return nil, err
// }
// orderDetail := &model.GoodsOrderOriginal{
// VendorOrderID: elmOrder.Orderid,
// VendorID: model.VendorIDELM,
// AccountNo: "fakeelm",
// OrderCreatedAt: utils.Str2Time(detail["activeAt"].(string)),
// OriginalData: elmOrder.Data,
// }
// orderDetailList = append(orderDetailList, orderDetail)
// }
// }
// if len(orderDetailList) > 0 {
// err = dao.CreateMultiEntities(db, orderDetailList)
// }
// return nil, err
// }, elmOrderList)
// // rootTask.AddChild(task).Run()
// task.Run()
// _, err = task.GetResult(0)
// } else {
// rootTask.Cancel()
// }
// return nil, err
// }, math.MaxInt32)
// tasksch.ManageTask(rootTask).Run()
// if !isAsync {
// _, err = rootTask.GetResult(0)
// } else {
// hint = rootTask.ID
// }
return hint, err
}

View File

@@ -1,15 +0,0 @@
package legacymodel2
type Elemeorder struct {
Id int `orm:"column(id);auto"`
Orderid string `orm:"column(orderid);size(50);null;unique"`
Data string `orm:"column(data);null"`
Type int `orm:"column(type);null"`
Consignee string `orm:"column(consignee);size(32)"`
Mobile string `orm:"column(mobile);size(32)"`
OrderCreatedAt string `orm:"column(order_created_at);size(50);index"`
}
func (t *Elemeorder) TableName() string {
return "elemeorder"
}