|
@@ -1,13 +1,15 @@
|
|
|
/**
|
|
|
* Copyright (c) 2016-2019 人人开源 All rights reserved.
|
|
|
- *
|
|
|
+ * <p>
|
|
|
* https://www.renren.io
|
|
|
- *
|
|
|
+ * <p>
|
|
|
* 版权所有,侵权必究!
|
|
|
*/
|
|
|
|
|
|
package io.renren.modules.sys.controller;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import io.renren.common.annotation.SysLog;
|
|
|
import io.renren.common.utils.Constant;
|
|
|
import io.renren.common.utils.PageUtils;
|
|
@@ -16,7 +18,9 @@ import io.renren.common.validator.Assert;
|
|
|
import io.renren.common.validator.ValidatorUtils;
|
|
|
import io.renren.common.validator.group.AddGroup;
|
|
|
import io.renren.common.validator.group.UpdateGroup;
|
|
|
+import io.renren.modules.sys.dao.SysUserFarmChooseDao;
|
|
|
import io.renren.modules.sys.entity.SysUserEntity;
|
|
|
+import io.renren.modules.sys.entity.SysUserFarmChooseEntity;
|
|
|
import io.renren.modules.sys.form.PasswordForm;
|
|
|
import io.renren.modules.sys.service.SysUserRoleService;
|
|
|
import io.renren.modules.sys.service.SysUserService;
|
|
@@ -39,119 +43,159 @@ import java.util.Map;
|
|
|
@RestController
|
|
|
@RequestMapping("/sys/user")
|
|
|
public class SysUserController extends AbstractController {
|
|
|
- @Autowired
|
|
|
- private SysUserService sysUserService;
|
|
|
- @Autowired
|
|
|
- private SysUserRoleService sysUserRoleService;
|
|
|
-
|
|
|
-
|
|
|
- /**
|
|
|
- * 所有用户列表
|
|
|
- */
|
|
|
- @GetMapping("/list")
|
|
|
- @RequiresPermissions("sys:user:list")
|
|
|
- public R list(@RequestParam Map<String, Object> params){
|
|
|
- //只有超级管理员,才能查看所有管理员列表
|
|
|
- if(getUserId() != Constant.SUPER_ADMIN && getUserId() != 2){
|
|
|
- params.put("createUserId", getUserId());
|
|
|
- }
|
|
|
- PageUtils page = sysUserService.queryPage(params);
|
|
|
-
|
|
|
- return R.ok().put("page", page);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 获取登录的用户信息
|
|
|
- */
|
|
|
- @GetMapping("/info")
|
|
|
- public R info(){
|
|
|
- return R.ok().put("user", getUser());
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 修改登录用户密码
|
|
|
- */
|
|
|
- @SysLog("修改密码")
|
|
|
- @PostMapping("/password")
|
|
|
- public R password(@RequestBody PasswordForm form){
|
|
|
- Assert.isBlank(form.getNewPassword(), "新密码不为能空");
|
|
|
-
|
|
|
- //sha256加密
|
|
|
- String password = new Sha256Hash(form.getPassword(), getUser().getSalt()).toHex();
|
|
|
- //sha256加密
|
|
|
- String newPassword = new Sha256Hash(form.getNewPassword(), getUser().getSalt()).toHex();
|
|
|
-
|
|
|
- //更新密码
|
|
|
- boolean flag = sysUserService.updatePassword(getUserId(), password, newPassword);
|
|
|
- if(!flag){
|
|
|
- return R.error("原密码不正确");
|
|
|
- }
|
|
|
-
|
|
|
- return R.ok();
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 用户信息
|
|
|
- */
|
|
|
- @GetMapping("/info/{userId}")
|
|
|
- @RequiresPermissions("sys:user:info")
|
|
|
- public R info(@PathVariable("userId") Long userId){
|
|
|
- SysUserEntity user = sysUserService.getById(userId);
|
|
|
-
|
|
|
- //获取用户所属的角色列表
|
|
|
- List<Long> roleIdList = sysUserRoleService.queryRoleIdList(userId);
|
|
|
- user.setRoleIdList(roleIdList);
|
|
|
-
|
|
|
- return R.ok().put("user", user);
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 保存用户
|
|
|
- */
|
|
|
- @SysLog("保存用户")
|
|
|
- @PostMapping("/save")
|
|
|
- @RequiresPermissions("sys:user:save")
|
|
|
- public R save(@Validated(AddGroup.class) @RequestBody SysUserEntity user){
|
|
|
- //ValidatorUtils.validateEntity(user, AddGroup.class);
|
|
|
-
|
|
|
- user.setCreateUserId(getUserId());
|
|
|
- sysUserService.saveUser(user);
|
|
|
-
|
|
|
- return R.ok();
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 修改用户
|
|
|
- */
|
|
|
- @SysLog("修改用户")
|
|
|
- @PostMapping("/update")
|
|
|
- @RequiresPermissions("sys:user:update")
|
|
|
- public R update(@Validated(UpdateGroup.class) @RequestBody SysUserEntity user){
|
|
|
- //ValidatorUtils.validateEntity(user, UpdateGroup.class);
|
|
|
-
|
|
|
- user.setCreateUserId(getUserId());
|
|
|
- sysUserService.update(user);
|
|
|
-
|
|
|
- return R.ok();
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 删除用户
|
|
|
- */
|
|
|
- @SysLog("删除用户")
|
|
|
- @PostMapping("/delete")
|
|
|
- @RequiresPermissions("sys:user:delete")
|
|
|
- public R delete(@RequestBody Long[] userIds){
|
|
|
- if(ArrayUtils.contains(userIds, 1L)){
|
|
|
- return R.error("系统管理员不能删除");
|
|
|
- }
|
|
|
-
|
|
|
- if(ArrayUtils.contains(userIds, getUserId())){
|
|
|
- return R.error("当前用户不能删除");
|
|
|
- }
|
|
|
-
|
|
|
- sysUserService.deleteBatch(userIds);
|
|
|
-
|
|
|
- return R.ok();
|
|
|
- }
|
|
|
+ @Autowired
|
|
|
+ private SysUserService sysUserService;
|
|
|
+ @Autowired
|
|
|
+ private SysUserRoleService sysUserRoleService;
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 所有用户列表
|
|
|
+ */
|
|
|
+ @GetMapping("/list")
|
|
|
+ @RequiresPermissions("sys:user:list")
|
|
|
+ public R list(@RequestParam Map<String, Object> params) {
|
|
|
+ //只有超级管理员,才能查看所有管理员列表
|
|
|
+ if (getUserId() != Constant.SUPER_ADMIN && getUserId() != 2) {
|
|
|
+ params.put("createUserId", getUserId());
|
|
|
+ }
|
|
|
+ PageUtils page = sysUserService.queryPage(params);
|
|
|
+
|
|
|
+ return R.ok().put("page", page);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取登录的用户信息
|
|
|
+ */
|
|
|
+ @GetMapping("/info")
|
|
|
+ public R info() {
|
|
|
+ return R.ok().put("user", getUser());
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修改登录用户密码
|
|
|
+ */
|
|
|
+ @SysLog("修改密码")
|
|
|
+ @PostMapping("/password")
|
|
|
+ public R password(@RequestBody PasswordForm form) {
|
|
|
+ Assert.isBlank(form.getNewPassword(), "新密码不为能空");
|
|
|
+
|
|
|
+ //sha256加密
|
|
|
+ String password = new Sha256Hash(form.getPassword(), getUser().getSalt()).toHex();
|
|
|
+ //sha256加密
|
|
|
+ String newPassword = new Sha256Hash(form.getNewPassword(), getUser().getSalt()).toHex();
|
|
|
+
|
|
|
+ //更新密码
|
|
|
+ boolean flag = sysUserService.updatePassword(getUserId(), password, newPassword);
|
|
|
+ if (!flag) {
|
|
|
+ return R.error("原密码不正确");
|
|
|
+ }
|
|
|
+
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 用户信息
|
|
|
+ */
|
|
|
+ @GetMapping("/info/{userId}")
|
|
|
+ @RequiresPermissions("sys:user:info")
|
|
|
+ public R info(@PathVariable("userId") Long userId) {
|
|
|
+ SysUserEntity user = sysUserService.getById(userId);
|
|
|
+
|
|
|
+ //获取用户所属的角色列表
|
|
|
+ List<Long> roleIdList = sysUserRoleService.queryRoleIdList(userId);
|
|
|
+ user.setRoleIdList(roleIdList);
|
|
|
+
|
|
|
+ return R.ok().put("user", user);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 保存用户
|
|
|
+ */
|
|
|
+ @SysLog("保存用户")
|
|
|
+ @PostMapping("/save")
|
|
|
+ @RequiresPermissions("sys:user:save")
|
|
|
+ public R save(@Validated(AddGroup.class) @RequestBody SysUserEntity user) {
|
|
|
+ //ValidatorUtils.validateEntity(user, AddGroup.class);
|
|
|
+
|
|
|
+ user.setCreateUserId(getUserId());
|
|
|
+ sysUserService.saveUser(user);
|
|
|
+
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 修改用户
|
|
|
+ */
|
|
|
+ @SysLog("修改用户")
|
|
|
+ @PostMapping("/update")
|
|
|
+ @RequiresPermissions("sys:user:update")
|
|
|
+ public R update(@Validated(UpdateGroup.class) @RequestBody SysUserEntity user) {
|
|
|
+ //ValidatorUtils.validateEntity(user, UpdateGroup.class);
|
|
|
+
|
|
|
+ user.setCreateUserId(getUserId());
|
|
|
+ sysUserService.update(user);
|
|
|
+
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除用户
|
|
|
+ */
|
|
|
+ @SysLog("删除用户")
|
|
|
+ @PostMapping("/delete")
|
|
|
+ @RequiresPermissions("sys:user:delete")
|
|
|
+ public R delete(@RequestBody Long[] userIds) {
|
|
|
+ if (ArrayUtils.contains(userIds, 1L)) {
|
|
|
+ return R.error("系统管理员不能删除");
|
|
|
+ }
|
|
|
+
|
|
|
+ if (ArrayUtils.contains(userIds, getUserId())) {
|
|
|
+ return R.error("当前用户不能删除");
|
|
|
+ }
|
|
|
+
|
|
|
+ sysUserService.deleteBatch(userIds);
|
|
|
+
|
|
|
+ return R.ok();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private SysUserFarmChooseDao sysUserFarmChooseDao;
|
|
|
+
|
|
|
+ @SysLog("查询用户上次选择牧场")
|
|
|
+ @GetMapping("/findLatestChooseFarm")
|
|
|
+ @RequiresPermissions("sys:user:info")
|
|
|
+ public Integer findLatestChooseFarm() {
|
|
|
+ Long userId = getUserId();
|
|
|
+ LambdaQueryWrapper<SysUserFarmChooseEntity> lambdaQueryWrapper = Wrappers.lambdaQuery();
|
|
|
+ SysUserFarmChooseEntity latestData = sysUserFarmChooseDao.selectOne(lambdaQueryWrapper.eq(SysUserFarmChooseEntity::getUserId, userId));
|
|
|
+ if (latestData != null) {
|
|
|
+ return latestData.getFarmId();
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ @SysLog("保存用户所选择的牧场")
|
|
|
+ @GetMapping("/saveChooseFarm")
|
|
|
+ @RequiresPermissions("sys:user:save")
|
|
|
+ public R saveChooseFarm(@RequestParam("farmId") Integer farmId) {
|
|
|
+ Long userId = getUserId();
|
|
|
+ LambdaQueryWrapper<SysUserFarmChooseEntity> lambdaQueryWrapper = Wrappers.lambdaQuery();
|
|
|
+ SysUserFarmChooseEntity latestData = sysUserFarmChooseDao.selectOne(lambdaQueryWrapper.eq(SysUserFarmChooseEntity::getUserId, userId));
|
|
|
+
|
|
|
+ SysUserFarmChooseEntity entity = new SysUserFarmChooseEntity();
|
|
|
+ entity.setFarmId(farmId);
|
|
|
+ if (latestData == null) {
|
|
|
+ entity.setUserId(userId);
|
|
|
+ sysUserFarmChooseDao.insert(entity);
|
|
|
+ } else {
|
|
|
+
|
|
|
+ sysUserFarmChooseDao.update(entity,lambdaQueryWrapper);
|
|
|
+ }
|
|
|
+ return R.ok().put("msg", "保存选择牧场记录成功!");
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|