增加用户信息编辑

This commit is contained in:
TinyAnts 2022-09-08 11:40:57 +08:00
parent 177907dfe6
commit ca2f5ee6a2
3 changed files with 85 additions and 0 deletions

View File

@ -43,6 +43,22 @@ public class UserController {
return AjaxResult.success(vo);
}
/**
* 编辑信息
*
* @author fzr
* @param params 参数
* @return Object
*/
@PostMapping("/edit")
public Object edit(@RequestBody Map<String, String> params) {
Assert.notNull(params.get("field"), "field参数缺失");
Assert.notNull(params.get("value"), "value参数缺失");
Integer userId = LikeFrontThreadLocal.getUserId();
iUserService.edit(params, userId);
return AjaxResult.success();
}
/**
* 绑定手机号
*

View File

@ -28,6 +28,15 @@ public interface IUserService {
*/
UserInfoVo info(Integer userId);
/**
* 编辑信息
*
* @author fzr
* @param params 参数
* @param userId 用户ID
*/
void edit(Map<String, String> params, Integer userId);
/**
* 微信手机
*

View File

@ -15,6 +15,7 @@ import com.mdd.common.mapper.system.SystemConfigMapper;
import com.mdd.common.mapper.user.UserAuthMapper;
import com.mdd.common.mapper.user.UserMapper;
import com.mdd.common.utils.ConfigUtil;
import com.mdd.common.utils.StringUtil;
import com.mdd.common.utils.TimeUtil;
import com.mdd.common.utils.UrlUtil;
import com.mdd.front.service.IUserService;
@ -104,6 +105,65 @@ public class UserServiceImpl implements IUserService {
return vo;
}
/**
* 编辑信息
*
* @author fzr
* @param params 参数
* @param userId 用户ID
*/
@Override
public void edit(Map<String, String> params, Integer userId) {
String field = params.getOrDefault("field", "").trim();
String value = params.getOrDefault("value", "").trim();
switch (field) {
case "avatar":
User avatarUser = new User();
avatarUser.setId(userId);
avatarUser.setAvatar(UrlUtil.toRelativeUrl(value));
avatarUser.setUpdateTime(System.currentTimeMillis() / 1000);
userMapper.updateById(avatarUser);
break;
case "username":
User usernameUser = userMapper.selectOne(new QueryWrapper<User>()
.select("id,username")
.eq("username", value)
.eq("is_delete", 0)
.last("limit 1"));
if (StringUtil.isNotNull(usernameUser) && !usernameUser.getId().equals(userId)) {
throw new OperateException("账号已被使用!");
}
if (StringUtil.isNotNull(usernameUser) && usernameUser.getUsername().equals(value)) {
throw new OperateException("新账号与旧账号一致,修改失败!");
}
usernameUser.setId(userId);
usernameUser.setUsername(value);
usernameUser.setUpdateTime(System.currentTimeMillis() / 1000);
userMapper.updateById(usernameUser);
break;
case "nickname":
User nicknameUser = new User();
nicknameUser.setId(userId);
nicknameUser.setNickname(value);
nicknameUser.setUpdateTime(System.currentTimeMillis() / 1000);
userMapper.updateById(nicknameUser);
break;
case "sex":
User sexUser = new User();
sexUser.setId(userId);
sexUser.setSex(Integer.parseInt(value));
sexUser.setUpdateTime(System.currentTimeMillis() / 1000);
userMapper.updateById(sexUser);
break;
default:
throw new OperateException("不被支持的类型");
}
}
/**
* 微信手机号
*