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