JiangPengLi 2 miesięcy temu
rodzic
commit
fc1487f4a5
20 zmienionych plików z 257 dodań i 80 usunięć
  1. 1 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/enums/RedLightEnum.java
  2. 7 5
      projects-service/src/main/java/com/rtrh/projects/modules/projects/mapper/SubInfoMapper.xml
  3. 13 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubInfoQueryServiceImpl.java
  4. 5 0
      projects-service/src/main/java/com/rtrh/projects/modules/projects/vo/StatisticsVO.java
  5. 2 0
      projects-service/src/main/java/com/rtrh/projects/vo/projects/SubFixBeginVo.java
  6. 2 0
      projects-service/src/main/java/com/rtrh/projects/vo/projects/SubFixGetBeginRateVo.java
  7. 15 0
      projects/src/main/java/com/rtrh/projects/web/controller/subject/api/SubInfoQueryApiController.java
  8. 2 2
      projects/src/main/java/com/rtrh/projects/web/controller/system/api/DataSyncController.java
  9. 2 2
      projects/src/main/java/com/rtrh/projects/web/controller/system/api/RemoteRequestController.java
  10. 4 6
      projects/src/main/resources/rtrh-crypto.xml
  11. 123 56
      projects/src/main/webapp/vmodules/statics/analysisScreen_four.jsp
  12. 16 3
      projects/src/main/webapp/vmodules/subject/subInfo/tz/cb.jsp
  13. 6 0
      projects/src/main/webapp/vmodules/subject/subInfo/tz/cb_sum.jsp
  14. 6 0
      projects/src/main/webapp/vmodules/subject/subInfo/tz/end.jsp
  15. 6 0
      projects/src/main/webapp/vmodules/subject/subInfo/tz/end_sum.jsp
  16. 15 3
      projects/src/main/webapp/vmodules/subject/subInfo/tz/main.jsp
  17. 6 0
      projects/src/main/webapp/vmodules/subject/subInfo/tz/main_sum.jsp
  18. 15 3
      projects/src/main/webapp/vmodules/subject/subInfo/tz/new.jsp
  19. 6 0
      projects/src/main/webapp/vmodules/subject/subInfo/tz/new_sum.jsp
  20. 5 0
      projects/src/main/webapp/vmodules/subject/subInfo/tz/year_reserve.jsp

+ 1 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/enums/RedLightEnum.java

@@ -40,6 +40,7 @@ public enum RedLightEnum {
         }).collect(Collectors.toList());
     }
 
+    // 问题统计
     public static List<String> getValidCodeList() {
         return Arrays.stream(values()).filter(x -> !x.equals(GREEN)).map(x -> x.code).collect(Collectors.toList());
     }

+ 7 - 5
projects-service/src/main/java/com/rtrh/projects/modules/projects/mapper/SubInfoMapper.xml

@@ -322,7 +322,8 @@
     </select>
     <select id="queryStatistics" resultType="com.rtrh.projects.modules.projects.po.SubInfoGxj">
         select
-            status,abc,subject_id subjectId,indus_kind indusKind,is_rg AS boolRg
+            status,abc,subject_id subjectId,indus_kind indusKind,is_rg AS boolRg,
+            status_red statusRed
         from sub_info
         <where>
             logic_delete_flag = 0
@@ -331,11 +332,11 @@
             </if>
             <if test="vo.statusRed!=null and vo.statusRed!=''">
                 <choose>
-                    <when test="vo.statusRed.toString() == '0'">
-                        and (s.status_red is null or s.status_red = '0')
+                    <when test="vo.statusRed==0">
+                        and (status_red = '0' or status_red is null)
                     </when>
                     <otherwise>
-                        and s.status_red = #{vo.statusRed}
+                        and status_red = #{vo.statusRed}
                     </otherwise>
                 </choose>
             </if>
@@ -837,7 +838,8 @@
         sub_info.indus_kind AS indusKind,
         sub_info.is_rg AS isRg,
         sub_info.cb_status AS cbStatus,
-        sub_info.abc AS abc
+        sub_info.abc AS abc,
+        sub_info.status_red AS statusRed
         FROM sub_fix
         LEFT JOIN sub_info ON sub_fix.sub_id = sub_info.id
         WHERE

+ 13 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/service/impl/SubInfoQueryServiceImpl.java

@@ -305,6 +305,18 @@ public class SubInfoQueryServiceImpl implements SubInfoQueryService {
                     .setName(jsddNameMap.getOrDefault(k, ""))
                     .setNum(v));
         });
