| | |
| | | import com.github.xiaoymin.knife4j.core.util.CollectionUtils; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | return unionApplyMapper.selectCount(wrapper); |
| | | } |
| | | |
| | | @Override |
| | | public UnionApply findDetailForExport(UnionApply model){ |
| | | UnionApply insuranceApply = detail(model.getId()); |
| | | if(Objects.isNull(insuranceApply)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY); |
| | | } |
| | | |
| | | MPJLambdaWrapper<ApplyDetail> queryWrapper = new MPJLambdaWrapper<>(); |
| | | queryWrapper.selectAll(ApplyDetail.class); |
| | | queryWrapper.selectAs(DispatchUnit::getName,ApplyDetail::getDuName); |
| | | queryWrapper.selectAs(Company::getName,ApplyDetail::getCompanyName); |
| | | queryWrapper.selectAs(Worktype::getName,ApplyDetail::getWorkTypeName); |
| | | queryWrapper.selectAs(Member::getIdcardNo,ApplyDetail::getIdcardNo); |
| | | queryWrapper.selectAs(Member::getName,ApplyDetail::getMemberName); |
| | | queryWrapper.leftJoin(DispatchUnit.class,DispatchUnit::getId,ApplyDetail::getDuId); |
| | | queryWrapper.leftJoin(Worktype.class,Worktype::getId,ApplyDetail::getWorktypeId); |
| | | queryWrapper.leftJoin(Member.class,Member::getId,ApplyDetail::getMemberId); |
| | | queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId); |
| | | queryWrapper.eq( ApplyDetail::getUnionApplyId,model.getId()); |
| | | List<ApplyDetail> detailList= applyDetailJoinMapper.selectJoinList( ApplyDetail.class, queryWrapper); |
| | | //查询明细 |
| | | if(detailList!=null){ |
| | | insuranceApply.setInsureNum(detailList.size()); |
| | | insuranceApply.setApplyDetailList(detailList); |
| | | } |
| | | insuranceApply.setRemark(model.getRemark()); |
| | | return insuranceApply; |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | |
| | | .selectAs(Solutions::getName,UnionApply::getSolutionName) |
| | | .selectAs(Company::getName,UnionApply::getCompanyName) |
| | | .select(" ( select count(DISTINCT(ad.MEMBER_ID)) from apply_detail ad where ad.UNION_APPLY_ID = t.id ) as insureNum") |
| | | .select(" ( select group_concat(DISTINCT(cd.name)) from insurance_apply ad left join company cd on ad.company_id = cd.id where ad.UNION_APPLY_ID = t.id ) as companyNames") |
| | | .leftJoin(Solutions.class,Solutions::getId,UnionApply::getSolutionId) |
| | | .leftJoin(Company.class,Company::getId,UnionApply::getCompanyId) |
| | | .eq(UnionApply::getId,applyId) |
| | |
| | | } |
| | | initStatusInfo(unionApply); |
| | | |
| | | //查询附件数据 |
| | | initImgData(unionApply); |
| | | //查询操作记录 |
| | | List<ApplyLog> applyLogList = applyLogJoinMapper.selectJoinList(ApplyLog.class, |
| | | new MPJLambdaWrapper<ApplyLog>() |
| | |
| | | .orderByAsc(ApplyLog::getCreateDate) |
| | | ); |
| | | unionApply.setApplyLogList(applyLogList); |
| | | |
| | | return unionApply; |
| | | } |
| | | |
| | | private void initImgData(UnionApply model) { |
| | | List<Multifile> multifiles = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda() |
| | | .eq(Multifile::getObjId, model.getId()) |
| | | .in(Multifile::getObjType, Arrays.asList(new Integer[]{ |
| | | Constants.MultiFile.HBD_BD_APPLY_PDF.getKey() |
| | | ,Constants.MultiFile.HBD_BD_SIGNED_PDF.getKey() |
| | | ,Constants.MultiFile.WTB_BD_DONE_PDF.getKey() })) |
| | | .eq(Multifile::getIsdeleted,Constants.ZERO) |
| | | .orderByAsc(Multifile::getId)); |
| | | if(multifiles!=null){ |
| | | String path = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode() |
| | | +systemDictDataBiz.queryByCode(Constants.OSS,Constants.APPLY_FILE).getCode(); |
| | | for(Multifile f : multifiles){ |
| | | if(StringUtils.isBlank(f.getFileurl())){ |
| | | continue; |
| | | } |
| | | f.setFileurlFull(path+f.getFileurl()); |
| | | if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.HBD_BD_APPLY_PDF.getKey())){ |
| | | //签署前的投保单 |
| | | model.setToubaodanFile(f); |
| | | }else if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.HBD_BD_SIGNED_PDF.getKey())){ |
| | | //签署后的投保单 |
| | | model.setToubaodanSignedFile(f); |
| | | }else if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.WTB_BD_DONE_PDF.getKey())){ |
| | | //最終保险单 |
| | | model.setBaoxiandanFile(f); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | @Override |
| | |
| | | UnionApply unionApply = new UnionApply(); |
| | | unionApply.setCreateDate(new Date()); |
| | | unionApply.setCreator(user.getId()); |
| | | unionApply.setEditor(user.getId()); |
| | | unionApply.setEditDate(new Date()); |
| | | unionApply.setCompanyId(user.getCompanyId()); |
| | | unionApply.setStartTime(saveUnionApplyDTO.getStartDate()); |
| | | unionApply.setEndTime(saveUnionApplyDTO.getEndDate()); |
| | |
| | | if(!user.getType().equals(Constants.TWO)){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非商户用户,无法进行该操作!"); |
| | | } |
| | | if(Objects.isNull(closeDTO)||Objects.isNull(closeDTO.getId())){ |
| | | if(Objects.isNull(closeDTO) |
| | | ||Objects.isNull(closeDTO.getId()) |
| | | ||StringUtils.isBlank(closeDTO.getReason())){ |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | UnionApply unionApply = unionApplyMapper.selectById(closeDTO.getId()); |
| | |
| | | //合并单状态处于待投保 |
| | | if(unionApply.getStatus().equals(Constants.UnionApplyStatus.UPLOAD_INSURANCE_POLICY.getKey()) |
| | | || unionApply.getStatus().equals(Constants.UnionApplyStatus.WAIT_SIGNATURE.getKey())){ |
| | | //TODO 删除企业投保单的 签署数据 |
| | | |
| | | multifileMapper.delete(new QueryWrapper<Multifile>() |
| | | .lambda() |
| | | .apply(" multifile.id in ( select i.id from insurance_apply i where i.UNION_APPLY_ID = "+unionApply.getId()+" ) ") |
| | | .eq(Multifile::getObjType,Constants.MultiFile.COMPANY_TBD_SIGNED.getKey())); |
| | | } |
| | | insuranceApplyJoinMapper.update(null,new UpdateWrapper<InsuranceApply>().lambda() |
| | | .set(InsuranceApply::getUnionApplyId,null) |
| | | .set(InsuranceApply::getCheckDate,new Date()) |
| | | .set(unionApply.getStatus().equals(Constants.UnionApplyStatus.UPLOAD_INSURANCE_POLICY.getKey()) |
| | | || unionApply.getStatus().equals(Constants.UnionApplyStatus.WAIT_SIGNATURE.getKey()), |
| | | InsuranceApply::getUnionApplyTbdStatus,Constants.ZERO) |
| | | .set(unionApply.getStatus().equals(Constants.UnionApplyStatus.UPLOAD_INSURANCE_POLICY.getKey()) |
| | | || unionApply.getStatus().equals(Constants.UnionApplyStatus.WAIT_SIGNATURE.getKey()), |
| | | InsuranceApply::getApplyTbdNo,null) |
| | | .set(InsuranceApply::getCheckUserId,user.getId()) |
| | | .set(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.WTB_BUSINESS_CHECK_PASS.getKey()) |
| | | .eq(InsuranceApply::getUnionApplyId,unionApply.getId())); |
| | | .eq(InsuranceApply::getUnionApplyId,unionApply.getId()) |
| | | ); |
| | | |
| | | applyDetailJoinMapper.update(null,new UpdateWrapper<ApplyDetail>().lambda() |
| | | .set(ApplyDetail::getUnionApplyId,null) |
| | |
| | | info = info.replace("${param}", closeDTO.getReason()); |
| | | ApplyLog log = new ApplyLog(unionApply,applyLogType.getName(), info |
| | | ,unionApply.getId(),applyLogType.getKey(),null, null); |
| | | applyLogMapper.insert(log); |
| | | |
| | | applyLogMapper.insert(log); |
| | | } |
| | | |
| | |
| | | if(Objects.isNull(unionApply)||!Constants.equalsInteger(unionApply.getIsdeleted(),Constants.ZERO)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY); |
| | | } |
| | | unionApply.setStatus(Constants.formatIntegerNum(unionApply.getStatus())); |
| | | if(!unionApply.getCompanyId().equals(user.getCompanyId())){ |
| | | throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对不起非您的合并单,您无法进行操作!"); |
| | | } |
| | | if(unionApply.getStatus().equals(Constants.UnionApplyStatus.FINISH.getKey())){ |
| | | throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对不起,合并单业务已完结,您无法进行该操作!"); |
| | | } |
| | | if(unionApply.getStatus().equals(Constants.UnionApplyStatus.MERGE.getKey())){ |
| | | if(!unionApply.getStatus().equals(Constants.UnionApplyStatus.MERGE.getKey())){ |
| | | throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(),"对不起,合并单业务已流转,您无法进行该操作!"); |
| | | } |
| | | |
| | |
| | | multifile.setCreateDate(new Date()); |
| | | multifile.setObjId(uploadMultifileDTO.getBusinessId()); |
| | | multifile.setCreateDate(new Date()); |
| | | multifile.setObjType(Constants.MultiFile.HBD_BD_SIGNED_PDF.getKey()); |
| | | multifile.setObjType(Constants.MultiFile.HBD_BD_APPLY_PDF.getKey()); |
| | | multifile.setType(Constants.TWO); |
| | | multifile.setFileurl(uploadMultifileDTO.getFileurl()); |
| | | multifile.setName(uploadMultifileDTO.getName()); |
| | |
| | | .set(UnionApply::getCurrentFee,sumCurrFee) |
| | | .eq(UnionApply::getId,unionApply.getId()) |
| | | ); |
| | | //合并单 总保单 |
| | | //合并单 文件 |
| | | if(StringUtils.isNotBlank(unionApplyBXDDTO.getFileUrl())){ |
| | | Multifile multifile = new Multifile(); |
| | | multifile.setIsdeleted(Constants.ZERO); |