From 123ce171d2b8ca97d9f4011a33ce4e5e8d1cc339 Mon Sep 17 00:00:00 2001 From: panlinlin <648540858@qq.com> Date: 星期二, 13 四月 2021 15:08:09 +0800 Subject: [PATCH] 使用数据库用户表代替配置文件 --- src/main/java/com/genersoft/iot/vmp/storager/dao/dto/User.java | 50 ++++++++++++++++ src/main/java/com/genersoft/iot/vmp/web/AuthController.java | 14 ++-- web_src/src/components/dialog/easyPlayer.vue | 3 + src/main/java/com/genersoft/iot/vmp/storager/dao/UserMapper.java | 31 ++++++++++ src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java | 27 +++++++++ src/main/resources/wvp.sqlite | 0 src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java | 13 ++-- src/main/resources/application-dev.yml | 7 -- src/main/java/com/genersoft/iot/vmp/service/IUserService.java | 12 ++++ 9 files changed, 137 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/service/IUserService.java b/src/main/java/com/genersoft/iot/vmp/service/IUserService.java new file mode 100644 index 0000000..868118b --- /dev/null +++ b/src/main/java/com/genersoft/iot/vmp/service/IUserService.java @@ -0,0 +1,12 @@ +package com.genersoft.iot.vmp.service; + +import com.genersoft.iot.vmp.storager.dao.dto.User; + +public interface IUserService { + + User getUser(String username, String password); + + boolean changePassword(int id, String password); + + +} 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 new file mode 100644 index 0000000..0a67a01 --- /dev/null +++ b/src/main/java/com/genersoft/iot/vmp/service/impl/UserServiceImpl.java @@ -0,0 +1,27 @@ +package com.genersoft.iot.vmp.service.impl; + +import com.genersoft.iot.vmp.service.IUserService; +import com.genersoft.iot.vmp.storager.dao.UserMapper; +import com.genersoft.iot.vmp.storager.dao.dto.User; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public class UserServiceImpl implements IUserService { + + @Autowired + private UserMapper userMapper; + + + @Override + public User getUser(String username, String password) { + return userMapper.select(username, password); + } + + @Override + public boolean changePassword(int id, String password) { + User user = userMapper.selectById(id); + user.setPassword(password); + return userMapper.update(user) > 0; + } +} 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 new file mode 100644 index 0000000..4608a29 --- /dev/null +++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/UserMapper.java @@ -0,0 +1,31 @@ +package com.genersoft.iot.vmp.storager.dao; + +import com.genersoft.iot.vmp.gb28181.bean.GbStream; +import com.genersoft.iot.vmp.storager.dao.dto.User; +import org.apache.ibatis.annotations.*; +import org.springframework.stereotype.Repository; + +@Mapper +@Repository +public interface UserMapper { + + @Insert("INSERT INTO user (username, password, roleId, create_time) VALUES" + + "('${username}', '${password}', '${roleId}', datetime('now','localtime'))") + int add(User user); + + @Update("UPDATE user " + + "SET username=#{username}," + + "password=#{password}," + + "roleId=#{roleId}" + + "WHERE id=#{id}") + int update(User user); + + @Delete("DELETE FROM user WHERE app=#{app} AND id=#{id}") + int delete(User user); + + @Select("select * FROM user WHERE username= #{username} AND password=#{password}") + User select(String username, String password); + + @Select("select * FROM user WHERE id= #{id}") + User selectById(int id); +} 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 new file mode 100644 index 0000000..697df04 --- /dev/null +++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/dto/User.java @@ -0,0 +1,50 @@ +package com.genersoft.iot.vmp.storager.dao.dto; + +public class User { + + private int id; + private String username; + private String password; + private String createTime; + private int roleId; + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getCreateTime() { + return createTime; + } + + public void setCreateTime(String createTime) { + this.createTime = createTime; + } + + public int getRoleId() { + return roleId; + } + + public void setRoleId(int roleId) { + this.roleId = roleId; + } +} diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java index 306a158..cf781c0 100644 --- a/src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java +++ b/src/main/java/com/genersoft/iot/vmp/vmanager/user/UserController.java @@ -1,9 +1,12 @@ package com.genersoft.iot.vmp.vmanager.user; +import com.genersoft.iot.vmp.service.IUserService; +import com.genersoft.iot.vmp.storager.dao.dto.User; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.CrossOrigin; @@ -17,11 +20,9 @@ @RequestMapping("/api/user") public class UserController { - @Value("${auth.username}") - private String usernameConfig; + @Autowired + private IUserService userService; - @Value("${auth.password}") - private String passwordConfig; @ApiOperation("鐧诲綍") @ApiImplicitParams({ @@ -30,8 +31,8 @@ }) @GetMapping("/login") public String login(String username, String password){ - if (!StringUtils.isEmpty(username) && username.equals(usernameConfig) - && !StringUtils.isEmpty(password) && password.equals(passwordConfig)) { + User user = userService.getUser(username, password); + if (user != null) { return "success"; }else { return "fail"; diff --git a/src/main/java/com/genersoft/iot/vmp/web/AuthController.java b/src/main/java/com/genersoft/iot/vmp/web/AuthController.java index 702387c..1a02c1e 100644 --- a/src/main/java/com/genersoft/iot/vmp/web/AuthController.java +++ b/src/main/java/com/genersoft/iot/vmp/web/AuthController.java @@ -1,5 +1,8 @@ package com.genersoft.iot.vmp.web; +import com.genersoft.iot.vmp.service.IUserService; +import com.genersoft.iot.vmp.storager.dao.dto.User; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.util.StringUtils; import org.springframework.web.bind.annotation.*; @@ -9,16 +12,13 @@ @RequestMapping(value = "/auth") public class AuthController { - @Value("${auth.username}") - private String username; - - @Value("${auth.password}") - private String password; + @Autowired + private IUserService userService; @RequestMapping("/login") public String devices(String name, String passwd){ - if (!StringUtils.isEmpty(name) && name.equals(username) - && !StringUtils.isEmpty(passwd) && passwd.equals(password)) { + User user = userService.getUser(name, passwd); + if (user != null) { return "success"; }else { return "fail"; diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index d4abf20..fad47f9 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -48,13 +48,6 @@ # [鍙�塢 榛樿璁惧璁よ瘉瀵嗙爜锛屽悗缁墿灞曚娇鐢ㄨ澶囧崟鐙瘑鐮� password: admin123 -# 鐧婚檰鐨勭敤鎴峰悕瀵嗙爜 -auth: - # [鍙�塢 鐢ㄦ埛鍚� - username: admin - # [鍙�塢 瀵嗙爜, 榛樿涓篴dmin - password: 21232f297a57a5a743894a0e4a801fc3 - #zlm鏈嶅姟鍣ㄩ厤缃� media: # [蹇呴』淇敼] zlm鏈嶅姟鍣ㄧ殑鍐呯綉IP diff --git a/src/main/resources/wvp.sqlite b/src/main/resources/wvp.sqlite index 2e73cdb..eb4e08b 100644 --- a/src/main/resources/wvp.sqlite +++ b/src/main/resources/wvp.sqlite Binary files differ diff --git a/web_src/src/components/dialog/easyPlayer.vue b/web_src/src/components/dialog/easyPlayer.vue index f6a7b47..71d858e 100644 --- a/web_src/src/components/dialog/easyPlayer.vue +++ b/web_src/src/components/dialog/easyPlayer.vue @@ -42,6 +42,9 @@ console.log(message) } }, + destroyed() { + this.easyPlayer.destroy(); + }, } </script> -- Gitblit v1.8.0