时间校验修改

This commit is contained in:
苏尹岚
2019-11-18 14:41:56 +08:00
parent 15a913dc0a
commit a1e834a0bc
3 changed files with 18 additions and 4 deletions

View File

@@ -617,7 +617,9 @@ func UpdateStore(ctx *jxcontext.Context, storeID int, payload map[string]interfa
if err = dao.GetEntity(db, store); err != nil { if err = dao.GetEntity(db, store); err != nil {
return 0, err return 0, err
} }
valid := dao.StrictMakeMapByStructObject(payload, store, userName) outStore := &model.Store{}
valid := dao.StrictMakeMapByStructObject2(payload, store, outStore, userName)
fmt.Println(outStore)
if err = checkStoreDeliveryRange(utils.Interface2String(valid["deliveryRange"])); err != nil { if err = checkStoreDeliveryRange(utils.Interface2String(valid["deliveryRange"])); err != nil {
return 0, err return 0, err
} }

View File

@@ -13,7 +13,7 @@ import (
func IDCULDFilterMapByStructObject(mapData map[string]interface{}, obj interface{}, isCheckValue bool) (valid map[string]interface{}, invalid map[string]interface{}) { func IDCULDFilterMapByStructObject(mapData map[string]interface{}, obj interface{}, isCheckValue bool) (valid map[string]interface{}, invalid map[string]interface{}) {
// 这里必须用首字母小写因为是用于访问map是需要完全匹配的 // 这里必须用首字母小写因为是用于访问map是需要完全匹配的
return refutil.FilterMapByStructObject(mapData, obj, []string{"id", "createdAt", "updatedAt", "finishedAt", "deletedAt", "syncStatus", "lastOperator"}, isCheckValue) return refutil.FilterMapByStructObject(mapData, obj, nil, []string{"id", "createdAt", "updatedAt", "finishedAt", "deletedAt", "syncStatus", "lastOperator"}, isCheckValue)
} }
func NormalMakeMapByStructObject(mapData map[string]interface{}, obj interface{}, userName string) (retVal map[string]interface{}) { func NormalMakeMapByStructObject(mapData map[string]interface{}, obj interface{}, userName string) (retVal map[string]interface{}) {
@@ -26,6 +26,16 @@ func StrictMakeMapByStructObject(mapData map[string]interface{}, obj interface{}
return retVal return retVal
} }
func IDCULDFilterMapByStructObject2(mapData map[string]interface{}, obj interface{}, objPtr interface{}, isCheckValue bool) (valid map[string]interface{}, invalid map[string]interface{}) {
return refutil.FilterMapByStructObject(mapData, obj, objPtr, []string{"id", "createdAt", "updatedAt", "finishedAt", "deletedAt", "syncStatus", "lastOperator"}, isCheckValue)
}
//根据传进来的objPtr去修改它的值
func StrictMakeMapByStructObject2(mapData map[string]interface{}, obj interface{}, objPtr interface{}, userName string) (retVal map[string]interface{}) {
retVal, _ = IDCULDFilterMapByStructObject2(mapData, obj, objPtr, true)
return retVal
}
func NormalMakeMapByFieldList(mapData map[string]interface{}, fields []string, userName string) (retVal map[string]interface{}) { func NormalMakeMapByFieldList(mapData map[string]interface{}, fields []string, userName string) (retVal map[string]interface{}) {
retVal, _ = refutil.FilterMapByFieldList(mapData, fields) retVal, _ = refutil.FilterMapByFieldList(mapData, fields)
return retVal return retVal

View File

@@ -53,7 +53,7 @@ func DeSerializeData(strValue string, dataPtr interface{}) (err error) {
} }
// todo 这里看是否需要将key值转换成标准格式即字母大写因为beego orm不区分不转换也可以 // todo 这里看是否需要将key值转换成标准格式即字母大写因为beego orm不区分不转换也可以
func FilterMapByStructObject(mapData map[string]interface{}, obj interface{}, excludedFields []string, isCheckValue bool) (valid map[string]interface{}, invalid map[string]interface{}) { func FilterMapByStructObject(mapData map[string]interface{}, obj interface{}, objPtr interface{}, excludedFields []string, isCheckValue bool) (valid map[string]interface{}, invalid map[string]interface{}) {
excludedMap := make(map[string]int) excludedMap := make(map[string]int)
for _, v := range excludedFields { for _, v := range excludedFields {
excludedMap[v] = 1 excludedMap[v] = 1
@@ -69,7 +69,9 @@ func FilterMapByStructObject(mapData map[string]interface{}, obj interface{}, ex
invalid[k] = v invalid[k] = v
} }
} }
utils.Map2StructByJson(m, obj, true) if objPtr != nil {
utils.Map2StructByJson(m, objPtr, true)
}
return valid, invalid return valid, invalid
} }