From 831cafdd72242d89fcc1f5e447c919a31e129f51 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 29 一月 2024 17:43:43 +0800
Subject: [PATCH] 开发业务接口

---
 server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java |   41 ++++++++++++++++++++++++++++-------------
 1 files changed, 28 insertions(+), 13 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
index e13e60a..70ba94a 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/InsuranceApplyServiceImpl.java
@@ -32,6 +32,7 @@
 import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.SecurityUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -46,6 +47,8 @@
  */
 @Service
 public class InsuranceApplyServiceImpl implements InsuranceApplyService {
+    @Value("${debug_model}")
+    private boolean debugModel;
 
     @Autowired
     private InsuranceApplyMapper insuranceApplyMapper;
@@ -56,6 +59,8 @@
     private SystemDictDataBiz systemDictDataBiz;
     @Autowired
     private InsuranceApplyJoinMapper insuranceApplyJoinMapper;
+    @Autowired
+    private CompanyMapper companyMapper;
 
     @Autowired
     private ApplyDetailMapper applyDetailMapper;
@@ -135,11 +140,11 @@
         if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.SIGNATURE.getKey())){
             throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵");
         }
-        if(model.getApplyEndTime()== null || insuranceApply.getStartTime().getTime()>insuranceApply.getApplyEndTime().getTime() ){
+        if(model.getApplyEndTime()== null || model.getStartTime().getTime()>model.getApplyEndTime().getTime() ){
             throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风敓鏁堝懆鏈熸椂闂翠笉绗﹀悎瑕佹眰锛岃纭鍚庝慨鏀归噸璇晘");
         }
         //璁$畻瀹為檯鎴鏃堕棿
-        Date actEndTime = new Date(insuranceApply.getApplyEndTime().getTime() + (insuranceApply.getStartTime().getTime() - model.getApplyStartTime().getTime()));
+        Date actEndTime = new Date(model.getApplyEndTime().getTime() + (insuranceApply.getStartTime().getTime() - model.getApplyStartTime().getTime()));
         LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
         InsuranceApply update = new InsuranceApply();
         update.setEditDate(new Date());
@@ -156,7 +161,7 @@
 
         insuranceApply.getBaoxiandanFile().setIsdeleted(Constants.ZERO);
         insuranceApply.getBaoxiandanFile().setCreator(user.getId());
-        insuranceApply.getToubaodanFile().setObjId(update.getId());
+        insuranceApply.getBaoxiandanFile().setObjId(update.getId());
         insuranceApply.getBaoxiandanFile().setCreateDate(update.getEditDate());
         insuranceApply.getBaoxiandanFile().setObjType(Constants.MultiFile.BD_DONE_PDF.getKey());
         insuranceApply.getBaoxiandanFile().setType(Constants.TWO);
@@ -219,7 +224,7 @@
         param.getBaoxiandanFile().setObjType(Constants.MultiFile.BD_DONE_PDF.getKey());
         param.getBaoxiandanFile().setType(Constants.TWO);
         multifileMapper.insert(param.getBaoxiandanFile());
-
+        update.setStatus(model.getStatus());
         Constants.ApplyLogType applyLogType = Constants.ApplyLogType.PALTFORM_EDIT_BD;
         String info =  applyLogType.getInfo();
         info = info.replace("${param}",param.getCheckInfo());
@@ -289,7 +294,14 @@
         if(id == null ){
             throw  new BusinessException(ResponseStatus.BAD_REQUEST);
         }
-        InsuranceApply model = insuranceApplyMapper.selectById(id);
+        MPJLambdaWrapper wrapper=  new MPJLambdaWrapper<InsuranceApply>()
+                .selectAll(InsuranceApply.class)
+                .selectAs(Solutions::getSignKeyword,InsuranceApply::getSignKeyword)
+                .leftJoin(Solutions.class,Solutions::getId,InsuranceApply::getSolutionId)
+                .eq(InsuranceApply::getId,id)
+                .last("limit 1");
+
+        InsuranceApply model = insuranceApplyJoinMapper.selectJoinOne(InsuranceApply.class,wrapper);
         if(model == null ||!Constants.equalsInteger(model.getIsdeleted(),Constants.ZERO)){
             throw  new BusinessException(ResponseStatus.DATA_EMPTY);
         }
@@ -298,11 +310,14 @@
         Constants.ApplyLogType applyLogType = null;
         String info = "";
             //濡傛灉鏄┏鍥�,鍙兘鍙┏鍥炲凡绛剧珷鐘舵�佷笅鐨勯��鍥炵敵璇风姸鎬佽繘琛屾搷浣�
-        if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.COMPANY_BACK_APPLY_WAIT_SIGNATURE.getKey())){
+        if(!Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.WAIT_SIGNATURE.getKey())){
             throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ョ敵璇风姸鎬佸凡娴佽浆锛屽綋鍓嶄笉鏀寔璇ユ搷浣渵");
         }
         Company company = user.getCompany();
