feat(meter):基本完成0.4kV表计档案批量导入功能。

This commit is contained in:
徐涛
2022-08-17 15:32:07 +08:00
parent 81533fcdf3
commit 97f8ef65d8
2 changed files with 53 additions and 2 deletions

View File

@@ -6,6 +6,7 @@ import (
"electricity_bill_calc/response"
"electricity_bill_calc/security"
"electricity_bill_calc/service"
"electricity_bill_calc/utils"
"fmt"
"log"
"net/http"
@@ -261,6 +262,21 @@ func batchImport04kVMeterArchive(c *gin.Context) {
result.Json(http.StatusNotAcceptable, "上传的表计档案文件存在错误。", gin.H{"errors": errs})
return
}
log.Printf("[controller|debug] records: %+v", records)
result.Failure(http.StatusNotAcceptable, "调试中")
mergedMeters := utils.Map(records, func(meter model.Meter04KV) model.Meter04KV {
meter.ParkId = requestParkId
meter.Enabled = true
return meter
})
errs = service.Meter04kVService.DuplicateMeterCodeValidate(mergedMeters)
if len(errs) > 0 {
result.Json(http.StatusNotAcceptable, "上传的表计档案文件存在错误。", gin.H{"errors": errs})
return
}
err = service.Meter04kVService.BatchCreateMeter(mergedMeters)
if err != nil {
result.Error(http.StatusInternalServerError, err.Error())
return
}
result.Json(http.StatusOK, "上传的表计档案已经全部导入。", gin.H{"errors": make([]excel.ExcelAnalysisError, 0)})
}