Преглед на файлове

楼宇 公务用车 接口修改

zhanghao преди 1 месец
родител
ревизия
dd0c06ce66
променени са 14 файла, в които са добавени 210 реда и са изтрити 10 реда
  1. 4 0
      project-admin/src/main/resources/application-dev.yml
  2. 2 2
      project-zcustom/src/main/java/com/project/zcustom/controller/backManager/officialCar/LargePublicCarController.java
  3. 12 0
      project-zcustom/src/main/java/com/project/zcustom/controller/building/PlatBuildControlController.java
  4. 7 1
      project-zcustom/src/main/java/com/project/zcustom/domain/addional/LargeBuildingControl.java
  5. 58 0
      project-zcustom/src/main/java/com/project/zcustom/domain/addional/LargeBuildingLoadDetail.java
  6. 8 0
      project-zcustom/src/main/java/com/project/zcustom/mapper/unit/PlatBuildingMapper.java
  7. 5 0
      project-zcustom/src/main/java/com/project/zcustom/service/service/smart/IPlatBuildingService.java
  8. 22 0
      project-zcustom/src/main/java/com/project/zcustom/service/service/smart/impl/PlatBuildingServiceImpl.java
  9. 1 1
      project-zcustom/src/main/java/com/project/zcustom/service/unit/ILargePublicCarService.java
  10. 1 1
      project-zcustom/src/main/java/com/project/zcustom/service/unit/impl/LargePublicCarServiceImpl.java
  11. 18 0
      project-zcustom/src/main/java/com/project/zcustom/tools/ApiUrlConfig.java
  12. 29 2
      project-zcustom/src/main/java/com/project/zcustom/tools/BuildingService.java
  13. 6 3
      project-zcustom/src/main/resources/mapper/zcustom/logistics/PlatHousingLandMapper.xml
  14. 37 0
      project-zcustom/src/main/resources/mapper/zcustom/unit/PlatBuildingMapper.xml

+ 4 - 0
project-admin/src/main/resources/application-dev.yml

@@ -42,6 +42,8 @@ apiurl:
   controlMonthSum: /monthly/sum
   # 楼宇中控 配电室重要回路负荷情况
   controlImportantSum: /important/sum
+  # 楼宇中控 配电室重要回路负荷明细
+  controlImportantDetails: /important/details
   # 楼宇中控 楼宇中当前告警的设备
   controlEquipment: /equipment/state
   # 楼宇中控 楼宇中异常点位查看
@@ -50,6 +52,8 @@ apiurl:
   controlAlarm: /alarm/count
   # 楼宇中控 水箱水位情况
   controlWater: /water/state
+  # 楼宇中控 光伏发电
+  photovoltaicPower: /electricity/gf
 
 
   # 楼宇运行监控右半部 接口前缀

+ 2 - 2
project-zcustom/src/main/java/com/project/zcustom/controller/backManager/officialCar/LargePublicCarController.java

