Przeglądaj źródła

Merge branch 'branch-nt-20230327' of https://git.flowbb.cn/RK-Dev/fqgz-server

sakuya 2 lat temu
rodzic
commit
9976fe7958

+ 8 - 3
eladmin-system/src/main/java/me/zhengjie/application/admin/controller/vo/OrderDetailDto.java

@@ -1,12 +1,12 @@
 package me.zhengjie.application.admin.controller.vo;
 
-import java.util.Date;
-import java.util.List;
-
 import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
 
+import java.util.Date;
+import java.util.List;
+
 @ToString
 @Getter
 @Setter
@@ -170,4 +170,9 @@ public class OrderDetailDto {
 	private String buyingPrice;
 	// 受理咨询号
 	private String consultNo;
+
+	// 房屋坐落
+	private String houseLocation;
+	// 房屋编号
+	private String housePropertyNo;
 }

+ 7 - 0
eladmin-system/src/main/java/me/zhengjie/application/admin/service/impl/AdminOrderServiceImpl.java

@@ -721,6 +721,13 @@ public class AdminOrderServiceImpl implements AdminOrderService {
                 orderDetail.setBuyingPrice(collateralInfo.getBuyingPrice());
             }
         }
+        if (OrderConstant.PROD_ID_XED.equals(order.getProdId()) && OrderConstant.CONTRACT_TYPE_MORTGAGE.equals(order.getContractType())) {
+            CollateralMortgageEntity collateralMortgageWithBizNo = contractOrderRepository.getCollateralMortgageWithBizNo(businessNo);
+            if (null != collateralMortgageWithBizNo) {
+                orderDetail.setHouseLocation(collateralMortgageWithBizNo.getHouseLocation());
+                orderDetail.setHousePropertyNo(collateralMortgageWithBizNo.getHousePropertyNo());
+            }
+        }
         // 将所有图片查询出来
         // 取出所有的图片
         List<FileInfoEntity> fileInfo = getFileInfo(orderDetail);

+ 5 - 0
eladmin-system/src/main/java/me/zhengjie/application/bank/controller/BankOrderController.java

@@ -57,6 +57,11 @@ public class BankOrderController extends BaseController {
                 return ResponseDTO.error(ResultCode.PARAM_IS_BLANK);
             }
         }
+        if (OrderConstant.PROD_ID_XED.equals(vo.getProdId())&& OrderConstant.CONTRACT_TYPE_MORTGAGE.equals(vo.getContractType())){
+            if (StringUtils.isEmpty(vo.getHouseLocation()) || StringUtils.isEmpty(vo.getHousePropertyNo())){
+                return ResponseDTO.error(ResultCode.PARAM_IS_BLANK);
+            }
+        }
         bankOrderService.saveContractOrder(vo, getCurrentUser());
         return ResponseDTO.success();
     }

+ 5 - 0
eladmin-system/src/main/java/me/zhengjie/application/bank/controller/vo/BankOrderVO.java

@@ -136,4 +136,9 @@ public class BankOrderVO {
     private String buyingPrice;
     // 合同期间(月数)
     private String contractTerm;
+
+    // 房屋坐落
+    private String houseLocation;
+    // 房屋编号
+    private String housePropertyNo;
 }

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

@@ -12,7 +12,6 @@ import me.zhengjie.base.util.BeanCopyUtils;
 import me.zhengjie.base.util.DateFormatUtils;
 import me.zhengjie.base.util.FileUploadUtil;
 import me.zhengjie.base.util.TencentServiceUtil;
-import me.zhengjie.base.util.StatusEnum.NotaryStatusEnum;
 import me.zhengjie.dao.mybatis.*;
 import me.zhengjie.dao.mybatis.entity.*;
 import me.zhengjie.dao.mybatis.mapper.BankMapper;