+        // 红黄灯统计
+        Map<String, Long> redLightMap = list.stream().collect(Collectors.groupingBy(e ->
+                        StringUtils.isBlank(e.getStatusRed()) ? RedLightEnum.GREEN.getCode() : e.getStatusRed()
+                , Collectors.counting()));
+        List<StatisticsVO.KvNum> redLightList = new ArrayList<>();
+        for (RedLightEnum value : RedLightEnum.values()) {
+            redLightList.add(new StatisticsVO.KvNum()
+                    .setCode(value.getCode())
+                    .setName(value.getName())
+                    .setNum(redLightMap.getOrDefault(value.getCode(), 0L)));
+        }
+
         // 行业统计
         List<SubIndu> hyflDict = subInduService.queryParentAll();
         Map<String, String> hyflNameMap = hyflDict.stream().collect(Collectors.toMap(SubIndu::getCode, SubIndu::getTitle, (v1, v2) -> v1));
@@ -338,6 +350,7 @@ public class SubInfoQueryServiceImpl implements SubInfoQueryService {
                 .setRecordAndApproveNum(cbStatusMap.getOrDefault(SubInfoCbStatusEnum.YBA_YHZ.getCode(), 0L))
 
                 .setJsddData(jsddList)
+                .setLightData(redLightList)
                 .setHyflData(hyflList);
 
         // 查询所有状态统计 开工数、开复工率、投产率 等

+ 5 - 0
projects-service/src/main/java/com/rtrh/projects/modules/projects/vo/StatisticsVO.java

@@ -92,6 +92,11 @@ public class StatisticsVO {
      */
     private List<KvNum> jsddData;
 
+    /**
+     * 红黄灯
+     */
+    private List<KvNum> lightData;
+
     @Getter
     @Setter
     @Accessors(chain = true)

+ 2 - 0
projects-service/src/main/java/com/rtrh/projects/vo/projects/SubFixBeginVo.java

@@ -35,6 +35,8 @@ public class SubFixBeginVo {
 
     private List<SubFixTotalVo> indusKindList;        //行业数量
 
+    private List<SubFixTotalVo> lightList;        //红黄灯数量
+
     private Integer bePlanningNum;  // 正在谋划
     private Integer negotiationNum;  // 正在洽谈
     private Integer signedNum;   // 已签约

+ 2 - 0
projects-service/src/main/java/com/rtrh/projects/vo/projects/SubFixGetBeginRateVo.java

@@ -18,6 +18,8 @@ public class SubFixGetBeginRateVo {
     private String abc;
     // 储备项目状态
     private String cbStatus;
+    // 红黄灯
+    private String statusRed;
 
 
 }

+ 15 - 0
projects/src/main/java/com/rtrh/projects/web/controller/subject/api/SubInfoQueryApiController.java

@@ -1027,8 +1027,22 @@ public class SubInfoQueryApiController extends BaseController {
                 }
             });
 
+            // 红黄灯统计
+            Map<String, Long> redLightMap = subFixGetBeginRateVoList.stream().collect(Collectors.groupingBy(e ->
+                            StringUtils.isBlank(e.getStatusRed()) ? RedLightEnum.GREEN.getCode() : e.getStatusRed()
+                    , Collectors.counting()));
+            List<SubFixTotalVo> redLightList = new ArrayList<>();
+            for (RedLightEnum value : RedLightEnum.values()) {
+                SubFixTotalVo subFixTotalVo = new SubFixTotalVo();
+                subFixTotalVo.setCode(value.getCode());
+                subFixTotalVo.setTitle(value.getName());
+                subFixTotalVo.setTotal(Math.toIntExact(redLightMap.getOrDefault(value.getCode(), 0L)));
+                redLightList.add(subFixTotalVo);
+            }
+
             subFixBeginVo.setSubjectIdList(subjectIdList);
             subFixBeginVo.setIndusKindList(indusKindList);
+            subFixBeginVo.setLightList(redLightList);
 
         }else {
             subFixBeginVo.setTotal(0);
@@ -1043,6 +1057,7 @@ public class SubInfoQueryApiController extends BaseController {
             subFixBeginVo.setTcl(new BigDecimal(0));
             subFixBeginVo.setSubjectIdList(new ArrayList<>());
             subFixBeginVo.setIndusKindList(new ArrayList<>());
+            subFixBeginVo.setLightList(new ArrayList<>());
         }
 
         message.setData(subFixBeginVo);

+ 2 - 2
projects/src/main/java/com/rtrh/projects/outapi/controller/sync/DataSyncController.java → projects/src/main/java/com/rtrh/projects/web/controller/system/api/DataSyncController.java

@@ -1,4 +1,4 @@
-package com.rtrh.projects.outapi.controller.sync;
+package com.rtrh.projects.web.controller.system.api;
 
 import com.rtrh.core.vo.Message;
 import com.rtrh.projects.modules.sync.service.DataSyncService;
@@ -13,7 +13,7 @@ import java.util.List;
 import java.util.Map;
 
 @RestController
-@RequestMapping("/outApi/sync")
+@RequestMapping("/api/sync")
 @RequiredArgsConstructor(onConstructor_ = {@Lazy})
 public class DataSyncController {
     private final DataSyncService dataSyncService;

+ 2 - 2
projects/src/main/java/com/rtrh/projects/outapi/controller/sync/RemoteRequestController.java → projects/src/main/java/com/rtrh/projects/web/controller/system/api/RemoteRequestController.java

@@ -1,4 +1,4 @@
-package com.rtrh.projects.outapi.controller.sync;
+package com.rtrh.projects.web.controller.system.api;
 
 import com.rtrh.core.vo.Message;
 import com.rtrh.projects.modules.projects.service.SubInfoQueryService;
@@ -14,7 +14,7 @@ import java.util.List;
 import java.util.Map;
 
 @RestController
-@RequestMapping("/outApi/remote")
+@RequestMapping("/api/remote")
 public class RemoteRequestController {
     @Resource
     private SubInfoQueryService subInfoQueryService;

+ 4 - 6
projects/src/main/resources/rtrh-crypto.xml

@@ -17,9 +17,8 @@
 				<value>/outApi/preFlow/img</value>
 				<value>/outApi/projects/statics/yearReport</value>
 				<value>/outApi/subInfoExport/**</value>
-				<value>/outApi/auth/gxjLogin</value>
-				<value>/outApi/sync/**</value>
-				<value>/outApi/remote/**</value>
+				<value>/api/sync/**</value>
+				<value>/api/remote/**</value>
 				<value>/pdfHtml/**</value>
 				<value>/api/jumpLogin</value>
 			</list>
@@ -28,9 +27,8 @@
 			<list>
 				<value>/outApi/file/**</value>
 				<value>/outApi/subInfoExport/**</value>
-				<value>/outApi/auth/gxjLogin</value>
-				<value>/outApi/sync/**</value>
-				<value>/outApi/remote/**</value>
+				<value>/api/sync/**</value>
+				<value>/api/remote/**</value>
 				<value>/pdfHtml/**</value>
 				<value>/api/jumpLogin</value>
 			</list>

+ 123 - 56
projects/src/main/webapp/vmodules/statics/analysisScreen_four.jsp

@@ -168,14 +168,14 @@
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="left-data1">120</p>
+                                    <p class="data" id="left-data1">0</p>
                                     <p class="data-des">项目数(个)</p>
                                 </div>
                                 <img class="data-img" src="${WebSite.asset}/images/static/left-img2.png" alt="">
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="left-data2">637.28</p>
+                                    <p class="data" id="left-data2">0</p>
                                     <p class="data-des">投资金额(亿元)</p>
                                 </div>
                                 <img class="data-img" src="${WebSite.asset}/images/static/left-img2.png" alt="">
@@ -188,14 +188,14 @@
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="left-data3">67</p>
+                                    <p class="data" id="left-data3">0</p>
                                     <p class="data-des">项目数(个)</p>
                                 </div>
                                 <img class="data-img" src="${WebSite.asset}/images/static/left-img2.png" alt="">
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="left-data4">358.2</p>
+                                    <p class="data" id="left-data4">0</p>
                                     <p class="data-des">投资金额(亿元)</p>
                                 </div>
                                 <img class="data-img" src="${WebSite.asset}/images/static/left-img2.png" alt="">
@@ -208,14 +208,14 @@
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="left-data5">22</p>
+                                    <p class="data" id="left-data5">0</p>
                                     <p class="data-des">项目数(个)</p>
                                 </div>
                                 <img class="data-img" src="${WebSite.asset}/images/static/left-img2.png" alt="">
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="left-data6">78.9</p>
+                                    <p class="data" id="left-data6">0</p>
                                     <p class="data-des">投资金额(亿元)</p>
                                 </div>
                                 <img class="data-img" src="${WebSite.asset}/images/static/left-img2.png" alt="">
@@ -388,12 +388,12 @@
                         </div>
                         <div class="main-detail-bottom">
                             <div class="main-detail-bottom-top" onclick="projDetailNew('','5','','','','')">
-                                <p class="data" id="center-center-data7">76</p>
+                                <p class="data" id="center-center-data7">0</p>
                                 <p class="data-des">项目数(个)</p>
                             </div>
                             <div class="line"></div>
                             <div class="main-detail-bottom-top">
-                                <p class="data" id="center-center-data8">727</p>
+                                <p class="data" id="center-center-data8">0</p>
                                 <p class="data-des">总投资(亿元)</p>
                             </div>
                             <div class="main-detail-bottom-bottom"  onclick="projDetailNew('','5','','','1','')">
@@ -444,13 +444,13 @@
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="right-data1">49</p>
+                                    <p class="data" id="right-data1">0</p>
                                     <p class="data-des">项目数(个)</p>
                                 </div>
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="right-data2">1827.23</p>
+                                    <p class="data" id="right-data2">0</p>
                                     <p class="data-des">投资金额(亿元)</p>
                                 </div>
                             </div>
@@ -464,13 +464,13 @@
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="right-data3">20</p>
+                                    <p class="data" id="right-data3">0</p>
                                     <p class="data-des">项目数(个)</p>
                                 </div>
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="right-data4">87.20</p>
+                                    <p class="data" id="right-data4">0</p>
                                     <p class="data-des">投资金额(亿元)</p>
                                 </div>
                             </div>
@@ -484,13 +484,13 @@
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="right-data5">5</p>
+                                    <p class="data" id="right-data5">0</p>
                                     <p class="data-des">项目数(个)</p>
                                 </div>
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="right-data6">24.03</p>
+                                    <p class="data" id="right-data6">0</p>
                                     <p class="data-des">投资金额(亿元)</p>
                                 </div>
                             </div>
@@ -504,13 +504,13 @@
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="right-data7">13</p>
+                                    <p class="data" id="right-data7">0</p>
                                     <p class="data-des">项目数(个)</p>
                                 </div>
                             </div>
                             <div class="data-container">
                                 <div class="data-content">
-                                    <p class="data" id="right-data8">8.29</p>
+                                    <p class="data" id="right-data8">0</p>
                                     <p class="data-des">投资金额(亿元)</p>
                                 </div>
                             </div>
@@ -527,7 +527,7 @@
                     <div class="title">储备项目库</div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(1,'','','','1','')">
                         <div class="left">
-                            <span id="bottom-light-data1">123</span>
+                            <span id="bottom-light-data1">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -538,7 +538,7 @@
                     </div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(1,'','','','2','')">
                         <div class="left">
-                            <span id="bottom-light-data2">123</span>
+                            <span id="bottom-light-data2">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -549,7 +549,7 @@
                     </div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(1,'','','','0','')">
                         <div class="left">
-                            <span id="bottom-light-data3">123</span>
+                            <span id="bottom-light-data3">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -566,7 +566,7 @@
                     <div class="title">新建项目库</div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(2,'','','','1','')">
                         <div class="left">
-                            <span id="bottom-light-data4">123</span>
+                            <span id="bottom-light-data4">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -577,7 +577,7 @@
                     </div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(2,'','','','2','')">
                         <div class="left">
-                            <span id="bottom-light-data5">123</span>
+                            <span id="bottom-light-data5">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -588,7 +588,7 @@
                     </div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(2,'','','','0','')">
                         <div class="left">
-                            <span id="bottom-light-data6">123</span>
+                            <span id="bottom-light-data6">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -605,7 +605,7 @@
                     <div class="title">在建项目库</div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(3,'','','','1','')">
                         <div class="left">
-                            <span id="bottom-light-data7">123</span>
+                            <span id="bottom-light-data7">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -616,7 +616,7 @@
                     </div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(3,'','','','2','')">
                         <div class="left">
-                            <span id="bottom-light-data8">123</span>
+                            <span id="bottom-light-data8">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -627,7 +627,7 @@
                     </div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(3,'','','','0','')">
                         <div class="left">
-                            <span id="bottom-light-data9">123</span>
+                            <span id="bottom-light-data9">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -644,7 +644,7 @@
                     <div class="title">投产项目库</div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(9,'','','','1','')">
                         <div class="left">
-                            <span id="bottom-light-data10">123</span>
+                            <span id="bottom-light-data10">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -655,7 +655,7 @@
                     </div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(9,'','','','2','')">
                         <div class="left">
-                            <span id="bottom-light-data11">123</span>
+                            <span id="bottom-light-data11">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -666,7 +666,7 @@
                     </div>
                     <div class="main-detail-bottom-bottom" onclick="projDetailNew(9,'','','','0','')">
                         <div class="left">
-                            <span id="bottom-light-data12">123</span>
+                            <span id="bottom-light-data12">0</span>
                             <span>个</span>
                         </div>
                         <div class="right">
@@ -727,17 +727,35 @@
             // 绑定数据到页面
             if (res.success) {
                 gmData = res.data;
-                document.querySelector('#right-data1').textContent =  gmData[0].num
-                document.querySelector('#right-data2').textContent = gmData[0].amt
 
-                document.querySelector('#right-data3').textContent =  gmData[1].num
-                document.querySelector('#right-data4').textContent = gmData[1].amt
+                // 定义 id 和 DOM 元素的映射关系
+                const idMapping = {
+                    1: ['#right-data1', '#right-data2'], // id=1 对应的 DOM 元素
+                    2: ['#right-data3', '#right-data4'], // id=2 对应的 DOM 元素
+                    3: ['#right-data5', '#right-data6'], // id=3 对应的 DOM 元素
+                    4: ['#right-data7', '#right-data8']  // id=4 对应的 DOM 元素
+                };
 
-                document.querySelector('#right-data5').textContent =   gmData[2].num
-                document.querySelector('#right-data6').textContent = gmData[2].amt
-
-                document.querySelector('#right-data7').textContent =  gmData[3].num
-                document.querySelector('#right-data8').textContent =  gmData[3].amt
+                // 遍历 gmData 数组
+                gmData.forEach(item => {
+                    if (idMapping[item.id]) { // 检查是否有对应的映射关系
+                        const [selector1, selector2] = idMapping[item.id]; // 获取对应的 DOM 元素选择器
+                        document.querySelector(selector1).textContent = item.num; // 赋值 num
+                        document.querySelector(selector2).textContent = item.amt; // 赋值 amt
+                    }
+                });
+                //
+                // document.querySelector('#right-data1').textContent =  gmData[0].num
+                // document.querySelector('#right-data2').textContent = gmData[0].amt
+                //
+                // document.querySelector('#right-data3').textContent =  gmData[1].num
+                // document.querySelector('#right-data4').textContent = gmData[1].amt
+                //
+                // document.querySelector('#right-data5').textContent =   gmData[2].num
+                // document.querySelector('#right-data6').textContent = gmData[2].amt
+                //
+                // document.querySelector('#right-data7').textContent =  gmData[3].num
+                // document.querySelector('#right-data8').textContent =  gmData[3].amt
             }
         });
     }
@@ -747,29 +765,78 @@
             // 绑定数据到页面
             if (res.success) {
                 addreData = res.data;
-                document.querySelector('#center-center-data1').textContent = addreData[1].num
-                document.querySelector('#center-center-data2').textContent =  addreData[1].amt
-                document.querySelector('#center-center-light-data1').textContent = addreData[1].num_r
-                document.querySelector('#center-center-light-data2').textContent =  addreData[1].num_h
+                // 定义 id 和 DOM 元素的映射关系
+                const idMapping = {
+                    2: {
+                        dataSelectors: ['#center-center-data1', '#center-center-data2'],
+                        lightSelectors: ['#center-center-light-data1', '#center-center-light-data2']
+                    },
+                    3: {
+                        dataSelectors: ['#center-center-data3', '#center-center-data4'],
+                        lightSelectors: ['#center-center-light-data3', '#center-center-light-data4']
+                    },
+                    4: {
+                        dataSelectors: ['#center-center-data5', '#center-center-data6'],
+                        lightSelectors: ['#center-center-light-data5', '#center-center-light-data6']
+                    },
+                    5: {
+                        dataSelectors: ['#center-center-data7', '#center-center-data8'],
+                        lightSelectors: ['#center-center-light-data7', '#center-center-light-data8']
+                    }
+                };
 
-                document.querySelector('#center-center-data3').textContent = addreData[2].num
-                document.querySelector('#center-center-data4').textContent = addreData[2].amt
-                document.querySelector('#center-center-light-data3').textContent = addreData[2].num_r
-                document.querySelector('#center-center-light-data4').textContent =  addreData[2].num_h
+                // 遍历 addreData 数组
+                addreData.forEach(item => {
+                    if (idMapping[item.id]) { // 检查是否有对应的映射关系
+                        const { dataSelectors, lightSelectors } = idMapping[item.id]; // 获取对应的 DOM 元素选择器
 
-                document.querySelector('#center-center-data5').textContent =  addreData[3].num
-                document.querySelector('#center-center-data6').textContent =  addreData[3].amt
-                document.querySelector('#center-center-light-data5').textContent = addreData[3].num_r
-                document.querySelector('#center-center-light-data6').textContent =  addreData[3].num_h
+                        // 赋值 num 和 amt
+                        if (dataSelectors && dataSelectors.length === 2) {
+                            document.querySelector(dataSelectors[0]).textContent = item.num;
+                            document.querySelector(dataSelectors[1]).textContent = item.amt;
+                        }
+
+                        // 赋值 num_r 和 num_h
+                        if (lightSelectors && lightSelectors.length === 2) {
+                            document.querySelector(lightSelectors[0]).textContent = item.num_r;
+                            document.querySelector(lightSelectors[1]).textContent = item.num_h;
+                        }
+                    }
+                });
 
-                document.querySelector('#center-center-data7').textContent =  addreData[4].num
-                document.querySelector('#center-center-data8').textContent =  addreData[4].amt
-                document.querySelector('#center-center-light-data7').textContent = addreData[4].num_r
-                document.querySelector('#center-center-light-data8').textContent =  addreData[4].num_h
-                console.log(addreData[3].num_h+'=====',)
                 // 更新中间总投资数据
-                const totalAmount = (addreData[1].amt)+(addreData[2].amt)+(addreData[3].amt)+(addreData[4].amt);
-                document.querySelector('#main-data2').textContent =  totalAmount.toFixed(2)
+                let totalAmount = 0;
+                addreData.forEach(item => {
+                    if (item.amt) {
+                        totalAmount += parseFloat(item.amt); // 确保 amt 是数值类型
+                    }
+                });
+                document.querySelector('#main-data2').textContent = totalAmount.toFixed(2);
+
+                // document.querySelector('#center-center-data1').textContent = addreData[0].num
+                // document.querySelector('#center-center-data2').textContent =  addreData[0].amt
+                // document.querySelector('#center-center-light-data1').textContent = addreData[0].num_r
+                // document.querySelector('#center-center-light-data2').textContent =  addreData[0].num_h
+                //
+                // document.querySelector('#center-center-data3').textContent = addreData[1].num
+                // document.querySelector('#center-center-data4').textContent = addreData[1].amt
+                // document.querySelector('#center-center-light-data3').textContent = addreData[1].num_r
+                // document.querySelector('#center-center-light-data4').textContent =  addreData[1].num_h
+                //
+                // document.querySelector('#center-center-data5').textContent =  addreData[2].num
+                // document.querySelector('#center-center-data6').textContent =  addreData[2].amt
+                // document.querySelector('#center-center-light-data5').textContent = addreData[2].num_r
+                // document.querySelector('#center-center-light-data6').textContent =  addreData[2].num_h
+                //
+                // document.querySelector('#center-center-data7').textContent =  addreData[3].num
+                // document.querySelector('#center-center-data8').textContent =  addreData[3].amt
+                // document.querySelector('#center-center-light-data7').textContent = addreData[3].num_r
+                // document.querySelector('#center-center-light-data8').textContent =  addreData[3].num_h
+                // console.log(addreData[3].num_h+'=====',)
+                // // 更新中间总投资数据
+                // const totalAmount = (addreData[0].amt)+(addreData[1].amt)+(addreData[2].amt)+(addreData[3].amt);
+                // console.log("totalAmount",totalAmount)
+                // document.querySelector('#main-data2').textContent =  totalAmount.toFixed(2)
             }
         });
     }

+ 16 - 3
projects/src/main/webapp/vmodules/subject/subInfo/tz/cb.jsp

@@ -102,6 +102,9 @@
             text-overflow: ellipsis; /* 使用省略号表示溢出内容 */
             -webkit-line-clamp: 2; /* 显示的行数 */
         }
+        .search_pop .layui-layer-content {
+            overflow: visible;
+        }
     </style>
 </head>
 <body>
@@ -279,6 +282,11 @@
                            v-for="(item, index) in beginRate.jsddList" :key="index">
                         {{item.name}} <span class="lanse-first">{{item.num}}</span>
                     </label>
+                    <label class="juli"
+                           @click="levelList('statusRed',item.name,item.code)"
+                           v-for="(item, index) in beginRate.lightList" :key="index">
+                        {{item.name}} <span class="lanse-first">{{item.num}}</span>
+                    </label>
                 </div>
                 <div class="second_line" style="margin-bottom: 3px">
                     <label class="juli"
@@ -366,9 +374,11 @@
             <div class="layui-input-block" style="flex: 1; max-width: calc(100% - 120px);">
                 <select class="custom-select" lay-filter="moveStatus" lay-verify="required">
                     <option value="">请选择</option>
-                    <option value="2">新建</option>
-                    <option value="3">在建</option>
-                    <option value="9">投产</option>
+                    <c:forEach items="${subInfoStatus }" var="item">
+                        <c:if test="${item.code != 1}">
+                            <option value="${item.code}">${item.desc}</option>
+                        </c:if>
+                    </c:forEach>
                 </select>
             </div>
         </div>
@@ -576,6 +586,7 @@
                         self.beginRate = res.data;
                         self.beginRate.hyflList = self.beginRate.hyflData;
                         self.beginRate.jsddList = self.beginRate.jsddData;
+                        self.beginRate.lightList = self.beginRate.lightData;
                     }
                 });
             },
