server/company/src/main/java/com/doumee/api/business/MemberController.java
@@ -11,6 +11,7 @@ import com.doumee.dao.business.dto.MemberImport; import com.doumee.dao.business.dto.MemberQueryDTO; import com.doumee.dao.business.model.Member; import com.doumee.dao.business.model.MemberInsurance; import com.doumee.service.business.MemberService; import io.swagger.annotations.*; import org.apache.shiro.SecurityUtils; @@ -84,16 +85,23 @@ return ApiResponse.success(memberService.findPageForCompany(pageWrap)); } @ApiOperation("导出Excel") @PostMapping("/exportExcel") @RequiresPermissions("business:member:exportExcel") public void exportExcel (@RequestBody PageWrap<MemberQueryDTO> pageWrap, HttpServletResponse response) { LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); pageWrap.getModel().setCompanyId(user.getCompanyId()); ExcelExporter.build(Member.class).export(memberService.findPageForCompany(pageWrap).getRecords(), "用工信息表", response); List<Member> list = memberService.findPageForCompany(pageWrap).getRecords(); for (int i = 0; i < list.size(); i++) { Member member = list.get(i); member.setSn(i+1); member.setAge(Constants.getAgeByIdCard(member.getIdcardNo())); } ExcelExporter.build(Member.class).exportWithFirstAndEnd(list, "员工列表详单","员工列表详单",null, response); } @ApiOperation("根据ID查询") @GetMapping("/{id}") @RequiresPermissions("business:member:query") server/company/src/main/java/com/doumee/api/business/MemberInsuranceController.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.core.utils.DateUtil; import com.doumee.dao.business.model.MemberInsurance; import com.doumee.service.business.MemberInsuranceService; import io.swagger.annotations.Api; @@ -85,7 +86,14 @@ @PostMapping("/exportExcel") @RequiresPermissions("business:memberinsurance:exportExcel") public void exportExcel (@RequestBody PageWrap<MemberInsurance> pageWrap, HttpServletResponse response) { ExcelExporter.build(MemberInsurance.class).export(memberInsuranceService.findPage(pageWrap).getRecords(), "员工投保明细记录", response); List<MemberInsurance> list = memberInsuranceService.findPage(pageWrap).getRecords(); for (int i = 0; i < list.size(); i++) { MemberInsurance memberInsurance = list.get(i); memberInsurance.setSn(i+1); } ExcelExporter.build(MemberInsurance.class).exportWithFirstAndEnd(list, "人员投保详单_姓名:"+pageWrap.getModel().getMemberName() +"_身份证号:"+pageWrap.getModel().getIdcardNo(), "人员投保详单_姓名:"+pageWrap.getModel().getMemberName() +"_身份证号:"+pageWrap.getModel().getIdcardNo(),null, response); } @ApiOperation("根据ID查询") server/service/src/main/java/com/doumee/dao/business/model/Member.java
@@ -23,84 +23,72 @@ @TableId(type = IdType.AUTO) @ApiModelProperty(value = "主键", example = "1") @ExcelColumn(name="主键") private Integer id; @ApiModelProperty(value = "创建人编码", example = "1") @ExcelColumn(name="创建人编码") private Integer creator; @ApiModelProperty(value = "创建时间") @ExcelColumn(name="创建时间") private Date createDate; @ApiModelProperty(value = "更新人编码", example = "1") @ExcelColumn(name="更新人编码") private Integer editor; @ApiModelProperty(value = "更新时间") @ExcelColumn(name="更新时间") private Date editDate; @ApiModelProperty(value = "是否删除0否 1是", example = "1") @ExcelColumn(name="是否删除0否 1是") private Integer isdeleted; @ApiModelProperty(value = "备注") @ExcelColumn(name="备注") private String remark; @ApiModelProperty(value = "排序码", example = "1") @ExcelColumn(name="排序码") private Integer sortnum; @ApiModelProperty(value = "姓名") @ExcelColumn(name="姓名") @ExcelColumn(name="员工名称",index = 2) private String name; @ApiModelProperty(value = "投保申请编码(关联insurance_apply", example = "1") @ExcelColumn(name="投保申请编码(关联insurance_apply") private Integer applyId; @ApiModelProperty(value = "实际保险生效止期") @ExcelColumn(name="实际保险生效止期") @ExcelColumn(name="保险生效止期",index = 9) private String endTime; @ApiModelProperty(value = "实际保险生效起期") @ExcelColumn(name="实际保险生效起期") @ExcelColumn(name="保险生效起期",index = 8) private String startTime; @ApiModelProperty(value = "身份证号码") @ExcelColumn(name="身份证号码") @ExcelColumn(name="身份证号",index = 3) private String idcardNo; @ApiModelProperty(value = "企业编码(关联company)", example = "1") @ExcelColumn(name="企业编码(关联company)") private Integer companyId; @ApiModelProperty(value = "派遣单位编码(关联dispatch_unit)", example = "1") @ExcelColumn(name="派遣单位编码(关联dispatch_unit)") private Integer duId; @ApiModelProperty(value = "工种编码", example = "1") @ExcelColumn(name="工种编码") private Integer worktypeId; @ApiModelProperty(value = "性别 0男 1女", example = "1") @ExcelColumn(name="性别 0男 1女") private Integer sex; @ApiModelProperty(value = "保险方案名称") @ExcelColumn(name="保险方案",index = 5) @TableField(exist = false) private String solutionName; @ApiModelProperty(value = "派遣单位名称") @ExcelColumn(name="派遣单位",index = 6) @TableField(exist = false) private String duName; @ApiModelProperty(value = "所属工种名称") @ExcelColumn(name="所属工种",index = 7) @TableField(exist = false) private String workTypeName; @@ -109,8 +97,18 @@ private String companyName; @ApiModelProperty(value = "保险状态:1=保障中;2=不在保") @ExcelColumn(name="保险状态",index = 1,valueMapping = "1=保障中;2=不在保;") @TableField(exist = false) private Integer solutionsStatus; @ApiModelProperty(value = "年龄") @ExcelColumn(name="年龄",index = 4) @TableField(exist = false) private Long age; @ApiModelProperty(value = "序号", example = "1") @ExcelColumn(name="序号",index = 0) @TableField(exist = false) private Integer sn; } server/service/src/main/java/com/doumee/dao/business/model/MemberInsurance.java
@@ -1,5 +1,6 @@ package com.doumee.dao.business.model; import com.baomidou.mybatisplus.annotation.TableField; import com.doumee.core.annotation.excel.ExcelColumn; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.utils.Constants; @@ -162,9 +163,20 @@ @ExcelColumn(name="派遣单位",index = 4) private String duName; @ApiModelProperty(value = "序号", example = "1") @ExcelColumn(name="序号",index = 0) @TableField(exist = false) private Integer sn; @ApiModelProperty(value = "关联明细主键", example = "1") private Integer relationId; @ApiModelProperty(value = "员工名称", example = "1") @TableField(exist = false) private String memberName; // @ApiModelProperty(value = "关联明细类型:0=投保申请;1=加减保/换厂", example = "1") // @ExcelColumn(name="关联明细类型:0=投保申请;1=加减保/换厂") // private Integer relationType; server/service/src/main/java/com/doumee/service/business/impl/MemberInsuranceServiceImpl.java
@@ -5,6 +5,8 @@ import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; import com.doumee.dao.business.MemberInsuranceMapper; import com.doumee.dao.business.MemberMapper; import com.doumee.dao.business.model.Member; import com.doumee.dao.business.model.MemberInsurance; import com.doumee.service.business.MemberInsuranceService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -16,6 +18,7 @@ import org.springframework.util.CollectionUtils; import java.util.List; import java.util.Objects; /** * 员工投保明细记录Service实现 @@ -27,6 +30,9 @@ @Autowired private MemberInsuranceMapper memberInsuranceMapper; @Autowired private MemberMapper memberMapper; @Override public Integer create(MemberInsurance memberInsurance) { @@ -122,6 +128,12 @@ queryWrapper.lambda().eq(MemberInsurance::getApplyId, pageWrap.getModel().getApplyId()); } if (pageWrap.getModel().getMemberId() != null) { Member member = memberMapper.selectById(pageWrap.getModel().getMemberId()); if(!Objects.isNull(member)){ pageWrap.getModel().setMemberName(member.getName()); pageWrap.getModel().setIdcardNo(member.getIdcardNo()); } queryWrapper.lambda().eq(MemberInsurance::getMemberId, pageWrap.getModel().getMemberId()); } if (pageWrap.getModel().getEndTime() != null) { server/service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -181,7 +181,7 @@ .selectAs(DispatchUnit::getName,Member::getDuName) .selectAs(Worktype::getName,Member::getWorkTypeName) .selectAs(Solutions::getName,Member::getSolutionName) .select(" case when now() between t.start_time and t.end_time then 1 else 0 end solutionsStatus ") .select(" case when now() between t.start_time and t.end_time then 1 else 2 end solutionsStatus ") .leftJoin(InsuranceApply.class,InsuranceApply::getId,Member::getApplyId) .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId) .leftJoin(DispatchUnit.class,DispatchUnit::getId,Member::getDuId)