Merge branch 'jdshop' of e.coding.net:rosydev/jx-callback into jdshop

This commit is contained in:
邹宗楠
2022-10-27 14:13:36 +08:00

View File

@@ -89,10 +89,12 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
ShopBatchCreateStoreParam *shop_batchCreateStore_request.ShopBatchCreateStoreParam ShopBatchCreateStoreParam *shop_batchCreateStore_request.ShopBatchCreateStoreParam
FreightTemplate = &model.FreightTemplate{} FreightTemplate = &model.FreightTemplate{}
errList = errlist.New() errList = errlist.New()
timeStr = ""
m = make(map[int64]string)
) )
//增加绑定门店操作
a := getAPI(storeDetail.VendorOrgCode, storeID, storeDetail.VendorStoreID) a := getAPI(storeDetail.VendorOrgCode, storeID, storeDetail.VendorStoreID)
timeStr := ""
m := make(map[int64]string)
if storeDetail.OpenTime1 == 0 || storeDetail.CloseTime1 == 0 { if storeDetail.OpenTime1 == 0 || storeDetail.CloseTime1 == 0 {
return "", fmt.Errorf("营业时间必填") return "", fmt.Errorf("营业时间必填")
} else { } else {
@@ -133,6 +135,8 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
return "", errors.New(fmt.Sprintf("创建店铺失败,storeIDs = 0:%v,%v", err, resp.ResultList[0].Msg)) return "", errors.New(fmt.Sprintf("创建店铺失败,storeIDs = 0:%v,%v", err, resp.ResultList[0].Msg))
} }
//创建并绑定运费模板 //创建并绑定运费模板
//先获取是否已绑定
//if bindFenceIDs,err:=GetStoreFreight(storeDetail.VendorOrgCode,storeDetail.Store.ID)
if freightTemplateID, err := CreateFreightTemplate(storeDetail.Store.ID); err != nil { if freightTemplateID, err := CreateFreightTemplate(storeDetail.Store.ID); err != nil {
errList.AddErr(fmt.Errorf("创建运费模板失败:%v", err)) errList.AddErr(fmt.Errorf("创建运费模板失败:%v", err))
} else { } else {
@@ -140,7 +144,7 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
errList.AddErr(fmt.Errorf("创建运费模板失败:%v", err)) errList.AddErr(fmt.Errorf("创建运费模板失败:%v", err))
} else { } else {
if err = ShopBindStoreFreight(storeDetail.VendorOrgCode, int64(storeDetail.Store.ID), freightTemplateID); err != nil { if err = ShopBindStoreFreight(storeDetail.VendorOrgCode, int64(storeDetail.Store.ID), freightTemplateID); err != nil {
errList.AddErr(fmt.Errorf("本地门店:%d 绑定运费模板:%d失败%v", int64(storeDetail.Store.ID), freightTemplateID, err)) errList.AddErr(fmt.Errorf("本地门店:%d 绑定运费模板:%d 失败:%v", int64(storeDetail.Store.ID), freightTemplateID, err))
} else { } else {
FreightTemplate.TemplateID = freightTemplateID FreightTemplate.TemplateID = freightTemplateID
if err = dao.CreateEntity(db, FreightTemplate); err != nil { if err = dao.CreateEntity(db, FreightTemplate); err != nil {
@@ -249,7 +253,7 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
params := &shop_editStore_request.ShopEditStoreParam{ params := &shop_editStore_request.ShopEditStoreParam{
StoreId: remoteStoreInfo.StoreDetail.Store.StoreId, //平台id不可修改 StoreId: remoteStoreInfo.StoreDetail.Store.StoreId, //平台id不可修改
Name: name, Name: name,
StoreCode: utils.Int2Str(storeInfo.ID), //自用编码即本地storeID StoreCode: utils.Int2Str(storeInfo.ID), //自用编码即本地storeID
Latitude: utils.Int2Str(storeInfo.Lat), Latitude: utils.Int2Str(storeInfo.Lat),
Longitude: utils.Int2Str(storeInfo.Lng), Longitude: utils.Int2Str(storeInfo.Lng),
Province: storeInfo.ProvinceName, Province: storeInfo.ProvinceName,
@@ -390,31 +394,34 @@ func CreateFreightTemplate(storeCode int) (int64, error) {
func UpdateFreightTemplate(storeCode int) error { func UpdateFreightTemplate(storeCode int) error {
var ( var (
columns []freightTemplate_update_request.ColumnsItem columns []freightTemplate_update_request.ColumnsItem
param *freightTemplate_update_request.FreightTemplateUpdateParam
) )
//获取本地门店信息 //获取本地门店信息
storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeCode, model.VendorIDDD, "") storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeCode, model.VendorIDDD, "")
if err != nil { if err != nil {
return err return err
} }
column := freightTemplate_update_request.ColumnsItem{ Template := &freightTemplate_update_request.Template{
FirstNum: 1, TemplateName: storeDetail.VendorStoreName + "_" + utils.Int2Str(storeCode) + "的运费模板",
FirstNumPrice: 0.01, ProductProvince: int64(storeDetail.ProvinceCode),
AddNum: 1, ProductCity: int64(storeDetail.CityCode),
AddNumPrice: 0.01, CalculateType: 2, //计价方式-1.按重量 2.按数量
IsOverFree: true, //是否包邮 TransferType: 1,
OverAmount: int64(storeDetail.DeliveryFeeDeductionSill), //此字段在vendor_id=14时 存储 满x包邮金额 RuleType: 1, //固定运费
FixedAmount: 500, //固定运费 单位:分
} }
columns = append(columns, column) if int64(storeDetail.DeliveryFeeDeductionSill) != 0 {
param := &freightTemplate_update_request.FreightTemplateUpdateParam{ columns = []freightTemplate_update_request.ColumnsItem{
Template: &freightTemplate_update_request.Template{ {
TemplateName: "门店编码:" + utils.Int2Str(storeCode) + "的运费模板", RuleAddress: fmt.Sprintf(`{"%s":{"%s":{"%s":[0]}}}`, utils.Int2Str(storeDetail.ProvinceCode), utils.Int2Str(storeDetail.CityCode)[:2], utils.Int2Str(storeDetail.DistrictCode)[:2]),
ProductProvince: int64(storeDetail.ProvinceCode), IsOverFree: true, //是否包邮
ProductCity: int64(storeDetail.CityCode), IsLimited: false,
CalculateType: 2, //模板类型为1-固定运费、2-卖家包邮、3-货到付款 时,计价类型传 2-按数量 OverAmount: int64(storeDetail.DeliveryFeeDeductionSill), //此字段在vendor_id=14时 存储满x包邮金额
TransferType: 1, }}
RuleType: 2, //卖家包邮 }
}, param = &freightTemplate_update_request.FreightTemplateUpdateParam{
Columns: columns, Template: Template,
Columns: columns,
} }
_, err = getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateUpdate(param) _, err = getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateUpdate(param)
if err != nil { if err != nil {
@@ -468,14 +475,22 @@ func ShopBindStoreFreight(vendorOrgCode string, storeID, freightID int64) error
StoreId: storeID, StoreId: storeID,
FreightId: freightID, FreightId: freightID,
} }
api := getAPI(vendorOrgCode, int(storeID), "") err := getAPI(vendorOrgCode, int(storeID), "").BindFreightTemplate(param)
err := api.BindFreightTemplate(param)
if err != nil { if err != nil {
return err return err
} }
return nil return nil
} }
// /shop/getStoreFreight 获取门店绑定运费模板
func GetStoreFreight(vendorOrgCode string, storeID int64) (int64, error) {
resp, err := getAPI(vendorOrgCode, int(storeID), "").GetStoreFreight(storeID)
if err != nil {
return 0, err
}
return resp[0], nil
}
// /address/create 创建店铺地址库(新建即绑定) // /address/create 创建店铺地址库(新建即绑定)
func (P *PurchaseHandler) CreateAddress(addressInfo address_create_request.AddressCreateParam) (addressID int64, err error) { func (P *PurchaseHandler) CreateAddress(addressInfo address_create_request.AddressCreateParam) (addressID int64, err error) {
info := &address_create_request.AddressCreateParam{ info := &address_create_request.AddressCreateParam{