@@ -25,8 +24,6 @@ import me.zhengjie.domain.order.OrderConstant;
 import me.zhengjie.domain.order.parser.OrderOCRParser;
 import me.zhengjie.domain.order.parser.OrderOCRParserFactory;
 import me.zhengjie.security.service.dto.OnlineUserDto;
-import me.zhengjie.utils.SecurityUtils;
-
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.security.core.Authentication;
@@ -64,6 +61,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]);
@@ -101,6 +99,21 @@ public class BankOrderServiceImpl implements BankOrderService {
             saveOrder.setId(curOrder.getId());
             contractOrderRepository.updateWithId(saveOrder);
         }
+        if (OrderConstant.PROD_ID_XED.equals(vo.getProdId()) && OrderConstant.CONTRACT_TYPE_MORTGAGE.equals(vo.getContractType())) {
+            CollateralMortgageEntity curCollateralMortgage = contractOrderRepository.getCollateralMortgageWithBizNo(vo.getBusinessNo());
+            CollateralMortgageEntity saveCollateralMortgage = new CollateralMortgageEntity();
+            saveCollateralMortgage.setHouseLocation(vo.getHouseLocation());
+            saveCollateralMortgage.setHousePropertyNo(vo.getHousePropertyNo());
+            if (curCollateralMortgage == null) {
+                saveCollateralMortgage.setBusinessNo(vo.getBusinessNo());
+                saveCollateralMortgage.setCreateTime(new Date());
+                contractOrderRepository.insertCollateral(saveCollateralMortgage);
+            } else {
+                saveCollateralMortgage.setId(curCollateralMortgage.getId());
+                saveCollateralMortgage.setUpdateTime(new Date());
+                contractOrderRepository.updateCollateralById(saveCollateralMortgage);
+            }
+        }
         if (OrderConstant.PROD_ID_CD.equals(vo.getProdId()) && !isCollateralInfoEmpty(vo)) {
             CollateralInfoEntity curCollateralInfo = contractOrderRepository.getCollateralWithBizNo(vo.getBusinessNo());
             CollateralInfoEntity saveCollateralInfo = new CollateralInfoEntity();
@@ -182,6 +195,13 @@ public class BankOrderServiceImpl implements BankOrderService {
                 orderVo.setBuyingPrice(collateralInfo.getBuyingPrice());
             }
         }
+        if (OrderConstant.PROD_ID_XED.equals(orderVo.getProdId()) && OrderConstant.CONTRACT_TYPE_MORTGAGE.equals(orderVo.getContractType())) {
+            CollateralMortgageEntity collateralMortgageWithBizNo = contractOrderRepository.getCollateralMortgageWithBizNo(businessNo);
+            if (null != collateralMortgageWithBizNo) {
+                orderVo.setHouseLocation(collateralMortgageWithBizNo.getHouseLocation());
+                orderVo.setHousePropertyNo(collateralMortgageWithBizNo.getHousePropertyNo());
+            }
+        }
         return orderVo;
     }
 
