From e0916aa2e78266fb12da41d75bf7aab701bbf3d0 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期三, 23 七月 2025 14:56:07 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java |   65 +++++++++++++++++++++-----------
 1 files changed, 42 insertions(+), 23 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java
index 89310f0..c49c6a6 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OrderServiceImpl.java
@@ -329,7 +329,9 @@
         if (null == companyInfo || companyInfo.getIsDelete() != 0) {
             throw new ServiceException("公司不存在");
         }
-        JSONObject jsonObject=getReport(companyInfo.getLink().split("=")[1]);
+        String link = companyInfo.getLink();
+        String[] split = link.split("=");
+        JSONObject jsonObject=getReport(split[split.length-1]);
 //        JSONObject jsonObject=getReport("ZZD20250508017232394218445");
         if (!"1001".equals(jsonObject.getString("code"))){
             return R.fail(jsonObject.get("msg"));
@@ -357,7 +359,9 @@
         if (null == companyInfo || companyInfo.getIsDelete() != 0) {
             throw new ServiceException("公司不存在");
         }
-        JSONObject jsonObject=getReport(companyInfo.getLink().split("=")[1]);
+        String link = companyInfo.getLink();
+        String[] split = link.split("=");
+        JSONObject jsonObject=getReport(split[split.length-1]);
 //        JSONObject jsonObject=getReport("ZZD20250508017232394218445");
         if (!"1001".equals(jsonObject.getString("code"))){
             return R.fail(jsonObject.get("msg"));
@@ -385,17 +389,24 @@
         taxVO.setTaxpayerType(taxpayerType);
 
         //近12月增税销售额
-        JSONObject taxPrevMnMthsAllTaxDclrPrjInfoDict = (JSONObject) taxInfo.get("taxPrevMnMthsAllTaxDclrPrjInfoDict");
-
-        JSONObject taxPrev12mthsAllTaxDclrPrjInfoDict = (JSONObject) taxPrevMnMthsAllTaxDclrPrjInfoDict.get("taxPrev12mthsAllTaxDclrPrjInfoDict");
-        // 使用 getBigDecimal 方法,自动处理类型转换
-        BigDecimal vatTaxValue = taxPrev12mthsAllTaxDclrPrjInfoDict.getBigDecimal("vatTaxShouldsaleAmt");
-        taxVO.setVatTaxShouldsaleAmt12(vatTaxValue); // 自动处理 null
-        //近24月增税销售额
-        JSONObject taxPrev24mthsAllTaxDclrPrjInfoDict =  taxPrevMnMthsAllTaxDclrPrjInfoDict.getJSONObject("taxPrev24mthsAllTaxDclrPrjInfoDict");
-        if(null != taxPrev24mthsAllTaxDclrPrjInfoDict){
-            taxVO.setVatTaxShouldsaleAmt24( (BigDecimal) taxPrev24mthsAllTaxDclrPrjInfoDict.get("vatTaxShouldsaleAmt"));
+        JSONObject taxPrevMnMthsAllTaxDclrPrjInfoDict = taxInfo.getJSONObject("taxPrevMnMthsAllTaxDclrPrjInfoDict");
+        if (null  != taxPrevMnMthsAllTaxDclrPrjInfoDict){
+            JSONObject taxPrev12mthsAllTaxDclrPrjInfoDict = taxPrevMnMthsAllTaxDclrPrjInfoDict.getJSONObject("taxPrev12mthsAllTaxDclrPrjInfoDict");
+            if (null != taxPrev12mthsAllTaxDclrPrjInfoDict){
+                // 使用 getBigDecimal 方法,自动处理类型转换
+                BigDecimal vatTaxValue = taxPrev12mthsAllTaxDclrPrjInfoDict.getBigDecimal("vatTaxShouldsaleAmt");
+                taxVO.setVatTaxShouldsaleAmt12(vatTaxValue); // 自动处理 null
+            }
+            //近24月增税销售额
+            JSONObject taxPrev24mthsAllTaxDclrPrjInfoDict =  taxPrevMnMthsAllTaxDclrPrjInfoDict.getJSONObject("taxPrev24mthsAllTaxDclrPrjInfoDict");
+            if(null != taxPrev24mthsAllTaxDclrPrjInfoDict){
+                taxVO.setVatTaxShouldsaleAmt24( (BigDecimal) taxPrev24mthsAllTaxDclrPrjInfoDict.get("vatTaxShouldsaleAmt"));
+            }
+            //近12月增税应纳额(元)
+            taxVO.setVatTaxShouldpay(taxPrev12mthsAllTaxDclrPrjInfoDict.getBigDecimal("vatTaxShouldpay"));
         }
+
+
 
         JSONObject taxPrevMnMthsTaxInfoDict =  taxInfo.getJSONObject("taxPrevMnMthsTaxInfoDict");
         if (null!=taxPrevMnMthsTaxInfoDict){
@@ -404,24 +415,30 @@
             taxVO.setTaxAmt12( (BigDecimal) taxPrev12mthsTaxInfo.get("taxAmt"));
 
             //近24月纳税总额(元)
-            JSONObject taxPrev24mthsTaxInfo = (JSONObject) taxPrevMnMthsTaxInfoDict.get("taxPrev24mthsTaxInfo");
-            taxVO.setTaxAmt24( (BigDecimal) taxPrev24mthsTaxInfo.get("taxAmt"));
+            JSONObject taxPrev24mthsTaxInfo =  taxPrevMnMthsTaxInfoDict.getJSONObject("taxPrev24mthsTaxInfo");
+            if (null != taxPrev24mthsTaxInfo){
+                taxVO.setTaxAmt24( (BigDecimal) taxPrev24mthsTaxInfo.get("taxAmt"));
+
+            }
 
         }
 
-        //近12月增税应纳额(元)
-        taxVO.setVatTaxShouldpay(taxPrev12mthsAllTaxDclrPrjInfoDict.getBigDecimal("vatTaxShouldpay"));
+
 
         //近12个月滞纳金金额(元) 次数
         JSONObject taxPrevMnMthsOverdueFineInfoDict =  taxInfo.getJSONObject("taxPrevMnMthsOverdueFineInfoDict");
         if (null != taxPrevMnMthsOverdueFineInfoDict){
-            JSONObject taxPrev12mthsOverdueFineInfo = (JSONObject) taxPrevMnMthsOverdueFineInfoDict.get("taxPrev12mthsOverdueFineInfo");
-            taxVO.setOverdueFineInfoAmt12( (BigDecimal) taxPrev12mthsOverdueFineInfo.get("overdueFineInfoAmt"));
-            taxVO.setOverdueFineInfoCnt12( (Integer) taxPrev12mthsOverdueFineInfo.get("overdueFineInfoCnt"));
-
+            JSONObject taxPrev12mthsOverdueFineInfo = taxPrevMnMthsOverdueFineInfoDict.getJSONObject("taxPrev12mthsOverdueFineInfo");
+            if (null!= taxPrev12mthsOverdueFineInfo){
+                taxVO.setOverdueFineInfoAmt12( (BigDecimal) taxPrev12mthsOverdueFineInfo.get("overdueFineInfoAmt"));
+                taxVO.setOverdueFineInfoCnt12( (Integer) taxPrev12mthsOverdueFineInfo.get("overdueFineInfoCnt"));
+            }
             // 近3个月滞纳金金额(元)
-            JSONObject taxPrev3mthsOverdueFineInfo = (JSONObject) taxPrevMnMthsOverdueFineInfoDict.get("taxPrev3mthsOverdueFineInfo");
-            taxVO.setOverdueFineInfoCnt3( (Integer) taxPrev3mthsOverdueFineInfo.get("overdueFineInfoCnt"));
+            JSONObject taxPrev3mthsOverdueFineInfo = taxPrevMnMthsOverdueFineInfoDict.getJSONObject("taxPrev3mthsOverdueFineInfo");
+            if (null != taxPrev3mthsOverdueFineInfo){
+                taxVO.setOverdueFineInfoCnt3( (Integer) taxPrev3mthsOverdueFineInfo.get("overdueFineInfoCnt"));
+            }
+
         }
 
 
@@ -445,7 +462,9 @@
         if (null == companyInfo || companyInfo.getIsDelete() != 0) {
             throw new ServiceException("公司不存在");
         }
-        JSONObject jsonObject=getReport(companyInfo.getLink().split("=")[1]);
+        String link = companyInfo.getLink();
+        String[] split = link.split("=");
+        JSONObject jsonObject=getReport(split[split.length-1]);
 //        JSONObject jsonObject=getReport("ZZD20250508017232394218445");
         if (!"1001".equals(jsonObject.getString("code"))){
             return R.fail(jsonObject.get("msg"));

--
Gitblit v1.7.1