perf: 后台获取工单列表时增加数据权限(等级2则根据区域获取对应的数据)
This commit is contained in:
parent
1a8eba26a6
commit
9c278649e1
@ -22,16 +22,11 @@ import com.aircraft.modules.order.domain.vo.*;
|
||||
import com.aircraft.modules.order.service.*;
|
||||
import com.aircraft.modules.route.domain.CpRoute;
|
||||
import com.aircraft.modules.route.service.CpRouteService;
|
||||
import com.aircraft.modules.system.domain.AttachmentMaterial;
|
||||
import com.aircraft.modules.system.domain.CnCustomer;
|
||||
import com.aircraft.modules.system.domain.EmEmployees;
|
||||
import com.aircraft.modules.system.domain.EmScenic;
|
||||
import com.aircraft.modules.system.domain.*;
|
||||
import com.aircraft.modules.system.domain.dto.LocalAttachmentMaterialDTO;
|
||||
import com.aircraft.modules.system.domain.enums.AttachmentMaterialBusinessTypeEnum;
|
||||
import com.aircraft.modules.system.service.CnCustomerService;
|
||||
import com.aircraft.modules.system.service.EmEmployeesService;
|
||||
import com.aircraft.modules.system.service.EmScenicService;
|
||||
import com.aircraft.modules.system.service.IAttachmentMaterialService;
|
||||
import com.aircraft.modules.system.mapper.UserRoleMapper;
|
||||
import com.aircraft.modules.system.service.*;
|
||||
import com.aircraft.utils.RedisUtils;
|
||||
import com.aircraft.utils.SecurityUtils;
|
||||
import com.aircraft.utils.enums.UserTypeEnum;
|
||||
@ -84,6 +79,12 @@ public class OrderBiz {
|
||||
private CnCustomerService cnCustomerService;
|
||||
@Resource
|
||||
private AircraftDeviceService aircraftDeviceService;
|
||||
@Resource
|
||||
private UserService userService;
|
||||
@Resource
|
||||
private RoleService roleService;
|
||||
@Resource
|
||||
private UserRoleMapper userRoleMapper;
|
||||
|
||||
public IPage<OrderMainPageQueryVO> queryAll(OrderMainPageQueryDTO pageQueryDTO, Page page) {
|
||||
|
||||
@ -200,7 +201,23 @@ public class OrderBiz {
|
||||
* @return {@link List<OrderMain>}
|
||||
*/
|
||||
private List<OrderMain> adminAllOrderQueryList(OrderMainPageQueryDTO pageQueryDTO) {
|
||||
// TODO 需要考虑用户角色获取对应的数据(财务、区域、管理员角色)
|
||||
// 用户角色获取对应的数据(财务、区域、管理员角色)
|
||||
// 获取当前角色
|
||||
Long currentUserId = SecurityUtils.getCurrentUserId();
|
||||
// 根据用户ID获取用户角色
|
||||
User user = userService.getById(currentUserId);
|
||||
Long userRoleId =userRoleMapper.obtainRoleByUserId(currentUserId);
|
||||
// 获取对应的角色等级
|
||||
Role role = roleService.getById(userRoleId);
|
||||
if (ObjectUtil.isNotNull(role)) {
|
||||
Integer level = role.getLevel();
|
||||
if (level != null && level == 2) {
|
||||
if (ObjectUtil.isNotNull(user.getAreaId())) {
|
||||
pageQueryDTO.setAreaId(user.getAreaId());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 处理时间格式
|
||||
if (ObjectUtil.isNotNull(pageQueryDTO.getQueryStartTime())) {
|
||||
Date start = DateUtil.beginOfDay(pageQueryDTO.getQueryStartTime());
|
||||
|
@ -67,5 +67,11 @@ public class OrderMainPageQueryDTO {
|
||||
@ApiModelProperty(value = "结算状态(点击生成结算订单的订单查询列表时请,默认携带参数,传值:0(未结算))")
|
||||
private Integer settlementStatus;
|
||||
|
||||
/**
|
||||
* 区域ID
|
||||
*/
|
||||
@ApiModelProperty(value = "区域ID")
|
||||
private Long areaId;
|
||||
|
||||
|
||||
}
|
||||
|
@ -36,12 +36,13 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
|
||||
LambdaQueryWrapper<OrderMain> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getAttractionId()), OrderMain::getAttractionId, pageQueryDTO.getAttractionId());
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getCustomerId()), OrderMain::getCustomerId, pageQueryDTO.getCustomerId());
|
||||
queryWrapper.eq(StrUtil.isNotBlank(pageQueryDTO.getPhone()), OrderMain::getPhone, pageQueryDTO.getPhone());
|
||||
queryWrapper.like(StrUtil.isNotBlank(pageQueryDTO.getPhone()), OrderMain::getPhone, pageQueryDTO.getPhone());
|
||||
// 添加时间查询条件
|
||||
queryWrapper.ge(ObjectUtil.isNotNull(pageQueryDTO.getQueryStartTime()), OrderMain::getOrderCreateTime, pageQueryDTO.getQueryStartTime());
|
||||
queryWrapper.le(ObjectUtil.isNotNull(pageQueryDTO.getQueryEndTime()), OrderMain::getOrderCreateTime, pageQueryDTO.getQueryEndTime());
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getMainOrderStatus()), OrderMain::getMainOrderStatus, pageQueryDTO.getMainOrderStatus());
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getSettlementStatus()), OrderMain::getSettlementStatus, pageQueryDTO.getSettlementStatus());
|
||||
queryWrapper.eq(ObjectUtil.isNotNull(pageQueryDTO.getAreaId()), OrderMain::getAreaId, pageQueryDTO.getAreaId());
|
||||
queryWrapper.orderByDesc(OrderMain::getId);
|
||||
return list(queryWrapper);
|
||||
}
|
||||
|
@ -31,4 +31,12 @@ public interface UserRoleMapper {
|
||||
void deleteByUserId(@Param("userId") Long userId);
|
||||
|
||||
void deleteByUserIds(@Param("userIds") Set<Long> userIds);
|
||||
|
||||
/**
|
||||
* 获取用户角色ID
|
||||
*
|
||||
* @param currentUserId 当前用户ID
|
||||
* @return 角色ID
|
||||
*/
|
||||
Long obtainRoleByUserId(Long currentUserId);
|
||||
}
|
||||
|
@ -23,4 +23,10 @@
|
||||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<select id="obtainRoleByUserId" resultType="java.lang.Long">
|
||||
select role_id
|
||||
from sys_users_roles
|
||||
where user_id = #{userId}
|
||||
</select>
|
||||
</mapper>
|
Loading…
Reference in New Issue
Block a user