diff --git a/src/main/java/cn/mafangui/hotel/GlobalCrosConfig.java b/src/main/java/cn/mafangui/hotel/GlobalCrosConfig.java new file mode 100644 index 0000000..e8fa82c --- /dev/null +++ b/src/main/java/cn/mafangui/hotel/GlobalCrosConfig.java @@ -0,0 +1,31 @@ +package cn.mafangui.hotel; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.CorsRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +@Configuration +public class GlobalCrosConfig { + @Bean + public WebMvcConfigurer corsConfigurer() { + return new WebMvcConfigurer() { + @Override + //重写父类提供的跨域请求处理的接口 + public void addCorsMappings(CorsRegistry registry) { + //添加映射路径 + registry.addMapping("/**") + //放行哪些原始域 + .allowedOrigins("*") + //是否发送Cookie信息 + .allowCredentials(true) + //放行哪些原始域(请求方式) + .allowedMethods("GET","POST", "PUT", "DELETE") + //放行哪些原始域(头部信息) + .allowedHeaders("*") + //暴露哪些头部信息(因为跨域访问默认不能获取全部头部信息) + .exposedHeaders("Header1", "Header2"); + } + }; + } +} \ No newline at end of file diff --git a/src/main/java/cn/mafangui/hotel/controller/AdminController.java b/src/main/java/cn/mafangui/hotel/controller/AdminController.java index 67ad432..41af644 100644 --- a/src/main/java/cn/mafangui/hotel/controller/AdminController.java +++ b/src/main/java/cn/mafangui/hotel/controller/AdminController.java @@ -2,13 +2,12 @@ package cn.mafangui.hotel.controller; import cn.mafangui.hotel.entity.Admin; import cn.mafangui.hotel.service.AdminService; -import org.hibernate.validator.constraints.pl.REGON; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; -import java.util.List; +import java.util.HashMap; @RestController @RequestMapping(value = "/admin") @@ -18,19 +17,52 @@ public class AdminController { /** * 管理员登录 - * @param userName + * @param username * @param password * @return */ @RequestMapping(method = RequestMethod.POST, value = "/login") - public int login(String userName, String password){ + public HashMap login(String username, String password){ + HashMap result = new HashMap(); Admin admin = new Admin(); - admin.setUserName(userName); + admin.setUserName(username); admin.setPassword(password); - if (adminService.login(admin) == null){ - return -1; + System.out.println(admin); + if (adminService.selectByUserName(username) == null){ + result.put("data","用户名不存在!"); + }else if (adminService.login(admin) == null){ + result.put("data","用户名或密码不正确!"); + }else { + result.put("data","登录成功!"); } - return 0; + result.put("code",20000); + result.put("token","admin"); + return result; + } + + @RequestMapping(value = "/logout") + public HashMap logout(String token) { + HashMap result = new HashMap(); + result.put("code",20000); + result.put("data",token); + return result; + } + + @RequestMapping(value = "/info") + public HashMap info(String token, String username) { + HashMap result = new HashMap(); + HashMap data = new HashMap(); + Admin admin = adminService.selectByUserName(username); + if (admin == null){ + data.put("data","用户名不存在!"); + }else { + data.put("data",admin); + } + result.put("code",20000); + String[] roles = {"admin"}; + data.put("roles",roles); + result.put("data",data); + return result; } /** @@ -61,6 +93,21 @@ public class AdminController { return adminService.updateProfile(admin); } + /** + * 更改密码 + * @param userName + * @param password + * @param newPassword + * @return + */ + @RequestMapping(method = RequestMethod.POST,value = "/updatePassword") + public int updatePassword(String userName, String password,String newPassword){ + Admin admin = new Admin(); + admin.setUserName(userName); + admin.setPassword(password); + return adminService.updatePassword(admin,newPassword); + } + /** * 查找管理员 * @param userName @@ -76,7 +123,10 @@ public class AdminController { * @return */ @RequestMapping(value = "/getAllAdmin") - public List getAllAdmin(){ - return adminService.findAll(); + public HashMap getAllAdmin(){ + HashMap result = new HashMap(); + result.put("code",1); + result.put("data",adminService.findAll()); + return result; } } diff --git a/src/main/java/cn/mafangui/hotel/entity/Admin.java b/src/main/java/cn/mafangui/hotel/entity/Admin.java index 7989560..587d699 100644 --- a/src/main/java/cn/mafangui/hotel/entity/Admin.java +++ b/src/main/java/cn/mafangui/hotel/entity/Admin.java @@ -52,4 +52,15 @@ public class Admin { public void setUpdateTime(Date updateTime) { this.updateTime = updateTime; } + + @Override + public String toString() { + return "Admin{" + + "adminId=" + adminId + + ", userName='" + userName + '\'' + + ", password='" + password + '\'' + + ", createTime=" + createTime + + ", updateTime=" + updateTime + + '}'; + } } \ No newline at end of file diff --git a/src/main/java/cn/mafangui/hotel/service/AdminService.java b/src/main/java/cn/mafangui/hotel/service/AdminService.java index 2c2c58b..97ebc70 100644 --- a/src/main/java/cn/mafangui/hotel/service/AdminService.java +++ b/src/main/java/cn/mafangui/hotel/service/AdminService.java @@ -9,5 +9,6 @@ public interface AdminService { int register(Admin admin); Admin selectByUserName(String userName); int updateProfile(Admin admin); + int updatePassword(Admin admin,String newPassword); List findAll(); } diff --git a/src/main/java/cn/mafangui/hotel/service/WorkerService.java b/src/main/java/cn/mafangui/hotel/service/WorkerService.java index 439ec64..79ad25d 100644 --- a/src/main/java/cn/mafangui/hotel/service/WorkerService.java +++ b/src/main/java/cn/mafangui/hotel/service/WorkerService.java @@ -12,4 +12,6 @@ public interface WorkerService { Worker selectWorker(String userName); List findAllWorker(); Worker login(Worker worker); + int logout(Worker worker); + } diff --git a/src/main/java/cn/mafangui/hotel/service/impl/AdminServiceImpl.java b/src/main/java/cn/mafangui/hotel/service/impl/AdminServiceImpl.java index 95fd464..72ab984 100644 --- a/src/main/java/cn/mafangui/hotel/service/impl/AdminServiceImpl.java +++ b/src/main/java/cn/mafangui/hotel/service/impl/AdminServiceImpl.java @@ -13,28 +13,78 @@ public class AdminServiceImpl implements AdminService { @Autowired private AdminMapper adminMapper; + /** + * 登录 + * @param admin + * @return + */ @Override public Admin login(Admin admin) { return adminMapper.selectByUserNameAndPassword(admin); } + /** + * 注册 + * @param admin + * @return + */ @Override public int register(Admin admin) { return adminMapper.insertSelective(admin); } + /** + * 根据username查找 + * @param userName + * @return + */ @Override public Admin selectByUserName(String userName) { - return adminMapper.selectByUserName(userName); + Admin result = adminMapper.selectByUserName(userName); + if (result != null){ + result.setPassword(null); + } + return result; } + /** + * 更新信息 + * @param admin + * @return + */ @Override public int updateProfile(Admin admin) { return adminMapper.updateByUserNameSelective(admin); } + /** + * 更改密码 + * @param admin + * @param newPassword + * @return + */ + @Override + public int updatePassword(Admin admin, String newPassword) { + int result = 0; + if(adminMapper.selectByUserNameAndPassword(admin) != null){ + admin.setPassword(newPassword); + result = adminMapper.updateByUserNameSelective(admin); + } + return result; + } + + + /** + * 列出所有管理员 + * @return + */ @Override public List findAll() { - return adminMapper.findAll(); + List result; + result = adminMapper.findAll(); + for (Admin admin : result) { + admin.setPassword(null); + } + return result; } } diff --git a/src/main/java/cn/mafangui/hotel/service/impl/WorkerServiceImpl.java b/src/main/java/cn/mafangui/hotel/service/impl/WorkerServiceImpl.java index 7fcc188..df5083e 100644 --- a/src/main/java/cn/mafangui/hotel/service/impl/WorkerServiceImpl.java +++ b/src/main/java/cn/mafangui/hotel/service/impl/WorkerServiceImpl.java @@ -43,4 +43,9 @@ public class WorkerServiceImpl implements WorkerService { public Worker login(Worker worker) { return workerMapper.selectByUserNameAndPassword(worker); } + + @Override + public int logout(Worker worker) { + return 0; + } }