From 3cd1434341d2dd68ac72c02bf028ed8e1dfe0d71 Mon Sep 17 00:00:00 2001
From: 648540858 <18010473990@163.com>
Date: 星期四, 05 八月 2021 07:25:12 +0800
Subject: [PATCH] 添加用户操作 修正报警清理接口
---
src/main/java/com/genersoft/iot/vmp/storager/dao/dto/User.java | 9 +++
sql/mysql.sql | 5 +
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/alarm/AlarmController.java | 20 ++++--
src/main/java/com/genersoft/iot/vmp/storager/dao/UserMapper.java | 26 +++++---
src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java | 23 +++++++
src/main/java/com/genersoft/iot/vmp/service/IUserService.java | 10 +++
src/main/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImpl.java | 4
src/test/java/com/genersoft/iot/vmp/service/impl/UserServiceImplTest.java | 61 ++++++++++++++++++++
src/main/java/com/genersoft/iot/vmp/service/IDeviceAlarmService.java | 2
9 files changed, 139 insertions(+), 21 deletions(-)
diff --git a/sql/mysql.sql b/sql/mysql.sql
index d5a84c3..e654e98 100644
--- a/sql/mysql.sql
+++ b/sql/mysql.sql
@@ -215,8 +215,9 @@
username varchar(255) not null,
password varchar(255) not null,
roleId int not null,
- create_time varchar(50) not null
+ create_time varchar(50) not null,
+ update_time varchar(50) not null
);
-insert into user (username, password, roleId, create_time) values ('admin', '21232f297a57a5a743894a0e4a801fc3', '0', '2021-04-13 14:14:57');
+insert into user (username, password, roleId, create_time, update_time) values ('admin', '21232f297a57a5a743894a0e4a801fc3', '0', '2021-04-13 14:14:57', '2021-04-13 14:14:57');
diff --git a/src/main/java/com/genersoft/iot/vmp/service/IDeviceAlarmService.java b/src/main/java/com/genersoft/iot/vmp/service/IDeviceAlarmService.java
index 5e3f681..51e53d2 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/IDeviceAlarmService.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/IDeviceAlarmService.java
@@ -38,6 +38,6 @@
* @param deviceIdList 鍒跺畾闇�瑕佹竻鐞嗙殑璁惧id
* @param time 涓嶅啓鏃堕棿鍒欐竻绌烘墍鏈夋椂闂寸殑
*/
- void clearAlarmBeforeTime(Integer id, List<String> deviceIdList, String time);
+ int clearAlarmBeforeTime(Integer id, List<String> deviceIdList, String time);
}
diff --git a/src/main/java/com/genersoft/iot/vmp/service/IUserService.java b/src/main/java/com/genersoft/iot/vmp/service/IUserService.java
index cb6b6b7..112af35 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/IUserService.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/IUserService.java
@@ -2,6 +2,8 @@
import com.genersoft.iot.vmp.storager.dao.dto.User;
+import java.util.List;
+
public interface IUserService {
User getUser(String username, String password);
@@ -9,4 +11,12 @@
boolean changePassword(int id, String password);
User getUserByUsername(String username);
+
+ void addUser(User user);
+
+ void deleteUser(int id);
+
+ List<User> getAllUsers();
+
+ void updateUsers(User user);
}
diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImpl.java
index 0567b55..ead291c 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImpl.java
@@ -31,7 +31,7 @@
}
@Override
- public void clearAlarmBeforeTime(Integer id, List<String> deviceIdList, String time) {
- deviceAlarmMapper.clearAlarmBeforeTime(id, deviceIdList, time);
+ public int clearAlarmBeforeTime(Integer id, List<String> deviceIdList, String time) {
+ return deviceAlarmMapper.clearAlarmBeforeTime(id, deviceIdList, time);
}
}
diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java
index 2539f5b..e10fc79 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java
@@ -6,6 +6,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.List;
+
@Service
public class UserServiceImpl implements IUserService {
@@ -29,4 +31,25 @@
public User getUserByUsername(String username) {
return userMapper.getUserByUsername(username);
}
+
+ @Override
+ public void addUser(User user) {
+ userMapper.add(user);
+ }
+ @Override
+ public void deleteUser(int id) {
+ userMapper.delete(id);
+ }
+
+ @Override
+ public List<User> getAllUsers() {
+ return userMapper.selectAll();
+ }
+
+ @Override
+ public void updateUsers(User user) {
+ userMapper.update(user);
+ }
+
+
}
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/UserMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/UserMapper.java
index 6ecc828..e217632 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/UserMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/UserMapper.java
@@ -4,23 +4,28 @@
import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;
+import java.util.List;
+
@Mapper
@Repository
public interface UserMapper {
- @Insert("INSERT INTO user (username, password, roleId, create_time) VALUES" +
- "('${username}', '${password}', '${roleId}', datetime('now','localtime'))")
+ @Insert("INSERT INTO user (username, password, roleId, create_time, update_time) VALUES" +
+ "('${username}', '${password}', '${roleId}', '${createTime}', '${updateTime}')")
int add(User user);
- @Update("UPDATE user " +
- "SET username=#{username}, " +
- "password=#{password}, " +
- "roleId=#{roleId} " +
- "WHERE id=#{id}")
+ @Update(value = {" <script>" +
+ "UPDATE user " +
+ "SET update_time='${updateTime}' " +
+ "<if test=\"roleId != null\">, roleId='${roleId}'</if>" +
+ "<if test=\"password != null\">, password='${password}'</if>" +
+ "<if test=\"username != null\">, username='${username}'</if>" +
+ "WHERE id=#{id}" +
+ " </script>"})
int update(User user);
- @Delete("DELETE FROM user WHERE app=#{app} AND id=#{id}")
- int delete(User user);
+ @Delete("DELETE FROM user WHERE id=#{id}")
+ int delete(int id);
@Select("select * FROM user WHERE username=#{username} AND password=#{password}")
User select(String username, String password);
@@ -30,4 +35,7 @@
@Select("select * FROM user WHERE username=#{username}")
User getUserByUsername(String username);
+
+ @Select("select * FROM user")
+ List<User> selectAll();
}
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/dto/User.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/dto/User.java
index 697df04..b4a0289 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/dto/User.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/dto/User.java
@@ -6,6 +6,7 @@
private String username;
private String password;
private String createTime;
+ private String updateTime;
private int roleId;
public int getId() {
@@ -47,4 +48,12 @@
public void setRoleId(int roleId) {
this.roleId = roleId;
}
+
+ public String getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(String updateTime) {
+ this.updateTime = updateTime;
+ }
}
diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/alarm/AlarmController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/alarm/AlarmController.java
index b1b62b1..434bbd4 100644
--- a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/alarm/AlarmController.java
+++ b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/alarm/AlarmController.java
@@ -60,7 +60,8 @@
@ApiImplicitParam(name="endTime", value = "鏌ヨ鍐呭" ,dataTypeClass = String.class),
})
public ResponseEntity<PageInfo<DeviceAlarm>> getAll(
- int page, int count,
+ @RequestParam int page,
+ @RequestParam int count,
@RequestParam(required = false) String deviceId,
@RequestParam(required = false) String alarmPriority,
@RequestParam(required = false) String alarmMethod,
@@ -76,8 +77,8 @@
try {
- format.parse(startTime);
- format.parse(endTime);
+ if (startTime != null) format.parse(startTime);
+ if (endTime != null) format.parse(endTime);
} catch (ParseException e) {
return new ResponseEntity<>(null, HttpStatus.BAD_REQUEST);
}
@@ -96,7 +97,7 @@
* @param time 缁撴潫鏃堕棿(杩欎釜鏃堕棿涔嬪墠鐨勬姤璀︿細琚垹闄�)
* @return
*/
- @ApiOperation("鍒嗛〉鏌ヨ鎶ヨ")
+ @ApiOperation("鍒犻櫎鎶ヨ")
@DeleteMapping("/delete")
@ApiImplicitParams({
@ApiImplicitParam(name="id", value = "ID", required = false ,dataTypeClass = Integer.class),
@@ -118,12 +119,17 @@
} catch (ParseException e) {
return new ResponseEntity<>(null, HttpStatus.BAD_REQUEST);
}
- String[] deviceIdArray = deviceIds.split(",");
- List<String> deviceIdList = Arrays.asList(deviceIdArray);
- deviceAlarmService.clearAlarmBeforeTime(id, deviceIdList, time);
+ List<String> deviceIdList = null;
+ if (deviceIds != null) {
+ String[] deviceIdArray = deviceIds.split(",");
+ deviceIdList = Arrays.asList(deviceIdArray);
+ }
+
+ int count = deviceAlarmService.clearAlarmBeforeTime(id, deviceIdList, time);
WVPResult wvpResult = new WVPResult();
wvpResult.setCode(0);
wvpResult.setMsg("success");
+ wvpResult.setData(count);
return new ResponseEntity<WVPResult<String>>(wvpResult, HttpStatus.OK);
}
diff --git a/src/test/java/com/genersoft/iot/vmp/service/impl/UserServiceImplTest.java b/src/test/java/com/genersoft/iot/vmp/service/impl/UserServiceImplTest.java
new file mode 100644
index 0000000..eea7f04
--- /dev/null
+++ b/src/test/java/com/genersoft/iot/vmp/service/impl/UserServiceImplTest.java
@@ -0,0 +1,61 @@
+package com.genersoft.iot.vmp.service.impl;
+
+import com.genersoft.iot.vmp.gb28181.bean.DeviceAlarm;
+import com.genersoft.iot.vmp.service.IDeviceAlarmService;
+import com.genersoft.iot.vmp.service.IUserService;
+import com.genersoft.iot.vmp.storager.dao.dto.User;
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+
+@SpringBootTest
+@RunWith(SpringRunner.class)
+class UserServiceImplTest {
+
+ @Resource
+ private IUserService userService;
+
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+ @org.junit.jupiter.api.Test
+ void getAllUser() {
+ System.out.println(userService.getAllUsers().size());
+ }
+
+
+ @org.junit.jupiter.api.Test
+ void add() {
+ for (int i = 0; i < 10; i++) {
+ User user = new User();
+ user.setUsername("admin_" + i);
+ user.setPassword("admin_password_" + i);
+ user.setRoleId((int)(Math.random()*4 + 1));
+ user.setCreateTime(format.format(System.currentTimeMillis()));
+ user.setUpdateTime(format.format(System.currentTimeMillis()));
+ userService.addUser(user);
+ }
+ }
+
+ @org.junit.jupiter.api.Test
+ void delete() {
+ userService.deleteUser(1002);
+ }
+
+ @org.junit.jupiter.api.Test
+ void update() {
+ User user = new User();
+ user.setId(1003);
+ user.setUsername("update" );
+ user.setPassword("update");
+ user.setRoleId((int)(Math.random()*4 + 1));
+ user.setUpdateTime(format.format(System.currentTimeMillis()));
+ userService.updateUsers(user);
+ }
+
+
+}
\ No newline at end of file
--
Gitblit v1.8.0