@@ -659,6 +670,7 @@
                     title: '转库',
                     content: formTemplate,
                     area: ['350px', '300px'],
+                    skin: 'search_pop',
                     success: function (layero, index) {
                         layui.form.render();
                     }
@@ -726,6 +738,7 @@
                 layui.layer.full(index);
             },
             levelList: function (field, title, val) {
+                console.log(field, title+"==="+val)
                 //详情
                 var param = field + "," + title + "," + val
                 var params = encodeURIComponent(JSON.stringify(this.getSearchParams()));

+ 6 - 0
projects/src/main/webapp/vmodules/subject/subInfo/tz/cb_sum.jsp

@@ -415,6 +415,11 @@
                            v-for="(item, index) in beginRate.jsddList" :key="index">
                         {{item.name}}<span class="lanse-first">{{item.num}}</span>
                     </label>
+                    <label class="juli"
+                           @click="levelList('statusRed',item.name,item.code)"
+                           v-for="(item, index) in beginRate.lightList" :key="index">
+                        {{item.name}} <span class="lanse-first">{{item.num}}</span>
+                    </label>
                 </div>
                 <div class="second line" style="margin-bottom: 3px">
                     <label class="juli"
@@ -1043,6 +1048,7 @@
                         self.beginRate = res.data;
                         self.beginRate.hyflList = self.beginRate.hyflData;
                         self.beginRate.jsddList = self.beginRate.jsddData;
+                        self.beginRate.lightList = self.beginRate.lightData;
                     }
                 });
             },