@@ -200,24 +220,24 @@ public class BankOrderServiceImpl implements BankOrderService {
         modelSynthesizerDomain.generateCommonDoc(String.valueOf(currentUser.getUserId()), businessNo);
         //发送短信
         smsTemplateService.submitSuccess(businessNo);
-        
+
         //订单提交成功
         return ResponseDTO.success();
     }
 
     @Override
     public void updateStatus(String businessNo, String status, String message) {
-    	
+
         ContractOrderEntity order = new ContractOrderEntity();
         order.setBusinessNo(businessNo);
-        order.setStatus(status);    	
+        order.setStatus(status);
         order.setUpdateTime(new Date());
         if (OrderConstant.ORDER_STATUS_UNSUBMIT.equals(status)) {
             order.setReturnReason(message);
             //增加公证用户
             Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
-        	Object securityContextUser = authentication.getPrincipal();
-    		OnlineUserDto userDto = (OnlineUserDto) securityContextUser;
+            Object securityContextUser = authentication.getPrincipal();
+            OnlineUserDto userDto = (OnlineUserDto) securityContextUser;
             order.setNotaryUserId(userDto.getUserId().toString());
         } else if (OrderConstant.ORDER_STATUS_REJECTED.equals(status)) {
             order.setRejectReason(message);

+ 31 - 0
eladmin-system/src/main/java/me/zhengjie/dao/mybatis/ContractOrderRepository.java

@@ -29,6 +29,7 @@ public class ContractOrderRepository {
     private final MortgageMapper mortgageMapper;
     private final GuaranteeMapper guaranteeMapper;
     private final CollateralInfoMapper collateralInfoMapper;
+    private final CollateralMortgageMapper collateralMortgageMapper;
     private final JdbcTemplate jdbcTemplate;
 
     /**
@@ -451,6 +452,18 @@ public class ContractOrderRepository {
     }
 
     /**
+     * 根据订单号查找抵押物信息
+     *
+     * @param bizNo
+     * @return
+     */
+    public CollateralMortgageEntity getCollateralMortgageWithBizNo(String bizNo) {
+        QueryWrapper<CollateralMortgageEntity> qw = new QueryWrapper<>();
+        qw.eq("business_no", bizNo);
+        return collateralMortgageMapper.selectOne(qw);
+    }
+
+    /**
      * 插入抵押物信息
      *
      * @param entity
@@ -467,4 +480,22 @@ public class ContractOrderRepository {
     public void updateCollateralById(CollateralInfoEntity entity) {
         collateralInfoMapper.updateById(entity);
     }
+
+    /**
+     * 插入抵押物信息
+     *
+     * @param entity
+     */
+    public void insertCollateral(CollateralMortgageEntity entity) {
+        collateralMortgageMapper.insert(entity);
+    }
+
+    /**
+     * 根据ID修改抵押物信息
+     *
+     * @param entity
+     */
+    public void updateCollateralById(CollateralMortgageEntity entity) {
+        collateralMortgageMapper.updateById(entity);
+    }
 }

+ 29 - 0
eladmin-system/src/main/java/me/zhengjie/dao/mybatis/entity/CollateralMortgageEntity.java

@@ -0,0 +1,29 @@
+package me.zhengjie.dao.mybatis.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@TableName("collateral_mortgage")
+@NoArgsConstructor
+public class CollateralMortgageEntity implements Serializable {
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    private String businessNo;
+
+    private String houseLocation;
+
+    private String housePropertyNo;
+
+    private Date createTime;
+
+    private Date updateTime;
+}

+ 9 - 0
eladmin-system/src/main/java/me/zhengjie/dao/mybatis/mapper/CollateralMortgageMapper.java

@@ -0,0 +1,9 @@
+package me.zhengjie.dao.mybatis.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import me.zhengjie.dao.mybatis.entity.CollateralMortgageEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface CollateralMortgageMapper extends BaseMapper<CollateralMortgageEntity> {
+}

+ 7 - 0
eladmin-system/src/main/java/me/zhengjie/domain/model/ModelSynthesizerDomain.java

@@ -420,6 +420,13 @@ public class ModelSynthesizerDomain {
                 noteValue.put("$Price$", collateralInfoEntity.getBuyingPrice());
             }
         }
+        if (OrderConstant.PROD_ID_XED.equals(contractOrderEntity.getProdId())&& OrderConstant.CONTRACT_TYPE_MORTGAGE.equals(contractOrderEntity.getContractType())){
+            CollateralMortgageEntity collateralMortgageWithBizNo = contractOrderRepository.getCollateralMortgageWithBizNo(businessNo);
+            if (null != collateralMortgageWithBizNo) {
+                noteValue.put("$HouseLocation$", collateralMortgageWithBizNo.getHouseLocation());
+                noteValue.put("$HousePropertyNo$", collateralMortgageWithBizNo.getHousePropertyNo());
+            }
+        }
         return noteValue;
     }