操作日志记录优化
This commit is contained in:
@@ -1040,7 +1040,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
|||||||
skuBind.Status = tmpStatus
|
skuBind.Status = tmpStatus
|
||||||
}
|
}
|
||||||
if globals.IsAddEvent {
|
if globals.IsAddEvent {
|
||||||
err = AddEventDetail(model.OperateAdd, v.RealSkuID, model.ThingTypeSku, storeID, ctx.GetTrackInfo(), "", "")
|
err = AddEventDetail(db, model.OperateAdd, v.RealSkuID, model.ThingTypeSku, storeID, ctx.GetTrackInfo(), "", "")
|
||||||
}
|
}
|
||||||
setStoreSkuBindStatus(skuBind, model.SyncFlagNewMask)
|
setStoreSkuBindStatus(skuBind, model.SyncFlagNewMask)
|
||||||
dao.WrapAddIDCULDEntity(skuBind, userName)
|
dao.WrapAddIDCULDEntity(skuBind, userName)
|
||||||
@@ -1069,7 +1069,7 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
|||||||
skuBind = &v.StoreSkuBind
|
skuBind = &v.StoreSkuBind
|
||||||
if skuBindInfo.IsFocus == -1 && isCanChangePrice {
|
if skuBindInfo.IsFocus == -1 && isCanChangePrice {
|
||||||
if globals.IsAddEvent {
|
if globals.IsAddEvent {
|
||||||
err = AddEventDetail(model.OperateDelete, skuBind.SkuID, model.ThingTypeSku, storeID, ctx.GetTrackInfo(), "", "")
|
err = AddEventDetail(db, model.OperateDelete, skuBind.SkuID, model.ThingTypeSku, storeID, ctx.GetTrackInfo(), "", "")
|
||||||
}
|
}
|
||||||
if num, err = dao.DeleteEntityLogically(db, skuBind, map[string]interface{}{
|
if num, err = dao.DeleteEntityLogically(db, skuBind, map[string]interface{}{
|
||||||
model.FieldStatus: model.StoreSkuBindStatusDeleted,
|
model.FieldStatus: model.StoreSkuBindStatusDeleted,
|
||||||
@@ -1127,10 +1127,8 @@ func updateStoresSkusWithoutSync(ctx *jxcontext.Context, db *dao.DaoDB, storeIDs
|
|||||||
if globals.IsAddEvent {
|
if globals.IsAddEvent {
|
||||||
if len(updateFieldMap) > 0 {
|
if len(updateFieldMap) > 0 {
|
||||||
mapAfter := refutil.FindMapAndStructMixed(updateFieldMap, skuBind)
|
mapAfter := refutil.FindMapAndStructMixed(updateFieldMap, skuBind)
|
||||||
afterData := utils.MustMarshal(mapAfter)
|
|
||||||
mapBefore := refutil.FindMapAndStructMixed(updateFieldMap, beforeMsg)
|
mapBefore := refutil.FindMapAndStructMixed(updateFieldMap, beforeMsg)
|
||||||
beforeData := utils.MustMarshal(mapBefore)
|
err = AddEventDetail(db, model.OperateUpdate, v.RealSkuID, model.ThingTypeSku, storeID, ctx.GetTrackInfo(), BuildDiffData(mapBefore), BuildDiffData(mapAfter))
|
||||||
err = AddEventDetail(model.OperateUpdate, v.RealSkuID, model.ThingTypeSku, storeID, ctx.GetTrackInfo(), string(beforeData), string(afterData))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if len(updateFieldMap) > 0 {
|
if len(updateFieldMap) > 0 {
|
||||||
@@ -1184,7 +1182,7 @@ func getSkuSaleStatus(inSkuBind *StoreSkuBindSkuInfo, skuNameBindInfo *StoreSkuB
|
|||||||
return model.StoreSkuBindStatusNA
|
return model.StoreSkuBindStatusNA
|
||||||
}
|
}
|
||||||
|
|
||||||
func AddEventDetail(operateType, thingID, thingType, storeID int, accessUUID, beforeData, afterData string) (err error) {
|
func AddEventDetail(db *dao.DaoDB, operateType, thingID, thingType, storeID int, accessUUID, beforeData, afterData string) (err error) {
|
||||||
operateEventDetail := &model.OperateEventDetail{
|
operateEventDetail := &model.OperateEventDetail{
|
||||||
OperateType: operateType,
|
OperateType: operateType,
|
||||||
ThingID: thingID,
|
ThingID: thingID,
|
||||||
@@ -1194,7 +1192,7 @@ func AddEventDetail(operateType, thingID, thingType, storeID int, accessUUID, be
|
|||||||
BeforeData: beforeData,
|
BeforeData: beforeData,
|
||||||
AfterData: afterData,
|
AfterData: afterData,
|
||||||
}
|
}
|
||||||
err = event.AddOperateEventDetail(operateEventDetail)
|
err = event.AddOperateEventDetail(db, operateEventDetail)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1254,21 +1252,19 @@ func updateStoreSkusSaleWithoutSync(ctx *jxcontext.Context, storeID int, skuBind
|
|||||||
} else {
|
} else {
|
||||||
kvs["AutoSaleAt"] = autoSaleTime
|
kvs["AutoSaleAt"] = autoSaleTime
|
||||||
}
|
}
|
||||||
var status int
|
|
||||||
if v.IsSale == -1 {
|
|
||||||
status = model.StoreSkuBindStatusDontSale
|
|
||||||
} else {
|
|
||||||
status = model.StoreSkuBindStatusNormal
|
|
||||||
}
|
|
||||||
if globals.IsAddEvent {
|
if globals.IsAddEvent {
|
||||||
|
var status int
|
||||||
|
if v.IsSale == -1 {
|
||||||
|
status = model.StoreSkuBindStatusDontSale
|
||||||
|
} else {
|
||||||
|
status = model.StoreSkuBindStatusNormal
|
||||||
|
}
|
||||||
if status != statusResult {
|
if status != statusResult {
|
||||||
mapAfter := make(map[string]interface{})
|
mapAfter := make(map[string]interface{})
|
||||||
mapAfter["Status"] = status
|
mapAfter["Status"] = status
|
||||||
afterData := utils.MustMarshal(mapAfter)
|
|
||||||
mapBefore := make(map[string]interface{})
|
mapBefore := make(map[string]interface{})
|
||||||
mapBefore["Status"] = statusResult
|
mapBefore["Status"] = statusResult
|
||||||
beforeData := utils.MustMarshal(mapBefore)
|
err = AddEventDetail(db, model.OperateUpdate, v.SkuID, model.ThingTypeSku, storeID, ctx.GetTrackInfo(), BuildDiffData(mapBefore), BuildDiffData(mapAfter))
|
||||||
err = AddEventDetail(model.OperateUpdate, v.SkuID, model.ThingTypeSku, storeID, ctx.GetTrackInfo(), string(beforeData), string(afterData))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if num, err = dao.UpdateEntityLogically(db, skuBind, kvs, userName, nil); err != nil {
|
if num, err = dao.UpdateEntityLogically(db, skuBind, kvs, userName, nil); err != nil {
|
||||||
@@ -1286,6 +1282,11 @@ func updateStoreSkusSaleWithoutSync(ctx *jxcontext.Context, storeID int, skuBind
|
|||||||
return needSyncSkus, err
|
return needSyncSkus, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func BuildDiffData(mapData map[string]interface{}) string {
|
||||||
|
dd := utils.MustMarshal(mapData)
|
||||||
|
return string(dd)
|
||||||
|
}
|
||||||
|
|
||||||
func uniqueStoreSkuBind(skuBindSkuInfos []*StoreSkuBindSkuInfo) (outSkuBindSkuInfos []*StoreSkuBindSkuInfo) {
|
func uniqueStoreSkuBind(skuBindSkuInfos []*StoreSkuBindSkuInfo) (outSkuBindSkuInfos []*StoreSkuBindSkuInfo) {
|
||||||
skuIDMap := make(map[int]int)
|
skuIDMap := make(map[int]int)
|
||||||
for _, v := range skuBindSkuInfos {
|
for _, v := range skuBindSkuInfos {
|
||||||
@@ -1591,11 +1592,9 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID int, toStoreIDs []int, co
|
|||||||
mapAfter["ToStoreIDs"] = toStoreIDs
|
mapAfter["ToStoreIDs"] = toStoreIDs
|
||||||
mapAfter["CopyMode"] = copyMode
|
mapAfter["CopyMode"] = copyMode
|
||||||
mapAfter["IsScale"] = isScale
|
mapAfter["IsScale"] = isScale
|
||||||
afterData := utils.MustMarshal(mapAfter)
|
|
||||||
mapBefore := make(map[string]interface{})
|
mapBefore := make(map[string]interface{})
|
||||||
mapBefore["FromStoreID"] = fromStoreID
|
mapBefore["FromStoreID"] = fromStoreID
|
||||||
beforeData := utils.MustMarshal(mapBefore)
|
err = AddEventDetail(db, model.OperateCopyStoreSkus, 0, model.ThingTypeSku, fromStoreID, ctx.GetTrackInfo(), BuildDiffData(mapBefore), BuildDiffData(mapAfter))
|
||||||
err = AddEventDetail(model.OperateCopyStoreSkus, 0, model.ThingTypeSku, fromStoreID, ctx.GetTrackInfo(), string(beforeData), string(afterData))
|
|
||||||
}
|
}
|
||||||
return num, errList.GetErrListAsOne()
|
return num, errList.GetErrListAsOne()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,8 +42,7 @@ func AddOperateEvent(ctx *jxcontext.Context, accessUUID string) (err error) {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func AddOperateEventDetail(operateEventDetail *model.OperateEventDetail) (err error) {
|
func AddOperateEventDetail(db *dao.DaoDB, operateEventDetail *model.OperateEventDetail) (err error) {
|
||||||
db := dao.GetDB()
|
|
||||||
dao.Begin(db)
|
dao.Begin(db)
|
||||||
defer func() {
|
defer func() {
|
||||||
if r := recover(); r != nil {
|
if r := recover(); r != nil {
|
||||||
|
|||||||
@@ -154,7 +154,6 @@ func init() {
|
|||||||
beego.AutoRouter(&controllers.WeixinController{})
|
beego.AutoRouter(&controllers.WeixinController{})
|
||||||
beego.AutoRouter(&controllers.DingDingController{})
|
beego.AutoRouter(&controllers.DingDingController{})
|
||||||
beego.AutoRouter(&controllers.WXPayController{})
|
beego.AutoRouter(&controllers.WXPayController{})
|
||||||
beego.AutoRouter(&controllers.EventController{})
|
|
||||||
|
|
||||||
// 如下都是用于检测存活的空接口
|
// 如下都是用于检测存活的空接口
|
||||||
beego.Any("/", func(ctx *beecontext.Context) {
|
beego.Any("/", func(ctx *beecontext.Context) {
|
||||||
|
|||||||
Reference in New Issue
Block a user