+ 6 - 0
projects/src/main/webapp/vmodules/subject/subInfo/tz/end.jsp

@@ -308,6 +308,11 @@
                            v-for="(item, index) in beginRate.jsddList" :key="index">
                         {{item.name}}<span class="lanse-first">{{item.num}}</span>
                     </label>
+                    <label class="juli"
+                           @click="levelList('statusRed',item.name,item.code)"
+                           v-for="(item, index) in beginRate.lightList" :key="index">
+                        {{item.name}} <span class="lanse-first">{{item.num}}</span>
+                    </label>
                 </div>
                 <div class="second_line" style="margin-bottom: 3px">
                     <label class="juli"
@@ -816,6 +821,7 @@
                         self.beginRate = res.data;
                         self.beginRate.hyflList = self.beginRate.hyflData;
                         self.beginRate.jsddList = self.beginRate.jsddData;
+                        self.beginRate.lightList = self.beginRate.lightData;
                     }
                 });
 

+ 6 - 0
projects/src/main/webapp/vmodules/subject/subInfo/tz/end_sum.jsp

@@ -370,6 +370,11 @@
                            v-for="(item, index) in beginRate.jsddList" :key="index">
                         {{item.name}}<span class="lanse-first">{{item.num}}</span>
                     </label>
+                    <label class="juli"
+                           @click="levelList('statusRed',item.name,item.code)"
+                           v-for="(item, index) in beginRate.lightList" :key="index">
+                        {{item.name}} <span class="lanse-first">{{item.num}}</span>
+                    </label>
                 </div>
                 <div class="second line" style="margin-bottom: 3px">
                     <label class="juli"
