From e229ec55fde4b2903eb8e085a4a48bd97d35915e Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期二, 30 十一月 2021 11:35:02 +0800
Subject: [PATCH] 摄像头
---
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java | 45 +++++++++++
dao/src/main/resources/mapper/BannerMapper.xml | 7 -
dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java | 13 +++
ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java | 15 +++
ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java | 94 +++++++++++++++++++++++
dao/src/main/resources/mapper/MonitorMapper.xml | 34 ++++++++
dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java | 32 ++++----
7 files changed, 217 insertions(+), 23 deletions(-)
diff --git a/dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java b/dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java
index 30eb639..915990f 100644
--- a/dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java
+++ b/dao/src/main/java/com/sandu/ximon/dao/domain/Monitor.java
@@ -15,22 +15,22 @@
@TableId(type = IdType.AUTO)
private Long id;
-
+ //鎵�灞炰汉
private Long userId;
-
- private String kind;
-
- private String size;
-
- private String name;
-
- private String macId;
-
- private String state;
-
- private Long lampId;
-
+ //鐩戞帶搴忓垪鍙�
+ private String serialNumber;
+ //鎵�灞炵伅鏉�
+ private String belongTo;
+ //鍦板潃
+ private String address;
+ //璁惧鐘舵��:鍦ㄧ嚎/绂荤嚎
+ private String equipmentState;
+ //宸ヤ綔鐘舵�侊細姝e父浣跨敤/绂佹浣跨敤
+ private String workState;
+ //缁戝畾鐘舵�侊細宸茬粦瀹�/鏈粦瀹�
+ private String bindingState;
+ //澶囨敞
+ private String note;
+ //鎺ュ叆鏃堕棿
private LocalDateTime createTime;
-
-
}
diff --git a/dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java b/dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java
new file mode 100644
index 0000000..c1e8c86
--- /dev/null
+++ b/dao/src/main/java/com/sandu/ximon/dao/mapper/MonitorMapper.java
@@ -0,0 +1,13 @@
+package com.sandu.ximon.dao.mapper;
+
+import com.sandu.common.domain.BaseMapper;
+import com.sandu.ximon.dao.domain.Monitor;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+@Mapper
+public interface MonitorMapper extends BaseMapper<Monitor> {
+ List<Monitor> listMonitorByKeyword(String keyword, String equipmentState1, String equipmentState2,
+ String bindingState1, String bindingState2);
+}
diff --git a/dao/src/main/resources/mapper/BannerMapper.xml b/dao/src/main/resources/mapper/BannerMapper.xml
index abefb9f..3625549 100644
--- a/dao/src/main/resources/mapper/BannerMapper.xml
+++ b/dao/src/main/resources/mapper/BannerMapper.xml
@@ -10,13 +10,6 @@
<result property="position" column="position" jdbcType="INTEGER"/>
<result property="author" column="author" jdbcType="VARCHAR"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
- <result property="type" column="type" jdbcType="INTEGER"/>
</resultMap>
- <sql id="Base_Column_List">
- id,username,password,
- icon,email,mobile,
- nick_name,note,create_time,
- login_time,update_time,status
- </sql>
</mapper>
\ No newline at end of file
diff --git a/dao/src/main/resources/mapper/MonitorMapper.xml b/dao/src/main/resources/mapper/MonitorMapper.xml
new file mode 100644
index 0000000..d087d15
--- /dev/null
+++ b/dao/src/main/resources/mapper/MonitorMapper.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper
+ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+ "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sandu.ximon.dao.mapper.MonitorMapper">
+
+ <resultMap id="BaseResultMap" type="com.sandu.ximon.dao.domain.Monitor">
+ <id property="id" column="id" jdbcType="BIGINT"/>
+ <result property="userId" column="user_id" jdbcType="VARCHAR"/>
+ <result property="serialNumber" column="serial_number" jdbcType="VARCHAR"/>
+ <result property="belongTo" column="belong_to" jdbcType="VARCHAR"/>
+ <result property="address" column="address" jdbcType="VARCHAR"/>
+ <result property="equipmentState" column="equipment_state" jdbcType="VARCHAR"/>
+ <result property="workState" column="work_state" jdbcType="VARCHAR"/>
+ <result property="bindingState" column="binding_state" jdbcType="VARCHAR"/>
+ <result property="note" column="note" jdbcType="VARCHAR"/>
+ <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+ </resultMap>
+ <select id="listMonitorByKeyword" resultType="com.sandu.ximon.dao.domain.Monitor">
+ SELECT
+ *
+ FROM
+ monitor
+ WHERE
+ serial_number LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+ or belong_to LIKE CONCAT(CONCAT('%', #{keyword}), '%')
+ and equipment_state = #{equipmentState1}
+ or equipment_state = #{equipmentState2}
+ and binding_state = #{bindingState1}
+ or binding_state = #{bindingState2};
+ </select>
+
+
+</mapper>
\ No newline at end of file
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java
new file mode 100644
index 0000000..84cc7e6
--- /dev/null
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/MonitorController.java
@@ -0,0 +1,45 @@
+package com.sandu.ximon.admin.controller;
+
+import com.sandu.common.domain.ResponseVO;
+import com.sandu.common.util.ResponseUtil;
+import com.sandu.ximon.admin.param.MonitorParam;
+import com.sandu.ximon.admin.service.MonitorService;
+import com.sandu.ximon.dao.domain.Monitor;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@AllArgsConstructor
+@RequestMapping("/v1/admin/monitor")
+public class MonitorController {
+ private final MonitorService monitorService;
+
+ @GetMapping
+ public ResponseVO<Object> listMonitor() {
+ List<Monitor> list = monitorService.listMonitor();
+ return ResponseUtil.successPage(list);
+ }
+
+ /**
+ * 妯$硦鏌ヨ
+ *
+ * @return
+ */
+ @GetMapping("/listMonitorByKeyword")
+ public ResponseVO<Object> listMonitorByKeyword(@RequestBody MonitorParam monitorParam) {
+ List<Monitor> list = monitorService.listMonitorByKeyword(monitorParam);
+ return ResponseUtil.successPage(list);
+ }
+
+ @PostMapping("/delete/{id}")
+ public ResponseVO<Object> deleteMonitor(@PathVariable Long id) {
+ boolean result = monitorService.deleteMonitor(id);
+ if (result) {
+ return ResponseUtil.success(null);
+ } else {
+ return ResponseUtil.fail("鎿嶄綔澶辫触");
+ }
+ }
+}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java
new file mode 100644
index 0000000..d1beb39
--- /dev/null
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/param/MonitorParam.java
@@ -0,0 +1,15 @@
+package com.sandu.ximon.admin.param;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotEmpty;
+
+@Data
+public class MonitorParam {
+
+ private String keyword;
+ @NotEmpty
+ private String equipmentState;
+ @NotEmpty
+ private String bindingState;
+}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
new file mode 100644
index 0000000..0f19ea5
--- /dev/null
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
@@ -0,0 +1,94 @@
+package com.sandu.ximon.admin.service;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.sandu.common.execption.BusinessException;
+import com.sandu.common.service.impl.BaseServiceImpl;
+import com.sandu.ximon.admin.param.BannerParam;
+import com.sandu.ximon.admin.param.MonitorParam;
+import com.sandu.ximon.dao.domain.Banner;
+import com.sandu.ximon.dao.domain.Monitor;
+import com.sandu.ximon.dao.mapper.MonitorMapper;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+@AllArgsConstructor
+public class MonitorService extends BaseServiceImpl<MonitorMapper, Monitor> {
+ private final MonitorMapper monitorMapper;
+
+ /**
+ * 鏌ヨ鍏ㄩ儴鎽勫儚澶�
+ */
+ public List<Monitor> listMonitor() {
+ LambdaQueryWrapper<Monitor> wrapper = Wrappers.lambdaQuery(Monitor.class);
+ List<Monitor> list = list(wrapper);
+
+ return list;
+ }
+
+ /**
+ * 妯$硦鏌ヨ
+ */
+ public List<Monitor> listMonitorByKeyword(MonitorParam monitorParam) {
+ //璁惧鐘舵��:鍦ㄧ嚎/绂荤嚎/鍏ㄩ儴
+ String equipmentState1;
+ String equipmentState2;
+ if ("鍏ㄩ儴".equals(monitorParam.getEquipmentState())) {
+ equipmentState1 = "鍦ㄧ嚎";
+ equipmentState2 = "绂荤嚎";
+ } else {
+ equipmentState1 = monitorParam.getEquipmentState();
+ equipmentState2 = monitorParam.getEquipmentState();
+ }
+
+ //缁戝畾鐘舵�侊細宸茬粦瀹�/鏈粦瀹�/鍏ㄩ儴
+ String bindingState1;
+ String bindingState2;
+ if ("鍏ㄩ儴".equals(monitorParam.getBindingState())) {
+ bindingState1 = "宸茬粦瀹�";
+ bindingState2 = "鏈粦瀹�";
+ } else {
+ bindingState1 = monitorParam.getBindingState();
+ bindingState2 = monitorParam.getBindingState();
+ }
+ return monitorMapper.listMonitorByKeyword(monitorParam.getKeyword(), equipmentState1, equipmentState2, bindingState1, bindingState2);
+ }
+
+ /**
+ * 鍒犻櫎鎽勫儚澶�
+ *
+ * @param Id
+ * @return
+ */
+ public boolean deleteMonitor(Long Id) {
+ Monitor monitor = getById(Id);
+ if (monitor == null) {
+ throw new BusinessException("鎵句笉鍒版憚鍍忓ご");
+ }
+ return removeById(Id);
+ }
+
+ /**
+ * 缂栬緫鎽勫儚澶�
+ * @param Id
+ * @param monitorParam
+ * @return
+ */
+ public boolean updateBanner(Long Id, MonitorParam monitorParam) {
+ Monitor monitor = getById(Id);
+ if (monitor == null) {
+ throw new BusinessException("鎵句笉鍒版憚鍍忓ご");
+ }
+ Monitor update = new Monitor();
+ update.setId(Id);
+ update.setSerialNumber(monitorParam.());
+ update.setBannerUrl(bannerParam.getUrl());
+ update.setId(bannerId);
+ return updateById(update);
+ }
+
+}
--
Gitblit v1.9.3