- 使用utils.Struct2MapByJson替代直接使用structs.Map

This commit is contained in:
gazebo
2019-03-27 22:45:00 +08:00
parent e87458e060
commit c1df1f8ca6
3 changed files with 4 additions and 5 deletions

View File

@@ -6,10 +6,10 @@ import (
"io"
"reflect"
"git.rosy.net.cn/baseapi/utils"
"git.rosy.net.cn/jx-callback/globals"
"git.rosy.net.cn/jx-callback/globals/refutil"
"github.com/360EntSecGroup-Skylar/excelize"
"github.com/fatih/structs"
)
type Obj2ExcelSheetConfig struct {
@@ -52,7 +52,7 @@ func Obj2Excel(sheetList []*Obj2ExcelSheetConfig) []byte {
for i := 0; i < valueInfo.Len(); i++ {
var mapData map[string]interface{}
if typeInfo.Kind() == reflect.Struct {
mapData = refutil.FlatMap(structs.Map(valueInfo.Index(i).Interface()))
mapData = refutil.FlatMap(utils.Struct2MapByJson(valueInfo.Index(i).Interface()))
} else {
mapData = valueInfo.Index(i).Interface().(map[string]interface{})
}

View File

@@ -12,7 +12,7 @@ import (
)
func IDCULDFilterMapByStructObject(mapData map[string]interface{}, obj interface{}, isCheckValue bool) (valid map[string]interface{}, invalid map[string]interface{}) {
// 这里必须用首字母小写因为是用于访问map用于访问map需要完全匹配的
// 这里必须用首字母小写因为是用于访问map是需要完全匹配的
return refutil.FilterMapByStructObject(mapData, obj, []string{"id", "createdAt", "updatedAt", "finishedAt", "deletedAt", "syncStatus", "lastOperator"}, isCheckValue)
}