Преглед изворни кода

Merge branch 'master' of http://47.108.172.52:3000/dayou/productivity-platform

GouGengquan пре 7 месеци
родитељ
комит
b67bec08b3

+ 21 - 23
common/src/main/java/com/dayou/utils/HouseDocumentUtil.java

@@ -5,6 +5,7 @@ import cn.hutool.json.*;
 import com.alibaba.fastjson2.JSON;
 import com.dayou.dto.Address;
 import com.dayou.dto.HouseGuarantyTargetDTO;
+import com.dayou.dto.HousePledgeDTO;
 import com.dayou.entity.CertificateLandUse;
 import com.dayou.entity.HouseGuarantyTarget;
 import com.dayou.entity.TmplHouseParagraph;
@@ -16,6 +17,8 @@ import java.lang.reflect.Field;
 import java.math.BigDecimal;
 import java.util.*;
 import java.util.function.Function;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
 import static com.dayou.constants.HouseGuarantyDoc.*;
@@ -34,7 +37,7 @@ public class HouseDocumentUtil {
      */
     public static JSONArray houseTargetsFormat(JSONArray jsonArray){
         JSONArray targets = new JSONArray();
-        if (jsonArray.size()>1){
+        if (jsonArray.size()>0){
             JSONObject jsonObject = (JSONObject) jsonArray.get(0);
             Set<String> columns = jsonObject.keySet();
             for (int i = 0; i < jsonArray.size(); i++){
@@ -292,11 +295,11 @@ public class HouseDocumentUtil {
         //有地类用途和分摊面积
         if (cn.hutool.core.collection.CollectionUtil.isNotEmpty(outerAcreage)
                 && cn.hutool.core.collection.CollectionUtil.isNotEmpty(landType)){
-            if (landType.contains("商业用地")){
+            if (landType.contains("商业")){
                 BigDecimal sum = sumList(outerAcreage);
                 return "估价对象分摊出让商业用地使用权面积合计为:"+sum.toString()+"㎡;详见估价结果一览表";
             }
-            if (landType.contains("批发零售用地")){
+            if (landType.contains("零售")){
                 BigDecimal sum = sumList(outerAcreage);
                 return "估价对象分摊出让批发零售用地使用权面积合计为:"+sum.toString()+"㎡;详见估价结果一览表";
             }
@@ -318,7 +321,7 @@ public class HouseDocumentUtil {
             }
         }
         //有用途和无分摊面积
-        if (cn.hutool.core.collection.CollectionUtil.isEmpty(outerAcreage)
+        if (!CollectionUtil.isNotEmpty(outerAcreage)
                 && cn.hutool.core.collection.CollectionUtil.isNotEmpty(useTo)){
             if (useTo.contains("商业")){
                 return "估价对象占用(分摊)的国有建设用地使用权系商业用地。详见估价结果一览表";
@@ -962,16 +965,12 @@ public class HouseDocumentUtil {
 
     /**
      * 限制条件 估价对象未设立抵押权
-     * @param targets
      * @param tmplParagraph
      * @return
      */
-    public static String isNotPledge(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph) {
-        if (CollectionUtil.isNotEmpty(targets)){
-            List<HouseGuarantyTarget> collect = targets.stream().filter(x -> x.getHasPledge()!=null && x.getHasPledge()).collect(Collectors.toList());
-            if (!CollectionUtil.isNotEmpty(collect)){
-                return tmplParagraph.getParagraph();
-            }
+    public static String isNotPledge(TmplHouseParagraph tmplParagraph,Boolean isPledge) {
+        if (!isPledge){
+            return tmplParagraph.getParagraph();
         }
         return null;
     }
@@ -1075,8 +1074,8 @@ public class HouseDocumentUtil {
      * @param tmplParagraph
      * @return
      */
-    public static String isTransferNotDeductSellMoney(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph,Boolean isDeductSellAmount) {
-        return isDeductSellAmount?null:tmplParagraph.getParagraph();
+    public static String isTransferNotDeductSellMoney(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph,String isDeductSellAmount) {
+        return checkBoolean(isDeductSellAmount)?null:tmplParagraph.getParagraph();
     }
 
     /**
@@ -1085,8 +1084,8 @@ public class HouseDocumentUtil {
      * @param tmplParagraph
      * @return
      */
-    public static String isTransferDeductSellMoney(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph,Boolean isDeductSellAmount) {
-        return isDeductSellAmount?tmplParagraph.getParagraph():null;
+    public static String isTransferDeductSellMoney(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph,String isDeductSellAmount) {
+        return checkBoolean(isDeductSellAmount)?tmplParagraph.getParagraph():null;
     }
 
     /**
@@ -1095,9 +1094,9 @@ public class HouseDocumentUtil {
      * @param tmplParagraph
      * @return
      */
-    public static String isProvideTechReport(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph,Boolean hasTechReport) {
+    public static String isProvideTechReport(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph,String hasTechReport) {
         String paragraph = tmplParagraph.getParagraph();
-        if (hasTechReport){
+        if (checkBoolean(hasTechReport)){
             return paragraph.replace("{hasTechReport}","、“估价技术报告”");
         }
         return paragraph.replace("{hasTechReport}","");
@@ -1105,22 +1104,20 @@ public class HouseDocumentUtil {
 
     /**
      * 限制条件 是否是农商银行
-     * @param targets
      * @param tmplParagraph
      * @return
      */
-    public static String isNSBank(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph,Boolean isNsBank) {
-        return isNsBank?tmplParagraph.getParagraph():null;
+    public static String isNSBank(TmplHouseParagraph tmplParagraph,String isNsBank) {
+        return checkBoolean(isNsBank)?tmplParagraph.getParagraph():null;
     }
 
     /**
      * 限制条件 其他银行
-     * @param targets
      * @param tmplParagraph
      * @return
      */
-    public static String isNormalBank(List<HouseGuarantyTarget> targets, TmplHouseParagraph tmplParagraph,Boolean isNsBank) {
-        return !isNsBank?tmplParagraph.getParagraph():null;
+    public static String isNormalBank( TmplHouseParagraph tmplParagraph,String isNsBank) {
+        return !checkBoolean(isNsBank)?tmplParagraph.getParagraph():null;
     }
 
     /**
@@ -1372,4 +1369,5 @@ public class HouseDocumentUtil {
         return null;
     }
 
+
 }

+ 10 - 0
common/src/main/java/com/dayou/utils/JsonUtil.java

@@ -46,6 +46,16 @@ public class JsonUtil {
     }
 
     /**
+     * 从JSONObject文件读取json对象
+     * @param filePath
+     * @return
+     * @throws IOException
+     */
+    public static  JSONObject file2JsonObject(String filePath) throws IOException {
+        return new JSONObject(new String(Files.readAllBytes(Paths.get(filePath)), StandardCharsets.UTF_8));
+    }
+
+    /**
      * 将JSON数组数据输出到文件
      * @param jsonArray
      * @param filePath

+ 121 - 0
common/src/main/java/com/dayou/utils/ParsingPledgeUtil.java

@@ -0,0 +1,121 @@
+package com.dayou.utils;
+
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSONObject;
+import com.dayou.dto.HousePledgeDTO;
+
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * 解析抵押权信息
+ */
+public class ParsingPledgeUtil {
+
+    /**
+     * 解析抵押权信息
+     * @param pledgeInfo
+     * @return
+     */
+    public static JSONObject parsingPledgeInfo(String pledgeInfo, JSONObject jsonObject){
+        if (StrUtil.isNotBlank(pledgeInfo)){
+            if (pledgeInfo.contains("未设立")){
+                jsonObject.put("是否设置抵押权",false);
+                return jsonObject;
+            }
+            if (pledgeInfo.contains("已设立")){
+                jsonObject.put("是否设置抵押权",true);
+                String pledgeType = extractPledgeType(pledgeInfo);
+                if (StrUtil.isBlank(pledgeType)){
+                    pledgeType = extractPledgeTypeX(pledgeInfo);
+                }
+                jsonObject.put("抵押权类型",pledgeType);
+                String pledgeUser = extractMortgagee(pledgeInfo);
+                jsonObject.put("抵押权人",pledgeUser);
+                String pledgeValue = extractPledgeValueX(pledgeInfo);
+                if (StrUtil.isBlank(pledgeValue)){
+                    pledgeValue = extractPledgeValue(pledgeInfo);
+                    if (StrUtil.isBlank(pledgeValue)){
+                        pledgeValue = extractMortgageValue(pledgeInfo);
+                    }
+                }
+                jsonObject.put("抵押权价值",pledgeValue);
+                if (pledgeInfo.contains("向同一抵押权人申请续期贷款")){
+                    jsonObject.put("向同一抵押权人申请续期贷款",true);
+                }
+                jsonObject.put("新抵押权人",extractNewPledgeUser(pledgeInfo));
+                if (pledgeInfo.contains("现拟设立最高额抵押权")){
+                    jsonObject.put("已设立抵押权现拟设立最高额抵押权同一抵押权人",true);
+                }
+                if (pledgeInfo.contains("债权可能连续发生")){
+                    jsonObject.put("已设立最高额抵押权且抵押未到期",true);
+                }
+            }
+        }
+        return jsonObject;
+    }
+
+    private static String extractPledgeType(String input){
+        Pattern pattern = Pattern.compile("已设立了(.*?)(,|$)");
+        Matcher matcher = pattern.matcher(input);
+        if (matcher.find()) {
+            return matcher.group(1).trim();
+        }
+        return "";
+    }
+
+    private static String extractPledgeTypeX(String input){
+        Pattern pattern = Pattern.compile("已设立(.*?)(,|$)");
+        Matcher matcher = pattern.matcher(input);
+        if (matcher.find()) {
+            return matcher.group(1).trim();
+        }
+        return "";
+    }
+
+    private static String extractMortgagee(String input) {
+        Pattern pattern = Pattern.compile("抵押权人为([^,]+)");
+        Matcher matcher = pattern.matcher(input);
+        if (matcher.find()) {
+            return matcher.group(1).trim();
+        }
+        return "";
+    }
+
+    private static String extractMortgageValue(String input) {
+        Pattern pattern = Pattern.compile("抵押权利价值为([^,]+)");
+        Matcher matcher = pattern.matcher(input);
+        if (matcher.find()) {
+            return matcher.group(1).trim();
+        }
+        return "";
+    }
+
+    private static String extractPledgeValue(String input) {
+        Pattern pattern = Pattern.compile("最高债权额([^,]+)");
+        Matcher matcher = pattern.matcher(input);
+        if (matcher.find()) {
+            return matcher.group(1).trim();
+        }
+        return "";
+    }
+
+    private static String extractPledgeValueX(String input) {
+        Pattern pattern = Pattern.compile("最高债权额为([^,]+)");
+        Matcher matcher = pattern.matcher(input);
+        if (matcher.find()) {
+            return matcher.group(1).trim();
+        }
+        return "";
+    }
+
+    private static String extractNewPledgeUser(String input) {
+        Pattern pattern = Pattern.compile("向([^ ]+)申请");
+        Matcher matcher = pattern.matcher(input);
+        if (matcher.find()) {
+            return matcher.group(1).trim();
+        }
+        return "";
+    }
+
+}

+ 62 - 0
domain/src/main/java/com/dayou/dto/HousePledgeDTO.java

@@ -0,0 +1,62 @@
+package com.dayou.dto;
+
+import lombok.Data;
+
+@Data
+public class HousePledgeDTO {
+
+    /**
+     * 是否设置抵押权
+     */
+    private Boolean hasPledge;
+
+    /**
+     * 抵押权人
+     */
+    private String pledgeUser;
+
+    /**
+     * 抵押权类型
+     */
+    private String pledgeType;
+
+    /**
+     * 抵押权利价值
+     */
+    private String pledgeValue;
+
+    /**
+     * 同一抵押权人续贷
+     */
+    private Boolean samePledgeContinue;
+
+    /**
+     * 新抵押权利人
+     */
+    private String newPledgeUser;
+
+    /**
+     * 已设立最高额抵押权且抵押未到期
+     */
+    private Boolean highPledgeNotExpire;
+
+    /**
+     * 已设立抵押权现拟设立最高额抵押权同一抵押权人
+     */
+    private Boolean samePledgeHigh;
+
+    /**
+     * 其他法定优先受偿款
+     */
+    private String firstMoney;
+
+    /**
+     * 拖欠工程款
+     */
+    private String debtMoney;
+
+    /**
+     * 是否扣除法定优先受偿款
+     */
+    private Boolean isTakeOutFirstMoney;
+}

+ 2 - 1
service/src/main/java/com/dayou/service/TmplHouseParagraphService.java

@@ -1,5 +1,6 @@
 package com.dayou.service;
 
+import cn.hutool.json.JSONObject;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.dayou.entity.CertificateLandUse;
 import com.dayou.entity.HouseGuarantyTarget;
@@ -43,7 +44,7 @@ public interface TmplHouseParagraphService extends IService<TmplHouseParagraph>
      * @param targets
      * @return
      */
-    String findLimitConditionResult(List<HouseGuarantyTarget> targets,Boolean isDeductSellAmount,Boolean hasTechReport,Boolean isNsBank,List<String> certificates);
+    String findLimitConditionResult(List<HouseGuarantyTarget> targets, JSONObject jsonObject, List<String> certificates);
 
     /**
      * 生成使用报告说明

+ 38 - 27
service/src/main/java/com/dayou/service/impl/HouseGuarantyServiceImpl.java

@@ -16,15 +16,13 @@ import com.dayou.doc.house.ConditionDO;
 import com.dayou.doc.house.ConsignorLetterDO;
 import com.dayou.dto.HouseGuarantyTableDTO;
 import com.dayou.dto.HouseGuarantyTargetDTO;
+import com.dayou.dto.HousePledgeDTO;
 import com.dayou.entity.*;
 import com.dayou.enums.DocumentType;
 import com.dayou.enums.BusinessEnum;
 import com.dayou.exception.ErrorCode;
 import com.dayou.service.*;
-import com.dayou.utils.AsposeWordUtil;
-import com.dayou.utils.EasyExcelUtil;
-import com.dayou.utils.HouseDocumentUtil;
-import com.dayou.utils.JsonUtil;
+import com.dayou.utils.*;
 import com.dayou.utils.table.WordTableHelper;
 import com.dayou.vo.HouseTargetVO;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
@@ -108,17 +106,23 @@ public class HouseGuarantyServiceImpl implements HouseGuarantyService {
         }
         HouseGuarantyProcess process = houseGuarantyProcessService.getById(id);
         String home = fileNetConfig.getBaseDir() + process.getHome();
-            Workbook workbook = new Workbook( home + COLLECT1_XLSX);
-            workbook.save(home+ COLLECT1_JSON, SaveFormat.JSON);
-            //解析估价对象json(估价对象一览表)
-            JSONArray array = JsonUtil.file2JsonArray(home + COLLECT1_JSON, TARGETS_TABLE_ZH);
-            JSONArray xArray = HouseDocumentUtil.houseTargetsFormat(array);
-            JsonUtil.jsonArray2File(xArray,home + TARGETS_JSON);
-
-            //解析估价对象json(基本信息)
-            JSONArray baseInfoArray = JsonUtil.file2JsonArray(home + COLLECT1_JSON, BASE_INFO_ZH);
-            JSONObject baseInfo = HouseDocumentUtil.baseInfoFormat(baseInfoArray);
-            JsonUtil.jsonObject2File(baseInfo,home + BASE_INFO_JSON);
+        Workbook workbook = new Workbook( home + COLLECT1_XLSX);
+        workbook.save(home+ COLLECT1_JSON, SaveFormat.JSON);
+        //解析估价对象json(估价对象一览表)
+        JSONArray array = JsonUtil.file2JsonArray(home + COLLECT1_JSON, TARGETS_TABLE_ZH);
+        JSONArray xArray = HouseDocumentUtil.houseTargetsFormat(array);
+        JsonUtil.jsonArray2File(xArray,home + TARGETS_JSON);
+
+        //解析估价对象json(基本信息)
+        JSONArray baseInfoArray = JsonUtil.file2JsonArray(home + COLLECT1_JSON, BASE_INFO_ZH);
+        JSONObject baseInfo = HouseDocumentUtil.baseInfoFormat(baseInfoArray);
+
+        //从估价对象一览表中获取抵押权信息
+        JSONObject jsonObject = JSONUtil.parseObj(array.get(array.size() - 1));
+        String pledgeInfo = (String) jsonObject.get("估价对象");
+        ParsingPledgeUtil.parsingPledgeInfo(pledgeInfo, baseInfo);
+
+        JsonUtil.jsonObject2File(baseInfo,home + BASE_INFO_JSON);
         return Boolean.TRUE;
 
     }
@@ -214,14 +218,25 @@ public class HouseGuarantyServiceImpl implements HouseGuarantyService {
         String home = baseDir + process.getHome();
 
         try {
-            //获取文件数据
-            XSSFWorkbook workbook = new XSSFWorkbook(home + COLLECT1_XLSX);
-            Map<String, String> valueMap = EasyExcelUtil.getExcelCellValue(workbook, BASE_INFO_ZH);
-            ConditionDO conditionDO = JSON.parseObject(JSON.toJSONString(valueMap), ConditionDO.class);
+//            //获取文件数据
+//            XSSFWorkbook workbook = new XSSFWorkbook(home + COLLECT1_XLSX);
+//            Map<String, String> valueMap = EasyExcelUtil.getExcelCellValue(workbook, BASE_INFO_ZH);
+
+            JSONObject jsonObject = JsonUtil.file2JsonObject(home + BASE_INFO_JSON);
+            ConditionDO conditionDO = new ConditionDO();
+            conditionDO.setAppraiser1((String) jsonObject.get("估价师1"));
+            conditionDO.setAppraiser2((String) jsonObject.get("估价师2"));
+            conditionDO.setAppraNo1((String) jsonObject.get("估价师1注册号"));
+            conditionDO.setAppraNo2((String) jsonObject.get("估价师2注册号"));
+            conditionDO.setDocDate((String) jsonObject.get("估价报告出具日期"));
 
             //获取估价对象所提供的权属证书类型
             List<String> certificates = getCertificateTypes(id);
 
+            if (!CollectionUtil.isNotEmpty(certificates)){
+                ErrorCode.throwBusinessException(ErrorCode.CUSTOM_ERROR,"请先完善估价对象权证信息");
+            }
+
             //获取估价对象补充信息
             List<HouseGuarantyTarget> targets = houseGuarantyTargetService
                     .list(new LambdaQueryWrapper<HouseGuarantyTarget>().eq(HouseGuarantyTarget::getDocId, id)
@@ -230,7 +245,7 @@ public class HouseGuarantyServiceImpl implements HouseGuarantyService {
 
             //获取土地证信息
             List<CertificateLandUse> landCerts = certificateLandUseService.list(new LambdaQueryWrapper<CertificateLandUse>().eq(CertificateLandUse::getBusinessId, id));
-            String isCheckOriginCertificate = valueMap.get("isCheckOriginCertificate");
+            String isCheckOriginCertificate = (String) jsonObject.get("是否审核权属原件");
 
 
             //组合一般假设内容
@@ -243,19 +258,15 @@ public class HouseGuarantyServiceImpl implements HouseGuarantyService {
             conditionDO.setWDSXJS(wdsxjsResult);
 
             //组合不相一致假设内容
-            String bxyzjsResult = tmplHouseParagraphService.findBXYZJSResult(targets,certificates,valueMap.get("valueTiming"));
+            String bxyzjsResult = tmplHouseParagraphService.findBXYZJSResult(targets,certificates,(String) jsonObject.get("价值时点"));
             conditionDO.setBXYZJS(bxyzjsResult);
 
             //组合依据不足假设内容
-            String yjbujsResult = tmplHouseParagraphService.findYJBUJSResult(targets,certificates,isCheckOriginCertificate,valueMap.get("methods"));
+            String yjbujsResult = tmplHouseParagraphService.findYJBUJSResult(targets,certificates,isCheckOriginCertificate,(String) jsonObject.get("估价方法"));
             conditionDO.setYJBZJS(yjbujsResult);
 
             //组合限制条件内容
-            String limitCondition = tmplHouseParagraphService.findLimitConditionResult(targets
-                        ,HouseDocumentUtil.checkBoolean(valueMap.get("isDeductSellAmount"))
-                    ,HouseDocumentUtil.checkBoolean(valueMap.get("hasTechReport"))
-                    ,HouseDocumentUtil.checkBoolean(valueMap.get("isNsBank"))
-                            ,certificates);
+            String limitCondition = tmplHouseParagraphService.findLimitConditionResult(targets,jsonObject,certificates);
 
             conditionDO.setXZTJ(limitCondition);
 

+ 8 - 7
service/src/main/java/com/dayou/service/impl/TmplHouseParagraphServiceImpl.java

@@ -1,6 +1,7 @@
 package com.dayou.service.impl;
 
 import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.dayou.entity.CertificateLandUse;
@@ -265,7 +266,7 @@ public class TmplHouseParagraphServiceImpl extends ServiceImpl<TmplHouseParagrap
     }
 
     @Override
-    public String findLimitConditionResult(List<HouseGuarantyTarget> targets,Boolean isDeductSellAmount,Boolean hasTechReport,Boolean isNsBank,List<String> certificates) {
+    public String findLimitConditionResult(List<HouseGuarantyTarget> targets, JSONObject jsonObject, List<String> certificates) {
         List<TmplHouseParagraph> paragraphTemps = this.list(new LambdaQueryWrapper<TmplHouseParagraph>()
                 .eq(TmplHouseParagraph::getDocMold, GUARANTY).eq(TmplHouseParagraph::getChapter, LIMIT_CONDITION).orderByAsc(TmplHouseParagraph::getSort));
         StringBuilder result = new StringBuilder();
@@ -274,7 +275,7 @@ public class TmplHouseParagraphServiceImpl extends ServiceImpl<TmplHouseParagrap
             String rule = paragraph.getRule();
             if (StrUtil.isNotBlank(rule)){
                 if (IS_NOT_PLEDGE.getCode().equals(rule)){
-                    String notPledge = HouseDocumentUtil.isNotPledge(targets,paragraph);
+                    String notPledge = HouseDocumentUtil.isNotPledge(paragraph, (Boolean) jsonObject.get("是否设置抵押权"));
                     if (StrUtil.isNotBlank(notPledge)){
                         result.append(i).append(". ").append(notPledge);
                         i++;
@@ -295,35 +296,35 @@ public class TmplHouseParagraphServiceImpl extends ServiceImpl<TmplHouseParagrap
                     }
                 }
                 if (IS_TRANSFER_NOT_DEDUCT_SELL_MONEY.getCode().equals(rule)){
-                    String transferOutDeductSellMoney = HouseDocumentUtil.isTransferNotDeductSellMoney(targets,paragraph,isDeductSellAmount);
+                    String transferOutDeductSellMoney = HouseDocumentUtil.isTransferNotDeductSellMoney(targets,paragraph, (String) jsonObject.get("划拨用地是否扣除出让金"));
                     if (StrUtil.isNotBlank(transferOutDeductSellMoney)){
                         result.append(i).append(". ").append(transferOutDeductSellMoney);
                         i++;
                     }
                 }
                 if (IS_TRANSFER_DEDUCT_SELL_MONEY.getCode().equals(rule)){
-                    String transferDeductSellMoney = HouseDocumentUtil.isTransferDeductSellMoney(targets,paragraph,isDeductSellAmount);
+                    String transferDeductSellMoney = HouseDocumentUtil.isTransferDeductSellMoney(targets,paragraph,(String) jsonObject.get("划拨用地是否扣除出让金"));
                     if (StrUtil.isNotBlank(transferDeductSellMoney)){
                         result.append(i).append(". ").append(transferDeductSellMoney);
                         i++;
                     }
                 }
                 if (IS_PROVIDE_TECH_REPORT.getCode().equals(rule)){
-                    String provideTechReport = HouseDocumentUtil.isProvideTechReport(targets,paragraph,hasTechReport);
+                    String provideTechReport = HouseDocumentUtil.isProvideTechReport(targets,paragraph,(String) jsonObject.get("是否提供技术报告"));
                     if (StrUtil.isNotBlank(provideTechReport)){
                         result.append(i).append(". ").append(provideTechReport);
                         i++;
                     }
                 }
                 if (IS_NS_BANK.getCode().equals(rule)){
-                    String nsBank = HouseDocumentUtil.isNSBank(targets,paragraph,isNsBank);
+                    String nsBank = HouseDocumentUtil.isNSBank(paragraph,(String) jsonObject.get("是否是农商银行"));
                     if (StrUtil.isNotBlank(nsBank)){
                         result.append(i).append(". ").append(nsBank);
                         i++;
                     }
                 }
                 if (IS_NORMAL_BANK.getCode().equals(rule)){
-                    String normalBank = HouseDocumentUtil.isNormalBank(targets,paragraph,isNsBank);
+                    String normalBank = HouseDocumentUtil.isNormalBank(paragraph,(String) jsonObject.get("是否是农商银行"));
                     if (StrUtil.isNotBlank(normalBank)){
                         result.append(i).append(". ").append(normalBank);
                         i++;