Ver código fonte

普通公证文书保存面谈笔录重新生成

sakuya 3 anos atrás
pai
commit
ce0e2ac2f0

+ 1 - 20
eladmin-system/src/main/java/me/zhengjie/application/admin/service/impl/NotaryNoteServiceImpl.java

@@ -104,7 +104,7 @@ public class NotaryNoteServiceImpl implements NotaryNoteService {
 			orderFileMapper.updateById(orderFile);
 		}
 		saveNotaryUserId(notary.getBusinessNo());
-		recreateApplyDoc(notary.getBusinessNo());
+		modelSynthesizerDomain.recreateCommonDoc(notary.getBusinessNo());
 		return response;
 	}
 
@@ -123,25 +123,6 @@ public class NotaryNoteServiceImpl implements NotaryNoteService {
 		contractOrderRepository.updateWithId(saveOrder);
 	}
 
-	/**
-	 * 重新生成申请表
-	 *
-	 * @param businessNo
-	 */
-	private void recreateApplyDoc(String businessNo) {
-		ContractOrderEntity contractOrderEntity = contractOrderRepository.getContractOrderWithBizNo(businessNo);
-		ModelEntity model = modelRepository.getModelEntity(contractOrderEntity.getProdId(), contractOrderEntity.getContractType(), contractOrderEntity.getNotaryOfficeId(), ModelConstant.MODEL_TYPE_APPLY, ModelConstant.MODEL_STATUS_ENABLE);
-		OrderFileEntity fileEntity = orderFileRepository.getOrderFileWithCode(businessNo, ModelConstant.MODEL_TYPE_APPLY);
-		OrderFileEntity saveFile = new OrderFileEntity();
-		saveFile.setId(fileEntity.getId());
-		String html = modelSynthesizerDomain.composeCommonTemplateWithData(businessNo, model.getContent(), contextUtil.getCurrentUser().getNickName());
-		String htmlPath = FileUploadUtil.saveHtml(html, businessNo);
-		String pdfPath = FileUploadUtil.savePdf(html, businessNo);
-		fileEntity.setHtmlUrl(htmlPath);
-		fileEntity.setPdfUrl(pdfPath);
-		orderFileMapper.updateById(fileEntity);
-	}
-
 	@Override
 	public String generateTestPdf(String modelId, String businessNo) {
 		ModelEntity model = modelMapper.selectById(modelId);

+ 1 - 42
eladmin-system/src/main/java/me/zhengjie/application/bank/mq/RedisReceiver.java

@@ -2,14 +2,6 @@ package me.zhengjie.application.bank.mq;
 
 import com.alibaba.fastjson.JSONObject;
 import lombok.RequiredArgsConstructor;
-import me.zhengjie.base.util.FileUploadUtil;
-import me.zhengjie.dao.mybatis.ModelRepository;
-import me.zhengjie.dao.mybatis.OrderFileRepository;
-import me.zhengjie.dao.mybatis.ContractOrderRepository;
-import me.zhengjie.dao.mybatis.entity.ModelEntity;
-import me.zhengjie.dao.mybatis.entity.ContractOrderEntity;
-import me.zhengjie.dao.mybatis.entity.OrderFileEntity;
-import me.zhengjie.dao.mybatis.mapper.OrderFileMapper;
 import me.zhengjie.domain.model.ModelSynthesizerDomain;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.data.redis.connection.Message;
@@ -17,16 +9,9 @@ import org.springframework.data.redis.connection.MessageListener;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.Date;
-import java.util.List;
-
 @Component
 @RequiredArgsConstructor
 public class RedisReceiver implements MessageListener {
-	private final OrderFileMapper orderFileMapper;
-	private final ContractOrderRepository contractOrderRepository;
-	private final ModelRepository modelRepository;
-	private final OrderFileRepository orderFileRepository;
 	private final ModelSynthesizerDomain modelSynthesizerDomain;
 
 	@Override
@@ -37,34 +22,8 @@ public class RedisReceiver implements MessageListener {
 		System.out.println(text);
 		if (StringUtils.isNotBlank(text)) {
 			JSONObject jsonObject = JSONObject.parseObject(text);
-			generateCommonDoc(jsonObject);
+			modelSynthesizerDomain.generateCommonDoc(jsonObject.getString("userId"), jsonObject.getString("businessNo"));
 		}
 		System.out.println("Redis message receiver for generate common doc is end.");
 	}
-
-	public void generateCommonDoc(JSONObject jsonObject) {
-		String userId = jsonObject.getString("userId");
-		String businessNo = jsonObject.getString("businessNo");
-		//
-		ContractOrderEntity contractOrderEntity = contractOrderRepository.getContractOrderWithBizNo(businessNo);
-		List<ModelEntity> models = modelRepository.getCommonModel(contractOrderEntity.getProdId(),contractOrderEntity.getContractType(), contractOrderEntity.getNotaryOfficeId());
-		// 在保存之前先删除数据
-		orderFileRepository.delFileWithBizNO(businessNo);
-		for (ModelEntity m : models) {
-			OrderFileEntity fileEntity = new OrderFileEntity();
-			fileEntity.setBusinessNo(businessNo);
-			fileEntity.setCode(m.getCode());
-			fileEntity.setSortNum(m.getSort());
-			String html = modelSynthesizerDomain.composeCommonTemplateWithData(businessNo, m.getContent(),"");
-			String htmlPath = FileUploadUtil.saveHtml(html, businessNo);
-			String pdfPath = FileUploadUtil.savePdf(html, businessNo);
-			fileEntity.setHtmlUrl(htmlPath);
-			fileEntity.setPdfUrl(pdfPath);
-			fileEntity.setCreateTime(new Date());
-			fileEntity.setCreatorId(Long.parseLong(userId));
-			fileEntity.setFileName(m.getTitle());
-			//
-			orderFileMapper.insert(fileEntity);
-		}
-	}
 }

+ 6 - 4
eladmin-system/src/main/java/me/zhengjie/application/bank/service/impl/BankOrderServiceImpl.java

@@ -19,6 +19,7 @@ import me.zhengjie.dao.mybatis.mapper.BankMapper;
 import me.zhengjie.dao.mybatis.mapper.FileInfoMapper;
 import me.zhengjie.dao.mybatis.mapper.NotaryOfficeMapper;
 import me.zhengjie.domain.model.ModelConstant;
+import me.zhengjie.domain.model.ModelSynthesizerDomain;
 import me.zhengjie.domain.order.OrderBizCodeMessage;
 import me.zhengjie.domain.order.OrderConstant;
 import me.zhengjie.domain.order.parser.OrderOCRParser;
@@ -57,6 +58,7 @@ public class BankOrderServiceImpl implements BankOrderService {
 
     private final OrderFileRepository orderFileRepository;
     private final SmsTemplateService smsTemplateService;
+    private final ModelSynthesizerDomain modelSynthesizerDomain;
     @Override
     public void saveContractOrder(BankOrderVO vo, SysUserEntity userEntity) {
         BankEntity bank = bankMapper.selectById(userEntity.getOrgId().split("_")[1]);
@@ -185,11 +187,11 @@ public class BankOrderServiceImpl implements BankOrderService {
         }
         updateStatus(businessNo, OrderConstant.ORDER_STATUS_UNCHECKED, "");
         // 推送创建订单文档任务消息
-        JSONObject jsonObject = new JSONObject();
-        jsonObject.put("businessNo", businessNo);
-        jsonObject.put("userId", currentUser.getUserId());
-        redisReceiver.generateCommonDoc(jsonObject);
+//      JSONObject jsonObject = new JSONObject();
+//      jsonObject.put("businessNo", businessNo);
+//      jsonObject.put("userId", currentUser.getUserId());
 //		redisTemplate.convertAndSend(RedisCacheConfig.CHANNEL_HTML_PDF, jsonObject.toJSONString());
+        modelSynthesizerDomain.generateCommonDoc(String.valueOf(currentUser.getUserId()), businessNo);
         //发送短信
         smsTemplateService.submitSuccess(businessNo);
         

+ 18 - 0
eladmin-system/src/main/java/me/zhengjie/dao/mybatis/OrderFileRepository.java

@@ -106,4 +106,22 @@ public class OrderFileRepository {
         qw.eq("business_no", businessNO);
         orderFileMapper.delete(qw);
     }
+
+    /**
+     * 插入订单文件
+     *
+     * @param orderFile
+     */
+    public void insert(OrderFileEntity orderFile) {
+        orderFileMapper.insert(orderFile);
+    }
+
+    /**
+     * 修改订单文件
+     *
+     * @param orderFile
+     */
+    public void updateById(OrderFileEntity orderFile) {
+        orderFileMapper.updateById(orderFile);
+    }
 }

+ 58 - 6
eladmin-system/src/main/java/me/zhengjie/domain/model/ModelSynthesizerDomain.java

@@ -2,14 +2,12 @@ package me.zhengjie.domain.model;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.RequiredArgsConstructor;
-import me.zhengjie.application.admin.controller.OrderCochainController;
-import me.zhengjie.application.admin.service.dto.UserDto;
 import me.zhengjie.application.admin.controller.vo.NotaryNoteDto;
-import me.zhengjie.base.util.ApplicationContextUtil;
-import me.zhengjie.base.util.DateUtils;
-import me.zhengjie.base.util.StatusEnum;
-import me.zhengjie.base.util.TextTempletUtil;
+import me.zhengjie.application.admin.service.dto.UserDto;
+import me.zhengjie.base.util.*;
 import me.zhengjie.dao.mybatis.ContractOrderRepository;
+import me.zhengjie.dao.mybatis.ModelRepository;
+import me.zhengjie.dao.mybatis.OrderFileRepository;
 import me.zhengjie.dao.mybatis.entity.*;
 import me.zhengjie.dao.mybatis.mapper.*;
 import me.zhengjie.domain.order.OrderConstant;
@@ -28,6 +26,8 @@ import java.util.*;
 @RequiredArgsConstructor
 public class ModelSynthesizerDomain {
     private final ContractOrderRepository contractOrderRepository;
+    private final ModelRepository modelRepository;
+    private final OrderFileRepository orderFileRepository;
     private final BankMapper bankMapper;
     private final SysUserMapper sysUserMapper;
     private final NotaryOfficeMapper notaryOfficeMapper;
@@ -36,6 +36,58 @@ public class ModelSynthesizerDomain {
     private final ApplicationContextUtil contextUtil;
 
     /**
+     * 生成普通公证文书
+     *
+     * @param userId
+     * @param businessNo
+     */
+    public void generateCommonDoc(String userId, String businessNo) {
+        ContractOrderEntity contractOrderEntity = contractOrderRepository.getContractOrderWithBizNo(businessNo);
+        List<ModelEntity> models = modelRepository.getCommonModel(contractOrderEntity.getProdId(), contractOrderEntity.getContractType(), contractOrderEntity.getNotaryOfficeId());
+        // 在保存之前先删除数据
+        orderFileRepository.delFileWithBizNO(businessNo);
+        for (ModelEntity m : models) {
+            OrderFileEntity fileEntity = new OrderFileEntity();
+            fileEntity.setBusinessNo(businessNo);
+            fileEntity.setCode(m.getCode());
+            fileEntity.setSortNum(m.getSort());
+            String html = composeCommonTemplateWithData(businessNo, m.getContent(), "");
+            String htmlPath = FileUploadUtil.saveHtml(html, businessNo);
+            String pdfPath = FileUploadUtil.savePdf(html, businessNo);
+            fileEntity.setHtmlUrl(htmlPath);
+            fileEntity.setPdfUrl(pdfPath);
+            fileEntity.setCreateTime(new Date());
+            fileEntity.setCreatorId(Long.parseLong(userId));
+            fileEntity.setFileName(m.getTitle());
+            //
+            orderFileRepository.insert(fileEntity);
+        }
+    }
+
+    /**
+     * 重建普通公证文书
+     *
+     * @param businessNo
+     */
+    public void recreateCommonDoc(String businessNo) {
+        ContractOrderEntity contractOrderEntity = contractOrderRepository.getContractOrderWithBizNo(businessNo);
+        List<ModelEntity> models = modelRepository.getCommonModel(contractOrderEntity.getProdId(), contractOrderEntity.getContractType(), contractOrderEntity.getNotaryOfficeId());
+        for (ModelEntity m : models) {
+            OrderFileEntity fileEntity = orderFileRepository.getOrderFileWithCode(businessNo, m.getCode());
+            OrderFileEntity saveFile = new OrderFileEntity();
+            saveFile.setId(fileEntity.getId());
+            String html = composeCommonTemplateWithData(businessNo, m.getContent(), contextUtil.getCurrentUser().getNickName());
+            String htmlPath = FileUploadUtil.saveHtml(html, businessNo);
+            String pdfPath = FileUploadUtil.savePdf(html, businessNo);
+            saveFile.setHtmlUrl(htmlPath);
+            saveFile.setPdfUrl(pdfPath);
+            saveFile.setUpdateTime(new Date());
+            //
+            orderFileRepository.updateById(saveFile);
+        }
+    }
+
+    /**
      * 合成公证书预览模板
      *
      * @param contractOrderEntity