From ec03cf22d77bd61979f1f2169becd6403083786e Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期二, 02 四月 2024 17:15:42 +0800 Subject: [PATCH] git ch --- server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java | 147 +++++++++++++++++++++++++++++++++++++----------- 1 files changed, 113 insertions(+), 34 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java index 69d410b..2559dc4 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/ApplyChangeServiceImpl.java @@ -12,10 +12,7 @@ import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.*; -import com.doumee.dao.business.dto.ApplyChangeCyclePriceDTO; -import com.doumee.dao.business.dto.ApplyChangeOptDTO; -import com.doumee.dao.business.dto.CountCyclePriceDTO; -import com.doumee.dao.business.dto.InsuranceApplyOptDTO; +import com.doumee.dao.business.dto.*; import com.doumee.dao.business.join.*; import com.doumee.dao.business.model.*; import com.doumee.dao.business.vo.CountCyclePriceVO; @@ -25,6 +22,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.doumee.service.business.SmsEmailService; import com.doumee.service.business.third.SignService; import com.github.xiaoymin.knife4j.core.util.CollectionUtils; import com.github.yulichang.wrapper.MPJLambdaWrapper; @@ -104,6 +102,8 @@ @Autowired private SolutionsMapper solutionsMapper; + @Autowired + private SmsEmailService smsEmailService; @Autowired private NoticesMapper noticesMapper; /** @@ -776,7 +776,10 @@ if (Objects.isNull(insuranceApply)) { throw new BusinessException(ResponseStatus.DATA_EMPTY); } - if (!Constants.equalsInteger(insuranceApply.getStatus(),Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey())) { + if (!(Constants.equalsInteger(insuranceApply.getStatus(), + Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey())||Constants.equalsInteger(insuranceApply.getStatus(), + Constants.InsuranceApplyStatus.WTB_DONE.getKey())) + ) { throw new BusinessException(ResponseStatus.DATA_ERRO.getCode(), "淇濆崟鐘舵�侀敊璇�"); } if (DateUtil.compareDate(insuranceApply.getEndTime(),new Date()) >= Constants.ZERO @@ -1470,6 +1473,7 @@ .eq(!Objects.isNull(model.getSolutionType()),Solutions::getType,model.getSolutionType()) .eq(!Objects.isNull(model.getApplyId()),ApplyChange::getApplyId,model.getApplyId()) .eq(!Objects.isNull(model.getBaseSolutionsId()),Solutions::getBaseId,model.getBaseSolutionsId()) + .like(StringUtils.isNotBlank(model.getSolutionsName()),Solutions::getName,model.getSolutionsName()) .ge(StringUtils.isNotBlank(model.getCreateDateS()),ApplyChange::getCreateDate, model.getCreateDateS()+" 00:00:00" ) .le(StringUtils.isNotBlank(model.getCreateDateE()),ApplyChange::getCreateDate, model.getCreateDateE()+" 23:59:59" ) .ge(StringUtils.isNotBlank(model.getApplyStartS()),ApplyChange::getApplyStartTime, model.getApplyStartS()+" 00:00:00" ) @@ -1565,7 +1569,12 @@ Notices notices = new Notices(noticeObjectType,Constants.ZERO,applyChange.getId(),solutions.getName(), insuranceApply.getCompanyId(), Constants.NoticeType.THREE); noticesMapper.insert(notices); - + //鍟嗘埛寰呭姙 + if(Objects.nonNull(solutions.getShopId())){ + Notices shopNotices = new Notices(noticeObjectType,Constants.TWO, + applyChange.getId(),solutions.getName(),solutions.getShopId(),Constants.NoticeType.THREE); + noticesMapper.insert(shopNotices); + } }else if(applyChangeOptDTO.getOptType().equals(4)){ applyLogType = Constants.ApplyLogType.CA_PLATFORM_AGREE_BACK_APPLY; @@ -1967,17 +1976,25 @@ * 浜哄憳鍚嶅崟绛剧珷 */ @Override - public String getChangeMemberListOnlineSignLink(Integer applyChangeId) { - ApplyChange model = this.queryApplyChangeData(applyChangeId); + public String getChangeMemberListOnlineSignLink(SmsCheckDTO smsCheckDTO) { + if(Objects.isNull(smsCheckDTO) + || Objects.isNull(smsCheckDTO.getBusinessId()) + || StringUtils.isBlank(smsCheckDTO.getCode()) + ){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + //楠岃瘉 楠岃瘉鐮� + if(!debugModel){ + smsEmailService.validateCode(smsCheckDTO.getCode()); + } + ApplyChange model = this.queryApplyChangeData(smsCheckDTO.getBusinessId()); if(Objects.isNull(model)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠姞鍑忎繚淇℃伅"); } if(Objects.isNull(model) ||! Constants.equalsInteger(Constants.ZERO,model.getIsdeleted())){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } - if(!Constants.equalsInteger(Constants.ZERO,model.getStatus())){ - throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔绛剧珷鎿嶄綔锛�"); - } + LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); Company company = user.getCompany(); if(debugModel){ @@ -1990,36 +2007,98 @@ if(Objects.isNull(solutions)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈡柟妗堜俊鎭�"); } - if(solutions.getType().equals(Constants.ZERO)){ - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝闈炲鎵樹繚鏂规淇濆崟锛屾棤娉曡繘琛岃鎿嶄綔!"); - } String fileUrl = null; - if(Constants.equalsObject(model.getType(), Constants.ONE)){ - fileUrl = ExcelExporter.build(ApplyChange.class).exportChangeUnitExcelToPdf(model,"鎹㈠巶鐢宠琛�","琚繚闄╀汉"); + if(solutions.getType().equals(Constants.ONE)){ + if(!Constants.equalsInteger(Constants.ZERO,model.getStatus())){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔绛剧珷鎿嶄綔锛�"); + } + if(Constants.equalsObject(model.getType(), Constants.ONE)){ + fileUrl = ExcelExporter.build(ApplyChange.class).exportChangeUnitExcelToPdf(model,"鎹㈠巶鐢宠琛�","琚繚闄╀汉"); + }else{ + fileUrl = ExcelExporter.build(ApplyChange.class).exportJiajianBaoExcelToPdf(model,"鍔犲噺淇濈敵璇疯〃","琚繚闄╀汉"); + } + String notifyUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.SIGN_DONE_NOTIFY_URL).getCode(); + notifyUrl = notifyUrl.replace("${type}","0").replace("${id}",model.getId().toString()); + String applyNo = signService.applySignLocalFile(company.getName(),company.getName(),fileUrl,company.getCode(),company.getEmail(),"浜哄憳鍚嶅崟绛剧珷",company.getSignId(),notifyUrl); + if(StringUtils.isBlank(applyNo) ){ + throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇鍦ㄧ嚎绛剧珷鍦板潃澶辫触锛岃绋嶅悗閲嶈瘯锛�"); + } + String link = signService.signLink(applyNo,company.getName(),company.getCode()); + if(StringUtils.isBlank(link) ){ + throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇鍦ㄧ嚎绛剧珷鍦板潃澶辫触锛岃绋嶅悗閲嶈瘯锛�"); + } + ApplyChange update= new ApplyChange(); + update.setId(model.getId()); + update.setEditor(user.getId()); + update.setEditDate(new Date()); + update.setSignMemberListNo(applyNo); + applyChangeMapper.updateById(update); + return link; }else{ - fileUrl = ExcelExporter.build(ApplyChange.class).exportJiajianBaoExcelToPdf(model,"鍔犲噺淇濈敵璇疯〃","琚繚闄╀汉"); + return this.getSignLinkJiajiabao(model); } - String notifyUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.SIGN_DONE_NOTIFY_URL).getCode(); - notifyUrl = notifyUrl.replace("${type}","0").replace("${id}",model.getId().toString()); - String applyNo = signService.applySignLocalFile(company.getName(),company.getName(),fileUrl,company.getCode(),company.getEmail(),"浜哄憳鍚嶅崟绛剧珷",company.getSignId(),notifyUrl); - if(StringUtils.isBlank(applyNo) ){ - throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇鍦ㄧ嚎绛剧珷鍦板潃澶辫触锛岃绋嶅悗閲嶈瘯锛�"); - } - String link = signService.signLink(applyNo,company.getName(),company.getCode()); - if(StringUtils.isBlank(link) ){ - throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇鍦ㄧ嚎绛剧珷鍦板潃澶辫触锛岃绋嶅悗閲嶈瘯锛�"); - } - ApplyChange update= new ApplyChange(); - update.setId(model.getId()); - update.setEditor(user.getId()); - update.setEditDate(new Date()); - update.setSignMemberListNo(applyNo); - applyChangeMapper.updateById(update); - return link; } + @Override + @Transactional(rollbackFor = {Exception.class,BusinessException.class}) + public Integer check(ApplyChange applyChange) { + LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); + if(!user.getType().equals(Constants.TWO)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"闈炲晢鎴风鏃犳硶杩涜璇ユ搷浣�"); + } + if(applyChange.getId() == null){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + ApplyChange model = applyChangeJoinMapper.selectJoinOne(ApplyChange.class, + new MPJLambdaWrapper<ApplyChange>() + .selectAll(ApplyChange.class) + .selectAs(InsuranceApply::getSolutionId,ApplyChange::getSolutionsId) + .leftJoin(InsuranceApply.class,InsuranceApply::getId,ApplyChange::getApplyId) + .eq(ApplyChange::getId,applyChange.getId()) + .last(" limit 1") + ); + if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY); + } + Solutions solutions = solutionsMapper.selectById(model.getSolutionsId()); + if(Objects.isNull(solutions)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈡柟妗堜俊鎭�"); + } + if(solutions.getType().equals(Constants.ZERO)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐩翠繚鍗曟嵁鏃犳硶杩涜璇ユ搷浣�"); + }else{ + if(!Constants.equalsInteger(model.getStatus(),Constants.ApplyChangeStatus.COMPANY_SIGN.getKey())){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵"); + } + } + + ApplyChange update = new ApplyChange(); + update.setEditDate(new Date()); + update.setEditor(user.getId()); + update.setCheckDate(update.getEditDate()); + update.setCheckInfo(applyChange.getCheckInfo()); + update.setCheckUserId(user.getId()); + update.setId(model.getId()); + if(applyChange.getDealBackApply() ==1){ + //濡傛灉鏄笉閫氳繃 + update.setStatus(Constants.ApplyChangeStatus.PALTFORM_CHECK_PASS_NO.getKey()); + }else{ + update.setStatus(Constants.ApplyChangeStatus.PALTFORM_CHECK_PASS.getKey()); + } + applyChangeJoinMapper.updateById(update); + Constants.NoticeObjectType noticeObjectType = Constants.NoticeObjectType.APPLY_CHANGE; + if(Constants.equalsInteger(applyChange.getType(),Constants.ONE)){ + noticeObjectType = Constants.NoticeObjectType.CHANGE_FACTORY; + } + //鍒犻櫎鍏ㄩ儴寰呭姙 + noticesMapper.delete(new QueryWrapper<Notices>().lambda() + .eq(Notices::getObjType, noticeObjectType.getKey()) + .eq(Notices::getObjId, model.getId())); + return 1; + + } } -- Gitblit v1.9.3