648540858
2021-08-05 3cd1434341d2dd68ac72c02bf028ed8e1dfe0d71
添加用户操作
修正报警清理接口
8个文件已修改
1个文件已添加
160 ■■■■ 已修改文件
sql/mysql.sql 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/IDeviceAlarmService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/IUserService.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/storager/dao/UserMapper.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/storager/dao/dto/User.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/alarm/AlarmController.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/test/java/com/genersoft/iot/vmp/service/impl/UserServiceImplTest.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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');
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);
}
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);
}
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);
    }
}
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);
    }
}
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();
}
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;
    }
}
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);
    }
src/test/java/com/genersoft/iot/vmp/service/impl/UserServiceImplTest.java
New file
@@ -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);
    }
}