@@ -852,6 +857,7 @@
                         self.beginRate = res.data;
                         self.beginRate.hyflList = self.beginRate.hyflData;
                         self.beginRate.jsddList = self.beginRate.jsddData;
+                        self.beginRate.lightList = self.beginRate.lightData;
                     }
                 });
                 // App.postJson("/api/subInfo/query/all", param, function (res) {

+ 15 - 3
projects/src/main/webapp/vmodules/subject/subInfo/tz/main.jsp

@@ -80,6 +80,9 @@
             text-overflow: ellipsis; /* 使用省略号表示溢出内容 */
             -webkit-line-clamp: 2; /* 显示的行数 */
         }
+        .search_pop .layui-layer-content {
+            overflow: visible;
+        }
     </style>
 </head>
 
@@ -370,6 +373,11 @@
                            v-for="(item, index) in beginRate.jsddList" :key="index">
                         {{item.name}}<span class="lanse-first">{{item.num}}</span>
                     </label>
+                    <label class="juli"
+                           @click="levelList('statusRed',item.name,item.code)"
+                           v-for="(item, index) in beginRate.lightList" :key="index">
+                        {{item.name}} <span class="lanse-first">{{item.num}}</span>
+                    </label>
                 </div>
                 <div class="second_line" style="margin-bottom: 3px">
                     <label class="juli"
