1
This commit is contained in:
@@ -32,15 +32,14 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/globals/api"
|
||||
)
|
||||
|
||||
func SplicingTimeToDoudian(openTime1, closeTime1, openTime2, closeTime2 int16) (timeList string) {
|
||||
func SplicingTimeToDoudian(openTime1, closeTime1, openTime2, closeTime2 int16, flag bool) (timeList string) {
|
||||
//700 1200 -> 07:00-12:00
|
||||
var (
|
||||
s1 = ""
|
||||
ts1 = ""
|
||||
s2 = ""
|
||||
ts2 = ""
|
||||
s3 = ""
|
||||
ts3 = ""
|
||||
//ts3 = ""//暂不支持多时间段
|
||||
s4 = ""
|
||||
ts4 = ""
|
||||
timeStr = ""
|
||||
@@ -52,34 +51,32 @@ func SplicingTimeToDoudian(openTime1, closeTime1, openTime2, closeTime2 int16) (
|
||||
ts1 = "0"
|
||||
}
|
||||
s1 = ts1 + tOpenTime1[:len1] + ":" + tOpenTime1[len1:]
|
||||
globals.SugarLogger.Debug("tOpenTime1[:len1]==============", tOpenTime1[:len1])
|
||||
globals.SugarLogger.Debug("tOpenTime1[len1+1:]==============", tOpenTime1[len1:])
|
||||
globals.SugarLogger.Debug("s1==============", s1)
|
||||
globals.SugarLogger.Debug("ts1+tOpenTime1[:len1]+\":\"+tOpenTime1[len1+1:]====", ts1+tOpenTime1[:len1]+":"+tOpenTime1[len1+1:])
|
||||
|
||||
tCloseTime1 := utils.Int64ToStr(int64(closeTime1))
|
||||
len2 := len(tCloseTime1) - 2
|
||||
if utils.Str2Int(tCloseTime1[:len2]) <= 9 {
|
||||
ts2 = "0"
|
||||
}
|
||||
s2 = ts2 + tCloseTime1[:len2] + ":" + tCloseTime1[len2+1:] + "0"
|
||||
timeStr += s1 + "-" + s2
|
||||
s2 = ts2 + tCloseTime1[:len2] + ":" + tCloseTime1[len2:]
|
||||
if openTime2 != 0 && closeTime2 != 0 {
|
||||
tOpenTime2 := utils.Int64ToStr(int64(openTime2))
|
||||
len3 := len(tOpenTime2) - 2
|
||||
if utils.Str2Int(tOpenTime2[:len3]) <= 9 {
|
||||
ts3 = "0"
|
||||
}
|
||||
s3 = ts3 + tOpenTime2[:len3] + ":" + tOpenTime2[len3+1:] + "0"
|
||||
//tOpenTime2 := utils.Int64ToStr(int64(openTime2))
|
||||
//len3 := len(tOpenTime2) - 2
|
||||
//if utils.Str2Int(tOpenTime2[:len3]) <= 9 {
|
||||
// ts3 = "0"
|
||||
//}
|
||||
//s3 = ts3 + tOpenTime2[:len3] + ":" + tOpenTime2[len3:]
|
||||
tCloseTime2 := utils.Int64ToStr(int64(closeTime2))
|
||||
len4 := len(tCloseTime2) - 2
|
||||
if utils.Str2Int(tCloseTime2[:len4]) <= 9 {
|
||||
ts4 = "0"
|
||||
}
|
||||
s4 = ts4 + tCloseTime2[:len4] + ":" + tCloseTime2[len4+1:] + "0"
|
||||
timeStr += " " + s3 + "-" + s4
|
||||
s4 = ts4 + tCloseTime2[:len4] + ":" + tCloseTime2[len4:]
|
||||
}
|
||||
}
|
||||
if flag {
|
||||
timeStr += s1 + "-" + s4
|
||||
} else {
|
||||
timeStr += s1 + "-" + s2
|
||||
}
|
||||
return timeStr
|
||||
}
|
||||
|
||||
@@ -91,20 +88,24 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
||||
lists []shop_batchCreateStore_request.StoreListItem
|
||||
ShopBatchCreateStoreParam *shop_batchCreateStore_request.ShopBatchCreateStoreParam
|
||||
FreightTemplate = &model.FreightTemplate{}
|
||||
errList = errlist.New()
|
||||
)
|
||||
errList := errlist.New()
|
||||
a := getAPI(storeDetail.VendorOrgCode, storeID, storeDetail.VendorStoreID)
|
||||
timeStr := ""
|
||||
m := make(map[int64]string)
|
||||
if storeDetail.OpenTime1 == 0 || storeDetail.CloseTime1 == 0 {
|
||||
return "", fmt.Errorf("营业时间必填")
|
||||
} else {
|
||||
timeStr = SplicingTimeToDoudian(storeDetail.OpenTime1, storeDetail.CloseTime1, storeDetail.OpenTime2, storeDetail.CloseTime2)
|
||||
globals.SugarLogger.Debug("storeDetail.OpenTime1, storeDetail.CloseTime1, storeDetail.OpenTime2, storeDetail.CloseTime2,timeStr===========", storeDetail.OpenTime1, storeDetail.CloseTime1, storeDetail.OpenTime2, storeDetail.CloseTime2, timeStr)
|
||||
if storeDetail.OpenTime2 != 0 && storeDetail.CloseTime2 != 0 {
|
||||
timeStr = SplicingTimeToDoudian(storeDetail.OpenTime1, storeDetail.CloseTime1, storeDetail.OpenTime2, storeDetail.CloseTime2, true)
|
||||
} else {
|
||||
timeStr = SplicingTimeToDoudian(storeDetail.OpenTime1, storeDetail.CloseTime1, 0, 0, false)
|
||||
}
|
||||
m := make(map[int64]string)
|
||||
for j := 1; j <= 7; j++ {
|
||||
m[int64(j)] = timeStr
|
||||
}
|
||||
globals.SugarLogger.Debug("storeDetail.OpenTime1, storeDetail.CloseTime1, storeDetail.OpenTime2, storeDetail.CloseTime2,timeStr===========", storeDetail.OpenTime1, storeDetail.CloseTime1, storeDetail.OpenTime2, storeDetail.CloseTime2, timeStr)
|
||||
}
|
||||
list := shop_batchCreateStore_request.StoreListItem{
|
||||
RowId: 1,
|
||||
Name: storeDetail.Name,
|
||||
@@ -127,15 +128,6 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
||||
if resp, err := a.BatchCreateStore(ShopBatchCreateStoreParam); err != nil {
|
||||
return "", err
|
||||
} else {
|
||||
//if len(resp.ResultList) == 0 {
|
||||
// return "", errors.New(fmt.Sprintf("创建店铺失败:%v", err))
|
||||
//}
|
||||
//for k, v := range resp.ResultList {
|
||||
// if k != len(resp.ResultList) {
|
||||
// storeIDs = utils.Int64ToStr(v.Store.StoreId) + ","
|
||||
// }
|
||||
// storeIDs = utils.Int64ToStr(v.Store.StoreId)
|
||||
//}
|
||||
storeIDs = utils.Int64ToStr(resp.ResultList[0].Store.StoreId)
|
||||
if utils.Str2Int(storeIDs) == 0 || len(resp.ResultList) == 0 {
|
||||
return "", errors.New(fmt.Sprintf("创建店铺失败,storeIDs = 0:%v,%v", err, resp.ResultList[0].Msg))
|
||||
@@ -146,7 +138,7 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
||||
} else {
|
||||
if freightTemplateID == 0 {
|
||||
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))
|
||||
} else {
|
||||
@@ -156,6 +148,7 @@ func (P *PurchaseHandler) CreateStore2(db *dao.DaoDB, storeID int, userName stri
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//创建并绑定仓库
|
||||
if warehouse, err := CreateWarehouse(storeDetail.VendorOrgCode, utils.Int2Str(storeDetail.Store.ID)); err != nil {
|
||||
errList.AddErr(fmt.Errorf("创建仓库失败:%v", err))
|
||||
@@ -221,10 +214,16 @@ func (P *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin
|
||||
timeStr := ""
|
||||
m := make(map[int64]string)
|
||||
if storeInfo.OpenTime1 != 0 && storeInfo.CloseTime1 != 0 {
|
||||
timeStr = SplicingTimeToDoudian(storeInfo.OpenTime1, storeInfo.CloseTime1, storeInfo.OpenTime2, storeInfo.CloseTime2)
|
||||
if storeInfo.OpenTime2 != 0 && storeInfo.CloseTime2 != 0 {
|
||||
timeStr = SplicingTimeToDoudian(storeInfo.OpenTime1, storeInfo.CloseTime1, storeInfo.OpenTime2, storeInfo.CloseTime2, true)
|
||||
} else {
|
||||
timeStr = SplicingTimeToDoudian(storeInfo.OpenTime1, storeInfo.CloseTime1, 0, 0, false)
|
||||
}
|
||||
for j := 1; j <= 7; j++ {
|
||||
m[int64(j)] = timeStr
|
||||
}
|
||||
} else {
|
||||
return fmt.Errorf("营业时间必填")
|
||||
}
|
||||
vendorStoreID := &shop_getStoreDetail_request.ShopGetStoreDetailParam{
|
||||
StoreId: utils.Str2Int64(storeInfo.VendorStoreID),
|
||||
@@ -323,29 +322,42 @@ func (p *PurchaseHandler) UpdateStoreStatus(ctx *jxcontext.Context, vendorOrgCod
|
||||
|
||||
//默认 运费模板只创建 固定运费模板
|
||||
func CreateFreightTemplate(storeCode int) (int64, error) {
|
||||
var (
|
||||
param *freightTemplate_create_request.FreightTemplateCreateParam
|
||||
)
|
||||
//获取本地门店信息
|
||||
storeDetail, err := dao.GetStoreDetail(dao.GetDB(), storeCode, model.VendorIDDD, "")
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
param := &freightTemplate_create_request.FreightTemplateCreateParam{
|
||||
if int64(storeDetail.DeliveryFeeDeductionSill) == 0 {
|
||||
param = &freightTemplate_create_request.FreightTemplateCreateParam{
|
||||
Template: &freightTemplate_create_request.Template{
|
||||
TemplateName: "门店编码:" + utils.Int2Str(storeCode) + "的运费模板",
|
||||
TemplateName: storeDetail.VendorStoreName + "_" + utils.Int2Str(storeCode) + "的运费模板",
|
||||
ProductProvince: int64(storeDetail.ProvinceCode),
|
||||
ProductCity: int64(storeDetail.CityCode),
|
||||
CalculateType: 2, //计价方式-1.按重量 2.按数量
|
||||
TransferType: 1,
|
||||
RuleType: 1, //卖家包邮
|
||||
RuleType: 1, //固定运费
|
||||
FixedAmount: 500, //固定运费 单位:分
|
||||
},
|
||||
}
|
||||
} else {
|
||||
param = &freightTemplate_create_request.FreightTemplateCreateParam{
|
||||
Template: &freightTemplate_create_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: []freightTemplate_create_request.ColumnsItem{
|
||||
{
|
||||
FirstNum: 1,
|
||||
FirstNumPrice: 0.00,
|
||||
AddNum: 1,
|
||||
AddNumPrice: 0.00,
|
||||
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包邮金额
|
||||
ProvinceInfos: []freightTemplate_create_request.ProvinceInfosItem{
|
||||
{
|
||||
@@ -366,6 +378,7 @@ func CreateFreightTemplate(storeCode int) (int64, error) {
|
||||
},
|
||||
}},
|
||||
}
|
||||
}
|
||||
resp, err := getAPI(storeDetail.VendorOrgCode, storeCode, storeDetail.VendorStoreID).FreightTemplateCreate(param)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
@@ -567,7 +580,16 @@ func (P *PurchaseHandler) UpdateStoreOpTime(ctx *jxcontext.Context, vendorOrgCod
|
||||
t2 := opTimeList[1]
|
||||
t3 := opTimeList[2]
|
||||
t4 := opTimeList[4]
|
||||
timeStr := SplicingTimeToDoudian(t1, t2, t3, t4)
|
||||
timeStr := ""
|
||||
if t1 != 0 && t2 != 0 {
|
||||
if t3 != 0 && t4 != 0 {
|
||||
timeStr = SplicingTimeToDoudian(t1, t2, t3, t4, true)
|
||||
} else {
|
||||
timeStr = SplicingTimeToDoudian(t1, t2, t3, t4, false)
|
||||
}
|
||||
} else {
|
||||
return fmt.Errorf("营业时间必填")
|
||||
}
|
||||
m := make(map[int64]string)
|
||||
for j := 1; j <= 7; j++ {
|
||||
m[int64(j)] = timeStr
|
||||
|
||||
@@ -83,8 +83,9 @@ func GetDeliveryTemp(api *tiktokShop.API, vendorStoreID string, storeDetail *dao
|
||||
},
|
||||
Columns: []freightTemplate_create_request.ColumnsItem{
|
||||
{
|
||||
RuleAddress: fmt.Sprintf(`{"%d":{"%s":{"%s":nil}}}`, productProvince, utils.Int2Str(storeDetail.CityCode), utils.Int2Str(storeDetail.DistrictCode)),
|
||||
RuleAddress: fmt.Sprintf(`{"%d":{"%s":{"%s":[0]}}}`, productProvince, utils.Int2Str(storeDetail.CityCode), utils.Int2Str(storeDetail.DistrictCode)),
|
||||
IsOverFree: true,
|
||||
IsLimited: false,
|
||||
OverAmount: int64(storeDetail.DeliveryFeeDeductionSill),
|
||||
ProvinceInfos: []freightTemplate_create_request.ProvinceInfosItem{
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user