- write JdID when after create sku on jd successfully.

This commit is contained in:
gazebo
2018-09-14 11:58:09 +08:00
parent f45698e89b
commit 87ddd8aa52
2 changed files with 10 additions and 7 deletions

View File

@@ -50,8 +50,8 @@ func (v *VendorSync) SyncStore(db *dao.DaoDB, vendorID int, store *model.Store,
if db == nil {
db = dao.GetDB()
}
var storeMapList []*model.StoreMap
if err = dao.GetEntities(db, &storeMapList, utils.Params2Map(model.FieldStoreID, store.ID), true); err == nil {
storeMapList, err := v.GetStoreMapInfo(db, store.ID)
if err == nil {
copiedStore := *store
for _, storeMap := range storeMapList {
if (vendorID == -1 || vendorID == storeMap.VendorID) && (isForce || storeMap.SyncStatus != 0) { // 对于门店,当前只有修改标记
@@ -81,8 +81,10 @@ func (v *VendorSync) SyncSku(db *dao.DaoDB, nameID, skuID int, isForce bool, use
if err = dao.GetEntities(db, &skuList, cond, true); err == nil {
for _, sku := range skuList {
if (skuID == -1 || skuID == sku.ID) && (isForce || sku.JdSyncStatus != 0) {
updateFields := []string{model.FieldJdSyncStatus}
if sku.JdSyncStatus&model.SyncFlagDeletedMask != 0 { // 删除
err = GetPurchaseHandler(model.VendorIDJD).CreateSku(sku, userName)
updateFields = append(updateFields, model.FieldJdID)
} else if sku.JdSyncStatus&model.SyncFlagNewMask != 0 { // 新增
err = GetPurchaseHandler(model.VendorIDJD).DeleteSku(sku, userName)
} else if sku.JdSyncStatus&model.SyncFlagModifiedMask != 0 { // 修改
@@ -90,7 +92,7 @@ func (v *VendorSync) SyncSku(db *dao.DaoDB, nameID, skuID int, isForce bool, use
}
if err == nil {
sku.JdSyncStatus = 0
dao.UpdateEntity(db, sku, model.FieldJdSyncStatus)
dao.UpdateEntity(db, sku, updateFields...)
}
}
}
@@ -99,7 +101,7 @@ func (v *VendorSync) SyncSku(db *dao.DaoDB, nameID, skuID int, isForce bool, use
}
func (v *VendorSync) SyncStoreSku(db *dao.DaoDB, storeID int, skuIDs []int, isForce bool, userName string) (err error) {
storeMapList := v.GetStoreMapInfo(db, storeID)
storeMapList, err := v.GetStoreMapInfo(db, storeID)
var skuNamesInfo *StoreSkuNamesInfo
if skuNamesInfo, err = GetStoreSkus(storeID, "", utils.Params2Map("skuID", skuIDs), 0, 10000); err == nil {
if skuNamesInfo.TotalCount != len(skuNamesInfo.SkuNames) {
@@ -122,7 +124,6 @@ func (v *VendorSync) SyncStoreSku2JD(db *dao.DaoDB, skuInfoList []*StoreSkuNameE
return err
}
func (v *VendorSync) GetStoreMapInfo(db *dao.DaoDB, storeID int) (storeMapList []*model.StoreMap) {
dao.GetEntities(db, &storeMapList, utils.Params2Map(model.FieldStoreID, storeID), false)
return storeMapList
func (v *VendorSync) GetStoreMapInfo(db *dao.DaoDB, storeID int) (storeMapList []*model.StoreMap, err error) {
return storeMapList, dao.GetEntities(db, &storeMapList, utils.Params2Map(model.FieldStoreID, storeID), true)
}

View File

@@ -22,6 +22,8 @@ const (
FieldVendorStoreID = "VendorStoreID"
FieldNameID = "NameID"
FieldPlaceCode = "PlaceCode"
FieldJdID = "JdID"
)
type ModelIDCUL struct {