-        if(company== null || StringUtils.isBlank( company.getEmail()) || !Constants.equalsInteger(company.getSignStatus(),Constants.ONE)){
+        if(debugModel){
+            company = companyMapper.selectById(model.getCompanyId());
+        }
+        if(company== null || StringUtils.isBlank( company.getEmail()) || !Constants.equalsInteger(company.getSignStatus(),Constants.THREE)){
             throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝浼佷笟灏氭湭鍏峰鍦ㄧ嚎绛剧珷鏉′欢锛岃鑱旂郴骞冲彴绠$悊鍛樼‘璁");
         }
 
@@ -316,11 +331,11 @@
         String url = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()+systemDictDataBiz.queryByCode(Constants.OSS,Constants.APPLY_FILE).getCode()+f.getFileurl();
         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.applySign(company.getName(),url,company.getName(),company.getCode(),company.getEmail(),null,company.getSignId(),notifyUrl);
+        String applyNo = signService.applySign(company.getName(),url,company.getName(),company.getCode(),company.getEmail(),model.getSignKeyword(),company.getSignId(),notifyUrl);
         if(StringUtils.isBlank(applyNo) ){
             throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇鍦ㄧ嚎绛剧珷鍦板潃澶辫触锛岃绋嶅悗閲嶈瘯锛�");
         }
-        String link = signService.signLink(applyNo,company.getEmail(),company.getCode());
+        String link = signService.signLink(applyNo,company.getName(),company.getCode());
         if(StringUtils.isBlank(link) ){
             throw  new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鑾峰彇鍦ㄧ嚎绛剧珷鍦板潃澶辫触锛岃绋嶅悗閲嶈瘯锛�");
         }
@@ -358,7 +373,7 @@
         InsuranceApply update = new InsuranceApply();
         update.setEditDate(new Date());
         update.setEditor(model.getCreator());
-        update.setStatus(Constants.InsuranceApplyStatus.UPLOAD_INSURANCE.getKey());
+        update.setStatus(Constants.InsuranceApplyStatus.SIGNATURE.getKey());
         update.setCheckDate(update.getEditDate());
         update.setCheckInfo("浼佷笟瀹屾垚绛剧讲");
         update.setCheckUserId(model.getCreator());
@@ -449,7 +464,7 @@
         if(Constants.equalsInteger(data.getSignStatus(), Constants.THREE )){
             //濡傛灉宸蹭繚鍏�,鍙笅杞界绾﹂檮浠�
             InsuranceApply model = insuranceApplyMapper.selectOne(new QueryWrapper<InsuranceApply>().lambda().eq(InsuranceApply::getSignApplyNo,data.getApplyNo()).last("limit 1" ));
-            if(model != null && Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.COMPANY_BACK_APPLY_WAIT_SIGNATURE.getKey())){
+            if(model != null && Constants.equalsInteger(model.getStatus(),Constants.InsuranceApplyStatus.WAIT_SIGNATURE.getKey())){
                 //瀹屾垚绛剧讲宸插畬鎴愭搷浣�
                 String link = signService.linkFile(data.getApplyNo());
                 String fileUrl = uploadSignFile(link);
@@ -522,7 +537,7 @@
 
         Constants.ApplyLogType applyLogType = Constants.ApplyLogType.WAIT_SIGNATURE;
         String info =applyLogType.getInfo();
-        info = info.replace("${param}", update.getCheckInfo());
+//        info = info.replace("${param}", update.getCheckInfo());
         ApplyLog log = new ApplyLog(update,applyLogType.getName(),StringUtils.isNotBlank(update.getCheckInfo())?info:"",update.getId(),applyLogType.getKey(),JSONObject.toJSONString(model), JSONObject.toJSONString(update));
         applyLogMapper.insert(log);
         return  1;
@@ -981,7 +996,7 @@
                 f.setFileurlFull(path+f.getFileurl());
                 if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.BD_APPLY_PDF.getKey())){
                     //绛剧讲鍓嶇殑鎶曚繚鍗�
-                    model.setBaoxiandanFile(f);
+                    model.setToubaodanFile(f);
                 }else if(Constants.equalsInteger(f.getObjType(),Constants.MultiFile.BD_SIGNED_PDF.getKey())){
                     //绛剧讲鍚庣殑鎶曚繚鍗�
                     model.setToubaodanSignedFile(f);

--
Gitblit v1.9.3