瀏覽代碼

工资条导入调整

dzx 1 年之前
父節點
當前提交
a684b8da90

+ 17 - 16
src/main/java/com/xjrsoft/module/personnel/controller/BasePersonnelLabourCapitalController.java

@@ -40,6 +40,8 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.validation.Valid;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -113,25 +115,24 @@ public class BasePersonnelLabourCapitalController {
     }
     @PostMapping("/import")
     @ApiOperation(value = "导入")
-    public RT<Boolean> importData(@Valid AddBasePersonnelLabourCapitalDto dto, @RequestParam("file") MultipartFile file) throws IOException {
-        List<Map<Integer, Object>> excelDataList = EasyExcel.read(file.getInputStream()).sheet().headRowNumber(dto.getDataRow() - 1).doReadSync();
+    public RT<Boolean> importData(@Valid AddBasePersonnelLabourCapitalDto dto, @RequestParam("file") MultipartFile file) throws IOException, ParseException {
+        List<Map<Integer, Object>> excelDataList = EasyExcel.read(file.getInputStream()).sheet().headRowNumber(4 - 1).doReadSync();
         //验证数据
 
-        //默认数据
-        dto.setDataRow(4);
-        dto.setIdNumberColumn(1);
-        dto.setIdTypeColumn(0);
-        dto.setPersonnelNameColumn(3);
-        dto.setJobNumberColumn(2);
-        dto.setAmountToColumn(4);
-
         //处理表头数据,目前只支持2行表头
         List<BasePersonnelLabourCapitalTitle> titleList = initTitleList(excelDataList.get(0), excelDataList.get(1));
         //读取表内容数据
         List<BasePersonnelLabourCapitalData> dataList = initDataList(dto, excelDataList);
-
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
         //构造数据
         BasePersonnelLabourCapital basePersonnelLabourCapital = BeanUtil.toBean(dto, BasePersonnelLabourCapital.class);
+        basePersonnelLabourCapital.setDataRow(4);
+        basePersonnelLabourCapital.setPersonnelNameColumn(3);
+        basePersonnelLabourCapital.setAmountToColumn(4);
+        basePersonnelLabourCapital.setIdTypeColumn(0);
+        basePersonnelLabourCapital.setIdNumberColumn(1);
+        basePersonnelLabourCapital.setJobNumberColumn(2);
+        basePersonnelLabourCapital.setDateOfIssue(sdf.parse(dto.getDateOfIssue()));
         //添加表头数据
         basePersonnelLabourCapital.setBasePersonnelLabourCapitalTitleList(titleList);
         basePersonnelLabourCapital.setBasePersonnelLabourCapitalDataList(dataList);
@@ -154,11 +155,11 @@ public class BasePersonnelLabourCapitalController {
             }
             Map<Integer, Object> datatMap = excelDataList.get(i);
             BasePersonnelLabourCapitalData data = new BasePersonnelLabourCapitalData();
-            data.setName(datatMap.get(dto.getPersonnelNameColumn()) == null?null:datatMap.get(dto.getPersonnelNameColumn()).toString());
-            data.setIdNumber(datatMap.get(dto.getIdNumberColumn()) == null?null:datatMap.get(dto.getIdNumberColumn()).toString());
-            data.setIdType(datatMap.get(dto.getIdTypeColumn()) == null?null:datatMap.get(dto.getIdTypeColumn()).toString());
-            data.setAmountTo(datatMap.get(dto.getAmountToColumn()) == null?null:datatMap.get(dto.getAmountToColumn()).toString());
-            data.setJobNumber(datatMap.get(dto.getJobNumberColumn()) == null?null:datatMap.get(dto.getJobNumberColumn()).toString());
+            data.setName(datatMap.get(3) == null?null:datatMap.get(3).toString());
+            data.setIdNumber(datatMap.get(1) == null?null:datatMap.get(1).toString());
+            data.setIdType(datatMap.get(0) == null?null:datatMap.get(0).toString());
+            data.setAmountTo(datatMap.get(4) == null?null:datatMap.get(4).toString());
+            data.setJobNumber(datatMap.get(2) == null?null:datatMap.get(2).toString());
             data.setExtendJson(JsonUtil.toJsonString(datatMap));
             resultList.add(data);
         }

+ 2 - 36
src/main/java/com/xjrsoft/module/personnel/dto/AddBasePersonnelLabourCapitalDto.java

@@ -4,6 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
+import java.time.LocalDate;
 import java.util.Date;
 import java.util.List;
 
@@ -29,41 +30,6 @@ public class AddBasePersonnelLabourCapitalDto implements Serializable {
     * 发放年月
     */
     @ApiModelProperty("发放年月")
-    private Date dateOfIssue;
-    /**
-    * 数据开始行
-    */
-    @ApiModelProperty("数据开始行")
-    private Integer dataRow;
-    /**
-    * 证件类型所属列
-    */
-    @ApiModelProperty("证件类型所属列")
-    private Integer idTypeColumn;
-    /**
-    * 证件号码所属列
-    */
-    @ApiModelProperty("证件号码所属列")
-    private Integer idNumberColumn;
-    /**
-    * 工号所属列
-    */
-    @ApiModelProperty("工号所属列")
-    private Integer jobNumberColumn;
-    /**
-    * 名称所属列
-    */
-    @ApiModelProperty("名称所属列")
-    private Integer personnelNameColumn;
-    /**
-    * 合计所属列
-    */
-    @ApiModelProperty("合计所属列")
-    private Integer amountToColumn;
-    /**
-    * 数据文件
-    */
-    @ApiModelProperty("数据文件")
-    private String dataFile;
+    private String dateOfIssue;
 
 }