合并请求
This commit is contained in:
@@ -104,6 +104,7 @@ func (c *OrderManager) GetOrderSkuInfo(ctx *jxcontext.Context, vendorOrderID str
|
|||||||
if vendorID == model.VendorIDJD {
|
if vendorID == model.VendorIDJD {
|
||||||
fullSkuNameSQL = "CONCAT(t1.sku_name, IF(t3.is_spu = 1 AND LOCATE(';', t1.sku_name) = 0, CONCAT('[约', t2.spec_quality, t2.spec_unit, '/', t3.unit, ']'), ''))"
|
fullSkuNameSQL = "CONCAT(t1.sku_name, IF(t3.is_spu = 1 AND LOCATE(';', t1.sku_name) = 0, CONCAT('[约', t2.spec_quality, t2.spec_unit, '/', t3.unit, ']'), ''))"
|
||||||
}
|
}
|
||||||
|
// IF(t1.shop_price = 0, t1.sale_price, t1.shop_price) shop_price,
|
||||||
sql := fmt.Sprintf(`
|
sql := fmt.Sprintf(`
|
||||||
SELECT
|
SELECT
|
||||||
t1.id,
|
t1.id,
|
||||||
@@ -114,8 +115,8 @@ func (c *OrderManager) GetOrderSkuInfo(ctx *jxcontext.Context, vendorOrderID str
|
|||||||
t1.sku_id,
|
t1.sku_id,
|
||||||
t1.jx_sku_id,
|
t1.jx_sku_id,
|
||||||
t1.sku_name,
|
t1.sku_name,
|
||||||
IF(t1.shop_price = 0, t1.sale_price, t1.shop_price) shop_price,
|
|
||||||
t1.sale_price,
|
t1.sale_price,
|
||||||
|
t1.shop_price,
|
||||||
CAST(IF(t1.earning_price <> 0, t1.earning_price, IF(t1.shop_price <> 0 && t1.shop_price < t1.sale_price, t1.shop_price, t1.sale_price) * IF(t5.pay_percentage > 0, t5.pay_percentage, ?) / 100) AS SIGNED) earning_price,
|
CAST(IF(t1.earning_price <> 0, t1.earning_price, IF(t1.shop_price <> 0 && t1.shop_price < t1.sale_price, t1.shop_price, t1.sale_price) * IF(t5.pay_percentage > 0, t5.pay_percentage, ?) / 100) AS SIGNED) earning_price,
|
||||||
t1.weight,
|
t1.weight,
|
||||||
t1.sku_type,
|
t1.sku_type,
|
||||||
|
|||||||
@@ -1096,6 +1096,11 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
|||||||
return nil, fmt.Errorf("商品:%s价格:%s太夸张", allBinds[0].Name, jxutils.IntPrice2StandardCurrencyString(int64(skuBindInfo.UnitPrice)))
|
return nil, fmt.Errorf("商品:%s价格:%s太夸张", allBinds[0].Name, jxutils.IntPrice2StandardCurrencyString(int64(skuBindInfo.UnitPrice)))
|
||||||
}
|
}
|
||||||
unitPrice = skuBindInfo.UnitPrice
|
unitPrice = skuBindInfo.UnitPrice
|
||||||
|
if isRefreshHigh {
|
||||||
|
if allBinds[0].UnitPrice <= unitPrice {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
unitPrice = allBinds[0].UnitPrice
|
unitPrice = allBinds[0].UnitPrice
|
||||||
if unitPrice == 0 {
|
if unitPrice == 0 {
|
||||||
@@ -1213,21 +1218,11 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
|||||||
setStoreSkuBindStatus(skuBind, model.SyncFlagPriceMask)
|
setStoreSkuBindStatus(skuBind, model.SyncFlagPriceMask)
|
||||||
updateFieldMap["Price"] = 1
|
updateFieldMap["Price"] = 1
|
||||||
}
|
}
|
||||||
if isRefreshHigh {
|
skuBind.UnitPrice = unitPrice
|
||||||
if beforeMsg.UnitPrice > skuBindInfo.UnitPrice {
|
skuBind.Price = price
|
||||||
skuBind.UnitPrice = unitPrice
|
skuBind.JxPrice = jxPrice
|
||||||
skuBind.Price = price
|
updateFieldMap["UnitPrice"] = 1
|
||||||
skuBind.JxPrice = jxPrice
|
updateFieldMap["JxPrice"] = 1
|
||||||
updateFieldMap["UnitPrice"] = 1
|
|
||||||
updateFieldMap["JxPrice"] = 1
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
skuBind.UnitPrice = unitPrice
|
|
||||||
skuBind.Price = price
|
|
||||||
skuBind.JxPrice = jxPrice
|
|
||||||
updateFieldMap["UnitPrice"] = 1
|
|
||||||
updateFieldMap["JxPrice"] = 1
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if skuBindInfo.StatusSaleBegin != 0 && skuBindInfo.StatusSaleEnd != 0 {
|
if skuBindInfo.StatusSaleBegin != 0 && skuBindInfo.StatusSaleEnd != 0 {
|
||||||
@@ -1739,6 +1734,41 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID int, toStoreIDs []int, co
|
|||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("CopyStoreSkus fromStoreID:%d, toStoreID:%d, trackInfo:%s num3:%d", fromStoreID, toStoreID, ctx.GetTrackInfo(), num2)
|
globals.SugarLogger.Debugf("CopyStoreSkus fromStoreID:%d, toStoreID:%d, trackInfo:%s num3:%d", fromStoreID, toStoreID, ctx.GetTrackInfo(), num2)
|
||||||
dao.Commit(db)
|
dao.Commit(db)
|
||||||
|
|
||||||
|
//同一商品若源门店的规格少于要复制到的门店,则在复制的门店里的其他规格的unitprice不会变,
|
||||||
|
//导致复制的门店的商品unitprice不尽相同,这里先处理一下
|
||||||
|
type tStore struct {
|
||||||
|
NameID int `orm:"column(name_id)"`
|
||||||
|
StoreID int `orm:"column(store_id)"`
|
||||||
|
}
|
||||||
|
var resultList []*tStore
|
||||||
|
sql3 := `
|
||||||
|
SELECT a.name_id, a.store_id FROM (
|
||||||
|
SELECT DISTINCT a.unit_price, b.name_id, a.store_id FROM store_sku_bind a, sku b, store c
|
||||||
|
WHERE a.sku_id = b.id
|
||||||
|
AND c.id = a.store_id
|
||||||
|
AND c.deleted_at = ?
|
||||||
|
AND a.store_id = ?
|
||||||
|
AND a.deleted_at = ?)a
|
||||||
|
GROUP BY 1, 2
|
||||||
|
HAVING COUNT(a.unit_price) > 1
|
||||||
|
`
|
||||||
|
sqlParams3 := []interface{}{utils.DefaultTimeValue, toStoreID, utils.DefaultTimeValue}
|
||||||
|
err = dao.GetRows(db, &resultList, sql3, sqlParams3)
|
||||||
|
if len(resultList) > 0 {
|
||||||
|
var skuBindInfos []*StoreSkuBindInfo
|
||||||
|
for _, v := range resultList {
|
||||||
|
storeSkus, _ := dao.GetStoreSkusByNameIDs(db, []int{v.StoreID}, v.NameID)
|
||||||
|
unitPirce := storeSkus[0].UnitPrice
|
||||||
|
skuBindInfo := &StoreSkuBindInfo{
|
||||||
|
StoreID: v.StoreID,
|
||||||
|
NameID: v.NameID,
|
||||||
|
UnitPrice: int(unitPirce),
|
||||||
|
}
|
||||||
|
skuBindInfos = append(skuBindInfos, skuBindInfo)
|
||||||
|
}
|
||||||
|
_, err = updateStoresSkusWithoutSync(ctx, db, []int{toStoreID}, skuBindInfos, false, false)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if globals.IsAddEvent {
|
if globals.IsAddEvent {
|
||||||
mapAfter := make(map[string]interface{})
|
mapAfter := make(map[string]interface{})
|
||||||
@@ -4624,10 +4654,8 @@ func StoreSkuPriceAudit(ctx *jxcontext.Context, storeSkuAudits []*model.StoreSku
|
|||||||
if len(storeAudits) > 1 {
|
if len(storeAudits) > 1 {
|
||||||
return retVal, fmt.Errorf("查询到该门店该商品的待审核信息大于1条!storeID: %v, nameID: %v", storeAudit.StoreID, storeAudit.NameID)
|
return retVal, fmt.Errorf("查询到该门店该商品的待审核信息大于1条!storeID: %v, nameID: %v", storeAudit.StoreID, storeAudit.NameID)
|
||||||
}
|
}
|
||||||
// flag := false
|
|
||||||
//审核通过
|
//审核通过
|
||||||
if status == model.StoreAuditStatusCreated {
|
if status == model.StoreAuditStatusCreated {
|
||||||
// flag = true
|
|
||||||
storeAudits[0].UserID = ctx.GetUserID()
|
storeAudits[0].UserID = ctx.GetUserID()
|
||||||
storeAudits[0].Status = model.StoreAuditStatusCreated
|
storeAudits[0].Status = model.StoreAuditStatusCreated
|
||||||
storeAudits[0].Remark = storeAudit.Remark
|
storeAudits[0].Remark = storeAudit.Remark
|
||||||
@@ -4661,7 +4689,6 @@ func StoreSkuPriceAudit(ctx *jxcontext.Context, storeSkuAudits []*model.StoreSku
|
|||||||
if num == 0 || !isAsync || hint == "" {
|
if num == 0 || !isAsync || hint == "" {
|
||||||
hint = utils.Int64ToStr(num)
|
hint = utils.Int64ToStr(num)
|
||||||
}
|
}
|
||||||
// _, err = UpdateStoresSkus(ctx, 0, []int{storeID}, skuBindInfos, false, isAsync, isContinueWhenError)
|
|
||||||
} else if status == model.StoreAuditStatusRejected {
|
} else if status == model.StoreAuditStatusRejected {
|
||||||
storeAudits[0].UserID = ctx.GetUserID()
|
storeAudits[0].UserID = ctx.GetUserID()
|
||||||
storeAudits[0].Status = model.StoreAuditStatusRejected
|
storeAudits[0].Status = model.StoreAuditStatusRejected
|
||||||
|
|||||||
@@ -1135,13 +1135,13 @@ func syncJdsStoreStock(ctx *jxcontext.Context, db *dao.DaoDB, parentTask tasksch
|
|||||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||||
storeSku := batchItemList[0].(*model.StoreSkuBind)
|
storeSku := batchItemList[0].(*model.StoreSkuBind)
|
||||||
stock := 0
|
stock := 0
|
||||||
if storeSku.Status == model.StoreSkuBindStatusNormal {
|
|
||||||
stock = 9999
|
|
||||||
}
|
|
||||||
storeSku2, _ := dao.GetStoresSkusInfo(db, []int{storeMap.StoreID}, []int{storeSku.SkuID})
|
storeSku2, _ := dao.GetStoresSkusInfo(db, []int{storeMap.StoreID}, []int{storeSku.SkuID})
|
||||||
if storeSku.JdsID != 0 {
|
if storeSku.JdsID != 0 {
|
||||||
if len(storeSku2) > 0 {
|
if len(storeSku2) > 0 {
|
||||||
if storeSku.Status != storeSku2[0].Status && storeMap.VendorStoreID != "" {
|
if storeSku2[0].Status == model.StoreSkuBindStatusNormal {
|
||||||
|
stock = 9999
|
||||||
|
}
|
||||||
|
if storeMap.VendorStoreID != "" {
|
||||||
err = api.JdShopAPI.UpdateSkuSiteStock(storeSku.JdsID, stock, utils.Str2Int(storeMap.VendorStoreID))
|
err = api.JdShopAPI.UpdateSkuSiteStock(storeSku.JdsID, stock, utils.Str2Int(storeMap.VendorStoreID))
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@@ -1253,6 +1253,11 @@ func SyncSkuExperfixAndWatermark(ctx *jxcontext.Context) (err error) {
|
|||||||
task := tasksch.NewParallelTask("SyncSkuExperfixAndWatermark", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx,
|
task := tasksch.NewParallelTask("SyncSkuExperfixAndWatermark", tasksch.NewParallelConfig().SetIsContinueWhenError(true), ctx,
|
||||||
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
func(task *tasksch.ParallelTask, batchItemList []interface{}, params ...interface{}) (retVal interface{}, err error) {
|
||||||
skuExinfo := batchItemList[0].(*model.SkuExinfoMap)
|
skuExinfo := batchItemList[0].(*model.SkuExinfoMap)
|
||||||
|
if time.Now().Sub(skuExinfo.EndAt) > 0 {
|
||||||
|
skuExinfo.DeletedAt = time.Now()
|
||||||
|
dao.UpdateEntity(db, skuExinfo, "DeletedAt")
|
||||||
|
return retVal, err
|
||||||
|
}
|
||||||
skus, err := dao.GetSkus(db, nil, []int{skuExinfo.NameID}, nil, nil, nil)
|
skus, err := dao.GetSkus(db, nil, []int{skuExinfo.NameID}, nil, nil, nil)
|
||||||
var skuIDs []int
|
var skuIDs []int
|
||||||
for _, v := range skus {
|
for _, v := range skus {
|
||||||
@@ -1262,12 +1267,10 @@ func SyncSkuExperfixAndWatermark(ctx *jxcontext.Context) (err error) {
|
|||||||
for _, v := range skuIDs {
|
for _, v := range skuIDs {
|
||||||
OnUpdateThing(ctx, db, nil, int64(v), model.ThingTypeSku)
|
OnUpdateThing(ctx, db, nil, int64(v), model.ThingTypeSku)
|
||||||
}
|
}
|
||||||
// CurVendorSync.SyncSkus(ctx, db, nil, skuIDs, true, true, ctx.GetUserName())
|
|
||||||
} else {
|
} else {
|
||||||
if len(skuIDs) > 0 {
|
if len(skuIDs) > 0 {
|
||||||
SetStoreSkuSyncStatus2(db, nil, []int{skuExinfo.VendorID}, skuIDs, model.SyncFlagModifiedMask)
|
SetStoreSkuSyncStatus2(db, nil, []int{skuExinfo.VendorID}, skuIDs, model.SyncFlagModifiedMask)
|
||||||
}
|
}
|
||||||
// CurVendorSync.SyncStoresSkus2(ctx, nil, 0, db, []int{skuExinfo.VendorID}, nil, false, skuIDs, nil, model.SyncFlagModifiedMask, true, true)
|
|
||||||
}
|
}
|
||||||
return retVal, err
|
return retVal, err
|
||||||
}, skuExinfos)
|
}, skuExinfos)
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ var (
|
|||||||
"20:00:00",
|
"20:00:00",
|
||||||
}
|
}
|
||||||
dailyWorkTimeList2 = []string{
|
dailyWorkTimeList2 = []string{
|
||||||
"04:00:00",
|
"02:00:00",
|
||||||
}
|
}
|
||||||
priceReferTimeList = []string{
|
priceReferTimeList = []string{
|
||||||
"03:00:00",
|
"03:00:00",
|
||||||
@@ -411,7 +411,7 @@ func doDailyWork() {
|
|||||||
//刷新京东门店的等级
|
//刷新京东门店的等级
|
||||||
cms.RefreshJdLevel(jxcontext.AdminCtx)
|
cms.RefreshJdLevel(jxcontext.AdminCtx)
|
||||||
//删除操作日志
|
//删除操作日志
|
||||||
event.DeleteOperateEventAndDetail(jxcontext.AdminCtx, time.Now().AddDate(0, -3, 0))
|
// event.DeleteOperateEventAndDetail(jxcontext.AdminCtx, time.Now().AddDate(0, -3, 0))
|
||||||
//禁用没有绑定的门店
|
//禁用没有绑定的门店
|
||||||
cms.DisabledStoreWithoutVendor(jxcontext.AdminCtx, true, true)
|
cms.DisabledStoreWithoutVendor(jxcontext.AdminCtx, true, true)
|
||||||
//刷新物料订单状态
|
//刷新物料订单状态
|
||||||
|
|||||||
@@ -1560,29 +1560,29 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
|
|||||||
// }
|
// }
|
||||||
|
|
||||||
//京东商城街道name
|
//京东商城街道name
|
||||||
var stores []*model.Store
|
// var stores []*model.Store
|
||||||
var db = dao.GetDB()
|
// var db = dao.GetDB()
|
||||||
sql := `
|
// sql := `
|
||||||
SELECT b.*
|
// SELECT b.*
|
||||||
FROM store_map a, store b
|
// FROM store_map a, store b
|
||||||
WHERE a.store_id = b.id
|
// WHERE a.store_id = b.id
|
||||||
AND a.vendor_store_id = '' AND a.vendor_id = 5 AND a.deleted_at = ?
|
// AND a.vendor_store_id = '' AND a.vendor_id = 5 AND a.deleted_at = ?
|
||||||
AND b.deleted_at = ?
|
// AND b.deleted_at = ?
|
||||||
`
|
// `
|
||||||
sqlParams := []interface{}{utils.DefaultTimeValue, utils.DefaultTimeValue}
|
// sqlParams := []interface{}{utils.DefaultTimeValue, utils.DefaultTimeValue}
|
||||||
err = dao.GetRows(db, &stores, sql, sqlParams)
|
// err = dao.GetRows(db, &stores, sql, sqlParams)
|
||||||
for _, v := range stores {
|
// for _, v := range stores {
|
||||||
result, _ := api.AutonaviAPI.GetCoordinateAreaInfo(jxutils.IntCoordinate2Standard(v.Lng), jxutils.IntCoordinate2Standard(v.Lat))
|
// result, _ := api.AutonaviAPI.GetCoordinateAreaInfo(jxutils.IntCoordinate2Standard(v.Lng), jxutils.IntCoordinate2Standard(v.Lat))
|
||||||
if result["regeocode"] != nil {
|
// if result["regeocode"] != nil {
|
||||||
street := result["regeocode"].(map[string]interface{})["addressComponent"].(map[string]interface{})["township"].(string)
|
// street := result["regeocode"].(map[string]interface{})["addressComponent"].(map[string]interface{})["township"].(string)
|
||||||
if street != "" {
|
// if street != "" {
|
||||||
storeMaps, _ := dao.GetStoresMapList(db, []int{model.VendorIDJDShop}, []int{v.ID}, nil, model.StoreStatusAll, model.StoreIsSyncAll, "", "")
|
// storeMaps, _ := dao.GetStoresMapList(db, []int{model.VendorIDJDShop}, []int{v.ID}, nil, model.StoreStatusAll, model.StoreIsSyncAll, "", "")
|
||||||
storeMap := storeMaps[0]
|
// storeMap := storeMaps[0]
|
||||||
storeMap.JdsStreetName = street
|
// storeMap.JdsStreetName = street
|
||||||
dao.UpdateEntity(db, storeMap, "JdsStreetName")
|
// dao.UpdateEntity(db, storeMap, "JdsStreetName")
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
|
||||||
// var stores []*model.Store
|
// var stores []*model.Store
|
||||||
// sql := `
|
// sql := `
|
||||||
@@ -1610,6 +1610,42 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
|
|||||||
// continue
|
// continue
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
|
db := dao.GetDB()
|
||||||
|
type tStore struct {
|
||||||
|
NameID int `orm:"column(name_id)"`
|
||||||
|
StoreID int `orm:"column(store_id)"`
|
||||||
|
}
|
||||||
|
var resultList []*tStore
|
||||||
|
stores, _ := dao.GetStoreList(db, nil, nil, nil, nil, "")
|
||||||
|
for _, v := range stores {
|
||||||
|
var resultList2 []*tStore
|
||||||
|
sql := `
|
||||||
|
SELECT a.name_id,a.store_id FROM (
|
||||||
|
SELECT DISTINCT a.unit_price,b.name_id,a.store_id from store_sku_bind a,sku b,store c
|
||||||
|
where a.sku_id = b.id
|
||||||
|
and c.id = a.store_id and c.deleted_at = '1970-01-01 00:00:00'
|
||||||
|
and a.store_id = ?
|
||||||
|
and a.deleted_at = '1970-01-01 00:00:00')a
|
||||||
|
GROUP BY 1,2
|
||||||
|
HAVING count(a.unit_price) > 1
|
||||||
|
`
|
||||||
|
sqlParams := []interface{}{v.ID}
|
||||||
|
err = dao.GetRows(db, &resultList2, sql, sqlParams)
|
||||||
|
resultList = append(resultList, resultList2...)
|
||||||
|
}
|
||||||
|
fmt.Println("testresultList3", utils.Format4Output(resultList, false))
|
||||||
|
// var skuBindInfos []*cms.StoreSkuBindInfo
|
||||||
|
// for _, v := range resultList {
|
||||||
|
// storeSkus, _ := dao.GetStoreSkusByNameIDs(db, []int{v.StoreID}, v.NameID)
|
||||||
|
// unitPirce := storeSkus[0].UnitPrice
|
||||||
|
// skuBindInfo := &cms.StoreSkuBindInfo{
|
||||||
|
// StoreID: v.StoreID,
|
||||||
|
// NameID: v.NameID,
|
||||||
|
// UnitPrice: int(unitPirce),
|
||||||
|
// }
|
||||||
|
// skuBindInfos = append(skuBindInfos, skuBindInfo)
|
||||||
|
// }
|
||||||
|
// _, err = cms.UpdateStoresSkusByBind(ctx, nil, skuBindInfos, true, true, false)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1624,10 +1660,9 @@ func RefreshJXPriceChange(ctx *jxcontext.Context, storeID int) (hint string, err
|
|||||||
sql := `
|
sql := `
|
||||||
SELECT *
|
SELECT *
|
||||||
FROM store
|
FROM store
|
||||||
WHERE deleted_at = ? AND status <> ?
|
WHERE deleted_at = ? AND pay_percentage > 50
|
||||||
AND id <> 100118 AND id <> 100274 AND id <> 100205
|
|
||||||
`
|
`
|
||||||
sqlParams := []interface{}{utils.DefaultTimeValue, model.StoreStatusDisabled}
|
sqlParams := []interface{}{utils.DefaultTimeValue}
|
||||||
if storeID != 0 {
|
if storeID != 0 {
|
||||||
sql += " AND id = ?"
|
sql += " AND id = ?"
|
||||||
sqlParams = append(sqlParams, storeID)
|
sqlParams = append(sqlParams, storeID)
|
||||||
|
|||||||
@@ -1681,3 +1681,30 @@ func GetTopSkusByNoCityCode(db *DaoDB) (skuNameAndPlace []*SkuNameAndPlace, err
|
|||||||
}
|
}
|
||||||
return skuNameAndPlace, err
|
return skuNameAndPlace, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetStoreSkuHistory(db *DaoDB, storeIDs, skuIDs []int, status int, snapShot time.Time) (storeSkuHistory []*model.StoreSkuBindHistory, err error) {
|
||||||
|
sql := `
|
||||||
|
SELECT a.*
|
||||||
|
FROM store_sku_bind_history a
|
||||||
|
WHERE a.deleted_at = ?
|
||||||
|
`
|
||||||
|
sqlParams := []interface{}{utils.DefaultTimeValue}
|
||||||
|
if len(storeIDs) > 0 {
|
||||||
|
sql += " AND a.store_id IN (" + GenQuestionMarks(len(storeIDs)) + ")"
|
||||||
|
sqlParams = append(sqlParams, storeIDs)
|
||||||
|
}
|
||||||
|
if len(skuIDs) > 0 {
|
||||||
|
sql += " AND a.sku_id IN (" + GenQuestionMarks(len(skuIDs)) + ")"
|
||||||
|
sqlParams = append(sqlParams, skuIDs)
|
||||||
|
}
|
||||||
|
if status != model.StoreAuditStatusAll {
|
||||||
|
sql += " AND a.status = ? "
|
||||||
|
sqlParams = append(sqlParams, status)
|
||||||
|
}
|
||||||
|
if !utils.IsTimeZero(snapShot) {
|
||||||
|
sql += " AND a.snapshot_at = ? "
|
||||||
|
sqlParams = append(sqlParams, snapShot)
|
||||||
|
}
|
||||||
|
err = GetRows(db, &storeSkuHistory, sql, sqlParams...)
|
||||||
|
return storeSkuHistory, err
|
||||||
|
}
|
||||||
|
|||||||
@@ -229,7 +229,7 @@ func (c *DeliveryHandler) getBillParams(db *dao.DaoDB, order *model.GoodsOrder)
|
|||||||
if billParams.ShopNo, err = c.getDadaShopID(order, db); err == nil {
|
if billParams.ShopNo, err = c.getDadaShopID(order, db); err == nil {
|
||||||
if billParams.CityCode, err = c.getDataCityCodeFromOrder(order, db); err == nil {
|
if billParams.CityCode, err = c.getDataCityCodeFromOrder(order, db); err == nil {
|
||||||
billParams.ReceiverLng, billParams.ReceiverLat, _ = jxutils.IntCoordinate2MarsStandard(order.ConsigneeLng, order.ConsigneeLat, order.CoordinateType)
|
billParams.ReceiverLng, billParams.ReceiverLat, _ = jxutils.IntCoordinate2MarsStandard(order.ConsigneeLng, order.ConsigneeLat, order.CoordinateType)
|
||||||
billParams.Info = fmt.Sprintf("%s第%d号订单, %s", model.VendorChineseNames[order.VendorID], order.OrderSeq, utils.FilterMb4(order.BuyerComment))
|
billParams.Info = fmt.Sprintf("%s第%d号订单, %s", model.VendorChineseNames[order.VendorID], order.OrderSeq, utils.FilterMb4(order.BuyerComment+",取货失败请联系18048531223。"))
|
||||||
billParams.CargoType = dadaapi.CargoTypeFresh
|
billParams.CargoType = dadaapi.CargoTypeFresh
|
||||||
billParams.CargoWeight = float64(jxutils.IntWeight2Float(limitOrderWeight(order.Weight)))
|
billParams.CargoWeight = float64(jxutils.IntWeight2Float(limitOrderWeight(order.Weight)))
|
||||||
billParams.CargoNum = order.GoodsCount
|
billParams.CargoNum = order.GoodsCount
|
||||||
|
|||||||
@@ -237,7 +237,7 @@ func (c *DeliveryHandler) CreateWaybill(order *model.GoodsOrder, maxDeliveryFee
|
|||||||
// "goods_pickup_info": fmt.Sprintf("%s第%d号单", model.VendorChineseNames[order.VendorID], order.OrderSeq),
|
// "goods_pickup_info": fmt.Sprintf("%s第%d号单", model.VendorChineseNames[order.VendorID], order.OrderSeq),
|
||||||
// "poi_seq": fmt.Sprintf("#%d", order.OrderSeq),
|
// "poi_seq": fmt.Sprintf("#%d", order.OrderSeq),
|
||||||
// }
|
// }
|
||||||
billParams.Note = utils.FilterMb4(order.BuyerComment)
|
billParams.Note = utils.FilterMb4(order.BuyerComment + ",取货失败请联系18048531223。")
|
||||||
billParams.GoodsDetail = string(utils.MustMarshal(goods))
|
billParams.GoodsDetail = string(utils.MustMarshal(goods))
|
||||||
billParams.GoodsPickupInfo = fmt.Sprintf("%s第%d号单", model.VendorChineseNames[order.VendorID], order.OrderSeq)
|
billParams.GoodsPickupInfo = fmt.Sprintf("%s第%d号单", model.VendorChineseNames[order.VendorID], order.OrderSeq)
|
||||||
billParams.PoiSeq = fmt.Sprintf("#%d", order.OrderSeq)
|
billParams.PoiSeq = fmt.Sprintf("#%d", order.OrderSeq)
|
||||||
|
|||||||
Reference in New Issue
Block a user