From 8c4bbe846095733960c17905746bc40882a50f88 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期四, 12 十二月 2024 16:40:16 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java | 93 +++++++++++++++++++++++++++++++++------------- 1 files changed, 67 insertions(+), 26 deletions(-) diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java index 28352ad..7ec2d8e 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java @@ -11,7 +11,9 @@ import com.ruoyi.chargingPile.api.model.Site; import com.ruoyi.chargingPile.api.model.TChargingGun; import com.ruoyi.chargingPile.api.model.TChargingPile; +import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.common.security.service.TokenService; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient; import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData; @@ -28,6 +30,9 @@ import com.ruoyi.order.mapper.TChargingOrderMapper; import com.ruoyi.order.service.TChargingBillService; import com.ruoyi.order.service.TChargingOrderRefundService; +import com.ruoyi.system.api.domain.SysUser; +import com.ruoyi.system.api.feignClient.SysUserClient; +import com.ruoyi.system.api.model.SysUserRoleVo; import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ; import org.omg.CORBA.PRIVATE_MEMBER; import org.springframework.stereotype.Service; @@ -40,9 +45,7 @@ import java.time.LocalDateTime; import java.time.LocalTime; import java.time.temporal.TemporalAdjusters; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; /** @@ -55,7 +58,8 @@ */ @Service public class TChargingBillServiceImpl extends ServiceImpl<TChargingBillMapper, TChargingBill> implements TChargingBillService { - + @Resource + private SysUserClient sysUserClient; @Resource private TChargingOrderMapper chargingOrderList; @Resource @@ -72,6 +76,10 @@ private AppUserCarClient appUserCarClient; @Resource private TChargingOrderRefundService chargingOrderRefundService; + @Resource + private TokenService tokenService; + + @Override public ChargingBillVO chargingBillList1(ChargingListQuery dto) { if (dto.getState()!=null){ @@ -90,25 +98,35 @@ startTime1 = split[0]; startTime2 = split[1]; } - Long userId = SecurityUtils.getUserId(); - //如果没传siteId,获取当前登陆人所有的siteIds + Long userId = tokenService.getLoginUser().getUserid(); List<Integer> siteIds = new ArrayList<>(); - if (dto.getSiteId()==null){ - if (userId != null){ - List<GetSiteListDTO> data = siteClient.getSiteListByUserId(userId).getData(); - for (GetSiteListDTO datum : data) { - siteIds.add(datum.getId()); + + if (dto.getType() == 1){ + siteIds.add(0); + dto.setSiteIds(siteIds); + }else{ + //如果没传siteId,获取当前登陆人所有的siteIds + if (dto.getSiteId()==null){ + if (userId != null){ + List<GetSiteListDTO> data = siteClient.getSiteListByUserId(userId).getData(); + for (GetSiteListDTO datum : data) { + siteIds.add(datum.getId()); + } } + }else { + siteIds.add(dto.getSiteId()); } - }else { - siteIds.add(dto.getSiteId()); + if (siteIds.isEmpty()){ + siteIds.add(-1); + } + dto.setSiteIds(siteIds); } - dto.setSiteIds(siteIds); + PageInfo<ChargingBillListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize()); PageInfo<ChargingBillListVO> pageInfo1 = new PageInfo<>(1,9999999); List<ChargingBillListVO> list = this.baseMapper.chargingBillList1(pageInfo,dto,startTime1,startTime2); List<ChargingBillListVO> list1 = this.baseMapper.chargingBillList1(pageInfo1,dto,startTime1,startTime2); - chargingBillVO.setOrderCount(list1.size()); + BigDecimal paymentAmountTotal = new BigDecimal("0"); BigDecimal orderAmountTotal = new BigDecimal("0"); BigDecimal refundAmountTotal = new BigDecimal("0"); @@ -359,11 +377,12 @@ chargingBillListVO.setChargingSecond(chargingSecond); } BigDecimal bigDecimal = new BigDecimal("0"); - + int i = 0; for (ChargingBillListVO chargingBillListVO : list1) { - if (chargingBillListVO.getType()==2){ + if (!siteIds.contains(chargingBillListVO.getSiteId())){ continue; } + i++; LocalDateTime billTime = chargingBillListVO.getBillTime(); // 将其转化为yyyy-MM格式字符串 chargingBillVO.setCreateTime(billTime.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); @@ -447,6 +466,7 @@ } } } + chargingBillVO.setOrderCount(i); chargingBillVO.setChargingCapacity(chargingCapacityTotal); chargingBillVO.setPaymentAmount(paymentAmountTotal); chargingBillVO.setOrderAmount(paymentAmountTotal.subtract(refundAmountTotal).subtract(commissionAmountTotal).subtract(sharingAmountTotal)); @@ -466,6 +486,7 @@ chargingBillVO.setList(pageInfo); return chargingBillVO; } + @Override public ChargingBillVO chargingBillList(ChargingListQuery dto) { if (dto.getState()!=null){ @@ -485,18 +506,28 @@ } PageInfo<ChargingBillListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize()); PageInfo<ChargingBillListVO> pageInfo1 = new PageInfo<>(1,9999999); - Long userId = SecurityUtils.getUserId(); + Long userId = tokenService.getLoginUser().getUserid(); //如果没传siteId,获取当前登陆人所有的siteIds List<Integer> siteIds = new ArrayList<>(); - if (dto.getSiteId()==null){ - if (userId != null){ - List<GetSiteListDTO> data = siteClient.getSiteListByUserId(userId).getData(); - for (GetSiteListDTO datum : data) { - siteIds.add(datum.getId()); + if (dto.getType() == 1){ + siteIds.add(0); + dto.setSiteIds(siteIds); + }else{ + //如果没传siteId,获取当前登陆人所有的siteIds + if (dto.getSiteId()==null){ + if (userId != null){ + List<GetSiteListDTO> data = siteClient.getSiteListByUserId(userId).getData(); + for (GetSiteListDTO datum : data) { + siteIds.add(datum.getId()); + } } + }else { + siteIds.add(dto.getSiteId()); } - }else { - siteIds.add(dto.getSiteId()); + if (siteIds.isEmpty()){ + siteIds.add(-1); + } + dto.setSiteIds(siteIds); } List<ChargingBillListVO> list = this.baseMapper.chargingBillList(pageInfo,dto,startTime1,startTime2); List<ChargingBillListVO> list1 = this.baseMapper.chargingBillList(pageInfo1,dto,startTime1,startTime2); @@ -510,6 +541,14 @@ BigDecimal discountTotal = new BigDecimal("0"); BigDecimal refundAmountTotal = new BigDecimal("0"); int orderCount = 0; + // 查询当前登陆人按钮权限 + SysUser sysUser = sysUserClient.getSysUser(tokenService.getLoginUser().getUserid()).getData(); + Integer roleType = sysUser.getRoleType(); + Integer objectId = sysUser.getObjectId(); + R<Integer> admin = sysUserClient.isAdmin(tokenService.getLoginUser().getUserid()); + if(roleType == 2){ + // 合作商 判断有没有这个站点的按钮权限 + } for (ChargingBillListVO chargingBillListVO : list) { String temp = ""; String temp1 = ""; @@ -734,7 +773,7 @@ chargingBillListVO.setChargingSecond(chargingSecond); } for (ChargingBillListVO chargingBillListVO : list1) { - if (chargingBillListVO.getType() ==2){ + if (!siteIds.contains(chargingBillListVO.getSiteId())){ continue; } LocalDateTime billTime = chargingBillListVO.getBillTime(); @@ -840,6 +879,8 @@ } public static void main(String[] args) { + int i = 8 % 20; + System.err.println(i); LocalDateTime now = LocalDateTime.now(); // 将时间转化为字符串 只保留年月日 格式为yyyy-MM-dd String format = now.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM-dd")); -- Gitblit v1.7.1