From 3b4b297f0da7d5943a50f6bdaea502774ccdc04a Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 15 四月 2025 10:02:42 +0800 Subject: [PATCH] 监管平台1 --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java | 58 +++++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 43 insertions(+), 15 deletions(-) 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 faa6696..5029cfd 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 @@ -36,6 +36,7 @@ import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient; import com.ruoyi.integration.api.model.ChargingOrderAndUploadRealTimeMonitoringDataDto; import com.ruoyi.integration.api.model.UploadRealTimeMonitoringPageData; +import com.ruoyi.order.api.dto.ChargingStatisticeDTO; import com.ruoyi.order.api.model.*; import com.ruoyi.order.api.query.ChargingOrderQuery; import com.ruoyi.common.core.dto.MongoChargingOrderQuery; @@ -54,6 +55,7 @@ import com.ruoyi.order.service.*; import com.ruoyi.order.util.PreviousSixMonths; import com.ruoyi.order.vo.EndOfChargePageInfo; +import com.ruoyi.order.vo.WatchChargingOrderVo; import com.ruoyi.other.api.feignClient.RoleSiteClient; import com.ruoyi.other.api.feignClient.UserSiteClient; import com.ruoyi.payment.api.feignClient.AliPaymentClient; @@ -63,14 +65,11 @@ import com.ruoyi.system.api.feignClient.SysUserClient; import com.ruoyi.system.api.feignClient.SysUserRoleClient; import com.ruoyi.system.api.model.SysUserRoleVo; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.*; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; -import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -159,10 +158,25 @@ private RoleSiteClient roleSiteClient; @Resource private SysUserRoleClient sysUserRoleClient; - - - - + + + + /** + * 远程调用 监管平台查询前一天用能统计 + * @return + */ + @ResponseBody + @PostMapping(value = "/getChargingStatistics") + public R<List<TChargingOrder>> getChargingStatistics(@RequestBody ChargingStatisticeDTO dto) { + List<Long> collect = chargingOrderAccountingStrategyService.lambdaQuery().between(TChargingOrderAccountingStrategy::getCreateTime, dto.getStartTime(), dto.getEndTime()) + .list().stream().map(TChargingOrderAccountingStrategy::getChargingOrderId).collect(Collectors.toList()); + if (!collect.isEmpty()){ + List<TChargingOrder> list = chargingOrderService.lambdaQuery() + .in(TChargingOrder::getId,collect).list(); + return R.ok(list); + } + return R.ok(new ArrayList<TChargingOrder>()); + } /** * 远程调用 增加管理后台赠送会员记录 @@ -1175,23 +1189,37 @@ PageInfo<TChargingOrder> orderPageInfo = chargingOrderService.page(pageInfo, queryWrapper.orderByDesc(TChargingOrder::getCreateTime)); List<Site> siteList = siteClient.getSiteAll().getData(); + List<WatchChargingOrderVo> list = new ArrayList<>(); for (TChargingOrder record : orderPageInfo.getRecords()) { - record.setIdStr(record.getId().toString()); + WatchChargingOrderVo vo = new WatchChargingOrderVo(); + BeanUtils.copyProperties(record, vo); + vo.setIdStr(record.getId().toString()); Site site = siteList.stream().filter(s->s.getId().equals(record.getSiteId())).findFirst().get(); - record.setSiteName(site.getName()); + vo.setSiteName(site.getName()); TChargingPile chargingPile = chargingPileClient.getChargingPileById(record.getChargingPileId()).getData(); - record.setTerminalName(chargingPile.getName()); + vo.setTerminalName(chargingPile.getName()); TChargingGun chargingGun = chargingGunClient.getChargingGunById(record.getChargingGunId()).getData(); - record.setTerminalCode(chargingGun.getName()); + vo.setTerminalCode(chargingGun.getName()); if(null != record.getStartTime() && null != record.getEndTime()){ long time = record.getEndTime().toEpochSecond(ZoneOffset.UTC) - record.getStartTime().toEpochSecond(ZoneOffset.UTC); - record.setChargingTime(time + ""); + vo.setChargingTime(time + ""); } long count = chargingOrderAccountingStrategyService.count(new LambdaQueryWrapper<TChargingOrderAccountingStrategy>().eq(TChargingOrderAccountingStrategy::getChargingOrderId, record.getId())); - record.setTimeFrame(count); + vo.setTimeFrame(count); + + vo.setAuthInfo(roleType == 1 ? true : partnerClient.authMenu(objectId, record.getSiteId(), SiteMenu.CHARGING_PILE_ORDER_MONITORING_RECORD_INFO.getValue())); + vo.setAuthDelete(roleType == 1 ? true : partnerClient.authMenu(objectId, record.getSiteId(), SiteMenu.CHARGING_PILE_ORDER_MONITORING_RECORD_DEL.getValue())); + list.add(vo); } - return R.ok(orderPageInfo); + PageInfo<WatchChargingOrderVo> pageInfos = new PageInfo<>(query.getPageCurr(), query.getPageSize()); + pageInfos.setRecords(list); + pageInfos.setCurrent(pageInfo.getCurrent()); + pageInfos.setPages(pageInfo.getPages()); + pageInfos.setSize(pageInfo.getSize()); + pageInfos.setStartIndex(pageInfo.getStartIndex()); + pageInfos.setTotal(pageInfo.getTotal()); + return R.ok(pageInfos); } -- Gitblit v1.7.1