From d56e45a6bf3ad11809fbf51dff0dfbe853860d43 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 19 三月 2025 20:56:33 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile
---
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java | 85 ++++++++++++++++++++++++++++++++++++++++--
1 files changed, 80 insertions(+), 5 deletions(-)
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java
index f897f64..dfab1ea 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TParkingRecordServiceImpl.java
@@ -2,25 +2,32 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.chargingPile.api.dto.GetSiteListDTO;
+import com.ruoyi.chargingPile.api.feignClient.SiteClient;
import com.ruoyi.chargingPile.api.model.Site;
import com.ruoyi.chargingPile.api.model.TParkingLot;
import com.ruoyi.chargingPile.api.model.TParkingRecord;
import com.ruoyi.chargingPile.api.query.ParkingRecordQuery;
-import com.ruoyi.chargingPile.api.vo.TParkingLotVO;
import com.ruoyi.chargingPile.api.vo.TParkingRecordPageInfoVO;
import com.ruoyi.chargingPile.api.vo.TParkingRecordVO;
-import com.ruoyi.chargingPile.domain.SiteMenu;
+import com.ruoyi.chargingPile.dto.ParkingRecordQueryDto;
import com.ruoyi.chargingPile.mapper.SiteMapper;
import com.ruoyi.chargingPile.mapper.TParkingLotMapper;
import com.ruoyi.chargingPile.mapper.TParkingRecordMapper;
import com.ruoyi.chargingPile.service.TParkingRecordService;
import com.ruoyi.common.core.web.page.PageInfo;
+import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.common.security.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDate;
+import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
@@ -39,14 +46,36 @@
private SiteMapper siteMapper;
@Autowired
private TParkingLotMapper parkingLotMapper;
+ @Resource
+ private SiteClient siteClient;
@Override
- public BigDecimal getSum(LocalDate sixBefore) {
- return this.baseMapper.getSum(sixBefore);
+ public BigDecimal getSum() {
+ return this.baseMapper.getSum();
}
+ @Autowired
+ private TokenService tokenService;
@Override
public TParkingRecordPageInfoVO pageList(ParkingRecordQuery query) {
+ Long userId = tokenService.getLoginUser().getUserid();
+ //如果没传siteId,获取当前登陆人所有的siteIds
+ List<Integer> siteIds = new ArrayList<>();
+ if (query.getSiteId()==null){
+ if (userId != null){
+ List<GetSiteListDTO> data = siteClient.getSiteListByUserId(userId).getData();
+ for (GetSiteListDTO datum : data) {
+ siteIds.add(datum.getId());
+ }
+ }
+ }else {
+ siteIds.add(query.getSiteId());
+ }
+ if (siteIds.isEmpty()){
+ siteIds.add(-1);
+ }
+ query.setSiteIds(siteIds);
+ PageInfo<TParkingRecordVO> pageInfo = new PageInfo<>(query.getPageCurr(),query.getPageSize());
// 查询站点的停车场id
if(Objects.nonNull(query.getSiteId())){
Site site = siteMapper.selectById(query.getSiteId());
@@ -54,12 +83,28 @@
List<TParkingLot> tParkingLots = parkingLotMapper.selectList(Wrappers.lambdaQuery(TParkingLot.class)
.eq(TParkingLot::getSiteId, site.getId()));
List<Integer> lotIds = tParkingLots.stream().map(TParkingLot::getId).collect(Collectors.toList());
+ if(CollectionUtils.isEmpty(lotIds)){
+ TParkingRecordPageInfoVO tParkingRecordPageInfoVO = new TParkingRecordPageInfoVO();
+ tParkingRecordPageInfoVO.setParkingRecordVOS(new PageInfo<TParkingRecordVO>());
+ return tParkingRecordPageInfoVO;
+ }
query.setLotIds(lotIds);
}
}
- PageInfo<TParkingRecordVO> pageInfo = new PageInfo<>(query.getPageCurr(),query.getPageSize());
List<TParkingRecordVO> list = this.baseMapper.pageList(query,pageInfo);
+ for (TParkingRecordVO tParkingRecordVO : list) {
+ if (tParkingRecordVO.getParkingDuration()==null){
+ tParkingRecordVO.setFeeDuration(0);
+ }else if(tParkingRecordVO.getFreeDuration()==null){
+ tParkingRecordVO.setFeeDuration(tParkingRecordVO.getParkingDuration());
+ }else{
+ tParkingRecordVO.setFeeDuration(tParkingRecordVO.getParkingDuration()-tParkingRecordVO.getFreeDuration());
+ }
+ tParkingRecordVO.setOrderAmount(tParkingRecordVO.getOrderAmount()!=null?tParkingRecordVO.getOrderAmount():new BigDecimal("0")
+ .add(tParkingRecordVO.getTimeoutAmount()!=null?tParkingRecordVO.getTimeoutAmount():new BigDecimal("0")));
+ tParkingRecordVO.setParkingFee(tParkingRecordVO.getOrderAmount());
+ }
pageInfo.setRecords(list);
// 查询总数
TParkingRecordPageInfoVO infoVO = this.baseMapper.getParkingRecordCount(query);
@@ -73,4 +118,34 @@
infoVO.setParkingRecordVOS(pageInfo);
return infoVO;
}
+
+ @Override
+ public List<Map<String, Object>> parkingData(ParkingRecordQueryDto parkingRecordQueryDto) {
+ return this.baseMapper.parkingData(parkingRecordQueryDto);
+ }
+
+ @Override
+ public List<Map<String, Object>> parkingDataByDate(ParkingRecordQueryDto parkingRecordQueryDto) {
+ return this.baseMapper.parkingDataByDate(parkingRecordQueryDto);
+ }
+
+ @Override
+ public List<Map<String, Object>> getCarColor(ParkingRecordQueryDto parkingRecordQueryDto) {
+ return this.baseMapper.getCarColor(parkingRecordQueryDto);
+ }
+
+ @Override
+ public List<Map<String, Object>> getOutType(ParkingRecordQueryDto parkingRecordQueryDto) {
+ return this.baseMapper.getOutType(parkingRecordQueryDto);
+ }
+
+ @Override
+ public List<Map<String, Object>> getIsCharge(ParkingRecordQueryDto parkingRecordQueryDto) {
+ return this.baseMapper.getIsCharge(parkingRecordQueryDto);
+ }
+
+ @Override
+ public List<Map<String, Object>> income(ParkingRecordQueryDto parkingRecordQueryDto) {
+ return this.baseMapper.income(parkingRecordQueryDto);
+ }
}
--
Gitblit v1.7.1