@@ -62,7 +62,7 @@ public class LargePublicCarController extends BaseController {
      * 上传json
      * */
     @PostMapping("/upload")
-    public AjaxResult upload(@RequestParam("type") String type, @RequestBody Map<String, Object> obj) {
-        return toAjax(largePlatPublicCarService.upload(type, obj));
+    public AjaxResult upload(@RequestBody Map<String, Object> obj) {
+        return toAjax(largePlatPublicCarService.upload(obj));
     }
 }

+ 12 - 0
project-zcustom/src/main/java/com/project/zcustom/controller/building/PlatBuildControlController.java

@@ -59,6 +59,12 @@ public class PlatBuildControlController {
         return AjaxResult.success("查询成功", platBuildingService.getRoomLoad());
     }
 
+    /*配电室重要回路负荷情况明细*/
+    @GetMapping("/roomLoadDetail")
+    public AjaxResult getRoomLoadDetail(@RequestParam("kind") Long kind, @RequestParam("state") Long state) {
+        return AjaxResult.success("查询成功", platBuildingService.getRoomLoadDetail(kind, state));
+    }
+
     /*楼宇中当前告警的设备*/
     @GetMapping("/warnDevice")
     public AjaxResult getWarnDevice() {
@@ -82,4 +88,10 @@ public class PlatBuildControlController {
     public AjaxResult getWarnState() {
         return AjaxResult.success("查询成功", platBuildingService.getWarnState());
     }
+
+    /*光伏发电*/
+    @GetMapping("/photovoltaicPower")
+    public AjaxResult getPhotovoltaicPower() {
+        return AjaxResult.success("查询成功", platBuildingService.getPhotovoltaicPower());
+    }
 }

+ 7 - 1
project-zcustom/src/main/java/com/project/zcustom/domain/addional/LargeBuildingControl.java

@@ -145,11 +145,16 @@ public class LargeBuildingControl {
      */
     private String abnormalPointFour;
 
+    /**
+     * 光伏发电
+     */
+    private String photovoltaicPower;
+
 
     public LargeBuildingControl() {
     }
 
-    public LargeBuildingControl(String weekElectricity, String controlElevator, String roomElectricity, String todayElectricity, String monthElectricityOne, String monthElectricityTwo, String monthElectricityThree, String roomLoadOne, String roomLoadTwo, String roomLoadThree, String warnDevice, Long waterControlNormalNum, Long waterControlAbnormalNum, String warnEventStatistics, String waterStateOne, String waterStateTwo) {
+    public LargeBuildingControl(String weekElectricity, String controlElevator, String roomElectricity, String todayElectricity, String monthElectricityOne, String monthElectricityTwo, String monthElectricityThree, String roomLoadOne, String roomLoadTwo, String roomLoadThree, String warnDevice, Long waterControlNormalNum, Long waterControlAbnormalNum, String warnEventStatistics, String waterStateOne, String waterStateTwo, String photovoltaicPower) {
         this.weekElectricity = weekElectricity;
         this.controlElevator = controlElevator;
         this.roomElectricity = roomElectricity;
@@ -166,5 +171,6 @@ public class LargeBuildingControl {
         this.warnEventStatistics = warnEventStatistics;
         this.waterStateOne = waterStateOne;
         this.waterStateTwo = waterStateTwo;
+        this.photovoltaicPower = photovoltaicPower;
     }
 }

+ 58 - 0
project-zcustom/src/main/java/com/project/zcustom/domain/addional/LargeBuildingLoadDetail.java

@@ -0,0 +1,58 @@
+package com.project.zcustom.domain.addional;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.project.common.core.domain.CustomBaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+import lombok.experimental.Accessors;
+
+/**
+ * 【请填写功能名称】对象 large_plat_building_load_detail
+ *
+ * @author change
+ * @date 2025-03-11
+ */
+@Data
+@Accessors(chain = true)
+@ToString(callSuper = true)
+@EqualsAndHashCode(callSuper = false)
+@TableName("large_plat_building_load_detail")
+
+public class LargeBuildingLoadDetail extends CustomBaseEntity {
+
+    /**
+     * $column.columnComment
+     */
+    @TableId(value = "id")
+    private Long id;
+
+    /**
+     * 编号
+     */
+    private String number;
+
+    /**
+     * 名称
+     */
+    @JSONField(name = "EqName")
+    private String deviceName;
+
+    /**
+     * 类别
+     */
+    private String type;
+
+    /**
+     * 负载类型
+     */
+    private Integer state;
+
+    /**
+     * 所属配电室
+     */
+    private Integer kind;
+
+}

+ 8 - 0
project-zcustom/src/main/java/com/project/zcustom/mapper/unit/PlatBuildingMapper.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
 import com.project.zcustom.domain.addional.LargeBuilding;
 import com.project.zcustom.domain.addional.LargeBuildingControl;
 import com.project.zcustom.domain.addional.LargeBuildingControlAmmeterDetail;
+import com.project.zcustom.domain.addional.LargeBuildingLoadDetail;
 
 import java.util.List;
 import java.util.Map;
@@ -48,10 +49,14 @@ public interface PlatBuildingMapper {
     LargeBuildingControl getRoomLoad();
     LargeBuildingControl getWarnDevice();
 
+    List<LargeBuildingLoadDetail> getRoomLoadDetail(Long kind, Long state);
+
     LargeBuildingControl getAbnormalPoint();
     String getWarnEvent();
     LargeBuildingControl getWarnState();
 
+    String getPhotovoltaicPower();
+
 
 
 
@@ -90,4 +95,7 @@ public interface PlatBuildingMapper {
     public void deleteAmmeterDetails();
     public int addAmmeterDetails(List<LargeBuildingControlAmmeterDetail> list);
     public int updateBuildingControl(LargeBuildingControl largeBuildingControl);
+
+    public void deleteLoadDetails();
+    int addLoadDetails(List<LargeBuildingLoadDetail> list);
 }

+ 5 - 0
project-zcustom/src/main/java/com/project/zcustom/service/service/smart/IPlatBuildingService.java

@@ -2,6 +2,7 @@ package com.project.zcustom.service.service.smart;
 
 import com.alibaba.fastjson2.JSONArray;
 import com.alibaba.fastjson2.JSONObject;
+import com.project.zcustom.domain.addional.LargeBuildingLoadDetail;
 
 import java.util.List;
 import java.util.Map;
@@ -47,6 +48,8 @@ public interface IPlatBuildingService{
 
     Map<String, Object> getRoomLoad();
 
+    List<LargeBuildingLoadDetail> getRoomLoadDetail(Long kind, Long state);
+
     Map<String, Object> getWarnDevice();
 
     JSONArray getAbnormalPoint(String type);
@@ -54,4 +57,6 @@ public interface IPlatBuildingService{
     JSONArray getWarnEvent();
 
     Map<String, Object> getWarnState();
+
+    JSONObject getPhotovoltaicPower();
 }

+ 22 - 0
project-zcustom/src/main/java/com/project/zcustom/service/service/smart/impl/PlatBuildingServiceImpl.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson2.JSONArray;
 import com.alibaba.fastjson2.JSONObject;
 import com.project.common.utils.StringUtils;
 import com.project.zcustom.domain.addional.LargeBuildingControl;
+import com.project.zcustom.domain.addional.LargeBuildingLoadDetail;
 import com.project.zcustom.mapper.unit.PlatBuildingMapper;
 import com.project.zcustom.service.service.smart.IPlatBuildingService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -581,6 +582,10 @@ public class PlatBuildingServiceImpl implements IPlatBuildingService {
         return map;
     }
 
+    public List<LargeBuildingLoadDetail> getRoomLoadDetail(Long kind, Long state) {
+        return platBuildingMapper.getRoomLoadDetail(kind, state);
+    }
+
     public Map<String, Object> getWarnDevice(){
         LargeBuildingControl largeBuildingControl = platBuildingMapper.getWarnDevice();
 
@@ -697,4 +702,21 @@ public class PlatBuildingServiceImpl implements IPlatBuildingService {
         }
         return monthsArray;
     }
+
+    public JSONObject getPhotovoltaicPower(){
+        String result = platBuildingMapper.getPhotovoltaicPower();
+        if (StringUtils.isBlank(result)){
+            result = "{\n" +
+                    "    \"code\": 200,\n" +
+                    "    \"success\": true,\n" +
+                    "    \"data\": {\n" +
+                    "        \"sum\":\"0\",\n" +
+                    "        \"bm\":\"0\",\n" +
+                    "        \"gfb\":\"0\"\n" +
+                    "    },\n" +
+                    "    \"msg\": \"成功。\"\n" +
+                    "}";
+        }
+        return JSONObject.parseObject(result);
+    }
 }

+ 1 - 1
project-zcustom/src/main/java/com/project/zcustom/service/unit/ILargePublicCarService.java

@@ -78,6 +78,6 @@ public interface ILargePublicCarService extends IService<LargeCar> {
      */
     public void checkFieldExist(String field, String filedValue,String tips,Long id);
 
-    int upload(String type, Map<String, Object> json);
+    int upload(Map<String, Object> json);
 
 }

+ 1 - 1
project-zcustom/src/main/java/com/project/zcustom/service/unit/impl/LargePublicCarServiceImpl.java

@@ -231,7 +231,7 @@ public class LargePublicCarServiceImpl extends ServiceImpl<LargePublicCarMapper,
         }
     }
 
-    public int upload(String type, Map<String, Object> json){
+    public int upload(Map<String, Object> json){
         try {
             List<PlatAppOrg> orgList = platAppOrgService.selectAppCodeList();
             Map<String, String> orgMap = orgList.stream().collect(Collectors.toMap(PlatAppOrg::getAppEncode, PlatAppOrg::getAppParentOrg, (v1, v2) -> v1));

+ 18 - 0
project-zcustom/src/main/java/com/project/zcustom/tools/ApiUrlConfig.java

@@ -89,6 +89,15 @@ public class ApiUrlConfig {
         ApiUrlConfig.controlImportantSum = controlImportantSum;
     }
 
+    // 楼宇中控 配电室重要回路负荷情况
+    private static String controlImportantDetails;
+    public static String getControlImportantDetails() {
+        return ApiUrlConfig.controlApiUrl + controlImportantDetails;
+    }
+    public void setControlImportantDetails(String controlImportantDetails) {
+        ApiUrlConfig.controlImportantDetails = controlImportantDetails;
+    }
+
     // 楼宇中控 楼宇中当前告警的设备
     private static String controlEquipment;
     public static String getControlEquipment() {
@@ -125,6 +134,15 @@ public class ApiUrlConfig {
         ApiUrlConfig.controlWater = controlWater;
     }
 
+    // 楼宇中控 水箱水位情况
+    private static String photovoltaicPower;
+    public static String getPhotovoltaicPower() {
+        return ApiUrlConfig.controlApiUrl + photovoltaicPower;
+    }
+    public void setPhotovoltaicPower(String photovoltaicPower) {
+        ApiUrlConfig.photovoltaicPower = photovoltaicPower;
+    }
+
     // 楼宇运行监控右半部 接口前缀
     private static String buildPrefix;
     public static String getBuildPrefix() {

+ 29 - 2
project-zcustom/src/main/java/com/project/zcustom/tools/BuildingService.java

@@ -1,11 +1,14 @@
 package com.project.zcustom.tools;
 
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONArray;
 import com.alibaba.fastjson2.JSONObject;
 import com.project.common.utils.StringUtils;
 import com.project.common.utils.http.HttpUtils;
 import com.project.zcustom.domain.addional.LargeBuilding;
 import com.project.zcustom.domain.addional.LargeBuildingControl;
 import com.project.zcustom.domain.addional.LargeBuildingControlAmmeterDetail;
+import com.project.zcustom.domain.addional.LargeBuildingLoadDetail;
 import com.project.zcustom.domain.plat.PlatApiRecord;
 import com.project.zcustom.mapper.unit.PlatBuildingMapper;
 import com.project.zcustom.service.plat.IPlatApiRecordService;
@@ -54,7 +57,8 @@ public class BuildingService {
                 abnormalNum,
                 repeat(ApiUrlConfig.getControlAlarm(), null),
                 repeat(ApiUrlConfig.getControlWater(), "position=23F"),
-                repeat(ApiUrlConfig.getControlWater(), "position=负二")
+                repeat(ApiUrlConfig.getControlWater(), "position=负二"),
+                repeat(ApiUrlConfig.getPhotovoltaicPower(), null)
                 );
         if (platBuildingMapper.getExist() > 0){
             platBuildingMapper.updateBuildingControl(largeBuildingControl);
@@ -63,7 +67,7 @@ public class BuildingService {
     }
 
     /**
-     * 电表、异常明细
+     * 电表、异常、负载明细
      */
     public void getLeftBuildingDataDetail(){
         LargeBuildingControl largeBuildingControl = new LargeBuildingControl();
@@ -76,6 +80,7 @@ public class BuildingService {
         }
         else platBuildingMapper.addBuildingControl(largeBuildingControl);
 
+
         platBuildingMapper.deleteAmmeterDetails();
         String[] arr = {
                 "光伏",
@@ -102,6 +107,28 @@ public class BuildingService {
             list.add(largeBuildingControlAmmeterDetail);
         }
         platBuildingMapper.addAmmeterDetails(list);
+
+
+        platBuildingMapper.deleteLoadDetails();
+        String[] type = {"一号配电室", "二号配电室", "三号配电室"};
+        String[] state = {"空载", "重载", "过载", "轻载", "正常"};
+        for (int i = 0; i < 3; i++){
+            for (int j = 0; i < 5; j++){
+                String res = repeat(ApiUrlConfig.getControlElectricityDetail(), "type=" + type[i] + "&" + "state=" + state[j]);
+                if (StringUtils.isBlank(res)){
+                    return;
+                }
+                List<LargeBuildingLoadDetail> load = JSON.parseArray(res, LargeBuildingLoadDetail.class);
+                for (LargeBuildingLoadDetail it : load){
+                    it.setState(j + 1);
+                    it.setKind(i + 1);
+                }
+                platBuildingMapper.addLoadDetails(load);
+            }
+        }
+
+
+
     }
 
     /**

+ 6 - 3
project-zcustom/src/main/resources/mapper/zcustom/logistics/PlatHousingLandMapper.xml

@@ -18,7 +18,8 @@
             type
         FROM
             large_plat_housing_land
-        <if test="appOrg != '0000'"> WHERE app_org = #{appOrg} </if>
+        WHERE del_flag = '0'
+        <if test="appOrg != '0000'"> AND app_org = #{appOrg} </if>
         GROUP BY
             type
     </select>
@@ -30,7 +31,8 @@
             COUNT( CASE WHEN ownership_flag = 1 THEN 1 END ) AS own
         FROM
             large_plat_housing_land
-        <if test="appOrg != '0000'"> WHERE app_org = #{appOrg} </if>
+        WHERE del_flag = '0'
+        <if test="appOrg != '0000'"> AND app_org = #{appOrg} </if>
     </select>
 
     <select id="getInvestFinishState" parameterType="String" resultType="map">
@@ -39,7 +41,8 @@
             COUNT( CASE WHEN ( investment_plan_flag = 1 AND YEAR ( construction_time ) >= YEAR ( CURDATE())) THEN 1 END ) AS invest
         FROM
             large_plat_housing_land
-        <if test="appOrg != '0000'"> WHERE app_org = #{appOrg} </if>
+        WHERE del_flag = '0'
+        <if test="appOrg != '0000'"> AND app_org = #{appOrg} </if>
     </select>
 
     <insert id="upload" parameterType="com.project.zcustom.domain.addional.LargeHousingLand">

+ 37 - 0
project-zcustom/src/main/resources/mapper/zcustom/unit/PlatBuildingMapper.xml

@@ -24,6 +24,15 @@
         <result property="waterStateTwo"    column="water_state_two"    />
     </resultMap>
 
+    <resultMap type="com.project.zcustom.domain.addional.LargeBuildingLoadDetail" id="LargePlatBuildingLoadDetailResult">
+        <result property="id"    column="id"    />
+        <result property="number"    column="number"    />
+        <result property="deviceName"    column="device_name"    />
+        <result property="type"    column="type"    />
+        <result property="state"    column="state"    />
+        <result property="kind"    column="kind"    />
+    </resultMap>
+
     <select id="getCount" resultType="int">
         select count(*) from large_plat_building
     </select>
@@ -107,6 +116,12 @@
         select warn_device, water_device_air_num, water_control_normal_num, water_control_abnormal_num from large_plat_building_control
     </select>
 
+    <select id="getRoomLoadDetail" resultMap="LargePlatBuildingLoadDetailResult">
+        select * from large_plat_building_load_detail
+        where state = #{arg1}
+        <if test="arg0 != 0"> and kind = #{arg0} </if>
+    </select>
+
     <select id="getAbnormalPoint" resultMap="LargeBuildingControlResult">
         select abnormal_point_one, abnormal_point_two, abnormal_point_three, abnormal_point_four from large_plat_building_control
     </select>
@@ -119,6 +134,10 @@
         select water_state_one, water_state_two from large_plat_building_control
     </select>
 
+    <select id="getPhotovoltaicPower" resultType="String">
+        select photovoltaic_power from large_plat_building_control
+    </select>
+
 
 
 
@@ -323,4 +342,22 @@
         </foreach>
     </insert>
 
+    <delete id="deleteLoadDetails">
+        delete from large_plat_building_load_detail
+    </delete>
+
+    <insert id="addLoadDetails" parameterType="com.project.zcustom.domain.addional.LargeBuildingLoadDetail">
+        insert into large_plat_building_load_detail (number, device_name, type, state, kind)
+        values
+        <foreach collection="list" item="item" separator="," close=";">
+            <trim prefix="(" suffix=")" suffixOverrides=",">
+                #{item.number},
+                #{item.deviceName},
+                #{item.type},
+                #{item.state},
+                #{item.kind}
+            </trim>
+        </foreach>
+    </insert>
+
 </mapper>