Skip to content

Commit 2f5472c

Browse files
committed
fixed changing avatar working
1 parent 8fc4099 commit 2f5472c

File tree

2 files changed

+17
-19
lines changed

2 files changed

+17
-19
lines changed

src/main/java/xyz/springabc/service/UserServ.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -105,24 +105,24 @@ public void changeRole(User user, String role) {
105105
* @throws ValidateError
106106
*/
107107
@Transactional
108-
public User update(User oldUser, User newUser, Errors errors) {
108+
public User update(User oldUser, User newUserForm, Errors errors) {
109109
if (errors.hasErrors()) {
110110
return null;
111111
}
112112
//旧信息和信息的昵称不相同,并且数据库已经有了这样的昵称
113-
if (userRepo.findOneByNick(newUser.getNick()) != null && !newUser.getNick().equals(oldUser.getNick())) {
113+
if (userRepo.findOneByNick(newUserForm.getNick()) != null && !newUserForm.getNick().equals(oldUser.getNick())) {
114114
errors.rejectValue("nick", "nick", "昵称已经存在");
115115
return null;
116116
}
117117
//引用复制更新属性
118-
oldUser.setNick(newUser.getNick());
119-
oldUser.setAvatar(newUser.getAvatar());
120-
oldUser.setLocation(newUser.getLocation());
121-
oldUser.setHomePage(newUser.getHomePage());
122-
oldUser.setGithub(newUser.getGithub());
123-
oldUser.setTwitter(newUser.getTwitter());
124-
oldUser.setSignature(newUser.getSignature());
125-
oldUser.setDescription(newUser.getDescription());
118+
oldUser.setNick(newUserForm.getNick());
119+
oldUser.setAvatar(newUserForm.getAvatar());
120+
oldUser.setLocation(newUserForm.getLocation());
121+
oldUser.setHomePage(newUserForm.getHomePage());
122+
oldUser.setGithub(newUserForm.getGithub());
123+
oldUser.setTwitter(newUserForm.getTwitter());
124+
oldUser.setSignature(newUserForm.getSignature());
125+
oldUser.setDescription(newUserForm.getDescription());
126126
userRepo.save(oldUser);
127127
//更新了旧用户
128128
return oldUser;

src/main/java/xyz/springabc/web/front/AccountC.java

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -304,38 +304,36 @@ public String active(@RequestParam("code") String code,
304304
/**
305305
* 更新用户信息,需要登录授权
306306
*
307-
* @param user
307+
* @param newUserForm
308308
* @param errors
309309
* @param file
310310
* @param request
311311
* @param model
312312
* @return
313313
*/
314314
@RequestMapping(value = "/setting/update", method = RequestMethod.POST)
315-
public String updateInfomatio(@Validated User user,
315+
public String updateInfomatio(@Validated User newUserForm,
316316
Errors errors,
317317
MultipartFile file,
318318
HttpServletRequest request,
319319
Model model) {
320320
User oldUser = (User) request.getSession().getAttribute("user");
321-
String avatar = "";
321+
String avatar = oldUser.getAvatar();
322322
if (!file.isEmpty()) {//判断有没有上传了头像
323323
try {
324-
avatar = uploadFileServ.upload(file).url;
325-
avatar = oldUser.getAvatar();//没有上传新头像就用回原来的
324+
avatar = uploadFileServ.upload(file).url;//上传了头像就更新
326325
} catch (Exception e1) {
327326
model.addAttribute("error", "头像上传失败");
328327
return "/account/setting";
329328
}
330329
}
331-
avatar = oldUser.getAvatar();//没有上传新头像就用回原来的
332-
user.setAvatar(avatar);
333-
User newUser = userServ.update(oldUser, user, errors);
330+
newUserForm.setAvatar(avatar);
331+
userServ.update(oldUser, newUserForm, errors);
334332
if (errors.hasErrors()) {
335333
model.addAttribute("error", errors.getAllErrors());
336334
return "/account/setting";
337335
}
338-
request.getSession().setAttribute("user", newUser);
336+
request.getSession().setAttribute("user", oldUser);
339337
model.addAttribute("msg", "信息已更新");
340338
return "/account/setting";
341339
}

0 commit comments

Comments
 (0)