From b8c20abe5c8a1ebd5227d5948ba310606fde5dc7 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期一, 16 十二月 2024 09:01:09 +0800
Subject: [PATCH] 合作商权限

---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java |   41 ++++++++++++++++++++++++++++++++++++++---
 1 files changed, 38 insertions(+), 3 deletions(-)

diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java
index cf216ff..9619a82 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java
@@ -82,11 +82,30 @@
     @PostMapping(value = "/page")
     public R<Page<TParkingRecord>> page(@RequestBody ParkingRecordPageQuery query) {
         Long userid = tokenService.getLoginUser().getUserid();
+        SysUser sysUser = sysUserClient.getSysUser(tokenService.getLoginUser().getUserid()).getData();
+        Integer roleType = sysUser.getRoleType();
         List<Integer> siteIds = new ArrayList<>();
 
             List<GetSiteListDTO> data = siteClient.getSiteListByUserId(userid).getData();
             for (GetSiteListDTO datum : data) {
                 siteIds.add(datum.getId());
+            }
+            if (siteIds.isEmpty()){
+                siteIds.add(-1);
+            }else{
+                if (roleType == 2){
+                    List<Integer> integers = new ArrayList<>();
+                    for (Integer siteId : siteIds) {
+                        // 校验有没有这个站点的权限
+                        List<Boolean> t1= partnerClient.parkingRecordListMenu(sysUser.getObjectId(),siteId).getData();
+
+                        Boolean b = t1.get(1);
+                        if (b){
+                            integers.add(siteId);
+                        }
+                    }
+                    siteIds = integers;
+                }
             }
             if (siteIds.isEmpty()){
                 siteIds.add(-1);
@@ -97,6 +116,7 @@
             ids.add(tParkingLot.getId());
         }
 
+
         String s1 = "";
         String s2 = "";
         if (query.getTimePeriod()!=null){
@@ -104,6 +124,7 @@
              s2 = query.getTimePeriod().split(" - ")[1];
         }
         Page<TParkingRecord> page = parkingRecordService.lambdaQuery()
+                .in(TParkingRecord::getParkingLotId,ids)
                 .like(query.getLicensePlate() != null, TParkingRecord::getLicensePlate, query.getLicensePlate())
                 .eq(query.getStatus() != null, TParkingRecord::getStatus, query.getStatus())
                 .eq(query.getOutParkingType() != null, TParkingRecord::getOutParkingType, query.getOutParkingType())
@@ -112,8 +133,7 @@
                 .between(query.getTimePeriod()!=null,TParkingRecord::getOutParkingTime,s1,s2)
                 .orderByDesc(TParkingRecord::getCreateTime)
                 .page(Page.of(query.getPageCurr(), query.getPageSize()));
-        SysUser sysUser = sysUserClient.getSysUser(tokenService.getLoginUser().getUserid()).getData();
-        Integer roleType = sysUser.getRoleType();
+
         for (TParkingRecord record : page.getRecords()) {
             TParkingLot byId = parkingLotService.getById(record.getParkingLotId());
             record.setUid(record.getId().toString());
@@ -261,7 +281,22 @@
     public R<TParkLotRecordVO> data(@RequestBody ParkingRecordQueryDto parkingRecordQueryDto){
         //上方折线图
         TParkLotRecordVO tParkLotRecordVO = new TParkLotRecordVO();
-
+        // 查询当前登陆人按钮权限
+        SysUser sysUser = sysUserClient.getSysUser(tokenService.getLoginUser().getUserid()).getData();
+        Integer roleType = sysUser.getRoleType();
+        Long userId = tokenService.getLoginUser().getUserid();
+        //如果没传siteId,获取当前登陆人所有的siteIds
+        List<Integer> siteIds = new ArrayList<>();
+        if (userId != null){
+            List<GetSiteListDTO> data2 = siteClient.getSiteListByUserId(userId).getData();
+            for (GetSiteListDTO datum : data2) {
+                siteIds.add(datum.getId());
+            }
+        }
+        if (siteIds.isEmpty()){
+            siteIds.add(-1);
+        }
+        parkingRecordQueryDto.setSiteIds(siteIds);
         if (parkingRecordQueryDto.getDayType()==1) {
             List<Map<String, Object>> maps = parkingRecordService.parkingData(parkingRecordQueryDto);
 

--
Gitblit v1.7.1