diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index ad88136bf..ab2febf18 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -3937,6 +3937,7 @@ func CreateVendorStore(ctx *jxcontext.Context, storeID, vendorID int, payload ma DeliveryType: model.StoreDeliveryTypeByStore, PricePercentage: int16(utils.MustInterface2Int64(payload["pricePercentage"])), AutoPickup: 1, + DeliveryCompetition: 1, IsSync: 1, PricePercentagePack: payload["pricePercentagePack"].(string), } diff --git a/business/partner/purchase/jd/store.go b/business/partner/purchase/jd/store.go index a2871c041..111b53717 100644 --- a/business/partner/purchase/jd/store.go +++ b/business/partner/purchase/jd/store.go @@ -527,11 +527,6 @@ func (p *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri if vendorOrgCode == "" { return "", fmt.Errorf("平台账号必传!") } - place, err := dao.GetPlaceByCode(db, storeDetail.DistrictCode) - if err != nil { - return "", err - } - county := place.JdCode //营业时间1开始;传值规则:每30分钟加1,即00:00为0,00:30为1,以此类推,23:30为47,23:59为48 serviceTimeStart1, serviceTimeStart2, serviceTimeEnd1, serviceTimeEnd2 := 0, 0, 0, 0 @@ -562,7 +557,7 @@ func (p *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri Phone: storeDetail.Tel1, Mobile: storeDetail.Tel1, City: storeDetail.JdCityCode, - County: county, + County: storeDetail.JdCode, StationAddress: storeDetail.Address, Operator: vendorOrgCode, ServiceTimeStart1: serviceTimeStart1, diff --git a/business/partner/purchase/mtwm/callback.go b/business/partner/purchase/mtwm/callback.go index 213b68761..8d22c47f9 100644 --- a/business/partner/purchase/mtwm/callback.go +++ b/business/partner/purchase/mtwm/callback.go @@ -8,7 +8,7 @@ import ( func OnCallbackMsg(msg *mtwmapi.CallbackMsg) (response *mtwmapi.CallbackResponse) { if CurPurchaseHandler != nil { - if msg.Cmd == mtwmapi.MsgTypeStoreStatusChanged { + if msg.Cmd == mtwmapi.MsgTypeStoreStatusChanged || msg.Cmd == mtwmapi.MsgTypeStoreAuditStatusChanged { response = CurPurchaseHandler.onStoreStatusChanged(msg) } else if msg.Cmd == mtwmapi.MsgTypePrivateNumberDowngrade { response = CurPurchaseHandler.onNumberDowngrade(msg) diff --git a/business/partner/purchase/mtwm/store.go b/business/partner/purchase/mtwm/store.go index 3811b7a52..747841839 100644 --- a/business/partner/purchase/mtwm/store.go +++ b/business/partner/purchase/mtwm/store.go @@ -1,6 +1,7 @@ package mtwm import ( + "encoding/json" "errors" "fmt" "math" @@ -238,18 +239,48 @@ func (p *PurchaseHandler) RefreshAllStoresID(ctx *jxcontext.Context, parentTask func (p *PurchaseHandler) onStoreStatusChanged(msg *mtwmapi.CallbackMsg) (response *mtwmapi.CallbackResponse) { var err error - poiStatus := int(utils.Str2Int64(msg.FormData.Get("poi_status"))) vendorStoreID := msg.FormData.Get("app_poi_code") storeStatus := 0 - if poiStatus == mtwmapi.MsgPoiStatusOpened { - storeStatus = model.StoreStatusOpened - } else if poiStatus == mtwmapi.MsgPoiStatusClosed { - storeStatus = model.StoreStatusClosed - } else if poiStatus == mtwmapi.MsgPoiStatusOffline { - storeStatus = model.StoreStatusDisabled - } else { - storeStatus, err = p.GetStoreStatus(jxcontext.AdminCtx, "", 0, vendorStoreID) + if msg.Cmd == mtwmapi.MsgTypeStoreStatusChanged { + poiStatus := int(utils.Str2Int64(msg.FormData.Get("poi_status"))) + if poiStatus == mtwmapi.MsgPoiStatusOpened { + storeStatus = model.StoreStatusOpened + } else if poiStatus == mtwmapi.MsgPoiStatusClosed { + storeStatus = model.StoreStatusClosed + } else if poiStatus == mtwmapi.MsgPoiStatusOffline { + storeStatus = model.StoreStatusDisabled + } else { + storeStatus, err = p.GetStoreStatus(jxcontext.AdminCtx, "", 0, vendorStoreID) + } + } else if msg.Cmd == mtwmapi.MsgTypeStoreAuditStatusChanged { + auditDetails := []map[string]interface{}{} + auditDetail := msg.FormData.Get("audit_detail") + openFlag := false + openCount := 0 + closeFlag := false + if err = json.Unmarshal([]byte(auditDetail), &auditDetails); err == nil { + for _, v := range auditDetails { + if v["module_status"].(string) == "3" || v["module_status"].(string) == "5" || v["module_status"].(string) == "7" { + closeFlag = true + break + } + if v["module_status"].(string) == "6" { + openCount++ + } + } + if openCount == len(auditDetails) { + openFlag = true + } + if closeFlag { + storeStatus = model.StoreStatusDisabled + } else if openFlag { + storeStatus = model.StoreStatusOpened + } else { + storeStatus = model.StoreStatusClosed + } + } } + if err == nil { err = partner.CurStoreManager.OnStoreStatusChanged(vendorStoreID, model.VendorIDMTWM, storeStatus) } diff --git a/controllers/mtwm_callback.go b/controllers/mtwm_callback.go index 4bd0b4683..4d0c24ca4 100644 --- a/controllers/mtwm_callback.go +++ b/controllers/mtwm_callback.go @@ -75,3 +75,7 @@ func (c *MtwmController) StoreStatusChanged() { func (c *MtwmController) OrderFinishedPickup() { c.onCallbackMsg(mtwmapi.MsgTypeOrderFinishedPickup) } + +func (c *MtwmController) StoreAuditStatusChanged() { + c.onCallbackMsg(mtwmapi.MsgTypeStoreAuditStatusChanged) +}