liukangdong
2024-11-19 59fb524d6b081f0faba177ffd13a0132d314dbae
Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit
已添加11个文件
已修改17个文件
455 ■■■■ 文件已修改
server/system_gateway/src/main/resources/application-dev.yml 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/ChangNeiDiaoduController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/EnergyController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/FightingAdminController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/PlatformJobRunController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/SecurityController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/WholeProvinceController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/BaseListPageResponse.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/FindAlarmBaseDataStatisticRequest.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/FindHomeAlarmInfoPageRequest.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/FireDevStatusTotalRequest.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/FireStatisticRequest.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/MinitorDataSearchRequest.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/FindAlarmBaseDataStatisticResponse.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/FindHomeAlarmInfoPageResponse.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/FireDevStatusListResponse.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/FireStatisticResponse.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/MonitorDataSearchResponse.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/MonitorDataValResponse.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/SecureDevStatusTotalResponse.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java 108 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWarnEvent.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/resources/application-dev.yml 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_gateway/src/main/resources/application-dev.yml
@@ -1,12 +1,12 @@
spring:
  # æ•°æ®æºé…ç½®
  datasource:
#    url: jdbc:mysql://sh-cdb-aiskr3vy.sql.tencentcdb.com:62443/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
#    username: doumee
#    password: rtjgfEr@&0c0m
    url: jdbc:mysql://10.50.250.253:3306/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
    username: root
    password: Atwl@2024
    url: jdbc:mysql://sh-cdb-aiskr3vy.sql.tencentcdb.com:62443/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
    username: doumee
    password: rtjgfEr@&0c0m
#    url: jdbc:mysql://10.50.250.253:3306/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
#    username: root
#    password: Atwl@2024
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -1638,6 +1638,13 @@
            return "";
        }
    }
    public static String getFirstDayCurrentMonth() {
        try {
            return getDateLong(new Date()).substring(0, 7) + "-01";
        } catch (Exception e) {
            return "";
        }
    }
    /**
     * å°†yyyyMM各式转换成yyyyå¹´MM月格式
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/ChangNeiDiaoduController.java
@@ -35,7 +35,7 @@
 * @create 2024/10/28 13:42
 */
@Api(tags = "场内调度看板")
@Api(tags = "【看板大屏】场内调度看板")
@RestController
@Slf4j
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/onSitDispatch")
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/EnergyController.java
@@ -28,7 +28,7 @@
 * @create 2024/10/28 13:42
 */
@Api(tags = "能耗看板")
@Api(tags = "【看板大屏】能耗看板")
@RestController
@Slf4j
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/energy")
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/FightingAdminController.java
@@ -28,7 +28,7 @@
 * @create 2024/10/28 13:42
 */
@Api(tags = "消防管控大屏")
@Api(tags = "【看板大屏】消防管控大屏")
@RestController
@Slf4j
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/fightingAdmin")
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/PlatformJobRunController.java
@@ -37,7 +37,7 @@
 * @create 2024/10/28 13:42
 */
@Api(tags = "园区物流运行调度看板")
@Api(tags = "【看板大屏】园区物流运行调度看板")
@RestController
@Slf4j
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/platformJobRun")
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/SecurityController.java
@@ -35,7 +35,7 @@
 * @create 2024/10/28 13:42
 */
@Api(tags = "安防管控大屏")
@Api(tags = "【看板大屏】安防管控大屏")
@RestController
@Slf4j
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/security")
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/WholeProvinceController.java
@@ -27,7 +27,7 @@
 * @create 2024/10/28 13:42
 */
