From 3cfe12da8ecfb2ef23a0f5cbcf3b98e5b143826b Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期五, 18 十月 2024 10:48:41 +0800
Subject: [PATCH] 18
---
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/UploadRealTimeMonitoringDataFallbackFactory.java | 3
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java | 5 -
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java | 44 +++++++++++++-
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java | 4
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/UploadRealTimeMonitoringDataController.java | 9 +--
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java | 4 +
ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/dto/MongoChargingOrderQuery.java | 35 +++++++++++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java | 67 +++++++++-------------
8 files changed, 113 insertions(+), 58 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/UploadRealTimeMonitoringDataFallbackFactory.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/UploadRealTimeMonitoringDataFallbackFactory.java
index d39a68e..ee3453c 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/UploadRealTimeMonitoringDataFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/UploadRealTimeMonitoringDataFallbackFactory.java
@@ -1,6 +1,7 @@
package com.ruoyi.integration.api.factory;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient;
import com.ruoyi.integration.api.model.*;
import org.slf4j.Logger;
@@ -43,7 +44,7 @@
}
@Override
- public R<List<UploadRealTimeMonitoringData>> getAll(Set<String> values, Integer page, Integer size) {
+ public R<List<UploadRealTimeMonitoringData>> getAll(MongoChargingOrderQuery mongoChargingOrderQuery) {
return null;
}
};
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java
index 5edbbb9..aa641de 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/UploadRealTimeMonitoringDataClient.java
@@ -2,10 +2,12 @@
import com.ruoyi.common.core.constant.ServiceNameConstants;
import com.ruoyi.common.core.domain.R;
+import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
import com.ruoyi.integration.api.factory.UploadRealTimeMonitoringDataFallbackFactory;
import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@@ -42,5 +44,5 @@
R<List<UploadRealTimeMonitoringData>> getDataByOrderCode(@RequestParam("code") String code);
@PostMapping("/uploadRealTimeMonitoringData/getAll")
- R<List<UploadRealTimeMonitoringData>> getAll(@RequestParam("values") Set<String> values, @RequestParam("page") Integer page, @RequestParam("size")Integer size);
+ R<List<UploadRealTimeMonitoringData>> getAll(@RequestBody MongoChargingOrderQuery mongoChargingOrderQuery);
}
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 58f341b..e00f706 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
@@ -50,8 +50,8 @@
private Integer orderType; //1=充电订单(小程序),2=充电订单(刷卡))
private Integer siteId;
private Integer status; //状态(0=未知,1=等待中/已插枪,2=启动中,3=充电中,4=停止中,5=已结束)"
- private Date startTime; //充电开始时间
- private Date endTime; //充电结束时间
+ private LocalDateTime startTime; //充电开始时间
+ private LocalDateTime endTime; //充电结束时间
}
diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/dto/MongoChargingOrderQuery.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/dto/MongoChargingOrderQuery.java
new file mode 100644
index 0000000..a96a982
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/dto/MongoChargingOrderQuery.java
@@ -0,0 +1,35 @@
+package com.ruoyi.common.core.dto;
+
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel(value = "ChargingOrderQuery充电桩订单查询对象",description = "管理后台充电桩订单查询对象")
+public class MongoChargingOrderQuery extends BasePage {
+ @ApiModelProperty(value = "订单编号")
+ private String code;
+ @ApiModelProperty(value = "订单类型(1=充电订单(小程序),2=充电订单(刷卡))")
+ private Integer orderType;
+ @ApiModelProperty(value = "手机号")
+ private String phone;
+ @ApiModelProperty(value = "状态(0=未知,1=等待中,2=启动中,3=充电中,4=停止中,5=已结束)")
+ private Integer status;
+ @ApiModelProperty(value = "站点id")
+ private Integer siteId;
+ @ApiModelProperty(value = "充电桩code ")
+ private String chargingPileCode;
+ @ApiModelProperty(value = "充电枪code ")
+ private String chargingGunCode;
+ @ApiModelProperty(value = "开始时间2020-01-01 00:00:00 - 2021-01-01 23:59:59")
+ private String startTime;
+ @ApiModelProperty(value = "结束时间2020-01-01 00:00:00 - 2021-01-01 23:59:59")
+ private String endTime;
+ @ApiModelProperty(value = "订单来源 1明星 2快电 3新电途")
+ private Integer orderSource;
+ @ApiModelProperty(value = "用户ids 前端忽略")
+ private List<Long> userIds;
+}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/UploadRealTimeMonitoringDataController.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/UploadRealTimeMonitoringDataController.java
index b3b1995..2b760b4 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/UploadRealTimeMonitoringDataController.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/controller/UploadRealTimeMonitoringDataController.java
@@ -1,17 +1,14 @@
package com.ruoyi.integration.controller;
import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
import com.ruoyi.integration.mongodb.service.UploadRealTimeMonitoringDataService;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
+import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
-import java.util.Set;
/**
* <p>
@@ -75,8 +72,8 @@
@PostMapping(value = "/getAll")
- public R<List<UploadRealTimeMonitoringData>> getAll(@RequestParam("values") Set<String> values,@RequestParam("page") Integer page, @RequestParam("size")Integer size){
- List<UploadRealTimeMonitoringData> list = uploadRealTimeMonitoringDataService.getDataAll(values,page,size);
+ public R<List<UploadRealTimeMonitoringData>> getAll(@RequestBody MongoChargingOrderQuery mongoChargingOrderQuery){
+ List<UploadRealTimeMonitoringData> list = uploadRealTimeMonitoringDataService.getDataAll(mongoChargingOrderQuery);
return R.ok(list);
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java
index f5b92c3..3a156a5 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/UploadRealTimeMonitoringDataService.java
@@ -1,11 +1,10 @@
package com.ruoyi.integration.mongodb.service;
-import com.ruoyi.common.core.domain.R;
import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
import com.ruoyi.integration.mongodb.base.BaseService;
+import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
import java.util.List;
-import java.util.Set;
public interface UploadRealTimeMonitoringDataService extends BaseService<UploadRealTimeMonitoringData> {
@@ -15,7 +14,7 @@
* @return
*/
List<UploadRealTimeMonitoringData> getDataByOrderCode(String code);
- List<UploadRealTimeMonitoringData> getDataAll(Set<String> values, Integer page, Integer size);
+ List<UploadRealTimeMonitoringData> getDataAll(MongoChargingOrderQuery mongoChargingOrderQuery);
/**
* 查询订单最新一条数据
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
index cbed3aa..fb442ff 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/mongodb/service/impl/UploadRealTimeMonitoringDataServiceImpl.java
@@ -1,10 +1,10 @@
package com.ruoyi.integration.mongodb.service.impl;
-import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
import com.ruoyi.integration.iotda.constant.IotConstant;
import com.ruoyi.integration.mongodb.service.UploadRealTimeMonitoringDataService;
+import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
@@ -15,7 +15,6 @@
import org.springframework.stereotype.Service;
import java.util.List;
-import java.util.Set;
@Service
public class UploadRealTimeMonitoringDataServiceImpl implements UploadRealTimeMonitoringDataService {
@@ -58,11 +57,46 @@
}
@Override
- public List<UploadRealTimeMonitoringData> getDataAll(Set<String> values, Integer page, Integer size) {
+ public List<UploadRealTimeMonitoringData> getDataAll(MongoChargingOrderQuery mongoChargingOrderQuery) {
Query query = new Query();
- if (!values.isEmpty()){
- query.addCriteria(Criteria.where("transaction_serial_number").in(values));
+// if (!values.isEmpty()){
+// query.addCriteria(Criteria.where("transaction_serial_number").in(values));
+// }
+ if (mongoChargingOrderQuery.getCode() != null && !mongoChargingOrderQuery.getCode().isEmpty()) {
+ query.addCriteria(Criteria.where("transaction_serial_number").regex(mongoChargingOrderQuery.getCode(), "i")); // "i" 表示不区分大小写
}
+ if (mongoChargingOrderQuery.getOrderType() !=null){
+ query.addCriteria(Criteria.where("order_type").is(mongoChargingOrderQuery.getOrderType()));
+ }
+ if (mongoChargingOrderQuery.getSiteId() != null){
+ query.addCriteria(Criteria.where("site_id").is(mongoChargingOrderQuery.getSiteId()));
+ }
+ if (mongoChargingOrderQuery.getChargingPileCode() != null && !mongoChargingOrderQuery.getChargingPileCode().isEmpty()) {
+ query.addCriteria(Criteria.where("charging_pile_code").is(mongoChargingOrderQuery.getChargingPileCode()));
+ }
+ if (mongoChargingOrderQuery.getChargingGunCode() != null && !mongoChargingOrderQuery.getChargingGunCode().isEmpty()){
+ query.addCriteria(Criteria.where("charging_gun_code").is(mongoChargingOrderQuery.getChargingGunCode()));
+ }
+ if (mongoChargingOrderQuery.getStatus() != null){
+ query.addCriteria(Criteria.where("status").is(mongoChargingOrderQuery.getStatus()));
+ }
+
+ if (mongoChargingOrderQuery.getStartTime() != null) {
+ String[] split = mongoChargingOrderQuery.getStartTime().split(" - ");
+ query.addCriteria(Criteria.where("startTime").gte(split[0]).lt(split[1]));
+ }
+
+ if (mongoChargingOrderQuery.getEndTime() != null && mongoChargingOrderQuery.getEndTime() != null) {
+ String[] split = mongoChargingOrderQuery.getEndTime().split(" - ");
+
+ query.addCriteria(Criteria.where("lastTime").gte(split[0]).lt(split[1]));
+ }
+
+
+
+
+
+
// 设置分页
Pageable pageable = PageRequest.of(page, size);
query.with(pageable);
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 3b12a92..c38aabe 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
@@ -1,6 +1,5 @@
package com.ruoyi.order.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.google.common.collect.Lists;
import java.math.BigDecimal;
import java.math.RoundingMode;
@@ -21,29 +20,24 @@
import com.ruoyi.chargingPile.api.model.Site;
import com.ruoyi.chargingPile.api.model.TChargingGun;
import com.ruoyi.chargingPile.api.model.TChargingPile;
-import com.ruoyi.chargingPile.api.model.TParkingRecord;
-import com.ruoyi.chargingPile.api.vo.SiteVO;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.dto.ChargingOrderGroup;
import com.ruoyi.common.core.dto.ChargingPercentProvinceDto;
-import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.common.redis.service.RedisService;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.common.core.web.domain.AjaxResult;
-import com.ruoyi.common.core.web.page.BasePage;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient;
import com.ruoyi.integration.api.model.ChargingOrderAndUploadRealTimeMonitoringDataDto;
-import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
import com.ruoyi.order.api.model.*;
import com.ruoyi.order.api.query.ChargingOrderQuery;
+import com.ruoyi.common.core.dto.MongoChargingOrderQuery;
import com.ruoyi.order.api.query.TChargingCountQuery;
import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery;
import com.ruoyi.order.api.vo.*;
import com.ruoyi.order.api.vo.ChargingOrderInfoVO;
-import com.ruoyi.order.api.vo.ChargingOrderVO;
import com.ruoyi.order.api.vo.GetChargingOrderByLicensePlate;
import com.ruoyi.order.api.vo.TCharingOrderVO;
import com.ruoyi.order.dto.GetMyChargingOrderList;
@@ -53,18 +47,14 @@
import com.ruoyi.order.dto.OrderEvaluateVo;
import com.ruoyi.order.dto.*;
import com.ruoyi.order.service.*;
-import com.ruoyi.order.service.impl.TChargingOrderServiceImpl;
import com.ruoyi.order.util.PreviousSixMonths;
import com.ruoyi.order.vo.EndOfChargePageInfo;
import com.ruoyi.payment.api.feignClient.AliPaymentClient;
import com.ruoyi.payment.api.feignClient.WxPaymentClient;
import com.ruoyi.payment.api.vo.AliQueryOrder;
-import com.ruoyi.payment.api.vo.WxRefundNotifyResp;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
-import io.swagger.models.auth.In;
-import jdk.nashorn.internal.runtime.ListAdapter;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
@@ -73,15 +63,12 @@
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
-import javax.servlet.ServletInputStream;
-import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
import java.time.YearMonth;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit;
import java.time.temporal.TemporalAdjusters;
-import java.util.*;
import java.util.*;
import java.util.List;
import java.util.stream.Collectors;
@@ -691,37 +678,37 @@
@ResponseBody
@PostMapping(value = "/watch/chargingOrder")
@ApiOperation(value = "监控订单", tags = {"管理后台-订单管理"})
- public R<List<ChargingOrderAndUploadRealTimeMonitoringDataDto>> watchChargingOrder(@RequestBody ChargingOrderQuery dto) {
- Integer page = dto.getPageCurr();
- Integer pageSize = dto.getPageSize();
- List<Long> data = appUserClient.getUserIdsByPhone(dto.getPhone()).getData();
- dto.setUserIds(data);
- dto.setPageCurr(1);
- dto.setPageSize(99999);
- TCharingOrderVO res = chargingOrderService.chargingOrder(dto);
- Map<String,TChargingOrder> map = new HashMap<>();
- //吧list放入map中
- for (ChargingOrderVO record : res.getList().getRecords()) {
- map.put(record.getCode(),record);
- }
- Set<String> strings = map.keySet();
+ public R watchChargingOrder(@RequestBody MongoChargingOrderQuery mongoChargingOrderQuery) {
+// Integer page = dto.getPageCurr();
+// Integer pageSize = dto.getPageSize();
+// List<Long> data = appUserClient.getUserIdsByPhone(dto.getPhone()).getData();
+// dto.setUserIds(data);
+// dto.setPageCurr(1);
+// dto.setPageSize(99999);
+// TCharingOrderVO res = chargingOrderService.chargingOrder(dto);
+// Map<String,TChargingOrder> map = new HashMap<>();
+// //吧list放入map中
+// for (ChargingOrderVO record : res.getList().getRecords()) {
+// map.put(record.getCode(),record);
+// }
+// Set<String> strings = map.keySet();
- List<UploadRealTimeMonitoringData> data1 = uploadRealTimeMonitoringDataClient.getAll(strings, page, pageSize).getData();
+ List<UploadRealTimeMonitoringData> data1 = uploadRealTimeMonitoringDataClient.getAll(mongoChargingOrderQuery).getData();
- List<ChargingOrderAndUploadRealTimeMonitoringDataDto> dtos = new ArrayList<>();
- for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data1) {
- ChargingOrderAndUploadRealTimeMonitoringDataDto dataDto = new ChargingOrderAndUploadRealTimeMonitoringDataDto();
- BeanUtils.copyProperties(uploadRealTimeMonitoringData,dataDto);
- TChargingOrder tChargingOrder = map.get(uploadRealTimeMonitoringData.getCharging_pile_code());
- if (tChargingOrder!=null) {
- BeanUtils.copyProperties(tChargingOrder, dataDto);
- }
- dtos.add(dataDto);
- }
+// List<ChargingOrderAndUploadRealTimeMonitoringDataDto> dtos = new ArrayList<>();
+// for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data1) {
+// ChargingOrderAndUploadRealTimeMonitoringDataDto dataDto = new ChargingOrderAndUploadRealTimeMonitoringDataDto();
+// BeanUtils.copyProperties(uploadRealTimeMonitoringData,dataDto);
+// TChargingOrder tChargingOrder = map.get(uploadRealTimeMonitoringData.getCharging_pile_code());
+// if (tChargingOrder!=null) {
+// BeanUtils.copyProperties(tChargingOrder, dataDto);
+// }
+// dtos.add(dataDto);
+// }
- return R.ok(dtos);
+ return R.ok(data1);
}
--
Gitblit v1.7.1