@@ -726,9 +734,11 @@
             <div class="layui-input-block" style="flex: 1; max-width: calc(100% - 120px);">
                 <select class="custom-select" lay-filter="moveStatus" lay-verify="required">
                     <option value="">请选择</option>
-                    <option value="1">储备</option>
-                    <option value="2">新建</option>
-                    <option value="9">投产</option>
+                    <c:forEach items="${subInfoStatus }" var="item">
+                        <c:if test="${item.code != 3}">
+                            <option value="${item.code}">${item.desc}</option>
+                        </c:if>
+                    </c:forEach>
                 </select>
             </div>
         </div>
@@ -813,6 +823,7 @@
                     title: '转库',
                     content: formTemplate,
                     area: ['350px', '300px'],
+                    skin: 'search_pop',
                     success: function(layero, index){
                         layui.form.render();
                     }
@@ -1061,6 +1072,7 @@
                         self.beginRate = res.data;
                         self.beginRate.hyflList = self.beginRate.hyflData;
                         self.beginRate.jsddList = self.beginRate.jsddData;
+                        self.beginRate.lightList = self.beginRate.lightData;
                     }
                 });
                 // App.postJson("/api/subInfo/query/beginRate", param, function (res) {

+ 6 - 0
projects/src/main/webapp/vmodules/subject/subInfo/tz/main_sum.jsp

