Browse Source

设备状态页面开发

gao.qiang 10 months ago
parent
commit
bd1c72a83b

+ 31 - 0
business-service/src/main/java/com/ozs/service/entity/vo/DeviceStateResp.java

@@ -0,0 +1,31 @@
+package com.ozs.service.entity.vo;
+
+import com.ozs.common.vo.PageVo;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * @author Administrator
+ * 设备状态
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DeviceStateResp extends PageVo implements Serializable {
+    private static final long serialVersionUID = 1L;
+    private Integer installMile;
+    private String installMileName;
+    private String measurePointName;
+    private String railwayName;
+    private String deptName;
+    private String lineDir;
+    private String isDisable;
+    private Integer electricity;
+    private String cameraCode;
+    private String cameraSn;
+    private String railwayCode;
+    private String deptId;
+}

+ 3 - 0
business-service/src/main/java/com/ozs/service/mapper/BaseCameraManagementMapper.java

@@ -5,6 +5,7 @@ import com.ozs.service.entity.BaseCameraManagement;
 import com.ozs.service.entity.MsgAlarm;
 import com.ozs.service.entity.vo.BaseCameraManagementHomeVo;
 import com.ozs.service.entity.vo.BaseCameraManagementVo;
+import com.ozs.service.entity.vo.DeviceStateResp;
 import com.ozs.service.entity.vo.MsgAlarmVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -28,4 +29,6 @@ public interface BaseCameraManagementMapper extends BaseMapper<BaseCameraManagem
     Integer countCamera(MsgAlarmVo msgAlarmVo);
 
     Map<String, Object> getCameraChannelByAlarmId(@Param("alarmId") String alarmId);
+
+    List<DeviceStateResp> deviceStatePage(DeviceStateResp deviceStateResp);
 }

+ 3 - 0
business-service/src/main/java/com/ozs/service/service/BaseCameraManagementService.java

@@ -7,6 +7,7 @@ import com.ozs.service.entity.BaseCameraManagement;
 import com.ozs.service.entity.vo.BaseCameraManagementHomeVo;
 import com.ozs.service.entity.vo.BaseCameraManagementVo;
 import com.ozs.service.entity.vo.BaseCameraManagementVos;
+import com.ozs.service.entity.vo.DeviceStateResp;
 
 import java.util.List;
 import java.util.Map;
@@ -42,4 +43,6 @@ public interface BaseCameraManagementService extends IService<BaseCameraManageme
     Map<String, Object> getCameraChannelByAlarmId(String alarmId);
 
     List<BaseCameraManagement> cameraAllList(BaseCameraManagement baseCameraManagement);
+
+    IPage<DeviceStateResp> deviceStatePage(DeviceStateResp deviceStateResp);
 }

+ 14 - 4
business-service/src/main/java/com/ozs/service/service/impl/BaseCameraManagementServiceImpl.java

@@ -11,10 +11,7 @@ import com.ozs.common.utils.StringUtils;
 import com.ozs.common.utils.bean.BeanUtils;
 import com.ozs.common.utils.bean.BeanValidators;
 import com.ozs.service.entity.*;
-import com.ozs.service.entity.vo.BaseCameraManagementHomeVo;
-import com.ozs.service.entity.vo.BaseCameraManagementVo;
-import com.ozs.service.entity.vo.BaseCameraManagementVos;
-import com.ozs.service.entity.vo.BaseCameraVersionVo;
+import com.ozs.service.entity.vo.*;
 import com.ozs.service.mapper.*;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ozs.service.service.BaseCameraManagementService;
@@ -356,4 +353,17 @@ public class BaseCameraManagementServiceImpl extends ServiceImpl<BaseCameraManag
         }
         return baseCameraManagements;
     }
+
+    @Override
+    public IPage<DeviceStateResp> deviceStatePage(DeviceStateResp deviceStateResp) {
+        int pageNum = Integer.parseInt(deviceStateResp.getPageNum().toString());
+        int pageSize = Integer.parseInt(deviceStateResp.getPageSize().toString());
+        com.github.pagehelper.Page<DeviceStateResp> page = PageHelper.startPage(pageNum, pageSize)
+                .doSelectPage(() -> baseCameraManagementMapper.deviceStatePage(deviceStateResp));
+        com.baomidou.mybatisplus.extension.plugins.pagination.Page<DeviceStateResp> pageR =
+                new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(pageNum, pageSize);
+        pageR.setRecords(page.getResult());
+        pageR.setTotal(page.getTotal());
+        return pageR;
+    }
 }

