Parcourir la source

mqtt指令发布

李进 il y a 2 ans
Parent
commit
eac1fd9d10

+ 5 - 0
device-api-service/src/main/java/com/xy/entity/DeviceStatus.java

@@ -31,6 +31,11 @@ public class DeviceStatus {
      */
     private LocalDateTime sysCurTime;
 
+    /**
+     * 机器是否通电
+     */
+    private Integer sysPower;
+
     /**
      * WIFI是否打开
      */

+ 18 - 29
device-api-service/src/main/java/com/xy/mapper/entity/DeviceInfoQueryPage.java

@@ -1,6 +1,10 @@
 package com.xy.mapper.entity;
 
+import com.xy.dto.DeviceRegisterDto;
+import com.xy.dto.DeviceStatusDto;
+import com.xy.dto.DeviceSysinfoDto;
 import com.xy.entity.DeviceInfo;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.experimental.Accessors;
 
@@ -8,58 +12,43 @@ import lombok.experimental.Accessors;
 @Accessors(chain = true)
 public class DeviceInfoQueryPage extends DeviceInfo {
 
-    /**
-     * 安卓版本号
-     */
-    private String androidVersion;
-
-    /**
-     * sn号
-     */
-    private String deviceSn;
-
-    /**
-     * 联网状态
-     */
-    private Integer netState;
-
     /**
      * 商户名称
      */
     private String mercName;
 
     /**
-     * 联网类型
+     * 距离
      */
-    private String netType;
+    private Integer m;
 
     /**
-     * 信号强度
+     * 点位名称
      */
-    private Integer netDbm;
+    private String placeName;
 
     /**
-     * 锁机状态
+     * 线路名称
      */
-    private Integer deviceState;
+    private String placeLineName;
 
     /**
-     * 距离
+     * 区域名称
      */
-    private Integer m;
+    private String districtName;
 
     /**
-     * 点位名称
+     * 系统信息
      */
-    private String placeName;
+    private DeviceSysinfoDto.Vo deviceSysinfo;
 
     /**
-     * 线路名称
+     * 状态信息
      */
-    private String placeLineName;
+    private DeviceStatusDto.Vo deviceStatus;
 
     /**
-     * 区域名称
+     * 注册信息
      */
-    private String districtName;
+    private DeviceRegisterDto.Vo deviceRegister;
 }

+ 90 - 3
device-api-service/src/main/resources/mapper/DeviceInfoMapper.xml

@@ -2,12 +2,93 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.xy.mapper.DeviceInfoMapper">
 
+    <resultMap id="queryPageMap" type="com.xy.mapper.entity.DeviceInfoQueryPage">
+        <id column="device_id" property="deviceId" />
+        <result column="device_name" property="deviceName" />
+        <result column="device_type" property="deviceType" />
+        <result column="merc_device_code" property="mercDeviceCode" />
+        <result column="merc_id" property="mercId" />
+        <result column="merc_code" property="mercCode" />
+        <result column="place_id" property="placeId" />
+        <result column="place_line_id" property="placeLineId" />
+        <result column="district_id" property="districtId" />
+        <result column="active_state" property="activeState" />
+        <result column="active_time" property="activeTime" />
+        <result column="busy_state" property="busyState" />
+        <result column="show_status" property="showStatus" />
+        <result column="freeze_status" property="freezeStatus" />
+        <result column="device_img" property="deviceImg" />
+        <result column="update_time" property="updateTime" />
+        <result column="create_time" property="createTime" />
+
+        <association property="deviceSysinfo" javaType="com.xy.dto.DeviceSysinfoDto$Vo">
+            <result column="sysinfo_device_sn" property="deviceSn" />
+            <result column="android_start_app_version" property="androidStartAppVersion" />
+            <result column="android_version" property="androidVersion" />
+            <result column="android_root_state" property="androidRootState" />
+            <result column="android_model" property="androidModel" />
+            <result column="sys_launcher" property="sysLauncher" />
+            <result column="sys_timezone" property="sysTimezone" />
+            <result column="sys_datetimeauto" property="sysDatetimeauto" />
+            <result column="sys_timezhoneauto" property="sysTimezhoneauto" />
+            <result column="app_upm_version" property="appUpmVersion" />
+            <result column="app_downm_version" property="appDownmVersion" />
+            <result column="sim_iccid" property="simIccid" />
+            <result column="sim_isp" property="simIsp" />
+            <result column="sim_company" property="simCompany" />
+            <result column="disk_space" property="diskSpace" />
+            <result column="memery_space" property="memerySpace" />
+            <result column="sysinfo_create_time" property="createTime" />
+        </association>
+        <association property="deviceStatus" javaType="com.xy.dto.DeviceStatusDto$Vo">
+            <result column="sys_start_time" property="sysStartTime" />
+            <result column="sys_cur_time" property="sysCurTime" />
+            <result column="sys_power" property="sysPower" />
+            <result column="wifi_open" property="wifiOpen" />
+            <result column="blooth_open" property="bloothOpen" />
+            <result column="net_state" property="netState" />
+            <result column="net_type" property="netType" />
+            <result column="net_dbm" property="netDbm" />
+            <result column="door_state_l" property="doorStateL" />
+            <result column="door_state_r" property="doorStateR" />
+            <result column="lock_state_l" property="lockStateL" />
+            <result column="lock_state_r" property="lockStateR" />
+            <result column="temp_value" property="tempValue" />
+            <result column="temp_state" property="tempState" />
+            <result column="voice_volume" property="voiceVolume" />
+            <result column="light_main" property="lightMain" />
+            <result column="light_second" property="lightSecond" />
+            <result column="disk_space" property="diskSpace" />
+            <result column="disk_remain_space" property="diskRemainSpace" />
+            <result column="memery_remain_space" property="memeryRemainSpace" />
+            <result column="camera_l_main_state" property="cameraLMainState" />
+            <result column="camera_l_second_state" property="cameraLSecondState" />
+            <result column="device_state" property="deviceState" />
+            <result column="update_time" property="updateTime" />
+        </association>
+        <association property="deviceRegister" javaType="com.xy.dto.DeviceRegisterDto$Vo">
+            <result column="register_num" property="registerNum" />
+            <result column="dr_device_sn" property="deviceSn" />
+            <result column="device_type" property="deviceType" />
+            <result column="device_pc" property="devicePc" />
+            <result column="asset_no" property="assetNo" />
+            <result column="dr_create_time" property="createTime" />
+            <result column="create_user" property="createUser" />
+        </association>
+    </resultMap>
+
     <!-- 分页查询 -->
-    <select id="queryPage" resultType="com.xy.mapper.entity.DeviceInfoQueryPage">
+    <select id="queryPage" resultMap="queryPageMap">
         select
         info.*,
-        sysinfo.android_version, sysinfo.device_sn,
-        status.net_state, status.net_type, status.net_dbm, status.device_state,
+        dr.register_num, dr.device_sn as dr_device_sn, dr.device_type, dr.device_pc, dr.asset_no, dr.create_time as dr_create_time, dr.create_user,
+        sysinfo.device_sn as sysinfo_device_sn, sysinfo.android_start_app_version, sysinfo.android_version, sysinfo.android_root_state, sysinfo.android_model, sysinfo.sys_launcher,
+        sysinfo.sys_timezone, sysinfo.sys_datetimeauto, sysinfo.sys_timezhoneauto, sysinfo.app_upm_version, sysinfo.app_downm_version, sysinfo.sim_iccid, sysinfo.sim_isp,
+        sysinfo.sim_company, sysinfo.disk_space, sysinfo.memery_space, sysinfo.create_time as sysinfo_create_time,
+        status.sys_start_time, status.sys_cur_time, status.sys_power, status.wifi_open, status.blooth_open, status.net_state, status.net_type, status.net_dbm, status.door_state_l,
+        status.door_state_r, status.lock_state_l, status.lock_state_r, status.temp_value, status.temp_state, status.voice_volume, status.light_main, status.light_second, status.disk_space,
+        status.disk_remain_space, status.memery_space, status.memery_remain_space, status.camera_l_main_state, status.camera_l_second_state, status.camera_r_main_state, status.camera_r_second_state,
+        status.device_state, status.update_time,
         mr.name as merc_name,
         mp.place_name,
         ml.line_name as place_line_name,
@@ -38,6 +119,7 @@
         from device_info info
         join device_sysinfo sysinfo on(info.device_id = sysinfo.device_id)
         join device_status status on(info.device_id = status.device_id)
+        join device_register dr on(info.device_id = dr.device_id)
         left join merc mr on(info.merc_id = mr.id)
         left join merc_place mp on(info.place_id = mp.id)
         left join merc_line ml on(info.place_line_id = ml.id)
@@ -47,6 +129,11 @@
         <if test="queryPage.showStatus != null">
             and info.show_status = #{queryPage.showStatus}
         </if>
+        <if test="queryPage.deviceIdName != null and queryPage.deviceIdName != ''">
+            and (
+                LOCATE(#{queryPage.deviceIdName}, info.device_id) > 0 or LOCATE(#{queryPage.deviceIdName}, info.device_name) > 0
+            )
+        </if>
         <if test="queryPage.deviceId != null">
             and LOCATE(#{queryPage.deviceId}, info.device_id) > 0
         </if>

+ 6 - 21
device-api/src/main/java/com/xy/dto/DeviceInfoDto.java

@@ -51,12 +51,15 @@ public class DeviceInfoDto {
         @ApiModelProperty("机器/资产/sn/sim号")
         private String no;
 
+        @ApiModelProperty("商户id/商户号/商户名称")
+        private String merc;
+
+        @ApiModelProperty("设备id/设备名称")
+        private String deviceIdName;
+
         @ApiModelProperty("联网状态")
         private Integer netState;
 
-        @ApiModelProperty("商户号或名称")
-        private String merc;
-
         @ApiModelProperty("上位机版本号")
         private String appUpmVersion;
 
@@ -170,27 +173,9 @@ public class DeviceInfoDto {
     @Accessors(chain = true)
     public static class Vo2 extends Vo {
 
-        @ApiModelProperty("安卓版本号")
-        private String androidVersion;
-
-        @ApiModelProperty("sn号")
-        private String deviceSn;
-
-        @ApiModelProperty("联网状态")
-        private Integer netState;
-
         @ApiModelProperty("商户名称")
         private String mercName;
 
-        @ApiModelProperty("联网类型")
-        private String netType;
-
-        @ApiModelProperty("信号强度")
-        private Integer netDbm;
-
-        @ApiModelProperty("锁机状态")
-        private Integer deviceState;
-
         @ApiModelProperty("距离")
         private Integer m;
 

+ 3 - 0
device-api/src/main/java/com/xy/dto/DeviceStatusDto.java

@@ -46,6 +46,9 @@ public class DeviceStatusDto {
         @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
         private LocalDateTime sysCurTime;
 
+        @ApiModelProperty("机器是否通电")
+        private Integer sysPower;
+
         @ApiModelProperty("WIFI是否打开")
         private Integer wifiOpen;