This commit is contained in:
richboo111
2023-06-28 11:38:41 +08:00
parent d3d0ff2fe8
commit baf80e3e9b
4 changed files with 269 additions and 62 deletions

View File

@@ -14,6 +14,8 @@ import (
"strings"
"time"
"git.rosy.net.cn/baseapi/platformapi/tao_vegetable"
"git.rosy.net.cn/jx-callback/business/partner/purchase/mtwm"
warehouse_getFences_response "git.rosy.net.cn/baseapi/platformapi/tiktok_shop/sdk-golang/api/warehouse_getFences/response"
@@ -6321,6 +6323,84 @@ func BatchUpdateMTStoreLogos(vendorOrgCode string, relInfo []MtRelInfo) (hint st
return ""
}
type TaoBindInfo struct {
VendorStoreID string `json:"vendorStoreID"`
VendorStoreName string `json:"vendorStoreName"`
Status string `json:"status"` //渠道营业状态
}
var TaoStoreStatus = map[string]int{
tao_vegetable.StoreOnlineWord: model.StoreStatusOpened,
tao_vegetable.StoreOfflineWord: model.StoreStatusClosed,
}
// SingleBindTaoVegetable 单独绑定淘鲜达平台三方映射
func SingleBindTaoVegetable(ctx *jxcontext.Context, bind []TaoBindInfo) (error, string) {
var (
storeID = ""
db *dao.DaoDB
errList errlist.ErrList
errIDName = make([]string, 0)
storeMaps = make([]model.StoreMap, 0)
)
if len(bind) == 0 {
return fmt.Errorf("绑定门店数据为空,请检查"), ""
}
for _, v := range bind {
if len(v.VendorStoreID) == 0 || len(v.VendorStoreName) == 0 {
errIDName = append(errIDName, v.VendorStoreID)
//errList.AddErr(fmt.Errorf("门店%s Id/名字不合法", v.VendorStoreID))
} else {
if strings.Contains(v.VendorStoreID, "X") {
temp := strings.Split(v.VendorStoreID, "X")
storeID = temp[1]
} else {
return fmt.Errorf("淘鲜达门店ID不合法"), ""
}
}
storeMap := model.StoreMap{
StoreID: utils.Str2Int(storeID),
VendorID: model.VendorIDTaoVegetable,
VendorOrgCode: "",
Status: TaoStoreStatus[v.Status],
DeliveryType: model.StoreDeliveryTypeByStore,
SyncStatus: 0,
VendorStoreName: v.VendorStoreName,
MtwmToken: "",
MtwmRefreshToken: "",
VendorStoreID: v.VendorStoreID,
}
storeMaps = append(storeMaps, storeMap)
}
userName := ctx.GetUserName()
for _, k := range storeMaps {
dao.WrapAddIDCULDEntity(k, userName)
if db == nil {
db = dao.GetDB()
}
txDB, _ := dao.Begin(db)
defer func() {
if r := recover(); r != nil {
dao.Rollback(db, txDB)
panic(r)
}
}()
if err := dao.CreateEntity(db, k); err == nil {
errList.AddErr(fmt.Errorf("%s:%v", k.VendorStoreID, err))
dao.Commit(db, txDB)
} else {
dao.Rollback(db, txDB)
}
}
if len(errIDName) > 0 {
errList.AddErr(fmt.Errorf("门店%s Id/名字不合法", errIDName))
}
if errList.GetErrListAsOne() != nil {
return nil, fmt.Sprintf("批量绑定淘鲜达门店错误:%v", errList.GetErrListAsOne())
}
return nil, ""
}
//操作 freight_template
func ReplaceInsertFreight(storeID, templateID, warehouseID, tradeLimitID int, vendorStoreID, fenceID string) error {
return dao.ReplaceInsertFreight2(storeID, templateID, warehouseID, tradeLimitID, vendorStoreID, fenceID)