From 26d4aacdf40f7283dc3dae2043a35162b2665864 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 13 十二月 2024 10:23:55 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 4 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java | 39 +++++++ ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java | 2 ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/PartnerClient.java | 6 + ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java | 7 + ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java | 78 +++++++++++++++ ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java | 22 +++ ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java | 8 + ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/ChargingOrderAndUploadRealTimeMonitoringDataDto.java | 5 ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/PartnerFallbackFactory.java | 17 +++ ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java | 4 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java | 2 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java | 4 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml | 6 + ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java | 63 ++++++++++-- 15 files changed, 242 insertions(+), 25 deletions(-) diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/PartnerFallbackFactory.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/PartnerFallbackFactory.java index d9cce50..5ce4fff 100644 --- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/PartnerFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/PartnerFallbackFactory.java @@ -65,6 +65,21 @@ public R<Boolean> getAccountMenu(Integer partnerId, Integer siteId) { return null; } - }; + + @Override + public R<List<Boolean>> managePageListMenu(Integer partnerId, Integer siteId) { + return null; + } + + @Override + public R<List<Boolean>> parkingRecordListMenu(Integer partnerId, Integer siteId) { + return null; + } + + @Override + public R<List<Boolean>> watchChargingOrder(Integer partnerId, Integer siteId) { + return null; + } + }; } } diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/PartnerClient.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/PartnerClient.java index 7d20adf..b4d49a2 100644 --- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/PartnerClient.java +++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/PartnerClient.java @@ -58,4 +58,10 @@ R<List<Boolean>> getSettlementListMenu(@PathVariable("partnerId")Integer partnerId, @PathVariable("siteId") Integer siteId); @PostMapping("/partner/getAccountMenu/{partnerId}/{siteId}") R<Boolean> getAccountMenu(@PathVariable("partnerId")Integer partnerId, @PathVariable("siteId") Integer siteId); + @PostMapping("/partner/managePageListMenu/{partnerId}/{siteId}") + R<List<Boolean>> managePageListMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId); + @PostMapping("/partner/parkingRecordListMenu/{partnerId}/{siteId}") + R<List<Boolean>> parkingRecordListMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId); + @PostMapping("/partner/watchChargingOrder/{partnerId}/{siteId}") + R<List<Boolean>> watchChargingOrder(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId); } diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java index 4e0d5ec..441ea7f 100644 --- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java +++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java @@ -128,5 +128,13 @@ @TableField(exist = false) private String parkName; + @ApiModelProperty(value = "查看按钮权限 ") + @TableField(exist = false) + + private Boolean authInfo = true; + @ApiModelProperty(value = "已出场按钮权限 ") + @TableField(exist = false) + + private Boolean authOut = true; } diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/ChargingOrderAndUploadRealTimeMonitoringDataDto.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/ChargingOrderAndUploadRealTimeMonitoringDataDto.java index 5937ecf..c85ee4c 100644 --- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/ChargingOrderAndUploadRealTimeMonitoringDataDto.java +++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/ChargingOrderAndUploadRealTimeMonitoringDataDto.java @@ -218,7 +218,10 @@ @ApiModelProperty(value = "时段数") private Integer count; - + @ApiModelProperty(value = "查看按钮权限 ") + private Boolean authInfo = true; + @ApiModelProperty(value = "删除按钮权限 ") + private Boolean authDelete = true; } diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java index 17e5517..b11f82f 100644 --- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java +++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java @@ -58,6 +58,10 @@ private Integer status; //状态(0=未知,1=等待中/已插枪,2=启动中,3=充电中,4=停止中,5=已结束)" private LocalDateTime startTime; //充电开始时间 private LocalDateTime endTime; //充电结束时间 + @ApiModelProperty(value = "查看按钮权限 ") + private Boolean authInfo = true; + @ApiModelProperty(value = "删除按钮权限 ") + private Boolean authDelete = true; } diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java index 344daa0..b1da047 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java @@ -72,7 +72,12 @@ private String feedback; @TableField(exist = false) private String uid; - + @ApiModelProperty(value = "查看按钮权限 ") + @TableField(exist = false) + private Boolean authInfo = true; + @TableField(exist = false) + @ApiModelProperty(value = "处理按钮权限 ") + private Boolean authHandle = true; @ApiModelProperty(value = "反馈人id") @TableField("feedback_user_id") private Integer feedbackUserId; diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java index d536659..edcd033 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/PartnerController.java @@ -294,4 +294,82 @@ .eq(TPartnerSite::getSiteId, siteId)); return partnerSite!=null?R.ok(true):R.ok(false); } + // 订单申诉按钮权限 + @PostMapping("/managePageListMenu/{partnerId}/{siteId}") + R<List<Boolean>> managePageListMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/order_appeal/view").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/order_appeal/handle").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 停车记录按钮权限 + @PostMapping("/parkingRecordListMenu/{partnerId}/{siteId}") + R<List<Boolean>> parkingRecordListMenu(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/parking_record/view").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/parking_record/exit_parking_lot").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } + // 充电监控记录按钮权限 + @PostMapping("/watchChargingOrder/{partnerId}/{siteId}") + R<List<Boolean>> watchChargingOrder(@PathVariable("partnerId")Integer partnerId,@PathVariable("siteId") Integer siteId){ + List<Boolean> booleans = new ArrayList<>(); + TSiteMenu one = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_pile_order/monitoring_record/info").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, one.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + TSiteMenu two = siteMenuService.getOne(new LambdaQueryWrapper<TSiteMenu>().eq(TSiteMenu::getPath, "/data/charging_pile_order/monitoring_record/del").eq(TSiteMenu::getStatus, 0)); + TPartnerSite partnerSite1 = partnerSiteService.getOne(new LambdaQueryWrapper<TPartnerSite>() + .eq(TPartnerSite::getPartnerId, partnerId) + .eq(TPartnerSite::getSiteMenuId, two.getMenuId()) + .eq(TPartnerSite::getSiteId, siteId)); + if (partnerSite!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + if (partnerSite1!=null){ + booleans.add(true); + }else{ + booleans.add(false); + } + return R.ok(booleans); + } } 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 b797113..601ca6b 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 @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.chargingPile.api.dto.GetSiteListDTO; +import com.ruoyi.chargingPile.api.feignClient.PartnerClient; import com.ruoyi.chargingPile.api.feignClient.SiteClient; import com.ruoyi.chargingPile.api.model.TParkingLot; import com.ruoyi.chargingPile.api.model.TParkingRecord; @@ -30,6 +31,8 @@ import com.ruoyi.order.api.query.TOrderInvoiceQuery; import com.ruoyi.order.api.vo.TCharingUserEquimentVO; import com.ruoyi.order.api.vo.TOrderInvoiceVO; +import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.system.api.feignClient.SysUserClient; import io.swagger.annotations.ApiOperation; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.BeanUtils; @@ -69,9 +72,11 @@ private SiteClient siteClient; @Resource private TokenService tokenService; + @Resource + private PartnerClient partnerClient; - - + @Resource + private SysUserClient sysUserClient; @RequiresPermissions(value = {"/parkingRecord"}, logical = Logical.OR) @ApiOperation(tags = {"后台-订单管理-停车记录"},value = "列表") @PostMapping(value = "/page") @@ -83,7 +88,10 @@ for (GetSiteListDTO datum : data) { siteIds.add(datum.getId()); } - List<TParkingLot> list = parkingLotService.lambdaQuery().in(!siteIds.isEmpty(), TParkingLot::getSiteId, siteIds).list(); + if (siteIds.isEmpty()){ + siteIds.add(-1); + } + List<TParkingLot> list = parkingLotService.lambdaQuery().in( TParkingLot::getSiteId, siteIds).list(); List<Integer> ids = new ArrayList<>(); for (TParkingLot tParkingLot : list) { ids.add(tParkingLot.getId()); @@ -104,12 +112,18 @@ .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()); if (byId!=null) { record.setParkName(byId.getName()); + if (roleType==2){ + List<Boolean> data1 = partnerClient.parkingRecordListMenu(sysUser.getObjectId(), byId.getSiteId()).getData(); + record.setAuthInfo(data1.get(0)); + record.setAuthInfo(data1.get(1)); + } } } return R.ok(page); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java index b71a9d6..f9031b0 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java @@ -12,10 +12,7 @@ import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.TAppUserCar; import com.ruoyi.chargingPile.api.dto.GetSiteListDTO; -import com.ruoyi.chargingPile.api.feignClient.ChargingGunClient; -import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient; -import com.ruoyi.chargingPile.api.feignClient.ParkingLotClient; -import com.ruoyi.chargingPile.api.feignClient.SiteClient; +import com.ruoyi.chargingPile.api.feignClient.*; import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.chargingPile.api.model.TChargingGun; import com.ruoyi.chargingPile.api.model.TChargingPile; @@ -57,6 +54,8 @@ import com.ruoyi.payment.api.feignClient.AliPaymentClient; import com.ruoyi.payment.api.feignClient.WxPaymentClient; import com.ruoyi.payment.api.vo.AliQueryOrder; +import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.system.api.feignClient.SysUserClient; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -332,9 +331,28 @@ @ApiOperation(value = "列表", tags = {"管理后台-支付订单-退款订单"}) public R<PageInfo<TChargingOrderRefund>> refundList(@RequestBody ChargingRefundDto chargingRefundDto) { R<PageInfo<TChargingOrderRefund>> refundList = chargingOrderService.getRefundList(chargingRefundDto); - for (TChargingOrderRefund record : refundList.getData().getRecords()) { - record.setUid(record.getId().toString()); + Long userId = tokenService.getLoginUser().getUserid(); + //如果没传siteId,获取当前登陆人所有的siteIds + List<Integer> siteIds = new ArrayList<>(); + if (userId != null){ + List<GetSiteListDTO> data = siteClient.getSiteListByUserId(userId).getData(); + for (GetSiteListDTO datum : data) { + siteIds.add(datum.getId()); + } + } + + if (siteIds.isEmpty()){ + siteIds.add(-1); } + List<TChargingOrderRefund> tChargingOrderRefunds = new ArrayList<>(); + for (TChargingOrderRefund record : refundList.getData().getRecords()) { + TChargingOrder byId = chargingOrderService.getById(record.getChargingOrderId()); + record.setUid(record.getId().toString()); + if (siteIds.contains(byId.getSiteId())){ + tChargingOrderRefunds.add(record); + } + } + refundList.getData().setRecords(tChargingOrderRefunds); return refundList; } @@ -721,7 +739,9 @@ } //进行统计groupBySiteId LocalDate sixBefore = PreviousSixMonths.get(); - + if (siteIds.isEmpty()){ + siteIds.add(-1); + } List<SixCircleDto> sixCircleDtos = chargingOrderService.circle(siteIds,sixBefore); for (SixCircleDto sixCircleDto : sixCircleDtos) { Site site = siteClient.getSiteByIds(Arrays.asList(sixCircleDto.getSiteId())).getData().get(0); @@ -800,7 +820,18 @@ public R<Map<String,Object>> total() { //count近6个月的数据 LocalDate sixBefore = PreviousSixMonths.get(); - Map<String,Object> map = chargingOrderService.countAll(sixBefore); + Long userId = tokenService.getLoginUser().getUserid(); + //获取当前登录的siteIds + List<Integer> siteIds = new ArrayList<>(); + List<GetSiteListDTO> data9 = siteClient.getSiteListByUserId(userId).getData(); + for (GetSiteListDTO datum : data9) { + siteIds.add(datum.getId()); + } + //进行统计groupBySiteId + if (siteIds.isEmpty()){ + siteIds.add(-1); + } + Map<String,Object> map = chargingOrderService.countAll(sixBefore,siteIds); BigDecimal data = parkingLotClient.getRecordAmount(sixBefore).getData(); if (map ==null){ map = new HashMap<String,Object>(); @@ -815,8 +846,11 @@ return R.ok(map); } - - + + @Resource + private PartnerClient partnerClient; + @Resource + private SysUserClient sysUserClient; @RequiresPermissions(value = {"/chargeOrderMonitoring"}, logical = Logical.OR) @ResponseBody @PostMapping(value = "/watch/chargingOrder") @@ -839,7 +873,14 @@ List<ChargingOrderAndUploadRealTimeMonitoringDataDto> dtos = new ArrayList<>(); Map<String,ChargingOrderVO> map = new HashMap<>(); + SysUser sysUser = sysUserClient.getSysUser(tokenService.getLoginUser().getUserid()).getData(); + Integer roleType = sysUser.getRoleType(); for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data1.getRecords()) { + if (roleType==2){ + List<Boolean> data = partnerClient.watchChargingOrder(sysUser.getObjectId(), uploadRealTimeMonitoringData.getSiteId()).getData(); + uploadRealTimeMonitoringData.setAuthInfo(data.get(0)); + uploadRealTimeMonitoringData.setAuthDelete(data.get(1)); + } ChargingOrderAndUploadRealTimeMonitoringDataDto dataDto = new ChargingOrderAndUploadRealTimeMonitoringDataDto(); ChargingOrderQuery dto = new ChargingOrderQuery(); dto.setCode(uploadRealTimeMonitoringData.getTransaction_serial_number()); @@ -1179,7 +1220,7 @@ @PostMapping(value = "/charging/users") @ApiOperation(value = "除电站流量外", tags = {"管理后台-数据分析-充电用户分析"}) public R<TCharingUserMapVO> users(@RequestBody ChargingStatisticsQueryDto statisticsQueryDto){ - Long userId = tokenService.getLoginUserApplet().getUserId(); + Long userId = tokenService.getLoginUser().getUserid(); List<Integer> siteIds = new ArrayList<>(); if (statisticsQueryDto.getSiteId()==null){ diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java index fab72cd..75fedb2 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java @@ -6,7 +6,9 @@ import com.ruoyi.account.api.feignClient.AppUserClient; import com.ruoyi.account.api.model.TAppUser; import com.ruoyi.chargingPile.api.domain.SiteMenu; +import com.ruoyi.chargingPile.api.dto.GetSiteListDTO; import com.ruoyi.chargingPile.api.feignClient.PartnerClient; +import com.ruoyi.chargingPile.api.feignClient.SiteClient; import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.domain.BasePojo; @@ -17,6 +19,7 @@ import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.order.api.model.*; import com.ruoyi.order.api.query.TOrderAppealQuery; +import com.ruoyi.order.api.vo.ChargingOrderVO; import com.ruoyi.order.api.vo.TOrderAppealVO; import com.ruoyi.order.dto.ManageFeedbackDto; import com.ruoyi.order.dto.ManageOrderAppealQuery; @@ -78,13 +81,16 @@ @Resource private SysUserRoleClient sysUserRoleClient; - + @Resource + private PartnerClient partnerClient; @Autowired public TOrderAppealController(TOrderAppealService orderAppealService, TokenService tokenService) { this.orderAppealService = orderAppealService; this.tokenService = tokenService; } + @Resource + private SiteClient siteClient; @RequiresPermissions(value = {"/appealOrder"}, logical = Logical.OR) @@ -98,10 +104,39 @@ .in(TOrderAppeal::getOrderType, 1, 2) .orderByDesc(TOrderAppeal::getCreateTime) .page(Page.of(manageOrderAppealQuery.getPageCurr(), manageOrderAppealQuery.getPageSize())); - + SysUser sysUser = sysUserClient.getSysUser(tokenService.getLoginUser().getUserid()).getData(); + Integer roleType = sysUser.getRoleType(); + List<TOrderAppeal> res = new ArrayList<>(); for (TOrderAppeal record : page.getRecords()) { + if (record.getOrderType()!=1){ + res.add(record); + } + if (roleType == 2 && record.getOrderType()==1){ + List<Integer> siteIds = new ArrayList<>(); + if (sysUser.getUserId() != null){ + List<GetSiteListDTO> data = siteClient.getSiteListByUserId(sysUser.getUserId()).getData(); + for (GetSiteListDTO datum : data) { + siteIds.add(datum.getId()); + } + } + if (siteIds.isEmpty()){ + siteIds.add(-1); + } + TChargingOrder byId = chargingOrderService.getById(record.getOrderId()); + if (byId!=null&&siteIds.contains(byId.getSiteId())){ + res.add(record); + // 校验有没有这个站点的权限 + List<Boolean> data = partnerClient.managePageListMenu(sysUser.getObjectId(), byId.getSiteId()).getData(); + record.setAuthInfo(data.get(0)); + record.setAuthHandle(data.get(1)); + } + + }else{ + res.add(record); + } record.setUid(record.getId().toString()); } + return R.ok(page); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java index 08be9f2..5c7d795 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/mapper/TChargingOrderMapper.java @@ -65,7 +65,7 @@ List<SixCircleDto> circle(@Param("siteIds")List<Integer> siteIds,@Param("sixBefore")LocalDate sixBefore); - Map<String, Object> countAll(@Param("sixBefore")LocalDate sixBefore); + Map<String, Object> countAll(@Param("sixBefore")LocalDate sixBefore,@Param("siteIds")List<Integer> siteIds); List<Map<String, Object>> getSumByType(@Param("chargingOrderIds")List<Long> chargingOrderIds); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java index c8e78d3..3bb4884 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/TChargingOrderService.java @@ -140,7 +140,7 @@ List<SixCircleDto> circle(List<Integer> siteIds,LocalDate sixBefore); - Map<String, Object> countAll(LocalDate sixBefore); + Map<String, Object> countAll(LocalDate sixBefore,List<Integer> siteIds); List<Map<String, Object>> getSumByType(List<Long> chargingOrderIds); diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java index 5ed82b6..da641ce 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java @@ -1370,8 +1370,8 @@ } @Override - public Map<String, Object> countAll(LocalDate sixBefore) { - return this.baseMapper.countAll(sixBefore); + public Map<String, Object> countAll(LocalDate sixBefore,List<Integer> siteIds) { + return this.baseMapper.countAll(sixBefore,siteIds); } @Override diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java index 307ab57..5284e39 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java @@ -293,7 +293,9 @@ }else{ siteIds.add(pageList.getSiteId()); } - + if (siteIds.isEmpty()){ + siteIds.add(-1); + } List<GetOrderEvaluatePageListDTO> list = this.baseMapper.getPageList(pageList, evaluationTagIds, siteIds, pageInfo); for (GetOrderEvaluatePageListDTO dto : list) { TAppUser appUser = appUserClient.getUserById(dto.getAppUserId()).getData(); diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml index 2ec5036..61a8670 100644 --- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml +++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml @@ -386,6 +386,12 @@ select sum(electrovalence) as electrovalence,sum(service_charge) as service_charge,ROUND(sum(electrovalence+service_charge) * 0.006, 2) as commission_amount,sum(sharing_amount) as sharing_amount from t_charging_order where create_time >= #{sixBefore} and del_flag = 0 and recharge_payment_status = 2 + <if test="siteIds != null and siteIds.size() > 0"> + AND site_id IN + <foreach collection="siteIds" item="siteId" open="(" separator="," close=")"> + #{siteId} + </foreach> + </if> </select> <select id="getSumByType" resultType="java.util.Map"> SELECT -- Gitblit v1.7.1