| | |
| | | package com.ruoyi.system.controller; |
| | | |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | import javax.annotation.Resource; |
| | | |
| | | 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.domain.R; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.core.web.controller.BaseController; |
| | | import com.ruoyi.common.core.web.domain.AjaxResult; |
| | | import com.ruoyi.common.core.web.page.PageInfo; |
| | | import com.ruoyi.other.api.feignClient.RoleSiteClient; |
| | | import com.ruoyi.other.api.feignClient.UserSiteClient; |
| | | import com.ruoyi.common.log.annotation.Log; |
| | | import com.ruoyi.common.log.enums.BusinessType; |
| | | import com.ruoyi.common.security.annotation.InnerAuth; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | import com.ruoyi.system.api.model.LoginUser; |
| | | import com.ruoyi.system.api.model.SysUserRole; |
| | | import com.ruoyi.system.api.query.ChangeUserQuery; |
| | | import com.ruoyi.system.api.model.*; |
| | | import com.ruoyi.system.domain.SysUserRole; |
| | | import com.ruoyi.system.query.GetSysUserList; |
| | | import com.ruoyi.system.query.ShopUserStart; |
| | | import com.ruoyi.system.service.*; |
| | |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.web.controller.BaseController; |
| | | import com.ruoyi.common.core.web.domain.AjaxResult; |
| | | import com.ruoyi.common.log.annotation.Log; |
| | | import com.ruoyi.common.log.enums.BusinessType; |
| | | import com.ruoyi.common.security.annotation.InnerAuth; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.system.api.domain.SysDept; |
| | | import com.ruoyi.system.api.domain.SysRole; |
| | | import com.ruoyi.system.api.domain.SysUser; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * 用户信息 |
| | |
| | | |
| | | @Resource |
| | | private ISysUserRoleService sysUserRoleService; |
| | | |
| | | @Resource |
| | | private UserSiteClient userSiteClient; |
| | | |
| | | @Resource |
| | | private RoleSiteClient roleSiteClient; |
| | | |
| | | @Resource |
| | | private SiteClient siteClient; |
| | | |
| | | |
| | | |
| | |
| | | sysUserRole.setRoleId(user.getRoleId()); |
| | | sysUserRole.setUserId(user.getUserId()); |
| | | 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(); |
| | | } |
| | | |
| | |
| | | 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); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | |
| | | 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())); |
| | |
| | | user.setUpdateBy(SecurityUtils.getUsername()); |
| | | user.setUpdateTime(new Date()); |
| | | 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(); |
| | | } |
| | | |
| | |
| | | return R.ok(list); |
| | | } |
| | | |
| | | @PostMapping("/getSysUserFromCompanyId") |
| | | public R<List<CompanyUserListVo>> getSysUserFromCompanyId(@RequestBody CompanySysUserReq companySysUserReq) { |
| | | LambdaQueryWrapper<SysUser> sysUserLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | if (companySysUserReq.getUserIds().size() == 0) { |
| | | List<Integer> userIds = companySysUserReq.getUserIds(); |
| | | userIds.add(-1); |
| | | companySysUserReq.setUserIds(userIds); |
| | | } |
| | | sysUserLambdaQueryWrapper.in(SysUser::getUserId, companySysUserReq.getUserIds()); |
| | | if (companySysUserReq.getName() != null && !"".equals(companySysUserReq.getName())) { |
| | | sysUserLambdaQueryWrapper.like(SysUser::getUserName, companySysUserReq.getName()).or().like(SysUser::getPhonenumber, companySysUserReq.getName()); |
| | | } |
| | | sysUserLambdaQueryWrapper.eq(SysUser::getRoleType,2); |
| | | List<SysUser> list = userService.list(sysUserLambdaQueryWrapper); |
| | | ArrayList<CompanyUserListVo> companyUserListVos = new ArrayList<>(); |
| | | for (SysUser sysUser : list) { |
| | | CompanyUserListVo companyUserListVo = new CompanyUserListVo(); |
| | | companyUserListVo.setId(sysUser.getUserId()); |
| | | companyUserListVo.setPassword(sysUser.getPassword()); |
| | | companyUserListVo.setPhoneNumber(sysUser.getPhonenumber()); |
| | | companyUserListVo.setUserName(sysUser.getUserName()); |
| | | companyUserListVo.setNickName(sysUser.getNickName()); |
| | | companyUserListVos.add(companyUserListVo); |
| | | } |
| | | return R.ok(companyUserListVos); |
| | | } |
| | | |
| | | @PostMapping("/getSysUserFromCompanyIdOne") |
| | | public R<List<CompanyUserListVo>> getSysUserFromCompanyIdOne(@RequestBody CompanySysUserReq companySysUserReq) { |
| | | LambdaQueryWrapper<SysUser> sysUserLambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | sysUserLambdaQueryWrapper.eq(SysUser::getRoleType, 2); |
| | | if (companySysUserReq.getName() != null && !"".equals(companySysUserReq.getName())) { |
| | | sysUserLambdaQueryWrapper.like(SysUser::getPhonenumber, companySysUserReq.getName()); |
| | | } |
| | | List<SysUser> list = userService.list(sysUserLambdaQueryWrapper); |
| | | ArrayList<CompanyUserListVo> companyUserListVos = new ArrayList<>(); |
| | | for (SysUser sysUser : list) { |
| | | CompanyUserListVo companyUserListVo = new CompanyUserListVo(); |
| | | companyUserListVo.setId(sysUser.getUserId()); |
| | | companyUserListVo.setPassword(sysUser.getPassword()); |
| | | companyUserListVo.setPhoneNumber(sysUser.getPhonenumber()); |
| | | companyUserListVo.setUserName(sysUser.getUserName()); |
| | | companyUserListVo.setNickName(sysUser.getNickName()); |
| | | companyUserListVos.add(companyUserListVo); |
| | | } |
| | | return R.ok(companyUserListVos); |
| | | } |
| | | @PostMapping("/isAdmin") |
| | | public R<Integer> isAdmin(@RequestBody Long userId){ |
| | | SysUserRole one = sysUserRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId, userId)); |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | @PostMapping("/companySaveSysUser") |
| | | public R<List<Integer>> companySaveSysUser(@RequestBody CompanyAddSysUserDto dto) { |
| | | List<CompanyUserListVo> list = dto.getList(); |
| | | ArrayList<Integer> userIds = new ArrayList<>(); |
| | | try { |
| | | for (CompanyUserListVo companyUserListVo : list) { |
| | | List<Long> ids = userService.getSysUserFromPhone(companyUserListVo.getPhoneNumber()); |
| | | SysUser sysUser = new SysUser(); |
| | | if (ids.size() > 0) { |
| | | sysUser.setRoleType(2); |
| | | sysUser.setObjectId(dto.getCompanyId()); |
| | | if(companyUserListVo.getPassword()!=null){ |
| | | sysUser.setPassword(SecurityUtils.encryptPassword(companyUserListVo.getPassword())); |
| | | } |
| | | sysUser.setPhonenumber(companyUserListVo.getPhoneNumber()); |
| | | sysUser.setUserName(companyUserListVo.getPhoneNumber()); |
| | | sysUser.setNickName(companyUserListVo.getNickName()); |
| | | sysUser.setUserId(ids.get(0).longValue()); |
| | | userService.updateUser(sysUser); |
| | | userIds.add(ids.get(0).intValue()); |
| | | } else { |
| | | |
| | | sysUser.setRoleType(2); |
| | | sysUser.setObjectId(dto.getCompanyId()); |
| | | if(companyUserListVo.getPassword()!=null){ |
| | | sysUser.setPassword(SecurityUtils.encryptPassword(companyUserListVo.getPassword())); |
| | | } |
| | | sysUser.setPhonenumber(companyUserListVo.getPhoneNumber()); |
| | | sysUser.setUserName(companyUserListVo.getPhoneNumber()); |
| | | sysUser.setNickName(companyUserListVo.getNickName()); |
| | | sysUser.setCreateBy(SecurityUtils.getUsername()); |
| | | sysUser.setCreateTime(new Date()); |
| | | userService.insertUser(sysUser); |
| | | SysUserRole sysUserRole = new SysUserRole(); |
| | | sysUserRole.setRoleId(20l); |
| | | sysUserRole.setUserId(sysUser.getUserId()); |
| | | sysUserRoleService.insertSysUserRole(sysUserRole); |
| | | userIds.add(sysUser.getUserId().intValue()); |
| | | } |
| | | } |
| | | return R.ok(userIds); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | } |
| | | |
| | | |
| | | @PostMapping("/addTRepairSysUser") |
| | | public R<List<Integer>> addTRepairSysUser(@RequestBody TRepairShopAddDto dto) { |
| | | List<TRepairShopAdd> list = dto.getList(); |
| | | ArrayList<Integer> userIds = new ArrayList<>(); |
| | | try { |
| | | for (TRepairShopAdd add : list) { |
| | | List<Long> ids = userService.getSysUserFromPhone(add.getPhonenumber()); |
| | | if (ids.size() > 0) { |
| | | userIds.add(ids.get(0).intValue()); |
| | | } else { |
| | | SysUser sysUser = new SysUser(); |
| | | sysUser.setPhonenumber(add.getPhonenumber()); |
| | | sysUser.setCreateTime(new Date()); |
| | | sysUser.setCreateBy(SecurityUtils.getUsername()); |
| | | sysUser.setPassword(SecurityUtils.encryptPassword(add.getPwd())); |
| | | sysUser.setRoleType(4); |
| | | sysUser.setObjectId(dto.getRepairId()); |
| | | sysUser.setUserName(add.getPhonenumber()); |
| | | sysUser.setNickName(add.getPhonenumber()); |
| | | userService.insertUser(sysUser); |
| | | userIds.add(sysUser.getUserId().intValue()); |
| | | } |
| | | } |
| | | return R.ok(userIds); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | return R.ok(new ArrayList<>()); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | |
| | | return R.ok(list); |
| | | } |
| | | |
| | | /** |
| | | * 默认批量添加修理厂 |
| | | * @param dtoList |
| | | * @return |
| | | */ |
| | | @PostMapping("/addUserRole") |
| | | public R<Boolean> addUserRole(@RequestBody List<SysUserRoleDTO> dtoList){ |
| | | List<SysUserRole> userRoles = new ArrayList<>(); |
| | | for (SysUserRoleDTO userRoleDTO : dtoList) { |
| | | SysUserRole userRole = new SysUserRole(); |
| | | userRole.setRoleId(userRoleDTO.getRoleId()); |
| | | userRole.setUserId(userRoleDTO.getUserId()); |
| | | userRoles.add(userRole); |
| | | } |
| | | return R.ok(sysUserRoleService.saveBatch(userRoles)); |
| | | } |
| | | |
| | | /** |
| | | * 通过手机号查询用户 |