@Api(tags = "全省一库制管理看板")
@Api(tags = "【看板大屏】全省一库制管理看板")
@RestController
@Slf4j
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/wholeProvince")
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
@@ -1,6 +1,6 @@
spring:
  profiles:
    active: pro
    active: dev
  application:
    name: visitsAdmin
    # å®‰å…¨é…ç½®
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
@@ -156,6 +156,12 @@
        String[] lastMonthFeeByMeterType= new String[]{"/api/board/v1/getLastMonthFeeByMeterType","能耗看板-4.获取上月用能费用,一天刷新,凌晨某个点刷"};//能耗看板-4.获取上月用能费用,一天刷新,凌晨某个点刷
        String[] energyTodayLoadData= new String[]{"/api/v1/exhibition/energy/getTodayLoadData","能耗看板-5.园区实时负荷曲线"};//能耗看板-5.园区实时负荷曲线
        String[] energyTrend= new String[]{"/api/v1/report/energyTrend","能耗看板-6按月查询近12个月的用电总量数据"};//能耗看板-6按月查询近12个月的用电总量数据
        String[] fireStatistic= new String[]{"/api/v1/fireStatistic","消防维保统计"};//消防维保统计
        String[] getFireDevStatusTotal= new String[]{"/api/dataBoardService/v2/getFireDevStatusTotal","消防看板-消防设备在离线1"};//消防看板-消防设备在离线1
        String[] getFireDevStatusList= new String[]{"/api/dataBoardService/v2/getFireDevStatusList","消防看板-各类型设备在线率2"};//消防看板-各类型设备在线率2
        String[] findAlarmBaseDataStatistic= new String[]{"/api/v1/alarm/findAlarmBaseDataStatistic","消防看板-4报警信息统计"};//消防看板-4报警信息统计
        String[] findHomeAlarmInfoPage= new String[]{"/api/v1/alarm/findHomeAlarmInfoPage","安防看板-- åˆ†é¡µæŸ¥è¯¢æœªå¤„理报警信息6"};//安防看板-- åˆ†é¡µæŸ¥è¯¢æœªå¤„理报警信息6
        String[] minitorDataSearch= new String[]{"/api/fem/v1/minitor/data/search","分页查询设备监测历史数据"};//分页查询设备监测历史数据
    }
    /**
     * é™„录A.55消防设备类型
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java
@@ -783,6 +783,54 @@
        return startDoPostStringArtemis(HKConstants.InterfacePath.energyTrend,body);
    }
    /**
     * æ¶ˆé˜²ç»´ä¿ç»Ÿè®¡
     * @param body
     * @return
     */
    public static String fireStatistic(String body) {
        return startDoPostStringArtemis(HKConstants.InterfacePath.fireStatistic,body);
    }
    /**
     * æ¶ˆé˜²çœ‹æ¿-消防设备在离线1
     * @param body
     * @return
     */
    public static String getFireDevStatusTotal(String body) {
        return startDoPostStringArtemis(HKConstants.InterfacePath.getFireDevStatusTotal,body);
    }
    /**
     * æ¶ˆé˜²çœ‹æ¿-各类型设备在线率2
     * @param body
     * @return
     */
    public static String getFireDevStatusList(String body) {
        return startDoPostStringArtemis(HKConstants.InterfacePath.getFireDevStatusList,body);
    }
    /**
     *消防看板-4报警信息统计
     * @param body
     * @return
     */
    public static String findAlarmBaseDataStatistic(String body) {
        return startDoPostStringArtemis(HKConstants.InterfacePath.findAlarmBaseDataStatistic,body);
    }
    /**
     *安防看板-- åˆ†é¡µæŸ¥è¯¢æœªå¤„理报警信息6
     * @param body
     * @return
     */
    public static String findHomeAlarmInfoPage(String body) {
        return startDoPostStringArtemis(HKConstants.InterfacePath.findHomeAlarmInfoPage,body);
    }
    /**
     *分页查询设备监测历史数据
     * @param body
     * @return
     */
    public static String minitorDataSearch(String body) {
        return startDoPostStringArtemis(HKConstants.InterfacePath.minitorDataSearch,body);
    }
    /**
     * ç»Ÿè®¡å›­åŒºæ€»ä½“的安防设备数量,在线数、在线率、离线数、离线率
     * @param body
     * @return
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/BaseListPageResponse.java
@@ -12,6 +12,9 @@
  private int pageSize;//    number    False    æ¯é¡µè®°å½•总数
  private int pageNo    ;// number    False    å½“前页码
  private int totalPage;//    number    False    æ€»é¡µæ•°
  private Boolean  mergeSwitchBool    ;//Boolean    false    åˆå¹¶å¼€å¯çŠ¶æ€
  private int count;//    Number    false    count
  private Boolean  lastPage;//    Boolean    false    æ˜¯å¦æ˜¯æœ€åŽä¸€é¡µ
  @JSONField(name="list",alternateNames = {"rows","list"})
  private List<T> list    ;// object[]    False    æƒé™ç»„对象列表
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/FindAlarmBaseDataStatisticRequest.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
package com.doumee.core.haikang.model.param.request;
import lombok.Data;
@Data
public class FindAlarmBaseDataStatisticRequest {
    /**
     *
     {
     "alarmStartTime" : "2024-01-01 00:00:00",
     "alarmEndTime" : "2024-12-01 00:00:00",
     "userId" : "admin"
     }
     */
    private String alarmStartTime;//        String    true    å¼€å§‹æ—¶é—´
    private String alarmEndTime    ;//    String    true    ç»“束时间
    private String userId;//        String    true    admin
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/FindHomeAlarmInfoPageRequest.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,19 @@
package com.doumee.core.haikang.model.param.request;
import com.doumee.core.haikang.model.param.BaseListPageRequest;
import lombok.Data;
import java.util.List;
@Data
public class FindHomeAlarmInfoPageRequest extends BaseListPageRequest {
 private String regionIndexCodes    ;//String    true    æ‰€å±žåŒºåŸŸé›†åˆ
private String searchContent    ;//String    false    æœç´¢å†…容
private String alarmLevel    ;//Number    false    æŠ¥è­¦ç­‰çº§
private String alarmType    ;//String    false    æŠ¥è­¦ç±»åž‹(返回值参照报警类型接口)
private String userId;//    String    true    ç”¨æˆ·
private String handleStatusList;//    String    false    æŠ¥è­¦å¤„理状态,1已核实,2未核实,3核实中
private Integer hour;//    Number    false    æ—¶é—´é—´éš”,单位小时
private String alarmStartTime;//    String    true    æŠ¥è­¦å¼€å§‹æ—¶é—´ æ—¶é—´æ ¼å¼yyyy-MM-dd HH:mm:ss
private String alarmEndTime    ;//String    true    æŠ¥è­¦ç»“束时间 æ—¶é—´æ ¼å¼yyyy-MM-dd HH:mm:ss
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/FireDevStatusTotalRequest.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,18 @@
package com.doumee.core.haikang.model.param.request;
import lombok.Data;
@Data
public class FireDevStatusTotalRequest {
    /**
     *
        {
          "regionIds": [
          "root000000"
          ],
          "includeBool":1
          }
     */
    private String[]  regionIds;//    Array    true    åŒºåŸŸç¼–号
    private Integer includeBool;//    Number    false    æ˜¯å¦åŒ…含下级子节点,0-不包含,1-包含
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/FireStatisticRequest.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,8 @@
package com.doumee.core.haikang.model.param.request;
import lombok.Data;
@Data
public class FireStatisticRequest {
    private String  indexCode;//    String    false    å›ºå®šå€¼ï¼šapi_fire_statistic
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/MinitorDataSearchRequest.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,17 @@
package com.doumee.core.haikang.model.param.request;
import com.doumee.core.haikang.model.param.BaseListPageRequest;
import lombok.Data;
@Data
public class MinitorDataSearchRequest extends BaseListPageRequest {
private String regionIndexCode;//    String    true    æ‰€å±žåŒºåŸŸindexCode,根据[查询区域列表v2]@[智慧园区管理平台V1.4.301-API列表-资源目录-区域信息接口#查询区域列表v2]接口获取返回报文中的indexCode字段
private String includeDown;//    Number    true    æ˜¯å¦åŒ…含下级 (1-包含,0-
 /**
  * // ç±»åž‹æˆ–传感器类型,参考[附录A.55 æ¶ˆé˜²è®¾å¤‡ç±»åž‹]@[智慧园区管理平台V1.4.301-附录-附录A æ•°æ®å­—å…¸#附录A.55 æ¶ˆé˜²è®¾å¤‡ç±»åž‹],
  * å‚考[附录A.57 æ¶ˆé˜²ä¼ æ„Ÿå™¨å¤§ç±»åž‹]@[智慧园区管理平台V1.4.301-附录-附录A æ•°æ®å­—å…¸#附录A.57 æ¶ˆé˜²ä¼ æ„Ÿå™¨å¤§ç±»åž‹]
  *   è®¾å¤‡ç±»åž‹æˆ–传感器类型,参考[附录A.55 æ¶ˆé˜²è®¾å¤‡ç±»åž‹]@[智慧园区管理平台V1.4.301-附录-
  *  æ•°æ®å­—å…¸#附录A.55 æ¶ˆé˜²è®¾å¤‡ç±»åž‹],参考[附录A.57 æ¶ˆé˜²ä¼ æ„Ÿå™¨å¤§ç±»åž‹]@[智慧园区管理平台V1.4.301-附录-附录A æ•°æ®å­—å…¸#附录A.57 æ¶ˆé˜²ä¼ æ„Ÿå™¨å¤§ç±»åž‹]
  */
 private String[] resourceTypeCodes;//    Array    false    è®¾å¤‡
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/FindAlarmBaseDataStatisticResponse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
package com.doumee.core.haikang.model.param.respose;
import lombok.Data;
@Data
public class FindAlarmBaseDataStatisticResponse {
private Integer totalAlarmNum        ;//Number    false    æ€»æŠ¥è­¦æ•°
private Integer handledAlarmNum        ;//Number    false    å·²å¤„理报警数
private Integer unHandedAlarmNum        ;//Number    false    æœªå¤„理报警
private Integer misReportAlarmNum    ;//    Number    false    è¯¯æŠ¥æ•°
private Integer averageHandleTime    ;//    Number    false    å¹³å‡å¤„理时间
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/FindHomeAlarmInfoPageResponse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,26 @@
package com.doumee.core.haikang.model.param.respose;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class FindHomeAlarmInfoPageResponse {
   private String  id    ;//String    false    æŠ¥è­¦id
   private Integer alarmType;//    Number    false    æŠ¥è­¦ç±»åž‹
   private String alarmName;//    String    false    æŠ¥è­¦æºåç§°
   private String regionIndexCode;//    String    false    åŒºåŸŸç¼–码
   private String regionName;//    String    false    åŒºåŸŸåç§°
   private String location;//    String    false    æŠ¥è­¦æºè¯¦ç»†åœ°å€
   private String alarmTime;//    String    false    æŠ¥è­¦æ—¶é—´ æ—¶é—´æ ¼å¼yyyy-MM-dd HH:mm:ss
   private Integer alarmLevel;//    Number    false    æŠ¥è­¦ç­‰çº§
   private String resourceId;//    String    false    æŠ¥è­¦æºæ‰€å±žèµ„源id
   private String resourceName;//    String    false    æŠ¥è­¦æºèµ„源名称
   private String userName;//    String    false    å½“前处理人
   private String parentResourceName;//    String    false    æŠ¥è­¦æºæ‰€å±žè®¾å¤‡åç§°
   private String resourceCode    ;//String    false    æŠ¥è­¦æºèµ„源编号
   private Integer ownSystem    ;//Number    false    æ‰€å±žç³»ç»Ÿ
   private Integer handleStatus;//    Number    false    æŠ¥è­¦çŠ¶æ€
   private String alarmTypeName    ;//String    false    æŠ¥è­¦ç±»åž‹åç§°
   private String ownSystemName;//    String    false    æ‰€å±žç³»ç»Ÿåç§°
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/FireDevStatusListResponse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
package com.doumee.core.haikang.model.param.respose;
import lombok.Data;
@Data
public class FireDevStatusListResponse {
private Integer totalFireDevCount    ;//Number    false    æ¶ˆé˜²è®¾å¤‡æ€»æ•°é‡
private Integer alarmFireDevCount    ;//Number    false    å‘生报警的消防设备数量
private Integer faultFireDevCount    ;//Number    false    å‘生故障的消防设备数量
private Integer onlineFireDevCount    ;//Number    false    åœ¨çº¿æ¶ˆé˜²è®¾å¤‡æ•°é‡
private Integer offlineFireDevCount    ;//Number    false    ç¦»çº¿æ¶ˆé˜²è®¾å¤‡æ•°é‡
private String rate    ;//String    false    rate
private String devType    ;//String    false    è®¾å¤‡ç±»åž‹
private String devTypeName;//    String    false    è®¾å¤‡ç±»åž‹åç§°
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/FireStatisticResponse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,12 @@
package com.doumee.core.haikang.model.param.respose;
import lombok.Data;
import java.util.List;
@Data
public class FireStatisticResponse {
private Integer  maintenanceNum    ;//    Number    false    å·²ç»´ä¿çš„æ¶ˆé˜²è®¾å¤‡æ•°
   private Integer  deviceTotalNum    ;//    Number    false    æ¶ˆé˜²è®¾å¤‡æ€»æ•°
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/MonitorDataSearchResponse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,16 @@
package com.doumee.core.haikang.model.param.respose;
import lombok.Data;
import java.util.List;
@Data
public class MonitorDataSearchResponse {
private String indexCode        ;//String    false    é€šç”¨èµ„源编码
private String resourceIndexCode        ;//String    false    è®¾å¤‡æˆ–者传感器真实编号
private String name    ;//    String    false    è®¾å¤‡æˆ–者传感器名称
private Integer resourceType        ;//Number    false    èµ„源类型,1代表传感器,2代表设备
private Integer type            ;//Number false    ä¼ æ„Ÿå™¨æˆ–者设备具体类型,参考[附录A.55 æ¶ˆé˜²è®¾å¤‡ç±»åž‹]@[智慧园区管理平台V1.4.301-附录-附录A æ•°æ®å­—å…¸#附录A.55 æ¶ˆé˜²è®¾å¤‡ç±»åž‹],参考[附录A.57 æ¶ˆé˜²ä¼ æ„Ÿå™¨å¤§ç±»åž‹]@[智慧园区管理平台V1.4.301-附录-附录A æ•°æ®å­—å…¸#附录A.57 æ¶ˆé˜²ä¼ æ„Ÿå™¨å¤§ç±»åž‹]
 private String updateTime    ;//    String    false    æ›´æ–°æ—¶é—´ï¼ŒISO8601格式
 private List<MonitorDataValResponse> values    ;//Array    false    ç›‘测数据集
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/MonitorDataValResponse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
package com.doumee.core.haikang.model.param.respose;
import lombok.Data;
@Data
public class MonitorDataValResponse {
private String monitorTypeCode    ;//String    false    ç›‘测类型,参考[附录A.70 æ¶ˆé˜²ç›‘测类型]@[智慧园区管理平台V1.4.301-附录-附录A æ•°æ®å­—å…¸#附录A.70 æ¶ˆé˜²ç›‘测类型]中类型大类
private String monitorTypeName    ;//String    false    ç›‘测名称
private String monitorValue;//    String    false    ç›‘测值
private String monitorChannelId    ;//String    false    ç›‘测值所属通道Id
private String monitorSpecificName;//    String    false    ç›‘测小类名称
private String monitorTypeKey;//    String    false    ç›‘测小类key,,参考[附录A.70 æ¶ˆé˜²ç›‘测类型]@[智慧园区管理平台V1.4.301-附录-附录A æ•°æ®å­—å…¸#附录A.70 æ¶ˆé˜²ç›‘测类型]中类型小类key
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/respose/SecureDevStatusTotalResponse.java
@@ -4,7 +4,7 @@
@Data
public class SecureDevStatusTotalResponse {
   private String name    ;//String    false    åœ¨çº¿/离线
   private String name    ;//String    false    åç§°
private String value    ;//    String    false    æ•°é‡
private String valueColor    ;//    String    false    é¢œè‰²
}
server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -1542,6 +1542,42 @@
        return  null;
    }
    /**
     *安防看板-- åˆ†é¡µæŸ¥è¯¢æœªå¤„理报警信息6
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>>   findHomeAlarmInfoPage(FindHomeAlarmInfoPageRequest param){
        log.info("【海康安防看板-- åˆ†é¡µæŸ¥è¯¢æœªå¤„理报警信息6】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.findHomeAlarmInfoPage(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>> >(){};
            BaseResponse<BaseListPageResponse<FindHomeAlarmInfoPageResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康安防看板-- åˆ†é¡µæŸ¥è¯¢æœªå¤„理报警信息6");
            return  result;
        }catch (Exception e){
            log.error("【海康安防看板-- åˆ†é¡µæŸ¥è¯¢æœªå¤„理报警信息6】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *分页查询设备监测历史数据
     * @return
     */
    public  static  BaseResponse<BaseListPageResponse<MonitorDataSearchResponse>>   minitorDataSearch(MinitorDataSearchRequest param){
        log.info("【海康分页查询设备监测历史数据】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.minitorDataSearch(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<BaseListPageResponse<MonitorDataSearchResponse>> >(){};
            BaseResponse<BaseListPageResponse<MonitorDataSearchResponse>>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康分页查询设备监测历史数据");
            return  result;
        }catch (Exception e){
            log.error("【海康分页查询设备监测历史数据】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *统计统安防看板--园区实时车数量4
     * @return
     */
@@ -1713,6 +1749,78 @@
        return  null;
    }
    /**
     *消防维保统计
     * @return
     */
    public  static  BaseResponse<FireStatisticResponse>   fireStatistic(FireStatisticRequest param){
        log.info("【海康消防维保统计】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.fireStatistic(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<FireStatisticResponse>>(){};
            BaseResponse<FireStatisticResponse>   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防维保统计");
            return  result;
        }catch (Exception e){
            log.error("【海康消防维保统计】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *消防看板-消防设备在离线1
     * @return
     */
    public  static  BaseResponse<List<SecureDevStatusTotalResponse> >  getFireDevStatusTotal(FireDevStatusTotalRequest param){
        log.info("【海康消防看板-消防设备在离线1】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.getFireDevStatusTotal(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<List<SecureDevStatusTotalResponse> >>(){};
            BaseResponse<List<SecureDevStatusTotalResponse> >   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防看板-消防设备在离线1");
            return  result;
        }catch (Exception e){
            log.error("【海康消防看板-消防设备在离线1】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *消防看板-各类型设备在线率2
     * @return
     */
    public  static  BaseResponse<List<FireDevStatusListResponse> >  getFireDevStatusList(FireDevStatusTotalRequest param){
        log.info("【海康消防看板-各类型设备在线率2】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.getFireDevStatusList(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<List<FireDevStatusListResponse> >>(){};
            BaseResponse<List<FireDevStatusListResponse> >   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防看板-各类型设备在线率2");
            return  result;
        }catch (Exception e){
            log.error("【海康消防看板-各类型设备在线率2】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *消防看板-4报警信息统计
     * @return
     */
    public  static  BaseResponse<FindAlarmBaseDataStatisticResponse>  findAlarmBaseDataStatistic(FindAlarmBaseDataStatisticRequest param){
        log.info("【海康消防看板-4报警信息统计】================开始===="+JSONObject.toJSONString(param));
        try {
            String res = HKTools.findAlarmBaseDataStatistic(JSONObject.toJSONString(param));
            TypeReference typeReference =
                    new TypeReference< BaseResponse<FindAlarmBaseDataStatisticResponse >>(){};
            BaseResponse<FindAlarmBaseDataStatisticResponse >   result = JSONObject.parseObject(res, typeReference.getType());
            logResult(result,"海康消防看板-4报警信息统计");
            return  result;
        }catch (Exception e){
            log.error("【海康消防看板-4报警信息统计】================失败====:\n"+ e.getMessage());
        }
        return  null;
    }
    /**
     *根据用户标识获取客户端TGC接口
     * @return
     */
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWarnEvent.java
@@ -29,7 +29,6 @@
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码", example = "1")
@@ -38,7 +37,6 @@
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date editDate;
    @ApiModelProperty(value = "是否删除0否 1是", example = "1")
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/thrid/BoardServiceImpl.java
@@ -464,10 +464,12 @@
        data.setGasQuantity(getDefaultData());//上月用气
        data.setMonthElectricity(getDefaultData());//本月用电
        data.setYesterdayElectricity(getDefaultData());//昨日用电
        getMonthElectricityData(data.getMonthElectricity());//通过安防平获取本月数据
        getMonthElectricityData(data.getMonthElectricity());//通过安防平获取本月用电量数据
        carbonElec = new BigDecimal(StringUtils.defaultString(data.getMonthElectricity().getTotal(), "0"));
        getLastMonthElectricityData(data.getElectricityQuantity());//通过安防平获取上月数据
        String firstDate = DateUtil.getFirstDayOfThisMonth() +" 00:00:00";
        getLastMonthElectricityData(data.getElectricityQuantity());//通过安防平获取上月用电量数据
        getCurrentDateElectircityData(data.getTodayElectricity(),0);//通过安防平获取今日用电量数据
        getCurrentDateElectircityData(data.getYesterdayElectricity(),-1);//通过安防平获取昨日用电量数据
        String firstDate = DateUtil.getFirstDayCurrentMonth() +" 00:00:00";
        Date month0 = DateUtil.getDateFromString(firstDate);
        Date month1 = DateUtil.increaseMonth(month0,-1);//上月
        Date month2 = DateUtil.increaseMonth(month0,-2);//上上月
@@ -517,13 +519,13 @@
        }
        if( data.getGasQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){
            //计算用气同比环比
            data.getGasQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getSameNum().divide(data.getGasQuantity().getTotalNum())).doubleValue()*100 +"");
            data.getGasQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum())).doubleValue()*100 +"");
            data.getGasQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getSameNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
            data.getGasQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getGasQuantity().getRingNum().divide(data.getGasQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
        }
        if( data.getWaterQuantity().getTotalNum().compareTo(new BigDecimal(0)) !=0){
            // //计算用水同比环比
            data.getWaterQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getSameNum().divide(data.getWaterQuantity().getTotalNum())).doubleValue()*100 +"");
            data.getWaterQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getRingNum().divide(data.getWaterQuantity().getTotalNum())).doubleValue()*100 +"");
            data.getWaterQuantity().setSameRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getSameNum().divide(data.getWaterQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
            data.getWaterQuantity().setRingRate(Constants.formatBigdecimal4Float(data.getWaterQuantity().getRingNum().divide(data.getWaterQuantity().getTotalNum(),4,BigDecimal.ROUND_HALF_UP)).doubleValue()*100 +"");
        }
        /*计算碳排量,以下三个因素之和
@@ -543,7 +545,7 @@
     */
    private void getMonthElectricityData(EnergyModelDataVO data) {
        BaseResponse<MonthDataByMeterTypeResponse> response = HKService.getCurrentMonthDataByMeterType("1");
        if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
           data.setRingRate(StringUtils.defaultString(response.getData().getRingPercent(),"0"));
           data.setSameRate(StringUtils.defaultString(response.getData().getSamePercent(),"0"));
           data.setTotal(StringUtils.defaultString(response.getData().getValue(),"0"));
@@ -556,11 +558,34 @@
     */
    private void getLastMonthElectricityData(EnergyModelDataVO data) {
        BaseResponse<LastMonthFeeByMeterTypeResponse> response = HKService.lastMonthFeeByMeterType("1");
        if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
           data.setRingRate(StringUtils.defaultString(response.getData().getRingPercent(),"0"));
           data.setSameRate(StringUtils.defaultString(response.getData().getSamePercent(),"0"));
           data.setTotal(StringUtils.defaultString(response.getData().getValue(),"0"));
        }
    }
    /**
     * é€šè¿‡å®‰é˜²å¹³èŽ·å–ä»Šæ—¥ç”¨ç”µé‡
     * @param data
     */
    private void getCurrentDateElectircityData(EnergyModelDataVO data,int days) {
        EnergyTrendRequest param = new EnergyTrendRequest();
        param.setDate(DateUtil.getFomartDate(DateUtil.addDaysToDate(new Date(),days),"yyyy-MM-dd"));//日期
        param.setMeterType(1);
        param.setShowType("4");
        param.setNodeType(2);
        param.setNodeId("root000000");
        param.setPeriodType("day");
        BigDecimal total = new BigDecimal(0);
        BaseResponse<EnergyTrendResponse> response = HKService.energyTrend(param);
        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null&& response.getData().getYvalues()!=null ){
            for (int i = 0; i < response.getData().getYvalues().get(0).getValue().length; i++) {
                total = total.add(new BigDecimal(StringUtils.defaultString( response.getData().getYvalues().get(0).getValue()[i],"0")));
            }
        }
        data.setTotal(Constants.formatBigdecimal2Float(total).toString());
    }
    private EnergyModelDataVO getDefaultData() {
@@ -582,7 +607,7 @@
    public   RegionEnergyListResponse energyRegionData(){
        RegionEnergyListResponse data = null;
        BaseResponse<RegionEnergyListResponse> response = HKService.regionEnergyList("1");
        if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
        if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null ){
            data = response.getData();
        }
        if(data == null){
@@ -609,12 +634,12 @@
        if(type >=0 && type <=2){
            //用水用电用气
            List<PlatformWaterGas> list =  platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>()
                            .select("DATE_FORMAT(TIME_INFO,'yyyy-MM') as time_info_str,sum(num) as num")
                            .select("DATE_FORMAT(TIME_INFO,'%Y-%m') as time_info_str,sum(num) as num")
                    .lambda()
                    .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO)
                    .eq(PlatformWaterGas::getType,type)
                    .apply("time_info BETWEEN DATE_SUB(CURDATE(), INTERVAL 12 MONTH) AND CURDATE()")//近12个月
                    .last(" groupby DATE_FORMAT(TIME_INFO,'yyyy-MM')")
                    .last(" group by DATE_FORMAT(TIME_INFO,'%Y-%m')")
            );
            for (int i = 0; i < 12; i++) {
                Date tempDate = DateUtil.increaseMonth(lastMonth,i);
@@ -646,11 +671,11 @@
            param.setNodeId("root000000");
            param.setPeriodType("year");
            BaseResponse<EnergyTrendResponse> response = HKService.energyTrend(param);
            if(response != null && !StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null&& response.getData().getYvalues()!=null ){
            if(response != null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE) && response.getData()!=null&& response.getData().getYvalues()!=null ){
                for (int i = 0; i < 12; i++) {
                    if(response.getData().getYvalues().size()>0 &&response.getData().getYvalues().get(0).getValue().length>i){
                        //取相应的参数值
                        energyDataVOList.get(0).setEnergy(new BigDecimal(response.getData().getYvalues().get(0).getValue()[i]));
                        energyDataVOList.get(i).setEnergy(new BigDecimal(StringUtils.defaultString(response.getData().getYvalues().get(0).getValue()[i],"0")));
                    }
                }
@@ -863,19 +888,6 @@
        if(jobList==null || jobList.size()==0){
            return workEfficiencyVOList;
        }
  /*      List<PlatformWmsDetail> jobList = platformWmsDetailMapper.selectJoinList(PlatformWmsDetail.class, new MPJLambdaWrapper<PlatformWmsDetail>()
                .selectAll( PlatformWmsDetail.class)
                .selectAs( PlatformJob::getDoneDate,PlatformWmsDetail::getDoneDate)
                .leftJoin(PlatformJob.class,PlatformJob::getId,PlatformWmsDetail::getJobId)
                .eq(PlatformWmsDetail::getIsdeleted, Constants.ZERO)
                .eq(PlatformJob::getIsdeleted, Constants.ZERO)
                .in(Constants.equalsInteger(type,Constants.ZERO),PlatformJob::getType,new Integer[]{0,2,4})
                .in(Constants.equalsInteger(type,Constants.ONE),PlatformJob::getType,new Integer[]{1,3})
                .in(PlatformJob::getStatus, Constants.PlatformJobStatus.DONE.getKey()
                        , Constants.PlatformJobStatus.AUTHED_LEAVE.getKey()
                        , Constants.PlatformJobStatus.LEAVED.getKey())
                .apply("to_days(t1.create_date) = to_days(now())")
        );*/
        int curtotalNum = 0;
        Date today =  Utils.Date.getStart(new Date());
        long curTime=0, lastTime=0;
@@ -936,6 +948,7 @@
    public      List<PlatformWarnEvent> warningList(int limit){
        List<PlatformWarnEvent> platformLogList = platformWarnEventMapper.selectList(new QueryWrapper<PlatformWarnEvent>().lambda()
                .eq(PlatformWarnEvent::getIsdeleted,Constants.ZERO)
                .apply("to_days(create_date) = to_days(now())")
                .orderByDesc(PlatformWarnEvent::getCreateDate)
                .last(" limit "+limit)
        );
server/visits/dmvisit_service/src/main/resources/application-dev.yml
@@ -1,12 +1,12 @@
spring:
  # æ•°æ®æºé…ç½®
  datasource:
#    url: jdbc:mysql://sh-cdb-aiskr3vy.sql.tencentcdb.com:62443/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
#    username: doumee
#    password: rtjgfEr@&0c0m
    url: jdbc:mysql://10.50.250.253:3306/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
    username: root
    password: Atwl@2024
    url: jdbc:mysql://sh-cdb-aiskr3vy.sql.tencentcdb.com:62443/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
    username: doumee
    password: rtjgfEr@&0c0m
#    url: jdbc:mysql://10.50.250.253:3306/antaiwuliu?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
#    username: root
#    password: Atwl@2024
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
  redis: