微商城订单会自动上架商品
This commit is contained in:
@@ -46,6 +46,7 @@ func onOrderMsg(msg *weimobapi.CallbackMsg) (response *weimobapi.CallbackRespons
|
|||||||
func changeStoreSkusByOrder(order *weimobapi.OrderDetail) {
|
func changeStoreSkusByOrder(order *weimobapi.OrderDetail) {
|
||||||
globals.SugarLogger.Debugf("changeStoreSkusByOrder order:%s", utils.Format4Output(order, true))
|
globals.SugarLogger.Debugf("changeStoreSkusByOrder order:%s", utils.Format4Output(order, true))
|
||||||
receiverMobile := order.DeliveryDetail.LogisticsDeliveryDetail.ReceiverMobile
|
receiverMobile := order.DeliveryDetail.LogisticsDeliveryDetail.ReceiverMobile
|
||||||
|
ctx := jxcontext.NewWithUserName(nil, utils.LimitStringLen(utils.Int64ToStr(order.OrderNo), 32), nil, nil)
|
||||||
if storeList, err := GetStoreList4Mobile(dao.GetDB(), []string{receiverMobile}); err == nil {
|
if storeList, err := GetStoreList4Mobile(dao.GetDB(), []string{receiverMobile}); err == nil {
|
||||||
if len(storeList) >= 1 {
|
if len(storeList) >= 1 {
|
||||||
var skuBindInfos []*cms.StoreSkuBindInfo
|
var skuBindInfos []*cms.StoreSkuBindInfo
|
||||||
@@ -63,19 +64,41 @@ func changeStoreSkusByOrder(order *weimobapi.OrderDetail) {
|
|||||||
IsSale: 1,
|
IsSale: 1,
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
globals.SugarLogger.Infof("[运营],微商城订单:%s,商品:%s没有设置正确的SkuName编码或单价,当前商家编码:%s,市场价:%s", order.OrderNo, v.SkuNum, v.SkuCode, jxutils.IntPrice2StandardString(jxutils.StandardPrice2Int(unitPrice)))
|
globals.SugarLogger.Infof("[运营],微商城订单:%d,商品:%s没有设置正确的SkuName编码或单价,当前商家编码:%s,市场价:%s", order.OrderNo, v.SkuNum, v.SkuCode, jxutils.IntPrice2StandardString(jxutils.StandardPrice2Int(unitPrice)))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if len(skuBindInfos) > 0 {
|
if len(skuBindInfos) > 0 {
|
||||||
cms.UpdateStoreSkus(jxcontext.NewWithUserName(nil, utils.LimitStringLen(utils.Int64ToStr(order.OrderNo), 32), nil, nil), storeID, skuBindInfos, true, true)
|
var nameIDs []int
|
||||||
|
for _, v := range skuBindInfos {
|
||||||
|
nameIDs = append(nameIDs, v.NameID)
|
||||||
|
}
|
||||||
|
if skuNamesInfo, err := cms.GetSkuNames(ctx, "", false, map[string]interface{}{
|
||||||
|
"nameIDs": nameIDs,
|
||||||
|
}, 0, 0); err == nil {
|
||||||
|
for _, skuName := range skuNamesInfo.SkuNames {
|
||||||
|
if skuName.Status != model.SkuStatusNormal {
|
||||||
|
cms.UpdateSkuName(ctx, skuName.ID, map[string]interface{}{
|
||||||
|
"status": model.SkuStatusNormal,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
for _, sku := range skuName.Skus {
|
||||||
|
if sku.Status != model.SkuStatusNormal {
|
||||||
|
cms.UpdateSku(ctx, sku.ID, map[string]interface{}{
|
||||||
|
"status": model.SkuStatusNormal,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
cms.UpdateStoreSkus(ctx, storeID, skuBindInfos, true, true)
|
||||||
} else {
|
} else {
|
||||||
globals.SugarLogger.Debugf("changeStoreSkusByOrder storeID:%d is empty", storeID)
|
globals.SugarLogger.Debugf("changeStoreSkusByOrder orderID:%d, storeID:%d is empty", order.OrderNo, storeID)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
globals.SugarLogger.Infof("[运营],微商城订单:%s,手机:%s找不到唯一一个京西门店%d", order.OrderNo, receiverMobile, len(storeList))
|
globals.SugarLogger.Infof("[运营],微商城订单:%d,手机:%s找不到唯一一个京西门店%d", order.OrderNo, receiverMobile, len(storeList))
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
globals.SugarLogger.Warnf("changeStoreSkusByOrder receiverMobile:%s failed with err:%v", receiverMobile, err)
|
globals.SugarLogger.Warnf("changeStoreSkusByOrder orderNo:%d, receiverMobile:%s failed with err:%v", order.OrderNo, receiverMobile, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,10 +15,10 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/mobile"
|
"git.rosy.net.cn/jx-callback/business/auth2/authprovider/mobile"
|
||||||
"git.rosy.net.cn/jx-callback/business/authz/autils"
|
"git.rosy.net.cn/jx-callback/business/authz/autils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/msg"
|
|
||||||
"git.rosy.net.cn/jx-callback/business/partner"
|
"git.rosy.net.cn/jx-callback/business/partner"
|
||||||
|
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/jxutils/ddmsg"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
"git.rosy.net.cn/jx-callback/business/jxutils/jxcontext"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
"git.rosy.net.cn/jx-callback/business/jxutils/tasksch"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
@@ -180,7 +180,7 @@ func SendMsg2Somebody(ctx *jxcontext.Context, mobileNum, verifyCode, msgType, ms
|
|||||||
for _, v := range receiveMsgUsersMap[msgType] {
|
for _, v := range receiveMsgUsersMap[msgType] {
|
||||||
user, err2 := dao.GetUserByID(db, "name", v)
|
user, err2 := dao.GetUserByID(db, "name", v)
|
||||||
if err2 == nil {
|
if err2 == nil {
|
||||||
msg.SendUserMessage(dingdingapi.MsgTyeText, user, msgType, msgContent)
|
ddmsg.SendUserMessage(dingdingapi.MsgTyeText, user.GetID(), msgType, msgContent)
|
||||||
} else if err == nil {
|
} else if err == nil {
|
||||||
err = err2
|
err = err2
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -651,7 +651,8 @@ func AddSkuName(ctx *jxcontext.Context, skuNameExt *model.SkuNameExt, userName s
|
|||||||
return outSkuNameExt, err
|
return outSkuNameExt, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interface{}, userName string) (num int64, err error) {
|
func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interface{}) (num int64, err error) {
|
||||||
|
userName := ctx.GetUserName()
|
||||||
skuName := &model.SkuName{}
|
skuName := &model.SkuName{}
|
||||||
skuName.ID = nameID
|
skuName.ID = nameID
|
||||||
db := dao.GetDB()
|
db := dao.GetDB()
|
||||||
@@ -853,7 +854,8 @@ func AddSku(ctx *jxcontext.Context, nameID int, sku *model.Sku, userName string)
|
|||||||
return outSkuNameExt, err
|
return outSkuNameExt, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func UpdateSku(ctx *jxcontext.Context, skuID int, payload map[string]interface{}, userName string) (num int64, err error) {
|
func UpdateSku(ctx *jxcontext.Context, skuID int, payload map[string]interface{}) (num int64, err error) {
|
||||||
|
userName := ctx.GetUserName()
|
||||||
sku := &model.Sku{}
|
sku := &model.Sku{}
|
||||||
sku.ID = skuID
|
sku.ID = skuID
|
||||||
db := dao.GetDB()
|
db := dao.GetDB()
|
||||||
|
|||||||
@@ -577,7 +577,7 @@ func DeleteWrongSpu(ctx *jxcontext.Context, isAsync, isContinueWhenError bool) (
|
|||||||
mapData := map[string]interface{}{
|
mapData := map[string]interface{}{
|
||||||
"name": skuNameList[step].Name,
|
"name": skuNameList[step].Name,
|
||||||
}
|
}
|
||||||
_, err = cms.UpdateSkuName(ctx, skuNameList[step].ID, mapData, ctx.GetUserName())
|
_, err = cms.UpdateSkuName(ctx, skuNameList[step].ID, mapData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("DeleteWrongSpu failed nameid:%d, name:%s, with error:%v", skuNameList[step].ID, skuNameList[step].Name, err)
|
globals.SugarLogger.Debugf("DeleteWrongSpu failed nameid:%d, name:%s, with error:%v", skuNameList[step].ID, skuNameList[step].Name, err)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,8 +14,6 @@ import (
|
|||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
)
|
)
|
||||||
|
|
||||||
const weixinTemplateID4StoreStatusChanged = "Fl0vOnBKTQqRFx3-shGKxdCnxMdQXNeODzgkuwd7oxw"
|
|
||||||
|
|
||||||
// todo msgType不依赖于钉钉
|
// todo msgType不依赖于钉钉
|
||||||
func SendUserMessage(msgType string, user *model.User, title, content string) (err error) {
|
func SendUserMessage(msgType string, user *model.User, title, content string) (err error) {
|
||||||
userID := user.GetID()
|
userID := user.GetID()
|
||||||
|
|||||||
@@ -191,7 +191,7 @@ func (c *SkuController) UpdateSkuName() {
|
|||||||
// dummySkuName := &model.SkuName{}
|
// dummySkuName := &model.SkuName{}
|
||||||
payload := make(map[string]interface{})
|
payload := make(map[string]interface{})
|
||||||
if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil {
|
if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil {
|
||||||
retVal, err = cms.UpdateSkuName(params.Ctx, params.NameID, payload, params.Ctx.GetUserName())
|
retVal, err = cms.UpdateSkuName(params.Ctx, params.NameID, payload)
|
||||||
}
|
}
|
||||||
return retVal, "", err
|
return retVal, "", err
|
||||||
})
|
})
|
||||||
@@ -241,7 +241,7 @@ func (c *SkuController) UpdateSku() {
|
|||||||
c.callUpdateSku(func(params *tSkuUpdateSkuParams) (retVal interface{}, errCode string, err error) {
|
c.callUpdateSku(func(params *tSkuUpdateSkuParams) (retVal interface{}, errCode string, err error) {
|
||||||
payload := make(map[string]interface{})
|
payload := make(map[string]interface{})
|
||||||
if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil {
|
if err = utils.UnmarshalUseNumber([]byte(params.Payload), &payload); err == nil {
|
||||||
retVal, err = cms.UpdateSku(params.Ctx, params.SkuID, payload, params.Ctx.GetUserName())
|
retVal, err = cms.UpdateSku(params.Ctx, params.SkuID, payload)
|
||||||
}
|
}
|
||||||
return retVal, "", err
|
return retVal, "", err
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user