diff --git a/pz-admin/src/main/java/com/pz/web/controller/system/SysLoginController.java b/pz-admin/src/main/java/com/pz/web/controller/system/SysLoginController.java index 3fcbe8d..8d343bf 100644 --- a/pz-admin/src/main/java/com/pz/web/controller/system/SysLoginController.java +++ b/pz-admin/src/main/java/com/pz/web/controller/system/SysLoginController.java @@ -12,6 +12,7 @@ import com.pz.common.core.domain.model.SmsLoginBody; import com.pz.common.helper.LoginHelper; import com.pz.system.domain.vo.RouterVo; import com.pz.system.service.ISysMenuService; +import com.pz.system.service.ISysRoleService; import com.pz.system.service.ISysUserService; import com.pz.system.service.SysLoginService; import lombok.RequiredArgsConstructor; @@ -39,6 +40,7 @@ public class SysLoginController { private final SysLoginService loginService; private final ISysMenuService menuService; private final ISysUserService userService; + private final ISysRoleService iSysRoleService; /** * 登录方法 @@ -108,6 +110,7 @@ public class SysLoginController { public R<Map<String, Object>> getInfo() { LoginUser loginUser = LoginHelper.getLoginUser(); SysUser user = userService.selectUserById(loginUser.getUserId()); + user.setRoleId(iSysRoleService.getRoleByUserId(user.getUserId()).getRoleId()); Map<String, Object> ajax = new HashMap<>(); ajax.put("user", user); ajax.put("roles", loginUser.getRolePermission()); diff --git a/pz-admin/src/main/resources/application-dev.yml b/pz-admin/src/main/resources/application-dev.yml index 03a06e5..89e81a7 100644 --- a/pz-admin/src/main/resources/application-dev.yml +++ b/pz-admin/src/main/resources/application-dev.yml @@ -106,7 +106,7 @@ spring: # 端口,默认为6379 port: 6319 # 数据库索引 - database: 0 + database: 3 # 密码(如没有密码请注释掉) password: yongqi@2022 # 连接超时时间 diff --git a/pz-system/src/main/java/com/pz/system/mapper/SysRoleMapper.java b/pz-system/src/main/java/com/pz/system/mapper/SysRoleMapper.java index e965bb5..4b9f8b4 100644 --- a/pz-system/src/main/java/com/pz/system/mapper/SysRoleMapper.java +++ b/pz-system/src/main/java/com/pz/system/mapper/SysRoleMapper.java @@ -42,6 +42,8 @@ public interface SysRoleMapper extends BaseMapperPlus<SysRoleMapper, SysRole, Sy */ List<SysRole> selectRolePermissionByUserId(Long userId); + SysRole getRoleByUserId(@Param("userId")Long userId); + /** * 根据用户ID获取角色选择框列表 diff --git a/pz-system/src/main/java/com/pz/system/mapper/TotalOrderMapper.java b/pz-system/src/main/java/com/pz/system/mapper/TotalOrderMapper.java index 7878c6b..14e857f 100644 --- a/pz-system/src/main/java/com/pz/system/mapper/TotalOrderMapper.java +++ b/pz-system/src/main/java/com/pz/system/mapper/TotalOrderMapper.java @@ -73,7 +73,7 @@ public interface TotalOrderMapper extends BaseMapperPlus<TotalOrderMapper, Total * @param time * @return */ - List<OrderColumnarVo> findOrderColumnarVoList(@Param("time") String time,@Param("emIds")List<Integer> emIdS); + List<OrderColumnarVo> findOrderColumnarVoList(@Param("time") String time,@Param("emIds")List<Integer> emIds); - List<OrderColumnarVo> findStoreOrderVoList(@Param("time")String time,@Param("emIds")List<Integer> emIdS); + OrderColumnarVo findStoreOrderVoList(@Param("time")String time,@Param("emIds")List<Integer> emIdS); } diff --git a/pz-system/src/main/java/com/pz/system/service/ISysRoleService.java b/pz-system/src/main/java/com/pz/system/service/ISysRoleService.java index 43618ca..df8aa53 100644 --- a/pz-system/src/main/java/com/pz/system/service/ISysRoleService.java +++ b/pz-system/src/main/java/com/pz/system/service/ISysRoleService.java @@ -34,6 +34,8 @@ public interface ISysRoleService { */ List<SysRole> selectRolesByUserId(Long userId); + SysRole getRoleByUserId(Long userId); + /** * 根据用户ID查询角色权限 * diff --git a/pz-system/src/main/java/com/pz/system/service/SysLoginService.java b/pz-system/src/main/java/com/pz/system/service/SysLoginService.java index e42f710..c669b67 100644 --- a/pz-system/src/main/java/com/pz/system/service/SysLoginService.java +++ b/pz-system/src/main/java/com/pz/system/service/SysLoginService.java @@ -13,6 +13,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.pz.common.constant.CacheConstants; import com.pz.common.constant.Constants; import com.pz.common.core.domain.dto.RoleDTO; +import com.pz.common.core.domain.entity.SysRole; import com.pz.common.core.domain.entity.SysUser; import com.pz.common.core.domain.event.LogininforEvent; import com.pz.common.core.domain.model.LoginUser; @@ -90,19 +91,18 @@ public class SysLoginService { // 框架登录不限制从什么表查询 只要最终构建出 LoginUser 即可 SysUser user = loadUserByUsername(username); checkLogin(LoginType.PASSWORD, username, () -> !BCrypt.checkpw(password, user.getPassword())); - - Optional.ofNullable(iSysRoleService.selectRolesByUserId(user.getUserId())).ifPresent(sysRoles -> { - if (sysRoles.get(0).getRoleId().equals(3)) { + SysRole role = iSysRoleService.getRoleByUserId(user.getUserId()); + Optional.ofNullable(role).ifPresent(sysRoles -> { + user.setRoleId(role.getRoleId()); + if (role.getRoleId().equals(3)) { Optional.ofNullable(companyMapper.selectOne(Wrappers.<Company>lambdaQuery().eq(Company::getUid, user.getUserId()).eq(Company::getStatus, 1))) .orElseThrow(() -> new ServiceException("审核暂未通过,请等待!")); - } }); // 此处可根据登录用户的数据不同 自行创建 loginUser 属性不够用继承扩展就行了 LoginUser loginUser = buildLoginUser(user); // 生成token LoginHelper.loginByDevice(loginUser, DeviceType.PC); - recordLogininfor(username, Constants.LOGIN_SUCCESS, MessageUtils.message("user.login.success")); recordLoginInfo(user.getUserId(), username); return StpUtil.getTokenValue(); @@ -361,6 +361,7 @@ public class SysLoginService { loginUser.setMenuPermission(permissionService.getMenuPermission(user)); loginUser.setRolePermission(permissionService.getRolePermission(user)); loginUser.setDeptName(ObjectUtil.isNull(user.getDept()) ? "" : user.getDept().getDeptName()); + loginUser.setRoleId(user.getRoleId()); List<RoleDTO> roles = BeanUtil.copyToList(user.getRoles(), RoleDTO.class); loginUser.setRoles(roles); return loginUser; diff --git a/pz-system/src/main/java/com/pz/system/service/impl/SysRoleServiceImpl.java b/pz-system/src/main/java/com/pz/system/service/impl/SysRoleServiceImpl.java index bef8a36..c437fd5 100644 --- a/pz-system/src/main/java/com/pz/system/service/impl/SysRoleServiceImpl.java +++ b/pz-system/src/main/java/com/pz/system/service/impl/SysRoleServiceImpl.java @@ -98,6 +98,11 @@ public class SysRoleServiceImpl implements ISysRoleService { return roles; } + @Override + public SysRole getRoleByUserId(Long userId) { + return baseMapper.getRoleByUserId(userId); + } + /** * 根据用户ID查询权限 * diff --git a/pz-system/src/main/java/com/pz/system/service/impl/TotalOrderServiceImpl.java b/pz-system/src/main/java/com/pz/system/service/impl/TotalOrderServiceImpl.java index ec9eddd..72e59af 100644 --- a/pz-system/src/main/java/com/pz/system/service/impl/TotalOrderServiceImpl.java +++ b/pz-system/src/main/java/com/pz/system/service/impl/TotalOrderServiceImpl.java @@ -1248,12 +1248,14 @@ public class TotalOrderServiceImpl implements ITotalOrderService { //商户 if (roleId == 3L) { //查找该商户 - Optional.ofNullable(companyMapper.selectOne(Wrappers.<Company>lambdaQuery().eq(Company::getUid, userId).eq(Company::getStatus, 2))) + Optional.ofNullable(companyMapper.selectOne(Wrappers.<Company>lambdaQuery().eq(Company::getUid, userId).eq(Company::getStatus, 1))) .ifPresent(company -> { //获取该商户下所有陪诊员 List<Employees> employees = employeesMapper.selectList(Wrappers.<Employees>lambdaQuery().eq(Employees::getCompanyId, company.getId())); if (CollectionUtils.isNotEmpty(employees)) { bo.setEmIds(employees.stream().map(Employees::getId).collect(Collectors.toList())); + } else { + bo.setEmIds(Arrays.asList(999999)); } }); } @@ -1277,12 +1279,15 @@ public class TotalOrderServiceImpl implements ITotalOrderService { for (String time : recentDates) { List<OrderColumnarVo> orderColumnarVoList = orderMap.get(time); if (orderColumnarVoList == null) { - orderColumnarVoList = baseMapper.findOrderColumnarVoList(time,bo.getEmIds()); + orderColumnarVoList = baseMapper.findOrderColumnarVoList(time, bo.getEmIds()); + OrderColumnarVo orderColumnarVo = baseMapper.findStoreOrderVoList(time, bo.getEmIds()); + orderColumnarVoList.add(orderColumnarVo); orderMap.put(time, orderColumnarVoList); } OrderLineVo orderLineVo = new OrderLineVo(); orderLineVo.setKey(time); orderLineVo.setList(orderColumnarVoList); + list.add(orderLineVo); } diff --git a/pz-system/src/main/resources/mapper/system/SysRoleMapper.xml b/pz-system/src/main/resources/mapper/system/SysRoleMapper.xml index 09e5328..1c5ef8a 100644 --- a/pz-system/src/main/resources/mapper/system/SysRoleMapper.xml +++ b/pz-system/src/main/resources/mapper/system/SysRoleMapper.xml @@ -66,5 +66,11 @@ <include refid="selectRoleVo"/> WHERE r.del_flag = '0' and u.user_name = #{userName} </select> - + <select id="getRoleByUserId" resultType="com.pz.common.core.domain.entity.SysRole" + parameterType="java.lang.Long"> + select r.* + from sys_role r + left join sys_user_role sur on sur.role_id = r.role_id + where sur.user_id = #{userId} + </select> </mapper> diff --git a/pz-system/src/main/resources/mapper/system/TotalOrderMapper.xml b/pz-system/src/main/resources/mapper/system/TotalOrderMapper.xml index b62e98b..2d189fd 100644 --- a/pz-system/src/main/resources/mapper/system/TotalOrderMapper.xml +++ b/pz-system/src/main/resources/mapper/system/TotalOrderMapper.xml @@ -134,7 +134,7 @@ AND t.`status` = 2 AND DATE (t.create_time) = DATE (#{time}) <if test="emIds != null and emIds.size() > 0"> - AND t.em_id IN(emIds) + AND t.em_id IN(#{emIds}) </if> GROUP BY b.id; </select> @@ -143,7 +143,7 @@ WHERE business_id = 0 AND `status` = 2 AND DATE (create_time) = DATE (#{time}) <if test="emIds != null and emIds.size() > 0"> - AND em_id IN(emIds) + AND em_id IN(#{emIds}) </if> </select> <select id="selectPlatformCom" resultType="com.pz.system.domain.vo.DataOrderVo">