From 97da73a2186211a44f54c5cac7856db172ebda5e Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期六, 31 八月 2024 09:06:28 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile
---
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java | 548 ++++++++++++++++++-----------------------------------
1 files changed, 189 insertions(+), 359 deletions(-)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
index a718b9f..dea823f 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -1,46 +1,32 @@
package com.ruoyi.system.controller;
-import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
import javax.annotation.Resource;
-import javax.servlet.http.HttpServletResponse;
-import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.chargingPile.api.feignClient.SiteClient;
+import com.ruoyi.chargingPile.api.model.Site;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.web.page.PageInfo;
-import com.ruoyi.management.api.feignClient.TCompanyShopClient;
-import com.ruoyi.management.api.feignClient.TCompanyShopToUserClient;
-import com.ruoyi.management.api.feignClient.TCompanyToUserClient;
-import com.ruoyi.management.api.model.AddUserShopClientDto;
-import com.ruoyi.management.api.model.TCompanyShop;
-import com.ruoyi.management.api.model.TCompanyShopToUser;
-import com.ruoyi.management.api.model.TCompanyToUser;
-import com.ruoyi.system.domain.dto.IndexDto;
-import com.ruoyi.system.domain.vo.UserRoleVO;
-import com.ruoyi.vehicle.api.domain.IndexVo;
-import com.ruoyi.vehicle.api.feignClient.VehicleClient;
+import com.ruoyi.other.api.domain.TUserSite;
+import com.ruoyi.other.api.feignClient.RoleSiteClient;
+import com.ruoyi.other.api.feignClient.UserSiteClient;
+import com.ruoyi.system.api.query.ChangeUserQuery;
import com.ruoyi.system.api.model.*;
import com.ruoyi.system.domain.SysUserRole;
-import com.ruoyi.system.domain.dto.AddCompanyUserDto;
-import com.ruoyi.system.domain.vo.CompanyUserVo;
-import com.ruoyi.system.domain.vo.TCompanyToUserVo;
+import com.ruoyi.system.query.GetSysUserList;
+import com.ruoyi.system.query.ShopUserStart;
import com.ruoyi.system.service.*;
+import io.seata.spring.annotation.GlobalTransactional;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.ArrayUtils;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.utils.poi.ExcelUtil;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.log.annotation.Log;
@@ -61,110 +47,61 @@
@RequestMapping("/user")
@Api(tags = "用户信息")
public class SysUserController extends BaseController {
- @Autowired
+ @Resource
private ISysUserService userService;
- @Autowired
+ @Resource
private ISysRoleService roleService;
- @Autowired
+ @Resource
private ISysDeptService deptService;
- @Autowired
+ @Resource
private ISysPostService postService;
- @Autowired
+ @Resource
private ISysPermissionService permissionService;
- @Autowired
+ @Resource
private ISysConfigService configService;
- @Autowired
- private TCompanyShopToUserClient companyShopToUserClient;
-
@Resource
- private TCompanyShopClient companyShopClient;
-
- @Autowired
private ISysUserRoleService userRoleService;
- @Autowired
- private VehicleClient vehicleClient;
- @Autowired
- private TCompanyToUserClient companyToUserClient;
-
- @Autowired
+ @Resource
private ISysUserRoleService sysUserRoleService;
+
+ @Resource
+ private UserSiteClient userSiteClient;
+
+ @Resource
+ private RoleSiteClient roleSiteClient;
+
+ @Resource
+ private SiteClient siteClient;
+
+
+
+
+
/**
* 获取用户列表
*/
@GetMapping("/list")
- @ApiOperation("管理员列表")
- public AjaxResult list(String phonenumber, int pageNumber, int pageSize) {
- PageInfo<SysUser> pageInfo = new PageInfo<>(pageNumber, pageSize);
- PageInfo<SysUser> page = userService.getList(pageInfo, phonenumber);
+ @ApiOperation(value = "获取系统用户列表", tags = {"管理后台-系统用户管理", "管理后台-角色管理"})
+ public AjaxResult list(GetSysUserList getSysUserList) {
+ PageInfo<SysUser> pageInfo = new PageInfo<>(getSysUserList.getPageCurr(), getSysUserList.getPageSize());
+ PageInfo<SysUser> page = userService.getList(pageInfo, getSysUserList);
return AjaxResult.success(page);
}
/**
- * 删除用户
+ * 获取用户选择列表
*/
- @PostMapping("/queryManageByCompanyId")
- @ApiOperation(value = "通过公司id查询公司下的人员")
- public AjaxResult<List<UserRoleVO>> queryManageByCompanyId(@RequestParam Integer companyId,
- @RequestParam(required = false) String nickName,
- @RequestParam(required = false) String userPhone) {
-
- //根据 公司id查出中间表
- R<List<TCompanyShopToUser>> companyToUser = companyShopToUserClient.getCompanyToUser(Long.valueOf(companyId));
- List<TCompanyShopToUser> data = companyToUser.getData();
- if (data == null) {
- return AjaxResult.success(new ArrayList<>());
- }
- R<List<TCompanyToUser>> companyToUserFromCompanyId = companyShopToUserClient.getCompanyToUserFromCompanyId(Long.valueOf(companyId));
- //
- List<Integer> collect2 = data.stream().map(TCompanyShopToUser::getUserId).collect(Collectors.toList());
- if(companyToUserFromCompanyId.getData()!=null){
- List<Integer> collect = companyToUserFromCompanyId.getData().stream().map(TCompanyToUser::getUserId).collect(Collectors.toList());
- collect2.addAll(collect);
- }
- List<Integer> collect1 = collect2.stream().distinct().collect(Collectors.toList());
-
- if(collect1.size()==0){
- collect1.add(-1);
- }
-
- List<UserRoleVO> userRoleVOS = new ArrayList<>();
- // 查询该公司下的司管用户
- LambdaQueryWrapper<SysUser> wrapper = new LambdaQueryWrapper<>();
- if(StringUtils.isNotEmpty(nickName)){
- wrapper.like(SysUser::getNickName,nickName);
- }
- if(StringUtils.isNotEmpty(userPhone)){
- wrapper.like(SysUser::getPhonenumber,userPhone);
- }
- wrapper.ne(SysUser::getRoleType,1);
- wrapper.ne(SysUser::getRoleType,2);
-
- // 查询公司绑定的用户
- List<SysUser> list = userService.list(Wrappers.lambdaQuery(SysUser.class)
- .in(SysUser::getUserId, collect1));
- if(CollectionUtils.isEmpty(list)){
- return AjaxResult.success(userRoleVOS);
- }else {
- List<Long> userIds = list.stream().map(SysUser::getUserId).collect(Collectors.toList());
- wrapper.in(SysUser::getUserId,userIds);
- }
-
- List<SysUser> userList = userService.list(wrapper);
- userList.forEach(e->{
- UserRoleVO userRoleVO = new UserRoleVO();
- userRoleVO.setManageId(e.getUserId().intValue());
- userRoleVO.setManageName(e.getNickName());
- userRoleVO.setUserName(e.getUserName());
- userRoleVOS.add(userRoleVO);
- });
- return AjaxResult.success(userRoleVOS);
+ @PostMapping("/getChangeUserList")
+ @ApiOperation(value = "获取用户选择列表", tags = {"管理后台-获取用户选择列表"})
+ public AjaxResult<PageInfo<SysUser>> getChangeUserList(@RequestBody ChangeUserQuery query) {
+ return AjaxResult.success(userService.getChangeUserList(query));
}
/**
@@ -172,8 +109,9 @@
*/
@Log(title = "用户管理", businessType = BusinessType.INSERT)
@PostMapping("/add")
- @ApiOperation("添加管理员")
- public AjaxResult add(@Validated @RequestBody SysUser user) {
+ @ApiOperation(value = "添加系统用户", tags = {"管理后台-系统用户管理"})
+ @GlobalTransactional(rollbackFor = Exception.class)//分布式事务
+ public AjaxResult add(@RequestBody SysUser user) {
user.setUserName(user.getPhonenumber());
if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
user.setNickName(user.getPhonenumber());
@@ -181,24 +119,62 @@
if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
return error("手机号已开通账号");
}
+ if (StringUtils.isNotEmpty(user.getUserName()) && !userService.checkUserNameUnique(user)) {
+ return error("登录账号重复");
+ }
user.setCreateBy(SecurityUtils.getUsername());
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
user.setRoleType(1);
- int i = userService.insertUser(user);
+ userService.insertUser(user);
SysUserRole sysUserRole = new SysUserRole();
- sysUserRole.setRoleId(1l);
+ sysUserRole.setRoleId(user.getRoleId());
sysUserRole.setUserId(user.getUserId());
- int i1 = userRoleService.insertSysUserRole(sysUserRole);
- return AjaxResult.success(i1);
+ userRoleService.insertSysUserRole(sysUserRole);
+ List<Integer> siteIds = user.getSiteIds();
+ List<TUserSite> userSites = new ArrayList<>();
+ for (Integer siteId : siteIds) {
+ TUserSite userSite = new TUserSite();
+ userSite.setUserId(user.getUserId().intValue());
+ userSite.setSiteId(siteId);
+ userSites.add(userSite);
+ }
+ userSiteClient.addUserSite(userSites);
+ return AjaxResult.success();
}
-
-
+
+
+ @GetMapping("/verifyUserNameRepeat/{username}")
+ @ApiOperation(value = "校验账号是否重复", tags = {"管理后台-系统用户管理"})
+ public AjaxResult verifyUserNameRepeat(@PathVariable String username){
+ SysUser user = new SysUser();
+ user.setUserName(username);
+ if (StringUtils.isNotEmpty(username) && !userService.checkUserNameUnique(user)) {
+ return error("账号不可重复");
+ }
+ return success();
+ }
+
+ @GetMapping("/getRoleSiteName/{roleId}")
+ @ApiOperation(value = "获取角色对应的站点名称", tags = {"管理后台-系统用户管理"})
+ public AjaxResult<List<String>> getRoleSiteName(@PathVariable Integer roleId){
+ List<Integer> ids = roleSiteClient.getSiteIds(roleId.longValue()).getData();
+ List<Site> data = siteClient.getSiteByIds(ids).getData();
+ if(null == data){
+ return AjaxResult.success(new ArrayList<>());
+ }
+ List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList());
+ return AjaxResult.success(siteNames);
+ }
+
+
+
+
/**
* 根据用户编号获取详细信息
*/
- @ApiOperation("管理员详情")
- @GetMapping(value = {"/", "/{userId}"})
- public AjaxResult getInfo(@PathVariable(value = "userId", required = false) Long userId) {
+ @ApiOperation(value = "获取用户详情", tags = {"管理后台-系统用户管理"})
+ @GetMapping("/getInfo/{userId}")
+ public AjaxResult getInfo(@PathVariable Long userId) {
userService.checkUserDataScope(userId);
AjaxResult ajax = AjaxResult.success();
List<SysRole> roles = roleService.selectRoleAll();
@@ -206,6 +182,11 @@
ajax.put("posts", postService.selectPostAll());
if (StringUtils.isNotNull(userId)) {
SysUser sysUser = userService.selectUserById(userId);
+ List<Integer> siteIds = userSiteClient.getSiteIds(userId).getData();
+ sysUser.setSiteIds(siteIds);
+ List<Site> data = siteClient.getSiteByIds(siteIds).getData();
+ List<String> siteNames = data.stream().map(Site::getName).collect(Collectors.toList());
+ sysUser.setSiteNames(siteNames);
ajax.put(AjaxResult.DATA_TAG, sysUser);
ajax.put("postIds", postService.selectPostListByUserId(userId));
ajax.put("roleIds", sysUser.getRoles().stream().map(SysRole::getRoleId).collect(Collectors.toList()));
@@ -219,9 +200,9 @@
*/
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
@PutMapping("/update")
- @ApiOperation("编辑管理员")
+ @ApiOperation(value = "编辑系统用户", tags = {"管理后台-系统用户管理"})
+ @GlobalTransactional(rollbackFor = Exception.class)//分布式事务
public AjaxResult edit(@Validated @RequestBody SysUser user) {
-
user.setUserName(user.getPhonenumber());
if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
user.setNickName(user.getPhonenumber());
@@ -243,6 +224,13 @@
if (StringUtils.isNotEmpty(user.getPhonenumber()) && (Objects.nonNull(sysUser) && !user.getUserId().equals(sysUser.getUserId()) )) {
return error("手机号已开通账号");
}
+ sysUser = userService.getOne(Wrappers.lambdaQuery(SysUser.class)
+ .eq(SysUser::getUserName, user.getUserName())
+ .eq(SysUser::getDelFlag,0)
+ .last("LIMIT 1"));
+ if (StringUtils.isNotEmpty(user.getUserName()) && (Objects.nonNull(sysUser) && !user.getUserId().equals(sysUser.getUserId()) )) {
+ return error("登录账号重复");
+ }
user.setUpdateBy(SecurityUtils.getUsername());
if (user.getPassword() != null && !"".equals(user.getPassword())) {
user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
@@ -251,10 +239,22 @@
if (user.getPhonenumber() != null) {
user.setUserName(user.getPhonenumber());
}
- user.setPassword(null);
user.setUpdateBy(SecurityUtils.getUsername());
user.setUpdateTime(new Date());
- return toAjax(userService.updateUser(user));
+ userService.updateUser(user);
+
+ //删除旧的站点数据后添加新的
+ userSiteClient.delUserSite(user.getUserId());
+ List<Integer> siteIds = user.getSiteIds();
+ List<TUserSite> userSites = new ArrayList<>();
+ for (Integer siteId : siteIds) {
+ TUserSite userSite = new TUserSite();
+ userSite.setUserId(user.getUserId().intValue());
+ userSite.setSiteId(siteId);
+ userSites.add(userSite);
+ }
+ userSiteClient.addUserSite(userSites);
+ return success();
}
@@ -263,7 +263,7 @@
*/
@Log(title = "用户管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{userIds}")
- @ApiOperation("删除管理员")
+ @ApiOperation(value = "删除系统用户", tags = {"管理后台-系统用户管理"})
public AjaxResult remove(@PathVariable Long[] userIds) {
if (ArrayUtils.contains(userIds, SecurityUtils.getUserId())) {
return error("当前用户不能删除");
@@ -271,219 +271,25 @@
return toAjax(userService.deleteUserByIds(userIds));
}
-
- @GetMapping("/companyUserList")
- @ApiOperation("门店账户列表 参数 公司id")
- public AjaxResult list(Long companyId, int pageNumber, int pageSize) {
- if (companyId == null) {
- return AjaxResult.success(new ArrayList<>());
- }
- //根据 公司id查出中间表
- R<List<TCompanyShopToUser>> companyToUser = companyShopToUserClient.getCompanyToUser(companyId);
- List<TCompanyShopToUser> data = companyToUser.getData();
- if (data == null) {
- return AjaxResult.success(new ArrayList<>());
- }
- R<List<TCompanyToUser>> companyToUserFromCompanyId = companyShopToUserClient.getCompanyToUserFromCompanyId(companyId);
- //
- PageInfo<SysUser> pageInfo = new PageInfo<>(pageNumber, pageSize);
- List<Integer> collect2 = data.stream().map(TCompanyShopToUser::getUserId).collect(Collectors.toList());
- if(companyToUserFromCompanyId.getData()!=null){
- List<Integer> collect = companyToUserFromCompanyId.getData().stream().map(TCompanyToUser::getUserId).collect(Collectors.toList());
- collect2.addAll(collect);
- }
- List<Integer> collect1 = collect2.stream().distinct().collect(Collectors.toList());
-
- if(collect1.size()==0){
- collect1.add(-1);
- }
- PageInfo<SysUser> page = userService.getAllList(pageInfo,collect1 );
- ArrayList<TCompanyToUserVo> tCompanyToUserVos = new ArrayList<>();
- for (SysUser sysUser : page.getRecords()) {
- TCompanyToUserVo tCompanyToUserVo = new TCompanyToUserVo();
- tCompanyToUserVo.setId(sysUser.getUserId());
- tCompanyToUserVo.setCreateTime(sysUser.getCreateTime());
- tCompanyToUserVo.setLoginDate(sysUser.getLoginDate());
- tCompanyToUserVo.setPhonenumber(sysUser.getPhonenumber());
- tCompanyToUserVo.setStatus(sysUser.getStatus());
- tCompanyToUserVo.setUserName(sysUser.getUserName());
- SysUserRole one = userRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, sysUser.getUserId()));
- SysRole sysRole = roleService.getOne(new LambdaQueryWrapper<SysRole>().eq(SysRole::getRoleId,one.getRoleId()));
- tCompanyToUserVo.setRoleName(sysRole.getRoleName());
- // 当前用户的门店ids
- List<Integer> collect = data.stream().filter(e -> e.getUserId().toString().equals(sysUser.getUserId().toString())).map(TCompanyShopToUser::getShopId).collect(Collectors.toList());
- R<List<TCompanyShop>> listR1 = companyShopClient.queryShopByShopId(collect);
- List<String> shopNames = listR1.getData().stream().map(TCompanyShop::getShopName).collect(Collectors.toList());
- tCompanyToUserVo.setShopName(shopNames);
- tCompanyToUserVos.add(tCompanyToUserVo);
- }
- PageInfo<TCompanyToUserVo> tCompanyToUserVoPageInfo = new PageInfo<>();
- BeanUtils.copyProperties(page, tCompanyToUserVoPageInfo);
- tCompanyToUserVoPageInfo.setRecords(tCompanyToUserVos);
- return AjaxResult.success(tCompanyToUserVoPageInfo);
- }
-
-
- @Log(title = "账号管理", businessType = BusinessType.INSERT)
- @PostMapping("/addCompanyUser")
- @ApiOperation("账号管理--添加账号")
- @Transactional(propagation = Propagation.REQUIRES_NEW)
- public AjaxResult addCompanyUser(@Validated @RequestBody AddCompanyUserDto dto) {
- SysUser user = dto.getSysUser();
- if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
- return error("手机号已存在,请重新输入");
- }
- user.setCreateBy(SecurityUtils.getUsername());
- user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
- user.setRoleType(3);
- user.setUserName(user.getPhonenumber());
- if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
- user.setNickName(user.getPhonenumber());
- }
- int i = userService.insertUser(user);
- if (i > 0) {
- // 添加role
- SysUserRole sysUserRole = new SysUserRole();
- sysUserRole.setRoleId(dto.getRoleId());
- sysUserRole.setUserId(dto.getSysUser().getUserId());
- userRoleService.insertSysUserRole(sysUserRole);
-
-// 添加t_company_shop_to_user
- companyShopToUserClient.addUserShop(new AddUserShopClientDto(dto.getSysUser().getUserId(), dto.getShopIds()));
- ArrayList<Integer> id = new ArrayList<>();
- id.add(dto.getCompanyId());
- companyShopToUserClient.addUserCompany(new AddUserShopClientDto(dto.getSysUser().getUserId(), id));
- }
- return AjaxResult.success();
- }
-
-
- @Log(title = "账号管理", businessType = BusinessType.INSERT)
- @PostMapping("/companyUserInfo")
- @ApiOperation("账号管理--账号详情")
- @Transactional(propagation = Propagation.REQUIRES_NEW)
- public AjaxResult companyUserInfo(@RequestParam Long userId) {
- SysUser sysUser = userService.selectUserById(userId);
- SysUserRole sysUserRole = userRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, userId));
- CompanyUserVo companyUserVo = new CompanyUserVo();
- companyUserVo.setRoleId(sysUserRole.getRoleId());
- companyUserVo.setSysUser(sysUser);
- // 远程根据userID 获取门店id
- R<List<Integer>> shopIdsFromUserId = companyShopToUserClient.getShopIdsFromUserId(userId);
- companyUserVo.setShopIds(shopIdsFromUserId.getData());
- return AjaxResult.success(companyUserVo);
- }
-
- @Log(title = "账号管理", businessType = BusinessType.INSERT)
- @PostMapping("/updateCompanyUser")
- @ApiOperation("账号管理--修改账号")
- @Transactional(propagation = Propagation.REQUIRES_NEW)
- public AjaxResult updateCompanyUser(@Validated @RequestBody AddCompanyUserDto dto) {
- SysUser user = dto.getSysUser();
-
- if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
- return error("手机号已存在,请重新输入");
- }
- user.setUserName(user.getPhonenumber());
- if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
- user.setNickName(user.getPhonenumber());
- }
- if (user.getPassword() != null && !"".equals(user.getPassword())) {
- user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
- }
- user.setRoleType(1);
- user.setUpdateBy(SecurityUtils.getUsername());
- user.setUpdateTime(new Date());
- int i = userService.updateUser(user);
-// if (i > 0) {
- // 原来的role
- SysUserRole one = userRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, dto.getSysUser().getUserId()));
- one.setRoleId(dto.getRoleId());
- //更新新的role
- userRoleService.updateSysUserRole(one);
-
- // 更新t_company_shop_to_user
- companyShopToUserClient.updateUserShop(new AddUserShopClientDto(dto.getSysUser().getUserId(), dto.getShopIds()));
-// }
- return AjaxResult.success();
- }
+
@PostMapping("/shopUserStart")
- @ApiOperation("账号管理--停用/启用")
- public AjaxResult shopUserStart(Long userId) {
- if (userId == null) {
+ @ApiOperation(value = "账号管理--禁用/启用", tags = {"管理后台-系统用户管理"})
+ public AjaxResult shopUserStart(@RequestBody ShopUserStart shopUserStart) {
+ if (shopUserStart.getUserId() == null) {
return AjaxResult.error("userId不能为空");
}
- SysUser sysUser = userService.selectUserById(userId);
+ SysUser sysUser = userService.selectUserById(shopUserStart.getUserId());
if (sysUser.getStatus().equals("0")) {
sysUser.setStatus("1");
+ sysUser.setForbiddenRemark(shopUserStart.getRemark());
} else {
sysUser.setStatus("0");
+ sysUser.setForbiddenRemark("");
}
return toAjax(userService.updateUser(sysUser));
}
-
-
- @Autowired
- private ISysUserRoleService iSysUserRoleService;
- @GetMapping("/getAllManager")
- @ApiOperation("查询司管角色的用户")
- public AjaxResult getAllManager(@RequestParam Integer companyId,
- @RequestParam(required = false) String nickName,
- @RequestParam(required = false) String userPhone) {
- //根据 公司id查出中间表
- R<List<TCompanyShopToUser>> companyToUser = companyShopToUserClient.getCompanyToUser(companyId.longValue());
- List<TCompanyShopToUser> data = companyToUser.getData();
- if (data == null) {
- return AjaxResult.success(new ArrayList<>());
- }
- R<List<TCompanyToUser>> companyToUserFromCompanyId = companyShopToUserClient.getCompanyToUserFromCompanyId(companyId.longValue());
- //
- List<Integer> collect2 = data.stream().map(TCompanyShopToUser::getUserId).collect(Collectors.toList());
- if(companyToUserFromCompanyId.getData()!=null){
- List<Integer> collect = companyToUserFromCompanyId.getData().stream().map(TCompanyToUser::getUserId).collect(Collectors.toList());
- collect2.addAll(collect);
- }
- List<Integer> collect1 = collect2.stream().distinct().collect(Collectors.toList());
-
- if(collect1.size()==0){
- collect1.add(-1);
- }
-
- List<UserRoleVO> userRoleVOS = new ArrayList<>();
- // 查询该公司下的司管用户
- LambdaQueryWrapper<SysUser> wrapper = new LambdaQueryWrapper<>();
- if(StringUtils.isNotEmpty(nickName)){
- wrapper.like(SysUser::getNickName,nickName);
- }
- if(StringUtils.isNotEmpty(userPhone)){
- wrapper.like(SysUser::getPhonenumber,userPhone);
- }
- wrapper.ne(SysUser::getRoleType,1);
- wrapper.ne(SysUser::getRoleType,2);
-
- // 查询公司绑定的用户
- List<SysUser> list = userService.list(Wrappers.lambdaQuery(SysUser.class)
- .in(SysUser::getUserId, collect1));
- if(CollectionUtils.isEmpty(list)){
- return AjaxResult.success(userRoleVOS);
- }else {
- List<Long> userIds = list.stream().map(SysUser::getUserId).collect(Collectors.toList());
- wrapper.in(SysUser::getUserId,userIds);
- }
-
- List<SysUser> userList = userService.list(wrapper);
- userList.forEach(e->{
- UserRoleVO userRoleVO = new UserRoleVO();
- userRoleVO.setManageId(e.getUserId().intValue());
- userRoleVO.setManageName(e.getNickName());
- userRoleVO.setUserName(e.getUserName());
- userRoleVOS.add(userRoleVO);
- });
- return AjaxResult.success(userRoleVOS);
- }
-
@PostMapping("/getUserList")
@@ -491,15 +297,6 @@
List<SysUser> list = userService.list(new LambdaQueryWrapper<SysUser>().in(SysUser::getUserId, userIds));
return R.ok(list);
}
-
-
- @PostMapping("/index")
- @ApiOperation("工作台")
- public AjaxResult index(@RequestBody IndexDto dto) {
- R<IndexVo> index = vehicleClient.indexShopIds(dto.getShopIds());
- return AjaxResult.success(index.getData()==null?new IndexVo():index.getData());
- }
-
@PostMapping("/getSysUserFromCompanyId")
public R<List<CompanyUserListVo>> getSysUserFromCompanyId(@RequestBody CompanySysUserReq companySysUserReq) {
@@ -567,15 +364,23 @@
}
@PostMapping("/updateSysUser")
+ @Transactional(rollbackFor = Exception.class)
public R<Boolean> updateSysUser(@RequestBody SysUser sysUser) {
try {
sysUser.setUpdateBy(SecurityUtils.getUsername());
sysUser.setUpdateTime(new Date());
userService.updateUser(sysUser);
+ if(null != sysUser.getRoleId()){
+ userRoleService.deleteSysUserRoleByUserId(sysUser.getUserId());
+ SysUserRole sysUserRole = new SysUserRole();
+ sysUserRole.setRoleId(sysUser.getRoleId());
+ sysUserRole.setUserId(sysUser.getUserId());
+ userRoleService.insertSysUserRole(sysUserRole);
+ }
return R.ok(true);
} catch (Exception e) {
e.printStackTrace();
- return R.ok();
+ return R.fail();
}
}
@@ -659,32 +464,6 @@
}
- @Log(title = "用户管理", businessType = BusinessType.EXPORT)
- @RequiresPermissions("system:user:export")
- @PostMapping("/export")
- public void export(HttpServletResponse response, SysUser user) {
- List<SysUser> list = userService.selectUserList(user);
- ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
- util.exportExcel(response, list, "用户数据");
- }
-
- @PostMapping("/importTemplate")
- public void importTemplate(HttpServletResponse response) throws IOException {
- ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
- util.importTemplateExcel(response, "用户数据");
- }
-
- @Log(title = "用户管理", businessType = BusinessType.IMPORT)
- @RequiresPermissions("system:user:import")
- @PostMapping("/importData")
- public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception {
- ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
- List<SysUser> userList = util.importExcel(file.getInputStream());
- String operName = SecurityUtils.getUsername();
- String message = userService.importUser(userList, updateSupport, operName);
- return success(message);
- }
-
/**
* 获取当前用户信息
*/
@@ -710,7 +489,6 @@
/**
* 注册用户信息
*/
- @InnerAuth
@PostMapping("/register")
public R<Boolean> register(@RequestBody SysUser sysUser) {
String username = sysUser.getUserName();
@@ -749,6 +527,7 @@
@RequiresPermissions("system:user:edit")
@Log(title = "用户管理", businessType = BusinessType.UPDATE)
@PutMapping("/resetPwd")
+ @ApiOperation(value = "重置密码", tags = {"管理后台-系统用户管理"})
public AjaxResult resetPwd(@RequestBody SysUser user) {
userService.checkUserAllowed(user);
userService.checkUserDataScope(user.getUserId());
@@ -815,7 +594,7 @@
* @param userId
* @return
*/
- @GetMapping("/queryRoleByUserId/{userId}")
+ @PostMapping("/queryRoleByUserId/{userId}")
public R<SysRole> queryRoleByUserId(@PathVariable("userId") Long userId){
SysUserRole one = sysUserRoleService.getOne(Wrappers.lambdaQuery(SysUserRole.class)
.eq(SysUserRole::getUserId, userId)
@@ -831,7 +610,7 @@
}
- @GetMapping("/queryRoleByRoleId/{roleId}")
+ @PostMapping("/queryRoleByRoleId/{roleId}")
public R<SysRole> queryRoleByRoleId(@PathVariable("roleId") Long roleId){
return R.ok( roleService.getOne(Wrappers.lambdaQuery(SysRole.class)
.eq(SysRole::getRoleId, roleId)
@@ -887,6 +666,7 @@
* @param userName
* @return
*/
+ @ResponseBody
@PostMapping("/queryUserByUserName")
public R<SysUser> queryUserByUserName(@RequestBody String userName){
SysUser user = userService.getOne(Wrappers.lambdaQuery(SysUser.class)
@@ -894,5 +674,55 @@
.last("LIMIT 1"));
return R.ok(user);
}
-
+
+
+ /**
+ * 添加管理员
+ * @param user
+ */
+ @ResponseBody
+ @PostMapping("/addSysUser")
+ @Transactional(rollbackFor = Exception.class)
+ public R addSysUser(@RequestBody SysUser user){
+ if(StringUtils.isEmpty(user.getUserName())){
+ user.setUserName(user.getPhonenumber());
+ }
+ if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
+ user.setNickName(user.getPhonenumber());
+ }
+ if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) {
+ throw new RuntimeException("手机号已开通账号");
+ }
+ if (StringUtils.isNotEmpty(user.getUserName()) && !userService.checkUserNameUnique(user)) {
+ throw new RuntimeException("登录账号已存在");
+ }
+ user.setCreateBy(SecurityUtils.getUsername());
+ user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
+ if(null == user.getRoleType()){
+ user.setRoleType(1);
+ }
+ userService.insertUser(user);
+ SysUserRole sysUserRole = new SysUserRole();
+ sysUserRole.setRoleId(user.getRoleId());
+ sysUserRole.setUserId(user.getUserId());
+ userRoleService.insertSysUserRole(sysUserRole);
+ return R.ok();
+ }
+
+
+ @ResponseBody
+ @PostMapping("/resetPassword")
+ public R resetPassword(@RequestBody SysUser user) {
+ user.setPassword(SecurityUtils.encryptPassword(user.getPassword()));
+ user.setUpdateBy(SecurityUtils.getUsername());
+ userService.resetPwd(user);
+ return R.ok();
+ }
+
+
+ @ResponseBody
+ @PostMapping("/getSysUserById")
+ public SysUser getSysUserById(@RequestParam("userId") Long userId){
+ return userService.getById(userId);
+ }
}
--
Gitblit v1.7.1