| | |
| | | @PostMapping("/page") |
| | | @RequiresPermissions("business:member:query") |
| | | public ApiResponse<PageData<Member>> findPage (@RequestBody PageWrap<MemberQueryDTO> pageWrap) { |
| | | // LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | // pageWrap.getModel().setCompanyId(user.getCompanyId()); |
| | | return ApiResponse.success(memberService.findPageForCompany(pageWrap)); |
| | | } |
| | | |
| | |
| | | @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()); |
| | | 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( memberService.findPageForCompany(pageWrap).getRecords(), "员工列表详单","员工列表详单",null, response); |
| | | } |
| | | |
| | |
| | | if(solutions.getInsureCycleUnit().equals(Constants.ZERO)){ |
| | | countCyclePriceVO.setEndDate( |
| | | DateUtil.getMontageDate( |
| | | DateUtil.afterDateByType(startDate,0,solutions.getInsureCycle()) |
| | | DateUtil.afterDateByType(startDate,0,solutions.getInsureCycle()-1) |
| | | ,2) |
| | | ); |
| | | }else if(solutions.getInsureCycleUnit().equals(Constants.TWO)){ |
| | |
| | | //获取天数后的日期 |
| | | Date afterDate = DateUtil.afterDateByType(startDate,0,monthDays); |
| | | //赋值 每日结束时分秒 |
| | | countCyclePriceVO.setEndDate(DateUtil.getMontageDate(afterDate,2)); |
| | | countCyclePriceVO.setEndDate(DateUtil.getMontageDate(afterDate,3)); |
| | | }else if(solutions.getInsureCycleUnit().equals(Constants.THREE)){ |
| | | //获取X年后日期 多了一天 |
| | | Date afterDate = DateUtil.afterDateByType(startDate,2,solutions.getInsureCycle()); |
| | |
| | | public static Integer getSexByIdCard(String idCard){ |
| | | Pattern pattern = Pattern.compile("\\d{17}[\\d|x]"); // 定义身份证号码格式的正则表达式 |
| | | Matcher matcher = pattern.matcher(idCard); |
| | | Integer sex = 1; |
| | | Integer sex = 0; |
| | | if (matcher.matches()) { |
| | | int genderCode = Integer.parseInt(idCard.substring(16, 17)); // 从第17位开始提取性别编码(奇数为男性,偶数为女性) |
| | | if ((genderCode % 2 == 1) ) { |
| | | sex = 1; |
| | | sex = 0; |
| | | } else { |
| | | sex = 2; |
| | | sex = 1; |
| | | } |
| | | } else { |
| | | sex = -1; |
| | |
| | | private String remark; |
| | | |
| | | @ApiModelProperty(value = "排序码", example = "1") |
| | | @ExcelColumn(name="序号",index = 1) |
| | | @ExcelColumn(name="序号",index = 1,width = 3) |
| | | private Integer sortnum; |
| | | |
| | | @ApiModelProperty(value = "投保申请编码(关联insurance_apply", example = "1") |
| | |
| | | private Integer memberId; |
| | | |
| | | @ApiModelProperty(value = "实际保险生效止期") |
| | | @ExcelColumn(name="保险生效止期",index = 9) |
| | | @ExcelColumn(name="保险生效止期",index = 9,width = 12,dateFormat="yyyy-MM-dd HH:mm:ss") |
| | | private Date endTime; |
| | | |
| | | @ApiModelProperty(value = "实际保险生效起期") |
| | | @ExcelColumn(name="保险生效起期",index =8) |
| | | @ExcelColumn(name="保险生效起期",index =8,width = 12,dateFormat="yyyy-MM-dd HH:mm:ss") |
| | | private Date startTime; |
| | | |
| | | @ApiModelProperty(value = "身份证号码") |
| | | @ExcelColumn(name="身份证号码",index = 5) |
| | | @ExcelColumn(name="身份证号码",index = 5,width = 12) |
| | | private String idcardNo; |
| | | |
| | | @ApiModelProperty(value = "派遣单位编码(关联dispatch_unit)", example = "1") |
| | |
| | | private Integer worktypeId; |
| | | |
| | | @ApiModelProperty(value = "费用", example = "1") |
| | | @ExcelColumn(name="费用",index = 10) |
| | | @ExcelColumn(name="费用",index = 10,width = 5) |
| | | private BigDecimal fee; |
| | | |
| | | @ApiModelProperty(value = "性别 0男 1女", example = "1") |
| | | @ExcelColumn(name="性别",index =4,valueMapping = "0=男;1=女;") |
| | | @ApiModelProperty(value = "性别 0=男;1=女", example = "1") |
| | | @ExcelColumn(name="性别",index =4,valueMapping = "0=男;1=女;",width = 3) |
| | | private Integer sex; |
| | | |
| | | @ApiModelProperty(value = "当前费用") |
| | |
| | | |
| | | @ApiModelProperty(value = "方案名称") |
| | | @TableField(exist = false) |
| | | @ExcelColumn(name="保险方案",index =2) |
| | | @ExcelColumn(name="保险方案",index =2,width = 10) |
| | | private String solutionName; |
| | | |
| | | @ApiModelProperty(value = "方案主键") |
| | |
| | | |
| | | @ApiModelProperty(value = "派遣单位名称") |
| | | @TableField(exist = false) |
| | | @ExcelColumn(name="派遣单位",index = 6) |
| | | @ExcelColumn(name="派遣单位",index = 6,width = 10) |
| | | private String duName; |
| | | |
| | | @ApiModelProperty(value = "员工名称") |
| | | @ExcelColumn(name="员工姓名",index =3) |
| | | @ExcelColumn(name="员工姓名",index =3,width = 5) |
| | | private String memberName; |
| | | |
| | | @ApiModelProperty(value = "工种名称") |
| | | @ExcelColumn(name="所属工种",index = 7) |
| | | @ExcelColumn(name="所属工种",index = 7,width = 10) |
| | | @TableField(exist = false) |
| | | private String workTypeName; |
| | | |
| | |
| | | @ApiModelProperty(value = "减保人数") |
| | | private Integer delNum; |
| | | |
| | | @ApiModelProperty(value = "创建时间") |
| | | private Date createTime; |
| | | |
| | | @ApiModelProperty(value = "保单生效起期") |
| | | private Date startTime; |
| | | |
| | |
| | | applyChagneDetail.setApplyChangeId(applyChange.getId()); |
| | | applyChagneDetail.setType(Constants.ONE); |
| | | |
| | | applyChagneDetail.setStartTime(DateUtil.getMontageDate(applyDetail.getStartTime(),1)); |
| | | applyChagneDetail.setStartTime(DateUtil.getMontageDate(applyChange.getApplyStartTime(),1)); |
| | | applyChagneDetail.setEndTime(DateUtil.getMontageDate(applyChange.getApplyStartTime(),3)); |
| | | |
| | | applyChagneDetail.setFee( detailFee.multiply(new BigDecimal(-1))); |
| | |
| | | applyChagneDetail.setCreator(loginUserInfo.getId()); |
| | | applyChagneDetail.setIsdeleted(Constants.ZERO); |
| | | applyChagneDetail.setApplyChangeId(applyChange.getId()); |
| | | applyChagneDetail.setStartTime(DateUtil.getMontageDate(applyChange.getStartTime(),1)); |
| | | applyChagneDetail.setStartTime(DateUtil.getMontageDate(applyChange.getApplyStartTime(),1)); |
| | | applyChagneDetail.setEndTime(DateUtil.getMontageDate(insuranceApply.getEndTime(),2)); |
| | | applyChagneDetail.setType(Constants.ZERO); |
| | | applyChagneDetail.setFee(detailFee); |
| | |
| | | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | Constants.ApplyLogType applyLogType = null; |
| | | String info = ""; |
| | | //如果是驳回,只能可驳回已签章状态下的退回申请状态进行操作 |
| | | //如果是驳回,只能可驳回已签章状态下的退回申请状态进行操作 |
| | | if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.WAIT_SIGNATURE.getKey())){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对不起,该申请状态已流转,当前不支持该操作~"); |
| | | } |
| | |
| | | queryWrapper.selectAll(InsuranceApply.class); |
| | | queryWrapper.selectAs(Company::getName,InsuranceApply::getCompanyName); |
| | | queryWrapper.selectAs(Solutions::getName,InsuranceApply::getSolutionsName); |
| | | queryWrapper.select(" DATEDIFF( t.END_TIME ,now() ) AS loseEfficacyDays "); |
| | | queryWrapper.select(" DATEDIFF( t.END_TIME ,now() ) AS loseEfficacyDays "); |
| | | queryWrapper.select(" ( select count(1) from apply_detail ad where ad.apply_id = t.id ) as insureNum"); |
| | | if(!Objects.isNull(pageWrap.getModel())&&!Objects.isNull(pageWrap.getModel().getType())){ |
| | | queryWrapper.select(" ifnull(( select sum(td.fee) from taxes ts inner join tax_detial td on td.TAX_ID = ts.id where ts.status != 2 and td.INSURANCE_APPLY_ID = t.id ),0) as taxesMoney"); |
| | |
| | | if(insuranceApply.getStartTime().compareTo(new Date())<0 && insuranceApply.getEndTime().compareTo(new Date()) > 0 ){ |
| | | insuranceApply.setLoseEfficacyDays(DateUtil.daysBetweenDates(insuranceApply.getEndTime(),new Date())); |
| | | } |
| | | |
| | | |
| | | initApplyStatus(insuranceApply); |
| | | |
| | | //查询附件数据 |
| | | initImgData(insuranceApply); |
| | | |
| | | //查询操作记录 |
| | | List<ApplyLog> applyLogList = applyLogJoinMapper.selectJoinList(ApplyLog.class, |
| | | new MPJLambdaWrapper<ApplyLog>() |
| | |
| | | if(insuranceApply.getStatus().equals(Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey())){ |
| | | //如果当前时间大于结束日期 则使用结束日期对比开始日期 |
| | | if(DateUtil.compareDate(new Date(),insuranceApply.getEndTime())>=Constants.ZERO){ |
| | | insuranceApply.setServiceDays(DateUtil.daysBetweenDates(insuranceApply.getEndTime(),insuranceApply.getStartTime())); |
| | | insuranceApply.setServiceDays( |
| | | DateUtil.daysBetweenDates(insuranceApply.getEndTime(),insuranceApply.getStartTime())+1 |
| | | ); |
| | | }else if(DateUtil.compareDate(insuranceApply.getStartTime(),new Date())>=Constants.ZERO){ |
| | | //未开始 |
| | | insuranceApply.setServiceDays(Constants.ZERO); |
| | | }else{ |
| | | insuranceApply.setServiceDays(DateUtil.daysBetweenDates(new Date(),insuranceApply.getStartTime())); |
| | | insuranceApply.setServiceDays(DateUtil.daysBetweenDates(new Date(),insuranceApply.getStartTime())+1); |
| | | } |
| | | } |
| | | } |
| | |
| | | model.setBaoxiandanFile(f); |
| | | } |
| | | |
| | | if(model.getStatus().equals(Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey())){ |
| | | //如果当前时间大于结束日期 则使用结束日期对比开始日期 |
| | | if(DateUtil.compareDate(new Date(),model.getEndTime())>=Constants.ZERO){ |
| | | model.setServiceDays(DateUtil.daysBetweenDates(model.getEndTime(),model.getStartTime())); |
| | | }else if(DateUtil.compareDate(model.getStartTime(),new Date())>=Constants.ZERO){ |
| | | //未开始 |
| | | model.setServiceDays(Constants.ZERO); |
| | | }else{ |
| | | model.setServiceDays(DateUtil.daysBetweenDates(new Date(),model.getStartTime())); |
| | | } |
| | | } |
| | | // if(model.getStatus().equals(Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey())){ |
| | | // //如果当前时间大于结束日期 则使用结束日期对比开始日期 |
| | | // if(DateUtil.compareDate(new Date(),model.getEndTime())>=Constants.ZERO){ |
| | | // model.setServiceDays(DateUtil.daysBetweenDates(model.getEndTime(),model.getStartTime())); |
| | | // }else if(DateUtil.compareDate(model.getStartTime(),new Date())>=Constants.ZERO){ |
| | | // //未开始 |
| | | // model.setServiceDays(Constants.ZERO); |
| | | // }else{ |
| | | // model.setServiceDays(DateUtil.daysBetweenDates(new Date(),model.getStartTime())); |
| | | // } |
| | | // } |
| | | } |
| | | } |
| | | } |
| | |
| | | if(CollectionUtils.isNotEmpty(applyDetailList)){ |
| | | for (ApplyDetail applyDetail: applyDetailList) { |
| | | //2024-1-30 10:04:24 修改 根据实际天数进行计算 当前费用 总金额/总天数*实际天数 |
| | | Integer maxDays = DateUtil.calculateBetween(applyDetail.getStartTime(),applyDetail.getEndTime(),0) + 1 ; |
| | | Integer maxDays = DateUtil.calculateBetween(applyDetail.getStartTime(),applyDetail.getEndTime(),0); |
| | | BigDecimal fee = applyDetail.getFee(); |
| | | if(applyDetail.getStartTime().compareTo(new Date()) <= 0 && applyDetail.getEndTime().compareTo(new Date()) >= 0 ){ |
| | | Integer days = DateUtil.calculateBetween(applyDetail.getStartTime(),new Date(),0) + 1 ; |
| | | Integer days = DateUtil.calculateBetween(applyDetail.getStartTime(),new Date(),0); |
| | | applyDetail.setCurrentFee(fee.divide(BigDecimal.valueOf(maxDays),2, BigDecimal.ROUND_HALF_UP).multiply(BigDecimal.valueOf(days))); |
| | | applyDetailMapper.updateById(applyDetail); |
| | | } |
| | | // DateUtil.daysBetweenDates(applyDetail.getEndTime(),applyDetail.getStartTime()); |
| | | // applyDetail.setCurrentFee(Constants.countDetailFee(solutions,new Date(),applyDetail.getStartTime())); |
| | | // applyDetailMapper.updateById(applyDetail); |
| | | sumAmount = sumAmount.add(applyDetail.getCurrentFee()); |
| | | } |
| | | } |
| | |
| | | PageData<Notices> pageData = PageData.from(noticesMapper.selectJoinPage(page,Notices.class, queryWrapper)); |
| | | pageData.getRecords().forEach(i->{ |
| | | i.setTypeDetail( |
| | | Constants.NoticeType.getDetail(i.getObjType(),i.getType()) |
| | | Constants.NoticeType.getDetail(i.getType(),i.getObjType()) |
| | | ); |
| | | }); |
| | | return pageData; |
| | |
| | | queryWrapper.eq(!Objects.isNull(queryModel.getStatus()),Taxes::getStatus,queryModel.getStatus()); |
| | | } |
| | | queryWrapper.orderByAsc(Taxes::getCreateDate); |
| | | return taxesJoinMapper.selectJoinList(Taxes.class, queryWrapper); |
| | | |
| | | List<Taxes> result = taxesJoinMapper.selectJoinList(Taxes.class, queryWrapper); |
| | | String path =systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+systemDictDataBiz.queryByCode(Constants.OSS,Constants.TAXES_FILE).getCode(); |
| | | for(Taxes t : result){ |
| | | if(StringUtils.isNotBlank(t.getImgurl())){ |
| | | t.setImgurlFull(path + t.getImgurl()); |
| | | } |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | |