This commit is contained in:
richboo111
2022-10-26 14:36:17 +08:00
parent dfa888b324
commit b01756d43e

View File

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