From fca00ddabb395a44c99b0a39b47a7cd2955aede0 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期五, 18 十月 2024 10:51:32 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- 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 | 46 +++++++++++++-- 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 +++++++++------------- 7 files changed, 112 insertions(+), 57 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-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..3f4912d 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,13 +57,48 @@ } @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); + Pageable pageable = PageRequest.of(mongoChargingOrderQuery.getPageCurr(), mongoChargingOrderQuery.getPageSize()); query.with(pageable); List<UploadRealTimeMonitoringData> uploadRealTimeMonitoringData = mongoTemplate.find( 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