+ 65 - 0
business-service/src/main/resources/mapper/service/BaseCameraManagementMapper.xml

@@ -115,4 +115,69 @@
              base_camera_management b on ma.camera_code = b.camera_code
         where ma.alarm_id = #{alarmId}
     </select>
+    <select id="deviceStatePage" resultType="com.ozs.service.entity.vo.DeviceStateResp" parameterType="com.ozs.service.entity.vo.DeviceStateResp">
+        SELECT
+        ca.install_mile AS installMile,
+        ca.measure_point_name AS measurePointName,
+        ra.railway_name AS railwayName,
+        de.dept_name AS deptName,
+        CASE
+        line_dir
+        WHEN 1 THEN
+        '上行'
+        WHEN 2 THEN
+        '下行'
+        END AS lineDir,
+        CASE
+        man.is_disable
+        WHEN 1 THEN
+        '正常'
+        WHEN 2 THEN
+        '故障'
+        END AS isDisable,
+        man.electricity,
+        ca.camera_code AS cameraCode,
+        ca.camera_sn AS cameraSn
+        FROM
+        base_camera_management AS ca
+        LEFT JOIN base_railway_management AS ra ON ca.railway_code = ra.railway_code
+        LEFT JOIN sys_dept AS de ON ca.dept_id = de.dept_id
+        LEFT JOIN base_device_dynamic_management AS man ON ca.camera_code = man.camera_code
+        <where>
+            <if test="railwayCode != null and railwayCode != ''">
+                and ca.railway_code=#{railwayCode}
+            </if>
+            <if test="isDisable != null and isDisable != ''">
+                and man.is_disable=#{isDisable}
+            </if>
+            <if test="electricity != null and electricity != ''">
+                and man.electricity &lt;=#{electricity}
+            </if>
+            <if test="lineDir != null and lineDir != 0">
+                and a.line_dir =#{lineDir}
+            </if>
+            <if test="deptId != null and deptId != 0">
+                and a.dept_id =#{deptId}
+            </if>
+            <if test="!dsFlay">
+                and
+                <trim prefix="(" prefixOverrides="or" suffix=")">
+                    <if test="dsUserId != null and dsUserId != ''">
+                        or a.create_by=#{dsUserId}
+                    </if>
+                    <if test="dsDeptId != null and dsDeptId != 0">
+                        or a.dept_id=#{dsDeptId}
+                    </if>
+                    <if test="dsDeptIds != null">
+                        or a.dept_id in
+                        <foreach item="item" collection="dsDeptIds" separator="," open="(" close=")" index="">
+                            #{item}
+                        </foreach>
+                    </if>
+                </trim>
+            </if>
+        </where>
+        ORDER BY
+        man.electricity
+    </select>
 </mapper>

+ 23 - 0
hazard-admin/src/main/java/com/ozs/web/controller/accountmanagment/BaseCameraManagementController.java

@@ -974,5 +974,28 @@ public class BaseCameraManagementController extends BaseController {
         return success();
     }
 
+    /**
+     * 设备状态页面
+     * @param deviceStateResp
+     * @return
+     */
+    @PostMapping("/deviceState/page")
+    @Log(title = "相机台账管理", businessType = BusinessType.SELECT)
+    public AjaxResult deviceStatePage(@RequestBody DeviceStateResp deviceStateResp) {
+        deviceStateResp = (DeviceStateResp) dataScoreUtil.setDataScore(getUserId(), deviceStateResp);
+        IPage<DeviceStateResp> page = baseCameraManagementService.deviceStatePage(deviceStateResp);
+        page.setTotal(page.getTotal());
+        page.setCurrent(page.getCurrent());
+        page.setPages(page.getPages());
+        if (!ObjectUtils.isEmpty(page) && page.getRecords().size() > 0) {
+            List<DeviceStateResp> dto1 = page.getRecords().stream().map(o -> {
+                String mils = AppendUtils.stringAppend(o.getInstallMile());
+                o.setInstallMileName(mils);
+                return o;
+            }).collect(Collectors.toList());
+            page.setRecords(dto1);
+        }
+        return AjaxResult.success(page);
+    }
 }