aa
This commit is contained in:
@@ -50,7 +50,7 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"github.com/360EntSecGroup-Skylar/excelize"
|
||||
"github.com/astaxie/beego/adapter/orm"
|
||||
"github.com/astaxie/beego/client/orm"
|
||||
)
|
||||
|
||||
const (
|
||||
@@ -369,8 +369,8 @@ func GetStoresSkusForStore(ctx *jxcontext.Context, storeID int, isFocus, isAct b
|
||||
pageSize = jxutils.FormalizePageSize(pageSize)
|
||||
offset = jxutils.FormalizePageOffset(offset)
|
||||
sqlParams = append(sqlParams, pageSize, offset)
|
||||
dao.Begin(db)
|
||||
defer dao.Commit(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer dao.Commit(db, txDB)
|
||||
if err = dao.GetRows(db, &SkuNames, sql, sqlParams...); err == nil {
|
||||
skuNamesInfo = &dao.StoreSkuNamesInfo{
|
||||
TotalCount: dao.GetLastTotalRowCount(db),
|
||||
@@ -715,10 +715,10 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, upcs []str
|
||||
}
|
||||
sqlParamsPage := []interface{}{sqlPageSize, sqlOffset}
|
||||
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
@@ -742,7 +742,7 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, upcs []str
|
||||
var storeNameList []*tStoreNameBind
|
||||
beginTime := time.Now()
|
||||
if err = dao.GetRows(db, &storeNameList, sql2, sqlParams2...); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
globals.SugarLogger.Debugf("GetStoresSkusNew get result1:%v", time.Now().Sub(beginTime))
|
||||
@@ -785,13 +785,13 @@ func GetStoresSkusNew(ctx *jxcontext.Context, storeIDs, skuIDs []int, upcs []str
|
||||
var tmpList []*tGetStoresSkusInfo
|
||||
beginTime := time.Now()
|
||||
if err = dao.GetRows(db, &tmpList, sql, sqlParams...); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
if isBySku {
|
||||
skuNamesInfo.TotalCount = dao.GetLastTotalRowCount(db)
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
globals.SugarLogger.Debugf("GetStoresSkusNew get result2:%v", time.Now().Sub(beginTime))
|
||||
storeNameMap := make(map[int64]*dao.StoreSkuNameExt)
|
||||
for _, v := range tmpList {
|
||||
@@ -1138,17 +1138,17 @@ func UpdateStoresSkusByBind(ctx *jxcontext.Context, parentTask tasksch.ITask, sk
|
||||
var num int64
|
||||
skuIDMap := make(map[int]int)
|
||||
db := dao.GetDB()
|
||||
// dao.Begin(db)
|
||||
// txDB , _ := dao.Begin(db)
|
||||
// defer func() {
|
||||
// if r := recover(); r != nil {
|
||||
// dao.Rollback(db)
|
||||
// dao.Rollback(db, txDB)
|
||||
// panic(r)
|
||||
// }
|
||||
// }()
|
||||
for _, storeID := range storeIDs {
|
||||
skuIDs, err2 := updateStoresSkusWithoutSync(ctx, db, []int{storeID}, skuBindInfosMap[storeID], false, false)
|
||||
if err = err2; err != nil {
|
||||
// dao.Rollback(db)
|
||||
// dao.Rollback(db, txDB)
|
||||
return "", err
|
||||
}
|
||||
for _, v := range skuIDs {
|
||||
@@ -1156,7 +1156,7 @@ func UpdateStoresSkusByBind(ctx *jxcontext.Context, parentTask tasksch.ITask, sk
|
||||
}
|
||||
num += int64(len(skuIDs))
|
||||
}
|
||||
// dao.Commit(db)
|
||||
// dao.Commit(db, txDB)
|
||||
isAsync = asyncStoreSkuOpFilter(ctx, isAsync)
|
||||
if num > 0 {
|
||||
skuIDs := jxutils.IntMap2List(skuIDMap)
|
||||
@@ -1258,10 +1258,10 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
||||
needSyncIDMap := make(map[int]int)
|
||||
isSyncSkus := false
|
||||
var appCodeList []string
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
@@ -1349,7 +1349,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
||||
unitPrice := 0
|
||||
if skuBindInfo.UnitPrice != 0 {
|
||||
if skuBindInfo.UnitPrice > MaxSkuUnitPrice {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, fmt.Errorf("商品:%s价格:%s太夸张", allBinds[0].Name, jxutils.IntPrice2StandardCurrencyString(int64(skuBindInfo.UnitPrice)))
|
||||
}
|
||||
unitPrice = skuBindInfo.UnitPrice
|
||||
@@ -1410,7 +1410,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
||||
dao.WrapAddIDCULDEntity(skuBind, userName)
|
||||
if deletedSku := dao.GetDeletedStoreSkuBind(db, skuBind.StoreID, skuBind.SkuID); deletedSku == nil {
|
||||
if err = dao.CreateEntity(db, skuBind); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
num = 1
|
||||
@@ -1422,7 +1422,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
||||
skuBind.MtwmID = deletedSku.MtwmID
|
||||
skuBind.EbaiID = deletedSku.EbaiID
|
||||
if num, err = dao.UpdateEntity(db, skuBind); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
@@ -1479,7 +1479,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
||||
model.FieldYbSyncStatus: model.SyncFlagDeletedMask,
|
||||
model.FieldJdsSyncStatus: model.SyncFlagDeletedMask,
|
||||
}, userName, nil); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
//删除待审核商品信息
|
||||
@@ -1487,7 +1487,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
||||
if len(storeAudits) > 0 {
|
||||
storeAudits[0].DeletedAt = time.Now()
|
||||
if _, err = dao.UpdateEntity(db, storeAudits[0], "DeletedAt"); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
@@ -1611,7 +1611,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
||||
skuBind.AutoSaleAt = utils.DefaultTimeValue
|
||||
}
|
||||
if num, err = dao.UpdateEntity(db, skuBind /*, utils.Map2KeySlice(updateFieldMap)...*/); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
@@ -1623,12 +1623,12 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
||||
}
|
||||
}
|
||||
} else {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
skuIDs := jxutils.IntMap2List(needSyncIDMap)
|
||||
if isSyncSkus {
|
||||
_, err = SyncSkus(ctx, nil, []int{model.VendorIDJD}, appCodeList, nil, skuIDs, true)
|
||||
@@ -1731,16 +1731,16 @@ func updateStoreSkusSaleWithoutSync(ctx *jxcontext.Context, storeID int, skuBind
|
||||
skuBindSkuInfosMap[v.SkuID] = v
|
||||
}
|
||||
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
storeSkuList, err := dao.GetStoresSkusInfo(db, []int{storeID}, jxutils.IntMap2List(skuIDMap))
|
||||
if err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
autoSaleTime = formatAutoSaleTime(autoSaleTime)
|
||||
@@ -1782,7 +1782,7 @@ func updateStoreSkusSaleWithoutSync(ctx *jxcontext.Context, storeID int, skuBind
|
||||
}
|
||||
}
|
||||
if num, err = dao.UpdateEntityLogically(db, skuBind, kvs, userName, nil); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return nil, err
|
||||
}
|
||||
if num == 1 {
|
||||
@@ -1791,7 +1791,7 @@ func updateStoreSkusSaleWithoutSync(ctx *jxcontext.Context, storeID int, skuBind
|
||||
}
|
||||
}
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
needSyncSkus = jxutils.IntMap2List(needSyncIDMap)
|
||||
return needSyncSkus, err
|
||||
}
|
||||
@@ -1937,10 +1937,10 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID int, toStoreIDs []int, co
|
||||
}
|
||||
break
|
||||
}
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db,txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
@@ -1987,7 +1987,7 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID int, toStoreIDs []int, co
|
||||
num2, err2 := dao.ExecuteSQL(db, sqlDelete, sqlDeleteParams)
|
||||
if err = err2; err != nil {
|
||||
errList.AddErr(err)
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
break
|
||||
}
|
||||
num += num2
|
||||
@@ -2059,7 +2059,7 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID int, toStoreIDs []int, co
|
||||
globals.SugarLogger.Debugf("CopyStoreSkus fromStoreID:%d, toStoreID:%d, trackInfo:%s num2:%d", fromStoreID, toStoreID, ctx.GetTrackInfo(), num2)
|
||||
if err = err2; err != nil {
|
||||
errList.AddErr(err)
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
break
|
||||
}
|
||||
num += num2
|
||||
@@ -2109,7 +2109,7 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID int, toStoreIDs []int, co
|
||||
num2, err = dao.ExecuteSQL(db, sql, sqlParams)
|
||||
if err != nil {
|
||||
errList.AddErr(err)
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
break
|
||||
}
|
||||
num += num2
|
||||
@@ -2132,11 +2132,11 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID int, toStoreIDs []int, co
|
||||
_, err = dao.ExecuteSQL(db, sql2, sqlParams2)
|
||||
if err != nil {
|
||||
errList.AddErr(err)
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
break
|
||||
}
|
||||
globals.SugarLogger.Debugf("CopyStoreSkus fromStoreID:%d, toStoreID:%d, trackInfo:%s num3:%d", fromStoreID, toStoreID, ctx.GetTrackInfo(), num2)
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
|
||||
//同一商品若源门店的规格少于要复制到的门店,则在复制的门店里的其他规格的unitprice不会变,
|
||||
//导致复制的门店的商品unitprice不尽相同,这里先处理一下
|
||||
@@ -2205,8 +2205,8 @@ func filterStorePriceChange(ctx *jxcontext.Context, storeIDs []int, skuBindInfos
|
||||
globals.SugarLogger.Debug("filterStorePriceChange")
|
||||
if globals.EnablePendingChange {
|
||||
db := dao.GetDB()
|
||||
dao.Begin(db)
|
||||
defer dao.Rollback(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer dao.Rollback(db, txDB)
|
||||
for _, storeID := range storeIDs {
|
||||
for _, skuBindInfo := range skuBindInfos {
|
||||
shouldPending, err2 := shouldPendingStorePriceChange(ctx, storeID, skuBindInfo)
|
||||
@@ -2310,7 +2310,7 @@ func filterStorePriceChange(ctx *jxcontext.Context, storeIDs []int, skuBindInfos
|
||||
}
|
||||
}
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
}
|
||||
return storeIDs, skuBindInfos, nil
|
||||
}
|
||||
@@ -2448,8 +2448,8 @@ func GetStoreOpRequests(ctx *jxcontext.Context, fromTime, toTime time.Time, keyw
|
||||
// globals.SugarLogger.Debug(sql)
|
||||
// globals.SugarLogger.Debug(utils.Format4Output(sqlParams, false))
|
||||
var requestList []*StoreOpRequestInfo
|
||||
dao.Begin(db)
|
||||
defer dao.Commit(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer dao.Commit(db, txDB)
|
||||
if err = dao.GetRows(db, &requestList, sql, sqlParams...); err == nil {
|
||||
return &model.PagedInfo{
|
||||
TotalCount: dao.GetLastTotalRowCount(db),
|
||||
@@ -2507,8 +2507,8 @@ func changeStoreOpStatus(ctx *jxcontext.Context, reqIDs []int, status int8, reje
|
||||
return err
|
||||
}
|
||||
db := dao.GetDB()
|
||||
dao.Begin(db)
|
||||
defer dao.Rollback(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer dao.Rollback(db, txDB)
|
||||
for _, reqID := range reqIDs {
|
||||
op := &model.StoreOpRequest{}
|
||||
op.Remark = rejectReason
|
||||
@@ -2524,7 +2524,7 @@ func changeStoreOpStatus(ctx *jxcontext.Context, reqIDs []int, status int8, reje
|
||||
return err
|
||||
}
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
}
|
||||
}
|
||||
return err
|
||||
@@ -2648,10 +2648,10 @@ func RefreshStoresSkuByVendor(ctx *jxcontext.Context, storeIDs []int, vendorID i
|
||||
}
|
||||
case 2:
|
||||
if len(storeSkuList) > 0 {
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil || err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
if r != nil {
|
||||
panic(r)
|
||||
}
|
||||
@@ -2664,7 +2664,7 @@ func RefreshStoresSkuByVendor(ctx *jxcontext.Context, storeIDs []int, vendorID i
|
||||
`+dao.GenQuestionMarks(len(storeIDs))+")", storeIDs); err == nil {
|
||||
if err = dao.CreateMultiEntities(db, storeSkuList); err == nil {
|
||||
hint = utils.Int2Str(len(storeSkuList))
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -3262,10 +3262,10 @@ func WriteToExcelJx(task *tasksch.SeqTask, dataSuccess []DataSuccess, dataFailed
|
||||
|
||||
func CreateOrUpdateStoreSkuNamePriceByExcel(db *dao.DaoDB, ctx *jxcontext.Context, storeSkuNamePriceList []*model.StoreSkuNamePrice, storeSkuNamePriceListOrg []*model.StoreSkuNamePrice) (err error) {
|
||||
storeSkuNamePriceMap := StoreSkuNamePriceList2Map(ctx, storeSkuNamePriceListOrg)
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil || err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
if r != nil {
|
||||
panic(r)
|
||||
}
|
||||
@@ -3281,7 +3281,7 @@ func CreateOrUpdateStoreSkuNamePriceByExcel(db *dao.DaoDB, ctx *jxcontext.Contex
|
||||
dao.CreateEntity(db, v)
|
||||
}
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -4821,15 +4821,15 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
|
||||
skuNameExt.DeletedAt = utils.DefaultTimeValue
|
||||
skuNameExt.CreatedAt = time.Now()
|
||||
skuNameExt.LastOperator = ctx.GetUserName()
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
if err = dao.CreateEntity(db, &skuNameExt.SkuName); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return retVal, err
|
||||
}
|
||||
// skuNameExt.Skus[0].ID = v.ID
|
||||
@@ -4842,10 +4842,10 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
|
||||
skuNameExt.Skus[0].CreatedAt = time.Now()
|
||||
skuNameExt.Skus[0].LastOperator = ctx.GetUserName()
|
||||
if err = dao.CreateEntity(db, skuNameExt.Skus[0].Sku); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return retVal, err
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
focusC4Matters(ctx, db, v)
|
||||
}
|
||||
}
|
||||
@@ -4867,10 +4867,10 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
|
||||
if len(skuNames) > 0 {
|
||||
skuName = skuNames[0]
|
||||
}
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
panic(r)
|
||||
}
|
||||
}()
|
||||
@@ -4882,7 +4882,7 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
|
||||
`
|
||||
sqlParams := []interface{}{v.SpecQuality, v.SpecUnit, v.EclpID, ctx.GetUserName(), v.EclpID, utils.DefaultTimeValue}
|
||||
if _, err = dao.ExecuteSQL(db, sql, sqlParams); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return retVal, err
|
||||
}
|
||||
}
|
||||
@@ -4898,11 +4898,11 @@ func SyncMatterC4ToGy(ctx *jxcontext.Context, isContinueWhenError, isAsync bool)
|
||||
sqlParams := []interface{}{skuName.Name, skuName.Img, skuName.Img2, skuName.DescImg, skuName.Unit, skuName.Price,
|
||||
ctx.GetUserName(), v.EclpID, utils.DefaultTimeValue}
|
||||
if _, err = dao.ExecuteSQL(db, sql, sqlParams); err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
return retVal, err
|
||||
}
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
focusC4Matters(ctx, db, v)
|
||||
}
|
||||
}
|
||||
@@ -5433,10 +5433,10 @@ func DeleteActStoreSkuBind(ctx *jxcontext.Context, db *dao.DaoDB, actID int, act
|
||||
return 0, fmt.Errorf("当前活动状态:%s,不能进行此操作,或已过期", model.ActStatusName[act.Status])
|
||||
}
|
||||
|
||||
dao.Begin(db)
|
||||
txDB , _ := dao.Begin(db)
|
||||
defer func() {
|
||||
if r := recover(); r != nil || err != nil {
|
||||
dao.Rollback(db)
|
||||
dao.Rollback(db, txDB)
|
||||
if r != nil {
|
||||
panic(r)
|
||||
}
|
||||
@@ -5522,7 +5522,7 @@ func DeleteActStoreSkuBind(ctx *jxcontext.Context, db *dao.DaoDB, actID int, act
|
||||
return 0, err
|
||||
}
|
||||
}
|
||||
dao.Commit(db)
|
||||
dao.Commit(db, txDB)
|
||||
return originSyncStatus, err
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user