Merge pull request 'feature/excel' (#2) from feature/excel into master
Reviewed-on: #2
This commit is contained in:
commit
a9a4287650
@ -100,3 +100,75 @@ func (r *Read) GetAllDataToMap(fieldList []string) (map[string][]map[string]stri
|
||||
// 格式化数据
|
||||
return formatResult, nil
|
||||
}
|
||||
|
||||
// ExtractAssignCol 抽取指定的列,并返回list数据, 列的计数从 0 开始
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 4:53 下午 2021/11/19
|
||||
func (r *Read) ExtractAssignCol(colIndexList []int) (map[string][][]string, error) {
|
||||
var (
|
||||
allData map[string][][]string
|
||||
err error
|
||||
formatResult map[string][][]string
|
||||
)
|
||||
if allData, err = r.GetAllData(); nil != err {
|
||||
return nil, err
|
||||
}
|
||||
formatResult = make(map[string][][]string)
|
||||
for sheetName, sheetData := range allData {
|
||||
formatResult[sheetName] = make([][]string, 0)
|
||||
for _, lineData := range sheetData {
|
||||
tmpData := make([]string, 0)
|
||||
for _, colIdx := range colIndexList {
|
||||
if len(lineData) <= colIdx {
|
||||
// 索引越界,默认空值
|
||||
tmpData = append(tmpData, "")
|
||||
continue
|
||||
}
|
||||
tmpData = append(tmpData, lineData[colIdx])
|
||||
}
|
||||
formatResult[sheetName] = append(formatResult[sheetName], tmpData)
|
||||
}
|
||||
}
|
||||
return formatResult, nil
|
||||
}
|
||||
|
||||
// ExtractAssignColToMap 抽取指定的列,并返回map数据
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 4:53 下午 2021/11/19
|
||||
func (r *Read) ExtractAssignColToMap(ruleTable map[int]string) (map[string][]map[string]string, error) {
|
||||
var (
|
||||
allData map[string][][]string
|
||||
err error
|
||||
formatResult map[string][]map[string]string
|
||||
)
|
||||
formatResult = make(map[string][]map[string]string)
|
||||
if allData, err = r.GetAllData(); nil != err {
|
||||
return nil, err
|
||||
}
|
||||
for sheetName, sheetData := range allData {
|
||||
formatResult[sheetName] = make([]map[string]string, 0)
|
||||
for _, lineData := range sheetData {
|
||||
tmpResult := make(map[string]string)
|
||||
for idx, colData := range lineData {
|
||||
colName, exist := ruleTable[idx]
|
||||
if !exist {
|
||||
// 当前字段不需要提取
|
||||
continue
|
||||
}
|
||||
tmpResult[colName] = colData
|
||||
}
|
||||
for _, colName := range ruleTable {
|
||||
if _, exist := tmpResult[colName]; !exist {
|
||||
tmpResult[colName] = ""
|
||||
}
|
||||
}
|
||||
formatResult[sheetName] = append(formatResult[sheetName], tmpResult)
|
||||
}
|
||||
}
|
||||
// 格式化数据
|
||||
return formatResult, nil
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user