server/company/src/main/java/com/doumee/api/business/ApplyDetailController.java
@@ -75,11 +75,12 @@ return ApiResponse.success(applyDetailService.findPageForCompany(pageWrap)); } @ApiOperation("导出Excel") @ApiOperation("导出在保人员详单Excel") @PostMapping("/exportExcel") @RequiresPermissions("business:applydetail:exportExcel") public void exportExcel (@RequestBody PageWrap<ApplyDetailPageDTO> pageWrap, HttpServletResponse response) { ExcelExporter.build(ApplyDetail.class).export(applyDetailService.findPageForCompany(pageWrap).getRecords(), "投保申请明细信息表", response); //List<T> data, String fileName,String first,String end, HttpServletResponse response ExcelExporter.build(ApplyDetail.class).exportWithFirstAndEnd(applyDetailService.findPageForCompany(pageWrap).getRecords(), pageWrap.getModel().getCompanyName()+"_"+pageWrap.getModel().getSolutionName()+".xlsx","在保人员名单",null, response); } @ApiOperation("根据ID查询") server/platform/src/main/java/com/doumee/api/business/ApplyChangeController.java
@@ -7,6 +7,7 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.dao.business.model.ApplyChange; import com.doumee.dao.business.model.InsuranceApply; import com.doumee.service.business.ApplyChangeService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -109,6 +110,20 @@ ExcelExporter.build(ApplyChange.class).export(applyChangeService.findPage(pageWrap).getRecords(), "加减保换厂申请信息表", response); } @ApiOperation("导出加减保详情单") @PostMapping("/exportJiajianBaoExcel") @RequiresPermissions("business:insuranceapply:exportExcel") public void exportJiajianBaoExcel (@RequestBody ApplyChange model, HttpServletResponse response) { ExcelExporter.build(ApplyChange.class).exportJiajianBaoExcel(applyChangeService.exportJiajianBaoExcel(model), response); } @ApiOperation("导出加减保详情单") @PostMapping("/exportChangeUnitExcel") @RequiresPermissions("business:insuranceapply:exportExcel") public void exportChangeUnitExcel (@RequestBody ApplyChange model, HttpServletResponse response) { ExcelExporter.build(ApplyChange.class).exportChangeUnitExcel(applyChangeService.exportChangeUnitExcel(model), response); } @ApiOperation("根据ID查询") @GetMapping("/{id}") @RequiresPermissions("business:applychange:query") server/platform/src/main/java/com/doumee/api/business/ApplyDetailController.java
@@ -6,6 +6,7 @@ import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.dao.business.dto.ApplyDetailPageDTO; import com.doumee.dao.business.model.ApplyDetail; import com.doumee.service.business.ApplyDetailService; import io.swagger.annotations.Api; @@ -66,20 +67,18 @@ applyDetailService.updateById(applyDetail); return ApiResponse.success(null); } /* @ApiOperation("分页查询") @ApiOperation("分页查询") @PostMapping("/page") @RequiresPermissions("business:applydetail:query") public ApiResponse<PageData<ApplyDetail>> findPage (@RequestBody PageWrap<ApplyDetail> pageWrap) { return ApiResponse.success(applyDetailService.findPage(pageWrap)); public ApiResponse<PageData<ApplyDetail>> findPage (@RequestBody PageWrap<ApplyDetailPageDTO> pageWrap) { return ApiResponse.success(applyDetailService.findPageForCompany(pageWrap)); } @ApiOperation("导出Excel") @ApiOperation("导出在保人员详单Excel") @PostMapping("/exportExcel") @RequiresPermissions("business:applydetail:exportExcel") public void exportExcel (@RequestBody PageWrap<ApplyDetail> pageWrap, HttpServletResponse response) { ExcelExporter.build(ApplyDetail.class).export(applyDetailService.findPage(pageWrap).getRecords(), "投保申请明细信息表", response); }*/ public void exportExcel (@RequestBody PageWrap<ApplyDetailPageDTO> pageWrap, HttpServletResponse response) { ExcelExporter.build(ApplyDetail.class).exportWithFirstAndEnd(applyDetailService.findPageForCompany(pageWrap).getRecords(), pageWrap.getModel().getCompanyName()+"_"+pageWrap.getModel().getSolutionName()+".xlsx","在保人员名单",null, response); } @ApiOperation("根据ID查询") @GetMapping("/{id}") server/platform/src/main/java/com/doumee/api/business/InsuranceApplyController.java
@@ -121,7 +121,7 @@ @ApiOperation("导出投保详情单") @PostMapping("/exportDetailExcel") @RequiresPermissions("business:insuranceapply:exportExcel") public void exportExcel (@RequestBody InsuranceApply model, HttpServletResponse response) { public void exportDetailExcel (@RequestBody InsuranceApply model, HttpServletResponse response) { ExcelExporter.build(InsuranceApply.class).exportApplyDetail(insuranceApplyService.findDetailForExport(model), response); } server/platform/src/main/java/com/doumee/api/business/InsuranceController.java
@@ -7,6 +7,7 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.dao.business.model.Insurance; import com.doumee.dao.business.model.Solutions; import com.doumee.service.business.InsuranceService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -66,6 +67,14 @@ insuranceService.updateById(insurance); return ApiResponse.success(null); } @ApiOperation("禁用启用") @PostMapping("/updateStatus") @RequiresPermissions("business:insurance:update") public ApiResponse updateStatus(@RequestBody Insurance solutions) { insuranceService.updateStatus(solutions); return ApiResponse.success(null); } @ApiOperation("分页查询") @PostMapping("/page") @@ -73,6 +82,12 @@ public ApiResponse<PageData<Insurance>> findPage (@RequestBody PageWrap<Insurance> pageWrap) { return ApiResponse.success(insuranceService.findPage(pageWrap)); } @ApiOperation("查询全部") @PostMapping("/list") @RequiresPermissions("business:insurance:query") public ApiResponse<List<Insurance>> findList (@RequestBody Insurance pageWrap) { return ApiResponse.success(insuranceService.findList(pageWrap)); } @ApiOperation("导出Excel") @PostMapping("/exportExcel") server/platform/src/main/java/com/doumee/api/business/SolutionsController.java
@@ -81,6 +81,12 @@ public ApiResponse<PageData<Solutions>> findPage (@RequestBody PageWrap<Solutions> pageWrap) { return ApiResponse.success(solutionsService.findPage(pageWrap)); } @ApiOperation("查询全部") @PostMapping("/list") @RequiresPermissions("business:solutions:query") public ApiResponse<List<Solutions>> findList (@RequestBody Solutions pageWrap) { return ApiResponse.success(solutionsService.findList(pageWrap)); } @ApiOperation("导出Excel") @PostMapping("/exportExcel") server/platform/src/main/java/com/doumee/api/business/WorktypeController.java
@@ -75,6 +75,12 @@ public ApiResponse<PageData<Worktype>> findPage (@RequestBody PageWrap<Worktype> pageWrap) { return ApiResponse.success(worktypeService.findPage(pageWrap)); } @ApiOperation("查询全部") @PostMapping("/list") @RequiresPermissions("business:worktype:query") public ApiResponse<List<Worktype>> findList (@RequestBody Worktype pageWrap) { return ApiResponse.success(worktypeService.findList(pageWrap)); } @ApiOperation("导出Excel") @PostMapping("/exportExcel") server/service/src/main/java/com/doumee/core/annotation/excel/ExcelExporter.java
@@ -3,6 +3,8 @@ import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.ApplyChagneDetail; import com.doumee.dao.business.model.ApplyChange; import com.doumee.dao.business.model.ApplyDetail; import com.doumee.dao.business.model.InsuranceApply; import lombok.AllArgsConstructor; @@ -456,17 +458,18 @@ header4.createCell(3).setCellValue("身份证号"); header4.createCell(4).setCellValue("派遣单位"); header4.createCell(5).setCellValue("所属工种"); if(data.getApplyDetailList()!=null) if(data.getApplyDetailList()!=null){ // 创建数据记录 for (int rowIndex = 0; rowIndex < data.getApplyDetailList().size(); rowIndex++) { ApplyDetail d = data.getApplyDetailList().get(rowIndex); Row header5 = sheet.createRow(rowIndex + 4); header5.createCell(0).setCellValue(rowIndex+1); header5.createCell(1).setCellValue(StringUtils.defaultString(d.getMemberName(),"")); header5.createCell(2).setCellValue(Constants.equalsInteger(d.getSex(),0)?"男":(Constants.equalsInteger(d.getSex(),1)?"女":"-")); header5.createCell(3).setCellValue(StringUtils.defaultString(d.getIdcardNo(),"")); header5.createCell(4).setCellValue(StringUtils.defaultString(d.getDuName(),"")); header5.createCell(5).setCellValue(StringUtils.defaultString(d.getWorkTypeName(),"")); for (int rowIndex = 0; rowIndex < data.getApplyDetailList().size(); rowIndex++) { ApplyDetail d = data.getApplyDetailList().get(rowIndex); Row header5 = sheet.createRow(rowIndex + 4); header5.createCell(0).setCellValue(rowIndex+1); header5.createCell(1).setCellValue(StringUtils.defaultString(d.getMemberName(),"")); header5.createCell(2).setCellValue(Constants.equalsInteger(d.getSex(),0)?"男":(Constants.equalsInteger(d.getSex(),1)?"女":"-")); header5.createCell(3).setCellValue(StringUtils.defaultString(d.getIdcardNo(),"")); header5.createCell(4).setCellValue(StringUtils.defaultString(d.getDuName(),"")); header5.createCell(5).setCellValue(StringUtils.defaultString(d.getWorkTypeName(),"")); } } sxssfWorkbook.write(os); os.close(); @@ -483,6 +486,218 @@ } } /** * 换厂申请表导出 * @param model * @param response */ public void exportChangeUnitExcel(ApplyChange model, HttpServletResponse response) { try { String encodeFileName = URLEncoder.encode("换厂申请表_"+model.getCompanyName()+"_"+model.getSolutionsName(), Charset.forName("UTF-8").toString()) + ".xlsx"; response.setHeader("Content-Disposition","attachment;filename=" + encodeFileName); response.setContentType("application/octet-stream"); response.setHeader("eva-opera-type", "download"); response.setHeader("eva-download-filename", encodeFileName); this.exportChangeUnitExcelDo(model,"换厂申请表", response.getOutputStream()); } catch (IOException e) { throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR, e); } } /** * 加减申请表导出 * @param model * @param response */ public void exportJiajianBaoExcel(ApplyChange model, HttpServletResponse response) { try { String encodeFileName = URLEncoder.encode("加减保申请表_"+model.getCompanyName()+"_"+model.getSolutionsName(), Charset.forName("UTF-8").toString()) + ".xlsx"; response.setHeader("Content-Disposition","attachment;filename=" + encodeFileName); response.setContentType("application/octet-stream"); response.setHeader("eva-opera-type", "download"); response.setHeader("eva-download-filename", encodeFileName); this.exportJiajianBaoExcelDo(model,"加减保申请表_", response.getOutputStream()); } catch (IOException e) { throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR, e); } } /** * 导出加减保申请详单 * @param data 数据 * @param sheetName Sheet名称 * @param os 输出流 */ public void exportJiajianBaoExcelDo (ApplyChange data, String sheetName, OutputStream os) { SXSSFWorkbook sxssfWorkbook; try { sxssfWorkbook = new SXSSFWorkbook(); Sheet sheet = sxssfWorkbook.createSheet(sheetName); sheet.createFreezePane(0, 1); sheet.addMergedRegion(new CellRangeAddress(0 ,0,0,8)); Row title = sheet.createRow(0); title.setHeight((short) 1000); Cell c = title.createCell(0); c.setCellValue(sheetName); configFirstCell(sxssfWorkbook,c); Row header1 = sheet.createRow(1); header1.createCell(0).setCellValue("投保企业"); header1.createCell(3).setCellValue("保险方案"); header1.createCell(4).setCellValue("保单号"); header1.createCell(5).setCellValue("保险生效起期"); header1.createCell(6).setCellValue("保险生效止期"); header1.createCell(9).setCellValue("加保人数"); header1.createCell(10).setCellValue("减保人数"); header1.createCell(11).setCellValue("期望批单生效期"); sheet.addMergedRegion(new CellRangeAddress(1 ,1,0,2)); sheet.addMergedRegion(new CellRangeAddress(1 ,1,6,8)); Row header2 = sheet.createRow(2); header2.createCell(0).setCellValue(data.getCompanyName()); header2.createCell(3).setCellValue(data.getSolutionsName()); header2.createCell(4).setCellValue(data.getApplyCode()); header2.createCell(5).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getStartTime())); header2.createCell(6).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getEndTime())); header2.createCell(9).setCellValue(data.getAddNum()); header2.createCell(10).setCellValue(data.getDelNum()); header2.createCell(11).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getValidTime())); sheet.addMergedRegion(new CellRangeAddress(2 ,2,0,2)); sheet.addMergedRegion(new CellRangeAddress(2 ,2,6,8)); //空白行 Row header3 = sheet.createRow(3); header2.createCell(0).setCellValue("加保人员"); header2.createCell(6).setCellValue("减保人员"); sheet.addMergedRegion(new CellRangeAddress(3 ,3,0,5)); sheet.addMergedRegion(new CellRangeAddress(3 ,3,6,11)); Row header4 = sheet.createRow(4); header4.createCell(0).setCellValue("序号"); header4.createCell(1).setCellValue("员工姓名"); header4.createCell(2).setCellValue("性别"); header4.createCell(3).setCellValue("身份证号"); header4.createCell(4).setCellValue("派遣单位"); header4.createCell(5).setCellValue("所属工种"); header4.createCell(6).setCellValue("序号"); header4.createCell(7).setCellValue("员工姓名"); header4.createCell(8).setCellValue("性别"); header4.createCell(9).setCellValue("身份证号"); header4.createCell(10).setCellValue("派遣单位"); header4.createCell(11).setCellValue("所属工种"); int maxNum = data.getAddNum()>data.getDelNum()?data.getAddNum():data.getDelNum(); // 创建数据记录 for (int rowIndex = 0; rowIndex <maxNum; rowIndex++) { ApplyChagneDetail addModel = data.getAddDetailList().size()> rowIndex?data.getAddDetailList().get(rowIndex):null; ApplyChagneDetail delModel = data.getDelDetailList().size()> rowIndex?data.getDelDetailList().get(rowIndex):null; Row header5 = sheet.createRow(rowIndex + 5); if(addModel!=null){ header5.createCell(0).setCellValue(rowIndex+1); header5.createCell(1).setCellValue(StringUtils.defaultString(addModel.getMemberName(),"")); header5.createCell(2).setCellValue(Constants.equalsInteger(addModel.getSex(),0)?"男":(Constants.equalsInteger(addModel.getSex(),1)?"女":"-")); header5.createCell(3).setCellValue(StringUtils.defaultString(addModel.getIdcardNo(),"")); header5.createCell(4).setCellValue(StringUtils.defaultString(addModel.getDuName(),"")); header5.createCell(5).setCellValue(StringUtils.defaultString(addModel.getWorkTypeName(),"")); } if(delModel!=null){ header5.createCell(6).setCellValue(rowIndex+1); header5.createCell(7).setCellValue(StringUtils.defaultString(delModel.getMemberName(),"")); header5.createCell(8).setCellValue(Constants.equalsInteger(delModel.getSex(),0)?"男":(Constants.equalsInteger(delModel.getSex(),1)?"女":"-")); header5.createCell(9).setCellValue(StringUtils.defaultString(delModel.getIdcardNo(),"")); header5.createCell(10).setCellValue(StringUtils.defaultString(delModel.getDuName(),"")); header5.createCell(11).setCellValue(StringUtils.defaultString(delModel.getWorkTypeName(),"")); } } sxssfWorkbook.write(os); os.close(); } catch (Exception e) { throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR, e); } finally { if (os != null) { try { os.close(); } catch (IOException e) { e.printStackTrace(); } } } } /** * 导出加减保申请详单 * @param data 数据 * @param sheetName Sheet名称 * @param os 输出流 */ public void exportChangeUnitExcelDo (ApplyChange data, String sheetName, OutputStream os) { SXSSFWorkbook sxssfWorkbook; try { sxssfWorkbook = new SXSSFWorkbook(); Sheet sheet = sxssfWorkbook.createSheet(sheetName); sheet.createFreezePane(0, 1); sheet.addMergedRegion(new CellRangeAddress(0 ,0,0,8)); Row title = sheet.createRow(0); title.setHeight((short) 1000); Cell c = title.createCell(0); c.setCellValue(sheetName); configFirstCell(sxssfWorkbook,c); Row header1 = sheet.createRow(1); header1.createCell(0).setCellValue("投保企业"); header1.createCell(1).setCellValue("保险方案"); header1.createCell(3).setCellValue("保单号"); header1.createCell(4).setCellValue("保险生效起期"); header1.createCell(5).setCellValue("保险生效止期"); header1.createCell(6).setCellValue("换厂人数"); header1.createCell(7).setCellValue("期望批单生效期"); sheet.addMergedRegion(new CellRangeAddress(1 ,1,1,2)); Row header2 = sheet.createRow(2); header2.createCell(0).setCellValue(data.getCompanyName()); header2.createCell(1).setCellValue(data.getSolutionsName()); header2.createCell(3).setCellValue(data.getApplyCode()); header2.createCell(4).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getStartTime())); header2.createCell(5).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getEndTime())); header2.createCell(6).setCellValue(data.getChangeNum()); header2.createCell(7).setCellValue(com.doumee.core.utils.DateUtil.getPlusTime2(data.getValidTime())); sheet.addMergedRegion(new CellRangeAddress(2 ,2,1,2)); Row header4 = sheet.createRow(3); header4.createCell(0).setCellValue("序号"); header4.createCell(1).setCellValue("员工姓名"); header4.createCell(2).setCellValue("性别"); header4.createCell(3).setCellValue("身份证号"); header4.createCell(4).setCellValue("原派遣单位"); header4.createCell(5).setCellValue("原所所属工种"); header4.createCell(6).setCellValue("更改后派遣单位"); header4.createCell(7).setCellValue("更改后所属工种"); // 创建数据记录 for (int rowIndex = 0; rowIndex <data.getChangeDetailList().size(); rowIndex++) { ApplyChagneDetail addModel = data.getChangeDetailList().get(rowIndex); Row header5 = sheet.createRow(rowIndex + 4); header5.createCell(0).setCellValue(rowIndex+1); header5.createCell(1).setCellValue(StringUtils.defaultString(addModel.getMemberName(),"")); header5.createCell(2).setCellValue(Constants.equalsInteger(addModel.getSex(),0)?"男":(Constants.equalsInteger(addModel.getSex(),1)?"女":"-")); header5.createCell(3).setCellValue(StringUtils.defaultString(addModel.getIdcardNo(),"")); header5.createCell(4).setCellValue(StringUtils.defaultString(addModel.getOldDuName(),"")); header5.createCell(5).setCellValue(StringUtils.defaultString(addModel.getOldWorkTypeName(),"")); header5.createCell(6).setCellValue(StringUtils.defaultString(addModel.getDuName(),"")); header5.createCell(7).setCellValue(StringUtils.defaultString(addModel.getWorkTypeName(),"")); } sxssfWorkbook.write(os); os.close(); } catch (Exception e) { throw new BusinessException(ResponseStatus.EXPORT_EXCEL_ERROR, e); } finally { if (os != null) { try { os.close(); } catch (IOException e) { e.printStackTrace(); } } } } @Data @AllArgsConstructor private static class ColumnInfo { server/service/src/main/java/com/doumee/dao/business/dto/ApplyDetailPageDTO.java
@@ -24,6 +24,10 @@ @ApiModelProperty(value = "员工姓名") private String memberName; @ApiModelProperty(value = "员工姓名",hidden = true) private String companyName; @ApiModelProperty(value = "方案名称",hidden = true) private String solutionName; @ApiModelProperty(value = "生效起期 yyyy-MM-dd 开始") private String startTimeS; server/service/src/main/java/com/doumee/dao/business/model/ApplyChagneDetail.java
@@ -73,9 +73,6 @@ @ExcelColumn(name="实际保险生效起期") private Date startTime; @ApiModelProperty(value = "最近操作时间") @ExcelColumn(name="最近操作时间") private Date idcardNo; @ApiModelProperty(value = "派遣单位编码(关联dispatch_unit)") @ExcelColumn(name="派遣单位编码(关联dispatch_unit)") @@ -104,6 +101,9 @@ @ApiModelProperty(value = "员工名称") @TableField(exist = false) private String memberName; @ApiModelProperty(value = "性别 0男 1女") @TableField(exist = false) private Integer sex; @ApiModelProperty(value = "派遣单位名称") @TableField(exist = false) @@ -112,8 +112,17 @@ @ApiModelProperty(value = "工种名称") @TableField(exist = false) private String workTypeName; @ApiModelProperty(value = "派遣单位名称") @TableField(exist = false) private String oldDuName; @ApiModelProperty(value = "工种名称") @TableField(exist = false) private String oldWorkTypeName; @ApiModelProperty(value = "身份证号") @TableField(exist = false) private String idcardNo; @ApiModelProperty(value = "保险费用(人/天)", example = "1") @TableField(exist = false) private BigDecimal solutionPrice; @@ -123,4 +132,5 @@ private Integer solutionTimeUnit; } server/service/src/main/java/com/doumee/dao/business/model/ApplyChange.java
@@ -81,7 +81,6 @@ @ApiModelProperty(value = "批单生效时间") @ExcelColumn(name="批单生效时间") private Date applyStartTime; @ApiModelProperty(value = "状态 0待签署 1已签章 2已上传批单 3退回申请 4平台同意 5平台驳回") @@ -169,4 +168,12 @@ @TableField(exist = false) private int dealBackApply; @ApiModelProperty(value = "保险生效起期") @TableField(exist = false) private Date startTime; @ApiModelProperty(value = "保险生效止期") @TableField(exist = false) private Date endTime; } server/service/src/main/java/com/doumee/dao/business/model/ApplyDetail.java
@@ -24,81 +24,81 @@ @TableId(type = IdType.AUTO) @ApiModelProperty(value = "主键", example = "1") @ExcelColumn(name="主键") // @ExcelColumn(name="主键") private Integer id; @ApiModelProperty(value = "创建人编码", example = "1") @ExcelColumn(name="创建人编码") // @ExcelColumn(name="创建人编码") private Integer creator; @ApiModelProperty(value = "创建时间") @ExcelColumn(name="创建时间") // @ExcelColumn(name="创建时间") private Date createDate; @ApiModelProperty(value = "更新人编码", example = "1") @ExcelColumn(name="更新人编码") // @ExcelColumn(name="更新人编码") private Integer editor; @ApiModelProperty(value = "更新时间") @ExcelColumn(name="更新时间") // @ExcelColumn(name="更新时间") private Date editDate; @ApiModelProperty(value = "是否删除0否 1是", example = "1") @ExcelColumn(name="是否删除0否 1是") // @ExcelColumn(name="是否删除0否 1是") private Integer isdeleted; @ApiModelProperty(value = "备注") @ExcelColumn(name="备注") // @ExcelColumn(name="备注") private String remark; @ApiModelProperty(value = "排序码", example = "1") @ExcelColumn(name="排序码") @ExcelColumn(name="序号",index = 1) private Integer sortnum; @ApiModelProperty(value = "投保申请编码(关联insurance_apply", example = "1") @ExcelColumn(name="投保申请编码(关联insurance_apply") // @ExcelColumn(name="投保申请编码(关联insurance_apply") private Integer applyId; @ApiModelProperty(value = "人员编码(关联memeber)", example = "1") @ExcelColumn(name="人员编码(关联memeber)") // @ExcelColumn(name="人员编码(关联memeber)") private Integer memberId; @ApiModelProperty(value = "实际保险生效止期") @ExcelColumn(name="实际保险生效止期") @ExcelColumn(name="保险生效止期",index = 9) private Date endTime; @ApiModelProperty(value = "实际保险生效起期") @ExcelColumn(name="实际保险生效起期") @ExcelColumn(name="保险生效起期",index =8) private Date startTime; @ApiModelProperty(value = "身份证号码") @ExcelColumn(name="身份证号码") @ExcelColumn(name="身份证号码",index = 5) private String idcardNo; @ApiModelProperty(value = "派遣单位编码(关联dispatch_unit)", example = "1") @ExcelColumn(name="派遣单位编码(关联dispatch_unit)") // @ExcelColumn(name="派遣单位编码(关联dispatch_unit)") private Integer duId; @ApiModelProperty(value = "工种编码(关联worktype)", example = "1") @ExcelColumn(name="工种编码(关联worktype)") // @ExcelColumn(name="工种编码(关联worktype)") private Integer worktypeId; @ApiModelProperty(value = "费用", example = "1") @ExcelColumn(name="费用") @ExcelColumn(name="费用",index = 10) private BigDecimal fee; @ApiModelProperty(value = "性别 0男 1女", example = "1") @ExcelColumn(name="性别 0男 1女") @ExcelColumn(name="性别",index =4,valueMapping = "0=男;1=女;") private Integer sex; @ApiModelProperty(value = "当前费用") @ExcelColumn(name="当前费用") // @ExcelColumn(name="当前费用") private BigDecimal currentFee; @ApiModelProperty(value = "来源主键(apply_chagne_detail)加减保生成存在", example = "1") @ExcelColumn(name="来源主键(apply_chagne_detail)加减保生成存在") // @ExcelColumn(name="来源主键(apply_chagne_detail)加减保生成存在") private Integer fromId; @ApiModelProperty(value = "保单号") @@ -107,6 +107,7 @@ @ApiModelProperty(value = "方案名称") @TableField(exist = false) @ExcelColumn(name="保险方案",index =2) private String solutionName; @ApiModelProperty(value = "批单号") @@ -115,17 +116,17 @@ @ApiModelProperty(value = "派遣单位名称") @TableField(exist = false) @ExcelColumn(name="派遣单位",index = 6) private String duName; @ApiModelProperty(value = "员工名称") @TableField(exist = false) @ExcelColumn(name="员工姓名",index =3) private String memberName; @ApiModelProperty(value = "工种名称") @ExcelColumn(name="所属工种",index = 7) @TableField(exist = false) private String workTypeName; } server/service/src/main/java/com/doumee/dao/business/model/Solutions.java
@@ -128,6 +128,9 @@ @ApiModelProperty(value = "其他说明") @ExcelColumn(name="其他说明") private String ortherInfo; @ApiModelProperty(value = "签章关键字,多个用英文逗号隔开") @ExcelColumn(name="签章关键字,多个用英文逗号隔开") private String signKeyword; @ApiModelProperty(value = "所属方案基表编码(solution_base_id)", example = "1") @ExcelColumn(name="所属方案基表编码(solution_base_id)") @@ -136,9 +139,6 @@ @ApiModelProperty(value = "版本号") @ExcelColumn(name="版本号") private String version; @ApiModelProperty(value = "签字位置关键字,多个英文逗号隔开") @ExcelColumn(name="签字位置关键字,多个英文逗号隔开") private String signKeyword; @ApiModelProperty(value = "记录类型 0基表数据 1历史版本数据", example = "1") @ExcelColumn(name="记录类型 0基表数据 1历史版本数据") server/service/src/main/java/com/doumee/service/business/ApplyChangeService.java
@@ -108,4 +108,8 @@ ApplyChange findDetail(Integer id); Integer editPidan(ApplyChange applyChange); ApplyChange exportJiajianBaoExcel(ApplyChange model); ApplyChange exportChangeUnitExcel(ApplyChange model); } server/service/src/main/java/com/doumee/service/business/impl/ApplyChagneDetailServiceImpl.java
@@ -139,10 +139,6 @@ if (pageWrap.getModel().getStartTime() != null) { queryWrapper.lambda().eq(ApplyChagneDetail::getStartTime, pageWrap.getModel().getStartTime()); } if (pageWrap.getModel().getIdcardNo() != null) { queryWrapper.lambda().ge(ApplyChagneDetail::getIdcardNo, Utils.Date.getStart(pageWrap.getModel().getIdcardNo())); queryWrapper.lambda().le(ApplyChagneDetail::getIdcardNo, Utils.Date.getEnd(pageWrap.getModel().getIdcardNo())); } if (pageWrap.getModel().getDuId() != null) { queryWrapper.lambda().eq(ApplyChagneDetail::getDuId, pageWrap.getModel().getDuId()); } server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java
@@ -910,8 +910,112 @@ ApplyChange applyChange = applyChangeJoinMapper.selectOne(queryWrapper); return applyChange; } /** * 导出换厂申请表 * @param param * @return */ @Override public ApplyChange exportChangeUnitExcel(ApplyChange param){ ApplyChange model = findJoinDetail(param); if(Objects.isNull(model) ||! Constants.equalsInteger(Constants.ZERO,model.getType())){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } //查询明细 List<ApplyChagneDetail> detailList =findJoinChangeDetailList(model); model.setChangeDetailList(detailList!=null?detailList:new ArrayList<>()); model.setChangeNum(model.getChangeDetailList().size()); return model; } /** * 导出加减保申请表 * @param param * @return */ @Override public ApplyChange exportJiajianBaoExcel(ApplyChange param){ ApplyChange model = findJoinDetail(param); if(Objects.isNull(model) ||! Constants.equalsInteger(Constants.ZERO,model.getType())){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } //查询明细 List<ApplyChagneDetail> detailList =findJoinDetailList(model); model.setAddDetailList(new ArrayList<>()); model.setDelDetailList(new ArrayList<>()); if(detailList!=null){ for(ApplyChagneDetail ad :detailList){ if(Constants.equalsInteger(ad.getType(),Constants.ZERO)){ model.getAddDetailList().add(ad); }else{ model.getDelDetailList().add(ad); } } } model.setDelNum(model.getDelDetailList().size()); model.setAddNum(model.getAddDetailList().size()); return model; } private ApplyChange findJoinDetail(ApplyChange param) { MPJLambdaWrapper wrapper= new MPJLambdaWrapper<ApplyChange>() .selectAll(ApplyChange.class) .selectAs(Solutions::getName,ApplyChange::getSolutionsName) .selectAs(Company::getName,ApplyChange::getCompanyName) .selectAs(InsuranceApply::getCode,ApplyChange::getApplyCode) .selectAs(InsuranceApply::getStartTime,ApplyChange::getStartTime) .selectAs(InsuranceApply::getStartTime,ApplyChange::getEndTime) .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId) .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId) .leftJoin(Company.class,Company::getId,ApplyChange::getCompanyId) .eq(ApplyChange::getId,param.getId()) .last("limit 1"); ApplyChange model = applyChangeJoinMapper.selectJoinOne(ApplyChange.class,wrapper); return model; } private List<ApplyChagneDetail> findJoinDetailList(ApplyChange model) { MPJLambdaWrapper wrapper1= new MPJLambdaWrapper<ApplyChagneDetail>() .selectAll(ApplyChagneDetail.class) .selectAs(Member::getName,ApplyChagneDetail::getMemberName) .selectAs(Member::getSex,ApplyChagneDetail::getSex) .selectAs(Member::getIdcardNo,ApplyChagneDetail::getIdcardNo) .selectAs(Worktype::getName,ApplyChagneDetail::getWorkTypeName) .selectAs(DispatchUnit::getName,ApplyChagneDetail::getDuName) .leftJoin(Worktype.class,Worktype::getId,ApplyChagneDetail::getWorktypeId) .leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyChagneDetail::getDuId) .leftJoin(Member.class,Member::getId,ApplyChagneDetail::getMemberId) .eq(ApplyChagneDetail::getIsdeleted,Constants.ZERO) .eq(ApplyChagneDetail::getApplyChangeId,model.getId()); //查询明细 List<ApplyChagneDetail> detailList =applyChagneDetailJoinMapper.selectJoinList(ApplyChagneDetail.class,wrapper1); return detailList; } private List<ApplyChagneDetail> findJoinChangeDetailList(ApplyChange model) { MPJLambdaWrapper wrapper1= new MPJLambdaWrapper<ApplyChagneDetail>() .selectAll(ApplyChagneDetail.class) .selectAs(Member::getName,ApplyChagneDetail::getMemberName) .selectAs(Member::getSex,ApplyChagneDetail::getSex) .select("t1.name as worktypeName") .select("t2.name as duName") .select("t3.name as oldWorktypeName") .select("t4.name as oldDuName") .selectAs(Member::getSex,ApplyChagneDetail::getSex) .selectAs(Member::getIdcardNo,ApplyChagneDetail::getIdcardNo) .leftJoin(Worktype.class,Worktype::getId,ApplyChagneDetail::getWorktypeId) .leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyChagneDetail::getDuId) .leftJoin(Worktype.class,Worktype::getId,ApplyChagneDetail::getOldWorktypeId) .leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyChagneDetail::getOldDuId) .leftJoin(Member.class,Member::getId,ApplyChagneDetail::getMemberId) .eq(ApplyChagneDetail::getIsdeleted,Constants.ZERO) .eq(ApplyChagneDetail::getApplyChangeId,model.getId()); //查询明细 List<ApplyChagneDetail> detailList =applyChagneDetailJoinMapper.selectJoinList(ApplyChagneDetail.class,wrapper1); return detailList; } } server/service/src/main/java/com/doumee/service/business/impl/ApplyDetailServiceImpl.java
@@ -1,5 +1,7 @@ package com.doumee.service.business.impl; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; @@ -167,6 +169,9 @@ @Override public PageData<ApplyDetail> findPageForCompany(PageWrap<ApplyDetailPageDTO> pageWrap) { IPage<ApplyDetail> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); if(pageWrap.getModel().getApplyId() == null){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } MPJLambdaWrapper<ApplyDetail> queryWrapper = new MPJLambdaWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); queryWrapper.selectAll(ApplyDetail.class); @@ -176,15 +181,11 @@ queryWrapper.leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId); queryWrapper.leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId); queryWrapper.leftJoin(Member.class,Member::getId,ApplyDetail::getMemberId); ApplyDetailPageDTO applyDetailPageDTO = pageWrap.getModel(); queryWrapper.eq(!Objects.isNull(applyDetailPageDTO.getApplyId()),ApplyDetail::getApplyId,applyDetailPageDTO.getApplyId()); queryWrapper.ge(!Objects.isNull(applyDetailPageDTO.getApplyStatus()) &&!applyDetailPageDTO.getApplyStatus().equals(Constants.ZERO), ApplyDetail::getStartTime, DateUtil.getDate(new Date(),"yyyy-MM-dd")+" 00:00:00"); //在保 queryWrapper.le(!Objects.isNull(applyDetailPageDTO.getApplyStatus()) &&applyDetailPageDTO.getApplyStatus().equals(Constants.ONE), @@ -209,6 +210,12 @@ } } PageData<ApplyDetail> pageData = PageData.from(applyDetailJoinMapper.selectJoinPage(page,ApplyDetail.class, queryWrapper)); if(pageData.getRecords()!=null){ int num = 1; for (ApplyDetail d : pageData.getRecords()){ d.setSortnum(num++); } } return pageData; } server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -746,7 +746,7 @@ MPJLambdaWrapper wrapper= new MPJLambdaWrapper<InsuranceApply>() .selectAll(InsuranceApply.class) .selectAs(Solutions::getName,InsuranceApply::getSolutionsName) .selectAs(Company::getName,ApplyLog::getCompanyName) .selectAs(Company::getName,InsuranceApply::getCompanyName) .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId) .leftJoin(Company.class,Company::getId,InsuranceApply::getCompanyId) .eq(InsuranceApply::getId,model.getId()) server/service/src/main/java/com/doumee/service/business/impl/SolutionsServiceImpl.java
@@ -254,6 +254,7 @@ @Override public List<Solutions> findList(Solutions solutions) { solutions.setIsdeleted(Constants.ZERO); solutions.setDataType(Constants.TWO); QueryWrapper<Solutions> wrapper = new QueryWrapper<>(solutions); return solutionsMapper.selectList(wrapper); }