فهرست منبع

bug

Signed-off-by: liuyc <56808083@qq.com>
liuyc 1 سال پیش
والد
کامیت
fc7626dcba

+ 5 - 0
blade-service-api/blade-meter-api/src/main/java/org/springblade/meter/vo/MeterTreeContractTreeVO.java

@@ -1,5 +1,6 @@
 package org.springblade.meter.vo;
 
+import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springblade.meter.entity.MeterTreeContract;
@@ -10,4 +11,8 @@ public class MeterTreeContractTreeVO extends MeterTreeContract {
     @ApiModelProperty(value = "是否没有子级 true=最下级(没有子级) false=有子级")
     private boolean notExsitChild;
 
+    @ApiModelProperty(value = "是否存在清单数据 1=有 0=没有")
+    @JsonProperty(value = "isDecompositionData")
+    private Integer isDecompositionData;
+
 }

+ 9 - 7
blade-service/blade-meter/src/main/java/org/springblade/meter/controller/MeterTreeController.java

@@ -678,13 +678,15 @@ public class MeterTreeController extends BladeController {
     @ApiOperation(value = "合同段树节点懒加载", notes = "传入contractId、节点id(根节点id=0)")
     public R<List<MeterTreeContractTreeVO>> contractLazy(@RequestParam String contractId, @RequestParam String id) {
         if (StringUtils.isNotEmpty(id) && StringUtils.isNotEmpty(contractId)) {
-            List<MeterTreeContractTreeVO> query = jdbcTemplate.query(
-                    "SELECT *," +
-                            "(SELECT CASE WHEN count(1) > 0 THEN false ELSE true END FROM s_meter_tree_contract b" +
-                            "   WHERE b.parent_id = a.id AND b.is_deleted = 0 AND b.status = 1 AND b.contract_id = " + contractId + ") AS notExsitChild" +
-                            " FROM s_meter_tree_contract a WHERE a.contract_id = " + contractId +
-                            " AND a.is_deleted = 0 AND a.status = 1 AND a.parent_id = " + id +
-                            " ORDER BY a.sort,a.create_time",
+            String sql = "SELECT *," +
+                    "(SELECT CASE WHEN count(1) > 0 THEN false ELSE true END FROM s_meter_tree_contract b" +
+                    " WHERE b.parent_id = a.id AND b.is_deleted = 0 AND b.status = 1 AND b.contract_id = " + contractId + ") AS notExsitChild," +
+                    "(SELECT CASE WHEN count(1) > 0 THEN 1 ELSE 0 END FROM s_inventory_form_meter c" +
+                    " WHERE c.is_deleted = 0 AND c.contract_meter_id = a.id) AS isDecompositionData" +
+                    " FROM s_meter_tree_contract a WHERE a.contract_id = " + contractId +
+                    " AND a.is_deleted = 0 AND a.status = 1 AND a.parent_id = " + id +
+                    " ORDER BY a.sort,a.create_time";
+            List<MeterTreeContractTreeVO> query = jdbcTemplate.query(sql,
                     new BeanPropertyRowMapper<>(MeterTreeContractTreeVO.class));
             return R.data(query);
         }