@@ -380,6 +380,11 @@
                            v-for="(item, index) in beginRate.jsddList" :key="index">
                         {{item.name}}<span class="lanse-first">{{item.num}}</span>
                     </label>
+                    <label class="juli"
+                           @click="levelList('statusRed',item.name,item.code)"
+                           v-for="(item, index) in beginRate.lightList" :key="index">
+                        {{item.name}} <span class="lanse-first">{{item.num}}</span>
+                    </label>
                 </div>
                 <div class="second line" style="margin-bottom: 3px">
                     <label class="juli"
@@ -1015,6 +1020,7 @@
                         self.beginRate = res.data;
                         self.beginRate.hyflList = self.beginRate.hyflData;
                         self.beginRate.jsddList = self.beginRate.jsddData;
+                        self.beginRate.lightList = self.beginRate.lightData;
                     }
                 });
                 // App.postJson("/api/subInfo/query/all", param, function (res) {

+ 15 - 3
projects/src/main/webapp/vmodules/subject/subInfo/tz/new.jsp

@@ -102,6 +102,9 @@
             text-overflow: ellipsis; /* 使用省略号表示溢出内容 */
             -webkit-line-clamp: 2; /* 显示的行数 */
         }
+        .search_pop .layui-layer-content {
+            overflow: visible;
+        }
     </style>
 </head>
 <body>
