系统角色有后台管理员,前台玩家用户 ,各角色功能如下:
管理员:系统管理(角色、权限、菜单等)、玩家管理、游戏公告管理、道具管理、排行管理、奖惩管理、充值管理。
前台玩家会员:注册、登录、查看排行、搜索玩家、好友管理、公告查看、充值金币、个人信息管理、购买道具、查看奖惩等。
运行环境:windows/Linux均可、jdk1.8、mysql5.7、idea/eclipse均可。
特色功能:用户可以搜索查看好友、排行等。
个人中心 控制器:
/**
-
- 个人中心 控制器
/
@Controller
public class UserController {
@Autowired
private LoginService loginService;
@Autowired
private UserInfoService userInfoService;
/手机号和更换手机号验证码map集合/
private static Map<String, String> phonecodemap = new HashMap<>();
/
* 修改密码
* 1.前端传入旧密码(oldpwd)、新密码(newpwd)
* 2.判断输入旧密码和系统旧密码是否相等
* 4.修改密码
*/
@ResponseBody
@PutMapping("/user/updatepwd")
public ResultVo updatepwd(HttpSession session, HttpServletRequest request) throws IOException {
JSONObject json = JsonReader.receivePost(request);
String oldpwd = json.getString(“oldpwd”);
String newpwd = json.getString(“newpwd”);
String userid = (String) session.getAttribute(“userid”);
Login login = new Login();
UserInfo userInfo = new UserInfo();
login.setUserid(userid);
Login login1 = loginService.userLogin(login);
String oldpwds = new Md5Hash(oldpwd, “Game-shops”).toString();
//如果旧密码相等
if (oldpwds.equals(login1.getPassword())){
//盐加密
String passwords = new Md5Hash(newpwd, “Game-shops”).toString();
login.setPassword(passwords);
userInfo.setPassword(passwords).setUserid(login1.getUserid());
Integer integer = loginService.updateLogin(login);
Integer integer1 = userInfoService.UpdateUserInfo(userInfo);
if (integer == 1 && integer1 == 1) {
return new ResultVo(true, StatusCode.OK, “修改密码成功”);
}
return new ResultVo(false, StatusCode.ERROR, “修改密码失败”);
}
return new ResultVo(false, StatusCode.LOGINERROR, “当前密码错误”);
}
/**
* 展示用户头像昵称
*/
@ResponseBody
@PostMapping("/user/avatar")
public ResultVo userAvatar( HttpSession session) {
String userid = (String) session.getAttribute("userid");
UserInfo userInfo = userInfoService.queryPartInfo(userid);
return new ResultVo(true, StatusCode.OK, "查询头像成功",userInfo);
}
/**
* 修改头像
* */
@PostMapping(value = "/user/updateuimg")
@ResponseBody
public JSONObject updateuimg(@RequestParam(value = "file", required = false) MultipartFile file, HttpSession session) throws IOException {
JSONObject res = new JSONObject();
JSONObject resUrl = new JSONObject();
String filename = UUID.randomUUID().toString().replaceAll("-", "");
String ext = FilenameUtils.getExtension(file.getOriginalFilename());//获得文件扩展名
String filenames = filename + "." + ext;//文件全名
String pathname = "D://file/" + filenames;
file.transferTo(new File(pathname));
resUrl.put("src", "/pic/"+filenames);
res.put("msg", "");
res.put("code", 0);
res.put("data", resUrl);
String uimgUrl = "/pic/" + filenames;
String userid=(String) session.getAttribute("userid");
UserInfo userInfo = new UserInfo().setUserid(userid).setUimage(uimgUrl);
userInfoService.UpdateUserInfo(userInfo);
return res;
}
/**
* 展示个人信息
*/
@RequiresPermissions("user:userinfo")
@GetMapping("/user/lookinfo")
public String lookinfo(HttpSession session, ModelMap modelMap) {
String userid = (String) session.getAttribute("userid");
UserInfo userInfo = userInfoService.LookUserinfo(userid);
modelMap.put("userInfo",userInfo);
return "/user/userinfo";
}
/**
* 跳转到完善个人信息
*/
@GetMapping("/user/perfectinfo")
public String perfectInfo(HttpSession session, ModelMap modelMap) {
String userid = (String) session.getAttribute("userid"