| | |
| | | import com.doumee.dao.business.dto.SaveUnionApplyDTO; |
| | | import com.doumee.dao.business.dto.SaveUnionChangeDTO; |
| | | import com.doumee.dao.business.dto.UnionChangeBXDDTO; |
| | | import com.doumee.dao.business.join.ApplyChagneDetailJoinMapper; |
| | | import com.doumee.dao.business.join.ApplyChangeJoinMapper; |
| | | import com.doumee.dao.business.join.ApplyDetailJoinMapper; |
| | | import com.doumee.dao.business.join.MemberInsuranceJoinMapper; |
| | | import com.doumee.dao.business.join.*; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.business.vo.CountCyclePriceVO; |
| | | import com.doumee.service.business.UnionChangeService; |
| | |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | |
| | | |
| | | @Autowired |
| | | private UnionChangeMapper unionChangeMapper; |
| | | |
| | | @Autowired |
| | | private UnionChangeJoinMapper unionChangeJoinMapper; |
| | | |
| | | @Autowired |
| | | private ApplyChangeJoinMapper applyChangeJoinMapper; |
| | |
| | | @Override |
| | | public PageData<UnionChange> findPage(PageWrap<UnionChange> pageWrap) { |
| | | IPage<UnionChange> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | QueryWrapper<UnionChange> queryWrapper = new QueryWrapper<>(); |
| | | MPJLambdaWrapper<UnionChange> queryWrapper = new MPJLambdaWrapper<>(); |
| | | queryWrapper.selectAll(UnionChange.class); |
| | | queryWrapper.selectAs(UnionApply::getCode,UnionChange::getApplyCode) |
| | | .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 0 )",UnionChange::getAddNum) |
| | | .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 1 )",UnionChange::getDelNum) |
| | | .select("( select count(1) from apply_chagne_detail ad where t.id = ad.UNION_CHANGE_ID and ad.TYPE = 2 )",UnionChange::getChangeNum); |
| | | queryWrapper.leftJoin(UnionApply.class,UnionApply::getId,UnionChange::getUnionApplyId); |
| | | queryWrapper.leftJoin(Solutions.class,Solutions::getId,UnionApply::getSolutionId); |
| | | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | if(user.getType().equals(Constants.TWO)){ |
| | | queryWrapper.eq(UnionChange::getShopId, pageWrap.getModel().getShopId()); |
| | | } |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | if (pageWrap.getModel().getId() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getId, pageWrap.getModel().getId()); |
| | | queryWrapper.eq(UnionChange::getId, pageWrap.getModel().getId()); |
| | | } |
| | | if (pageWrap.getModel().getCreator() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getCreator, pageWrap.getModel().getCreator()); |
| | | queryWrapper.eq(UnionChange::getCreator, pageWrap.getModel().getCreator()); |
| | | } |
| | | |
| | | if (pageWrap.getModel().getQueryStartTime() != null) { |
| | | queryWrapper.ge(UnionChange::getCreateDate, pageWrap.getModel().getQueryStartTime() +" 00:00:00" ); |
| | | } |
| | | if (pageWrap.getModel().getQueryEndTime() != null) { |
| | | queryWrapper.le(UnionChange::getCreateDate, pageWrap.getModel().getQueryEndTime() +" 23:59:59"); |
| | | } |
| | | |
| | | if (pageWrap.getModel().getCreateDate() != null) { |
| | | queryWrapper.lambda().ge(UnionChange::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.lambda().le(UnionChange::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.ge(UnionChange::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); |
| | | queryWrapper.le(UnionChange::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); |
| | | } |
| | | if (pageWrap.getModel().getEditor() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getEditor, pageWrap.getModel().getEditor()); |
| | | queryWrapper.eq(UnionChange::getEditor, pageWrap.getModel().getEditor()); |
| | | } |
| | | if (pageWrap.getModel().getEditDate() != null) { |
| | | queryWrapper.lambda().ge(UnionChange::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); |
| | | queryWrapper.lambda().le(UnionChange::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); |
| | | queryWrapper.ge(UnionChange::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); |
| | | queryWrapper.le(UnionChange::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); |
| | | } |
| | | if (pageWrap.getModel().getIsdeleted() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getIsdeleted, pageWrap.getModel().getIsdeleted()); |
| | | queryWrapper.eq(UnionChange::getIsdeleted, pageWrap.getModel().getIsdeleted()); |
| | | } |
| | | if (pageWrap.getModel().getRemark() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getRemark, pageWrap.getModel().getRemark()); |
| | | queryWrapper.eq(UnionChange::getRemark, pageWrap.getModel().getRemark()); |
| | | } |
| | | if (pageWrap.getModel().getSortnum() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getSortnum, pageWrap.getModel().getSortnum()); |
| | | queryWrapper.eq(UnionChange::getSortnum, pageWrap.getModel().getSortnum()); |
| | | } |
| | | if (pageWrap.getModel().getShopId() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getShopId, pageWrap.getModel().getShopId()); |
| | | queryWrapper.eq(UnionChange::getShopId, pageWrap.getModel().getShopId()); |
| | | } |
| | | if (pageWrap.getModel().getCode() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getCode, pageWrap.getModel().getCode()); |
| | | queryWrapper.eq(UnionChange::getCode, pageWrap.getModel().getCode()); |
| | | } |
| | | if (pageWrap.getModel().getApplyStartTime() != null) { |
| | | queryWrapper.lambda().ge(UnionChange::getApplyStartTime, Utils.Date.getStart(pageWrap.getModel().getApplyStartTime())); |
| | | queryWrapper.lambda().le(UnionChange::getApplyStartTime, Utils.Date.getEnd(pageWrap.getModel().getApplyStartTime())); |
| | | queryWrapper.ge(UnionChange::getApplyStartTime, Utils.Date.getStart(pageWrap.getModel().getApplyStartTime())); |
| | | queryWrapper.le(UnionChange::getApplyStartTime, Utils.Date.getEnd(pageWrap.getModel().getApplyStartTime())); |
| | | } |
| | | if (pageWrap.getModel().getStatus() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getStatus, pageWrap.getModel().getStatus()); |
| | | queryWrapper.eq(UnionChange::getStatus, pageWrap.getModel().getStatus()); |
| | | } |
| | | if (pageWrap.getModel().getValidTime() != null) { |
| | | queryWrapper.lambda().ge(UnionChange::getValidTime, Utils.Date.getStart(pageWrap.getModel().getValidTime())); |
| | | queryWrapper.lambda().le(UnionChange::getValidTime, Utils.Date.getEnd(pageWrap.getModel().getValidTime())); |
| | | queryWrapper.ge(UnionChange::getValidTime, Utils.Date.getStart(pageWrap.getModel().getValidTime())); |
| | | queryWrapper.le(UnionChange::getValidTime, Utils.Date.getEnd(pageWrap.getModel().getValidTime())); |
| | | } |
| | | if (pageWrap.getModel().getValidCode() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getValidCode, pageWrap.getModel().getValidCode()); |
| | | queryWrapper.eq(UnionChange::getValidCode, pageWrap.getModel().getValidCode()); |
| | | } |
| | | if (pageWrap.getModel().getType() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getType, pageWrap.getModel().getType()); |
| | | queryWrapper.eq(UnionChange::getType, pageWrap.getModel().getType()); |
| | | } |
| | | if (pageWrap.getModel().getSignApplyNo() != null) { |
| | | queryWrapper.lambda().eq(UnionChange::getSignApplyNo, pageWrap.getModel().getSignApplyNo()); |
| | | queryWrapper.eq(UnionChange::getSignApplyNo, pageWrap.getModel().getSignApplyNo()); |
| | | } |
| | | for(PageWrap.SortData sortData: pageWrap.getSorts()) { |
| | | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { |
| | |
| | | queryWrapper.orderByAsc(sortData.getProperty()); |
| | | } |
| | | } |
| | | return PageData.from(unionChangeMapper.selectPage(page, queryWrapper)); |
| | | PageData<UnionChange> pageData = PageData.from(unionChangeJoinMapper.selectJoinPage(page,UnionChange.class, queryWrapper)); |
| | | return pageData; |
| | | } |
| | | |
| | | @Override |
| | |
| | | .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId) |
| | | .eq(ApplyChange::getIsdeleted, Constants.ZERO) |
| | | .eq(InsuranceApply::getUnionApplyId,saveUnionChangeDTO.getUnionApplyId()) |
| | | .eq(ApplyChange::getStatus,Constants.ApplyChangeStatus.COMPANY_SIGN.getKey()) |
| | | .eq(ApplyChange::getStatus,Constants.ApplyChangeStatus.PALTFORM_CHECK_PASS.getKey()) |
| | | .eq(InsuranceApply::getStatus,Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey()) |
| | | .eq(ApplyChange::getType,saveUnionChangeDTO.getBusinessType()) |
| | | .in(ApplyChange::getId,saveUnionChangeDTO.getApplyIds()) |
| | |
| | | } |
| | | |
| | | |
| | | public UnionChange unionChangeDetail(Integer unionChangeId){ |
| | | |
| | | UnionChange unionChange = unionChangeJoinMapper.selectJoinOne(UnionChange.class, |
| | | new MPJLambdaWrapper<UnionChange>() |
| | | .selectAll(UnionChange.class) |
| | | .selectAs(Company::getName,UnionChange::getShopName) |
| | | .selectAs(Solutions::getName,UnionChange::getSolutionsName) |
| | | .selectAs(UnionApply::getCode,UnionChange::getApplyCode) |
| | | .selectAs(UnionApply::getStartTime,UnionChange::getStartTime) |
| | | .selectAs(UnionApply::getEndTime,UnionChange::getEndTime) |
| | | .leftJoin(UnionApply.class,UnionApply::getId,UnionChange::getUnionApplyId) |
| | | .leftJoin(Company.class,Company::getId,UnionChange::getShopId) |
| | | .leftJoin(Solutions.class,Solutions::getId,UnionApply::getSolutionId) |
| | | .eq(UnionChange::getId,unionChangeId) |
| | | .last(" limit 1 ") |
| | | ); |
| | | //企业名称 |
| | | List<ApplyChange> applyChangeList = applyChangeJoinMapper.selectJoinList(ApplyChange.class,new MPJLambdaWrapper<ApplyChange>() |
| | | .selectAs(Company::getName,ApplyChange::getCompanyName) |
| | | .leftJoin(Company.class,Company::getId,ApplyChange::getCompanyId) |
| | | .eq(ApplyChange::getUnionChangeId,unionChangeId) |
| | | ); |
| | | |
| | | String companyNames = String.join(",",applyChangeList.stream().map(m->m.getCompanyName()).collect(Collectors.toList())); |
| | | |
| | | List<ApplyChagneDetail> applyChagneDetailList = applyChagneDetailJoinMapper.selectJoinList(ApplyChagneDetail.class,new MPJLambdaWrapper<ApplyChagneDetail>() |
| | | .selectAll(ApplyChagneDetail.class) |
| | | .selectAs(Member::getName,ApplyChagneDetail::getMemberName) |
| | | .selectAs(Member::getIdcardNo,ApplyChagneDetail::getIdcardNo) |
| | | .selectAs(Member::getSex,ApplyChagneDetail::getSex) |
| | | .selectAs(Company::getName,ApplyChagneDetail::getCompanyName) |
| | | .select("t2.name",ApplyChagneDetail::getWorkTypeName) |
| | | .select("t3.name",ApplyChagneDetail::getDuName) |
| | | .select("t4.name",ApplyChagneDetail::getOldWorkTypeName) |
| | | .select("t5.name",ApplyChagneDetail::getOldDuName) |
| | | .leftJoin(Member.class,Member::getId,ApplyChagneDetail::getMemberId) |
| | | .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(Company.class,Company::getId,Member::getCompanyId) |
| | | .eq(ApplyChagneDetail::getUnionChangeId,unionChangeId) |
| | | ); |
| | | |
| | | unionChange.setCompanyNames(companyNames); |
| | | unionChange.setApplyChagneDetailList(applyChagneDetailList); |
| | | return unionChange; |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 合并单(加减保/换厂) - 投保申请签署 |
| | | * @param id |
| | |
| | | throw new BusinessException(ResponseStatus.BAD_REQUEST); |
| | | } |
| | | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | UnionChange unionChange = unionChangeMapper.selectById(id); |
| | | UnionChange unionChange = this.unionChangeDetail(id); |
| | | if(Objects.isNull(unionChange)||!Constants.equalsInteger(unionChange.getIsdeleted(),Constants.ZERO)){ |
| | | throw new BusinessException(ResponseStatus.DATA_EMPTY); |
| | | } |
| | |
| | | |
| | | String fileUrl = null; |
| | | if(Constants.equalsObject(unionChange.getType(), Constants.ONE)){ |
| | | // fileUrl = ExcelExporter.build(ApplyChange.class).exportChangeUnitExcelToPdf(model,"换厂申请表","被保险人"); |
| | | fileUrl = ExcelExporter.build(UnionChange.class).exportUnionChangeOtherUnitExcelToPdf(unionChange,"换厂申请表"); |
| | | }else{ |
| | | // fileUrl = ExcelExporter.build(ApplyChange.class).exportJiajianBaoExcelToPdf(model,"加减保申请表","被保险人"); |
| | | fileUrl = ExcelExporter.build(UnionChange.class).exportUnionChangeExcelToPdf(unionChange,"加减保申请表"); |
| | | } |
| | | |
| | | String notifyUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.SIGN_DONE_NOTIFY_URL).getCode(); |
| | | notifyUrl = notifyUrl.replace("${type}","0").replace("${id}",unionChange.getId().toString()); |
| | | String applyNo = signService.applySignLocalFile(company.getName(),company.getName(),fileUrl,company.getCode(),company.getEmail(),"合并单(加减保/换厂)申请签署",company.getSignId(),notifyUrl); |