@@ -271,6 +274,11 @@
                            v-for="(item, index) in beginRate.jsddList" :key="index">
                         {{item.name}}<span class="lanse-first">{{item.num}}</span>
                     </label>
+                    <label class="juli"
+                           @click="levelList('statusRed',item.name,item.code)"
+                           v-for="(item, index) in beginRate.lightList" :key="index">
+                        {{item.name}} <span class="lanse-first">{{item.num}}</span>
+                    </label>
                 </div>
                 <div class="second_line" style="margin-bottom: 3px">
                     <label class="juli"
@@ -583,9 +591,11 @@
             <div class="layui-input-block" style="flex: 1; max-width: calc(100% - 120px);">
                 <select class="custom-select" lay-filter="moveStatus" lay-verify="required">
                     <option value="">请选择</option>
-                    <option value="1">储备</option>
-                    <option value="3">在建</option>
-                    <option value="9">投产</option>
+                    <c:forEach items="${subInfoStatus }" var="item">
+                        <c:if test="${item.code != 2}">
+                            <option value="${item.code}">${item.desc}</option>
+                        </c:if>
+                    </c:forEach>
                 </select>
             </div>
         </div>
@@ -677,6 +687,7 @@
                     title: '转库',
                     content: formTemplate,
                     area: ['350px', '300px'],
+                    skin: 'search_pop',
                     success: function(layero, index){
                         layui.form.render();
                     }
@@ -925,6 +936,7 @@
                         self.beginRate = res.data;
                         self.beginRate.hyflList = self.beginRate.hyflData;
                         self.beginRate.jsddList = self.beginRate.jsddData;
+                        self.beginRate.lightList = self.beginRate.lightData;
                     }
                 })
 

+ 6 - 0
projects/src/main/webapp/vmodules/subject/subInfo/tz/new_sum.jsp

@@ -408,6 +408,11 @@
                            v-for="(item, index) in beginRate.jsddList" :key="index">
                         {{item.name}}<span class="lanse-first">{{item.num}}</span>
                     </label>
+                    <label class="juli"
+                           @click="levelList('statusRed',item.name,item.code)"
+                           v-for="(item, index) in beginRate.lightList" :key="index">
+                        {{item.name}} <span class="lanse-first">{{item.num}}</span>
+                    </label>
                 </div>
                 <div class="second line" style="margin-bottom: 3px">
                     <label class="juli"
@@ -1041,6 +1046,7 @@
                         self.beginRate = res.data;
                         self.beginRate.hyflList = self.beginRate.hyflData;
                         self.beginRate.jsddList = self.beginRate.jsddData;
+                        self.beginRate.lightList = self.beginRate.lightData;
                     }
                 });
                 // App.postJson("/api/subInfo/query/all", param, function (res) {

+ 5 - 0
projects/src/main/webapp/vmodules/subject/subInfo/tz/year_reserve.jsp

@@ -325,6 +325,11 @@
                                v-for="(item, index) in beginRate.subjectIdList" :key="index">
                             {{item.title}}<span class="lanse-first">{{item.total}}</span>
                         </label>
+                        <label class="juli"
+                               @click="levelList('statusRed',item.title,item.code)"
+                               v-for="(item, index) in beginRate.lightList" :key="index">
+                            {{item.title}} <span class="lanse-first">{{item.total}}</span>
+                        </label>
                     </div>
 
                     <div style="margin-bottom: 3px" class="second_line">