From 9c278649e1a1a2dfe7d1ac021850ea2924030079 Mon Sep 17 00:00:00 2001 From: chenxiky <2868613334@qq.com> Date: Sun, 27 Jul 2025 14:44:37 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E5=90=8E=E5=8F=B0=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=88=97=E8=A1=A8=E6=97=B6=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=9D=83=E9=99=90=EF=BC=88=E7=AD=89=E7=BA=A7?= =?UTF-8?q?2=E5=88=99=E6=A0=B9=E6=8D=AE=E5=8C=BA=E5=9F=9F=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E5=AF=B9=E5=BA=94=E7=9A=84=E6=95=B0=E6=8D=AE=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../aircraft/modules/order/biz/OrderBiz.java | 35 ++++++++++++++----- .../domain/dto/OrderMainPageQueryDTO.java | 6 ++++ .../service/impl/OrderMainServiceImpl.java | 3 +- .../modules/system/mapper/UserRoleMapper.java | 8 +++++ .../mapper/system/UserRoleMapper.xml | 6 ++++ 5 files changed, 48 insertions(+), 10 deletions(-) diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/biz/OrderBiz.java b/aircraft-system/src/main/java/com/aircraft/modules/order/biz/OrderBiz.java index d0677fd..44d23ec 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/biz/OrderBiz.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/biz/OrderBiz.java @@ -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 queryAll(OrderMainPageQueryDTO pageQueryDTO, Page page) { @@ -200,7 +201,23 @@ public class OrderBiz { * @return {@link List} */ private List 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()); diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/dto/OrderMainPageQueryDTO.java b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/dto/OrderMainPageQueryDTO.java index d181a68..97aaed0 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/domain/dto/OrderMainPageQueryDTO.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/domain/dto/OrderMainPageQueryDTO.java @@ -67,5 +67,11 @@ public class OrderMainPageQueryDTO { @ApiModelProperty(value = "结算状态(点击生成结算订单的订单查询列表时请,默认携带参数,传值:0(未结算))") private Integer settlementStatus; + /** + * 区域ID + */ + @ApiModelProperty(value = "区域ID") + private Long areaId; + } diff --git a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java index 6309c54..e389e6b 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/order/service/impl/OrderMainServiceImpl.java @@ -36,12 +36,13 @@ public class OrderMainServiceImpl extends ServiceImpl 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); } diff --git a/aircraft-system/src/main/java/com/aircraft/modules/system/mapper/UserRoleMapper.java b/aircraft-system/src/main/java/com/aircraft/modules/system/mapper/UserRoleMapper.java index 5f52f56..ce3e93e 100644 --- a/aircraft-system/src/main/java/com/aircraft/modules/system/mapper/UserRoleMapper.java +++ b/aircraft-system/src/main/java/com/aircraft/modules/system/mapper/UserRoleMapper.java @@ -31,4 +31,12 @@ public interface UserRoleMapper { void deleteByUserId(@Param("userId") Long userId); void deleteByUserIds(@Param("userIds") Set userIds); + + /** + * 获取用户角色ID + * + * @param currentUserId 当前用户ID + * @return 角色ID + */ + Long obtainRoleByUserId(Long currentUserId); } diff --git a/aircraft-system/src/main/resources/mapper/system/UserRoleMapper.xml b/aircraft-system/src/main/resources/mapper/system/UserRoleMapper.xml index 1bc109c..acf4bd4 100644 --- a/aircraft-system/src/main/resources/mapper/system/UserRoleMapper.xml +++ b/aircraft-system/src/main/resources/mapper/system/UserRoleMapper.xml @@ -23,4 +23,10 @@ #{id} + + \ No newline at end of file