diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/business/BusinessOrderController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/business/BusinessOrderController.java index 07b584cf0..f44b0d5bb 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/business/BusinessOrderController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/business/BusinessOrderController.java @@ -1,18 +1,19 @@ package com.jsowell.api.uniapp.business; +import com.alibaba.fastjson2.JSONObject; import com.google.common.collect.ImmutableMap; import com.jsowell.common.core.controller.BaseController; +import com.jsowell.common.exception.BusinessException; import com.jsowell.common.response.RestApiResponse; +import com.jsowell.pile.dto.business.QueryBusinessOrderDTO; import com.jsowell.pile.service.OrderBasicInfoService; import com.jsowell.pile.vo.uniapp.business.BusinessConnectorInfoVO; import com.jsowell.pile.vo.uniapp.business.BusinessOrderBillingInfoVO; +import com.jsowell.pile.vo.uniapp.business.BusinessOrderQueryResultVO; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; -import javax.xml.ws.soap.Addressing; +import java.util.List; import java.util.List; /** @@ -65,4 +66,27 @@ public class BusinessOrderController extends BaseController { logger.info("通过订单编号查询订单各时段计费明细 orderCode:{}, result:{}", orderCode, response); return response; } + + + /** + * 运营端小程序查询订单 + * @param dto 查询条件 + * @return 订单查询结果 + */ + @PostMapping("/queryBusinessOrder") + public RestApiResponse queryBusinessOrder(@RequestBody QueryBusinessOrderDTO dto) { + RestApiResponse response = null; + try { + BusinessOrderQueryResultVO result = orderBasicInfoService.queryBusinessOrder(dto); + response = new RestApiResponse<>(result); + } catch (BusinessException e) { + logger.warn("运营端小程序查询订单 warn", e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + } catch (Exception e) { + logger.error("运营端小程序查询订单 error", e); + response = new RestApiResponse<>(e); + } + logger.info("运营端小程序查询订单 params:{}, result:{}", JSONObject.toJSONString(dto), response); + return response; + } } diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/business/BusinessStationInfoController.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/business/BusinessStationInfoController.java index c4cdf9a86..05f984a7c 100644 --- a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/business/BusinessStationInfoController.java +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/business/BusinessStationInfoController.java @@ -3,15 +3,20 @@ package com.jsowell.api.uniapp.business; import com.alibaba.fastjson2.JSONObject; import com.google.common.collect.ImmutableMap; import com.jsowell.common.core.controller.BaseController; +import com.jsowell.common.core.page.TableDataInfo; import com.jsowell.common.exception.BusinessException; import com.jsowell.common.response.RestApiResponse; +import com.jsowell.common.util.StringUtils; +import com.jsowell.pile.dto.QueryStationDTO; import com.jsowell.pile.dto.business.StationBusinessAnalyzeInfoDTO; import com.jsowell.pile.dto.business.StationStatisticsInfoDTO; import com.jsowell.pile.service.OrderBasicInfoService; import com.jsowell.pile.service.PileStationInfoService; import com.jsowell.pile.vo.uniapp.business.StationBusinessAnalyzeInfoVO; import com.jsowell.pile.vo.uniapp.business.StationStatisticsInfosVO; +import com.jsowell.pile.vo.web.StationSelectVO; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.util.List; @@ -32,6 +37,23 @@ public class BusinessStationInfoController extends BaseController { @Autowired private OrderBasicInfoService orderBasicInfoService; + + + /** + * 查询充电站下拉列表 + * @param stationName 站点名称(可选,支持模糊查询) + */ + @GetMapping("/getStationSelectList") + public TableDataInfo getStationSelectList(@RequestParam(required = false) String stationName) { + QueryStationDTO dto = new QueryStationDTO(); + if (StringUtils.isNotBlank(stationName)) { + dto.setStationName(stationName); + } + List list = pileStationInfoService.getStationSelectList(dto); + return getDataTable(list); + } + + /** * 获取站点统计信息 * @param dto diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryOrderDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryOrderDTO.java index 7ea34f89d..b7be18277 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryOrderDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/QueryOrderDTO.java @@ -117,4 +117,15 @@ public class QueryOrderDTO extends BaseEntity { * 排除的站点Id列表 */ private List excludeStationIdList; + + /** + * 启动方式 + * (0-后管启动;1-用户app启动;2-卡启动;3-离线卡启动; 4-第三方平台启动; 5-车辆vin码启动) + */ + private String startMode; + + /** + * 站点名称(用于模糊查询) + */ + private String stationName; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/business/QueryBusinessOrderDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/business/QueryBusinessOrderDTO.java new file mode 100644 index 000000000..019ac749f --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/business/QueryBusinessOrderDTO.java @@ -0,0 +1,56 @@ +package com.jsowell.pile.dto.business; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 运营端小程序查询订单DTO + * + * @author Auto + * @Date 2024/12/19 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class QueryBusinessOrderDTO { + /** + * 站点名称(可选,支持模糊查询) + */ + private String stationName; + + /** + * 创建时间(可选,格式:yyyy-MM-dd HH:mm:ss) + */ + private String createTime; + + /** + * 结束时间(可选,格式:yyyy-MM-dd HH:mm:ss) + */ + private String endTime; + + /** + * 订单状态 + * 0-未启动;1-充电中;2-待结算;3-待补缴;4-异常;5-可疑;6-订单完成;7-超时关闭 + */ + private String orderStatus; + + /** + * 启动方式 + * (0-后管启动;1-用户app启动;2-卡启动;3-离线卡启动; 4-第三方平台启动; 5-车辆vin码启动) + */ + private String startMode; + + /** + * 页码(默认1) + */ + private Integer pageNum; + + /** + * 每页条数(默认10) + */ + private Integer pageSize; +} + diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/dto/business/QueryConnectorInfoDTO.java b/jsowell-pile/src/main/java/com/jsowell/pile/dto/business/QueryConnectorInfoDTO.java index 0221487c8..309eb77d3 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/dto/business/QueryConnectorInfoDTO.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/dto/business/QueryConnectorInfoDTO.java @@ -5,6 +5,8 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; +import java.util.List; + /** * 运营端小程序查询枪口信息DTO * @@ -40,4 +42,14 @@ public class QueryConnectorInfoDTO { * 枪口编号 */ private String pileConnectorCode; + + /** + * 站点Id List + */ + private List stationIds; + + /** + * 运营商id + */ + private String merchantId; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java index a76301982..a4c01cb6d 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/mapper/OrderBasicInfoMapper.java @@ -19,6 +19,7 @@ import org.springframework.stereotype.Repository; import java.time.LocalDateTime; import java.util.List; +import java.util.Map; import java.util.Set; @Repository @@ -345,6 +346,14 @@ public interface OrderBasicInfoMapper { List getOrderInfoByNXJT(NXJTQueryOrdersInfoDTO dto); OrderTotalDataVO getOrderTotalData(QueryOrderDTO dto); + + /** + * 统计订单数量和总金额 + * @param dto 查询条件 + * @return 统计结果 + */ + OrderStatisticsVO countBusinessOrderStatistics(QueryOrderDTO dto); + List queryRepayOrder(String memberId); diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java index 480adba37..8d84b1e6d 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderBasicInfoService.java @@ -19,8 +19,10 @@ import com.jsowell.pile.vo.base.OrderAmountDetailVO; import com.jsowell.pile.vo.base.OrderPeriodAmountVO; import com.jsowell.pile.vo.lianlian.AccumulativeInfoVO; import com.jsowell.pile.vo.nanrui.JiangSuOrderInfoVO; +import com.jsowell.pile.dto.business.QueryBusinessOrderDTO; import com.jsowell.pile.vo.uniapp.business.BusinessOrderBillingInfoVO; import com.jsowell.pile.vo.uniapp.business.BusinessOrderDetailInfoVO; +import com.jsowell.pile.vo.uniapp.business.BusinessOrderQueryResultVO; import com.jsowell.pile.vo.uniapp.customer.OrderVO; import com.jsowell.pile.vo.uniapp.customer.PersonPileConnectorSumInfoVO; import com.jsowell.pile.vo.uniapp.customer.SendMessageVO; @@ -544,6 +546,13 @@ public interface OrderBasicInfoService{ BusinessOrderDetailInfoVO getBusinessOrderDetail(String orderCode); + /** + * 运营端小程序查询订单 + * @param dto 查询条件 + * @return 订单查询结果 + */ + BusinessOrderQueryResultVO queryBusinessOrder(QueryBusinessOrderDTO dto); + /** * 根据枪口编号和状态查询订单 * @param pileConnectorCode diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index 2407a4a23..030840eb5 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -2,6 +2,8 @@ package com.jsowell.pile.service.impl; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import com.google.common.collect.Lists; import com.google.common.collect.Maps; import com.google.common.collect.Sets; @@ -22,6 +24,7 @@ import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.vo.AuthorizedDeptVO; import com.jsowell.common.core.domain.ykc.RealTimeMonitorData; import com.jsowell.common.core.domain.ykc.TransactionRecordsData; +import com.jsowell.common.core.page.PageResponse; import com.jsowell.common.core.redis.RedisCache; import com.jsowell.common.enums.AcquirerEnum; import com.jsowell.common.enums.DelFlagEnum; @@ -40,6 +43,7 @@ import com.jsowell.common.util.id.SnowflakeIdWorker; import com.jsowell.common.util.spring.SpringUtils; import com.jsowell.pile.domain.*; import com.jsowell.pile.dto.*; +import com.jsowell.pile.dto.business.QueryBusinessOrderDTO; import com.jsowell.pile.dto.nanrui.NRQueryOrderDTO; import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryOrdersInfoDTO; import com.jsowell.pile.mapper.OrderBasicInfoMapper; @@ -59,8 +63,11 @@ import com.jsowell.pile.vo.lianlian.AccumulativeInfoVO; import com.jsowell.pile.vo.nanrui.JiangSuOrderInfoVO; import com.jsowell.pile.vo.uniapp.business.BusinessOrderBillingInfoVO; import com.jsowell.pile.vo.uniapp.business.BusinessOrderDetailInfoVO; +import com.jsowell.pile.vo.uniapp.business.BusinessOrderListVO; +import com.jsowell.pile.vo.uniapp.business.BusinessOrderQueryResultVO; import com.jsowell.pile.vo.uniapp.customer.*; import com.jsowell.pile.vo.web.*; +import com.jsowell.pile.vo.web.OrderStatisticsVO; import com.jsowell.wxpay.common.WeChatPayParameter; import com.jsowell.wxpay.response.WechatPayRefundRequest; import com.jsowell.wxpay.response.WechatPayRefundResponse; @@ -6165,6 +6172,7 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { return orderBasicInfoMapper.getPlatformProfit(dto); } + @Override public OrderCountByTimeVO queryOrderInsuranceAmountByTime(QueryOrderDTO dto) { if (dto == null) { dto = new QueryOrderDTO(); @@ -6245,5 +6253,91 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService { public List getInsuranceAmount(IndexQueryDTO dto) { return orderBasicInfoMapper.getInsuranceAmount(dto); } + + /** + * 运营端小程序查询订单 + * @param dto 查询条件 + * @return 订单查询结果 + */ + @Override + public BusinessOrderQueryResultVO queryBusinessOrder(QueryBusinessOrderDTO dto) { + // 获取当前登录账号的运营商权限 + List merchantInfoVOList = UserUtils.getMerchantInfoVOList(); + if (CollectionUtils.isEmpty(merchantInfoVOList)) { + throw new BusinessException(ReturnCodeEnum.CODE_SELECT_INFO_IS_NULL); + } + List merchantIds = merchantInfoVOList.stream() + .map(MerchantInfoVO::getMerchantId) + .collect(Collectors.toList()); + + // 根据权限查询站点列表 + List allStations = pileStationInfoService.getStationInfosByMerchantIds(merchantIds); + if (CollectionUtils.isEmpty(allStations)) { + throw new BusinessException(ReturnCodeEnum.CODE_SELECT_INFO_IS_NULL); + } + + // 获取所有站点ID列表 + List stationIdList = allStations.stream() + .map(s -> String.valueOf(s.getId())) + .collect(Collectors.toList()); + + // 构建QueryOrderDTO(包含启动方式和站点名称,由SQL进行过滤) + QueryOrderDTO queryOrderDTO = QueryOrderDTO.builder() + .stationIdList(stationIdList) + .startTime(dto.getCreateTime()) + .endTime(dto.getEndTime()) + .orderStatus(dto.getOrderStatus()) + .startMode(dto.getStartMode()) + .stationName(dto.getStationName()) + .build(); + + // 1. 分页参数处理 + int pageNum = dto.getPageNum() == null || dto.getPageNum() <= 0 ? 1 : dto.getPageNum(); + int pageSize = dto.getPageSize() == null || dto.getPageSize() <= 0 ? 10 : dto.getPageSize(); + + // 2. 分页查询订单列表 + PageHelper.startPage(pageNum, pageSize); + List orderListVOS = selectOrderBasicInfoList(queryOrderDTO); + PageInfo pageInfo = new PageInfo<>(orderListVOS); + + long orderCount = pageInfo.getTotal(); + + // 3. 统计总金额(使用聚合 SQL,避免查询所有数据到内存 + OrderStatisticsVO statistics = orderBasicInfoMapper.countBusinessOrderStatistics(queryOrderDTO); + BigDecimal totalOrderAmount = statistics != null && statistics.getOrderAmount() != null + ? statistics.getOrderAmount() : BigDecimal.ZERO; + + //4. 转换为 BusinessOrderListVO + List businessOrderList = orderListVOS.stream() + .map(order -> BusinessOrderListVO.builder() + .createTime(order.getCreateTime()) + .startMode(order.getStartMode()) + .orderCode(order.getOrderCode()) + .orderAmount(StringUtils.isNotBlank(order.getOrderAmount()) + ? new BigDecimal(order.getOrderAmount()) : BigDecimal.ZERO) + .chargingDegree(StringUtils.isNotBlank(order.getChargingDegree()) + ? new BigDecimal(order.getChargingDegree()) : BigDecimal.ZERO) + .orderStatus(order.getOrderStatus()) + .build()) + .collect(Collectors.toList()); + + // 5. 构建分页响应 + PageResponse pageResponse = PageResponse.builder() + .pageNum(pageNum) + .pageSize(pageSize) + .total(pageInfo.getTotal()) + .pages(pageInfo.getPages()) + .list(businessOrderList) + .build(); + + // 6. 构建返回结果 + return BusinessOrderQueryResultVO.builder() + .orderCount(orderCount) + .orderAmount(totalOrderAmount) + .pageResponse(pageResponse) + .build(); + } + + } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileConnectorInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileConnectorInfoServiceImpl.java index f6c5902ea..7a51ab997 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileConnectorInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileConnectorInfoServiceImpl.java @@ -20,11 +20,13 @@ import com.jsowell.common.enums.ykc.PileStatusEnum; import com.jsowell.common.enums.ykc.ReturnCodeEnum; import com.jsowell.common.exception.BusinessException; import com.jsowell.common.util.DateUtils; +import com.jsowell.common.util.SecurityUtils; import com.jsowell.common.util.StringUtils; import com.jsowell.common.util.spring.SpringUtils; import com.jsowell.pile.domain.OrderBasicInfo; import com.jsowell.pile.domain.PileBasicInfo; import com.jsowell.pile.domain.PileConnectorInfo; +import com.jsowell.pile.domain.PileStationInfo; import com.jsowell.pile.dto.QueryConnectorDTO; import com.jsowell.pile.dto.QueryConnectorListDTO; import com.jsowell.pile.dto.UpdateConnectorParkNoDTO; @@ -81,7 +83,7 @@ public class PileConnectorInfoServiceImpl implements PileConnectorInfoService { private OrderBasicInfoService orderBasicInfoService; @Autowired - private ThirdPartyStationRelationService thirdPartyStationRelationService; + private PileMerchantInfoService pileMerchantInfoService; @Autowired private PileMsgRecordService pileMsgRecordService; @@ -1056,15 +1058,17 @@ public class PileConnectorInfoServiceImpl implements PileConnectorInfoService { */ @Override public BusinessConnectorInfoVO getConnectorListByStationAndStatus(QueryConnectorInfoDTO dto) { - String stationId = dto.getStationId(); + // 获取登录账号信息 + Long deptId = SecurityUtils.getDeptId(); + List stationIds = pileMerchantInfoService.queryByMerchantDeptIds(Lists.newArrayList(String.valueOf(deptId))); String connectorStatus = dto.getConnectorStatus(); int pageNum = dto.getPageNum(); int pageSize = dto.getPageSize(); BusinessConnectorInfoVO vo = new BusinessConnectorInfoVO(); - // 根据站点id查询枪口列表(有缓存) - List uniAppConnectorList = getUniAppConnectorList(Long.parseLong(stationId)); + // 根据站点ids查询枪口列表(有缓存) + List connectorInfoVOS = batchSelectConnectorList(stationIds); // 筛选出枪口编号 - List pileConnectorCodeList = uniAppConnectorList.stream() + List pileConnectorCodeList = connectorInfoVOS.stream() .map(ConnectorInfoVO::getPileConnectorCode) .collect(Collectors.toList()); // 批量获取某状态的枪口数量 @@ -1082,11 +1086,15 @@ public class PileConnectorInfoServiceImpl implements PileConnectorInfoService { vo.setChargingConnectorNum(chargingNum); vo.setFaultConnectorNum(faultNum); + List longStationIds = stationIds.stream() + .map(Long::parseLong) // 或 s -> Long.parseLong(s) + .collect(Collectors.toList()); + // 根据站点id和枪口状态查询枪口列表 QueryConnectorListDTO queryConnectorListDTO = QueryConnectorListDTO.builder() .pageNum(pageNum) .pageSize(pageSize) - .stationIdList(Lists.newArrayList(Long.parseLong(stationId))) + .stationIdList(longStationIds) .build(); List pileConnectorInfoVOList = getConnectorInfoListByParams(queryConnectorListDTO); if (connectorStatus != null) { diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/business/BusinessOrderListVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/business/BusinessOrderListVO.java new file mode 100644 index 000000000..111de2e52 --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/business/BusinessOrderListVO.java @@ -0,0 +1,54 @@ +package com.jsowell.pile.vo.uniapp.business; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; + +/** + * 运营端小程序订单列表VO + * + * @author Auto + * @Date 2024/12/19 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class BusinessOrderListVO { + + /** + * 订单编号 + */ + private String orderCode; + + /** + * 创建时间 + */ + private String createTime; + + /** + * 订单启动方式 + * 0-后管启动;1-用户app启动;2-卡启动;3-离线卡启动; 4-第三方平台启动; 5-车辆vin码启动; 6-个人桩预约启动 + */ + private String startMode; + + /** + * 充电金额(订单金额) + */ + private BigDecimal orderAmount; + + /** + * 充电量(度) + */ + private BigDecimal chargingDegree; + + /** + * 订单状态 + * 0-未启动;1-充电中;2-待结算;3-待补缴;4-异常;5-可疑;6-订单完成;7-超时关闭 + */ + private String orderStatus; +} + diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/business/BusinessOrderQueryResultVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/business/BusinessOrderQueryResultVO.java new file mode 100644 index 000000000..9a6babd81 --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/uniapp/business/BusinessOrderQueryResultVO.java @@ -0,0 +1,39 @@ +package com.jsowell.pile.vo.uniapp.business; + +import com.jsowell.common.core.page.PageResponse; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; +import java.util.List; + +/** + * 运营端小程序订单查询结果VO + * + * @author Auto + * @Date 2024/12/19 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class BusinessOrderQueryResultVO { + /** + * 订单量(笔) + */ + private Long orderCount; + + /** + * 订单金额(元) + */ + private BigDecimal orderAmount; + + /** + * 分页信息 + */ + private PageResponse pageResponse; + +} + diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderStatisticsVO.java b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderStatisticsVO.java new file mode 100644 index 000000000..7d9f4678b --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/pile/vo/web/OrderStatisticsVO.java @@ -0,0 +1,31 @@ +package com.jsowell.pile.vo.web; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; + +/** + * 订单统计VO + * + * @author Auto + * @Date 2025/01/20 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@Builder +public class OrderStatisticsVO { + /** + * 订单数量 + */ + private Long orderCount; + + /** + * 订单总金额 + */ + private BigDecimal orderAmount; +} + diff --git a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml index 090eadf1d..8ff44cc20 100644 --- a/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml +++ b/jsowell-pile/src/main/resources/mapper/pile/OrderBasicInfoMapper.xml @@ -1997,6 +1997,18 @@ #{excludeStationId} + + and t1.station_id in + + #{stationId} + + + + and t1.start_mode = #{startMode,jdbcType=VARCHAR} + + + and t3.station_name like concat('%', #{stationName,jdbcType=VARCHAR}, '%') + order by t1.create_time desc @@ -2066,6 +2078,73 @@ order by t1.create_time desc + + +