From bc2c228d06c7add5fcb012cec090c2473399bde4 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Mon, 3 Mar 2025 20:18:16 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=AD=A3=E5=85=83=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/constant/order/HardOrderTypeEnum.java | 6 +++ .../hard/api/dto/order/HardOrderDto.java | 2 + .../hard/api/vo/order/HardZyCardSyncVo.java | 48 +++++++++++++++++++ .../order/HardOrderTotalController.java | 15 ++++++ .../hard/mapper/order/HardOrderMapper.java | 7 ++- .../hard/service/HardOrderTotalService.java | 3 ++ .../impl/order/HardOrderTotalServiceImpl.java | 11 +++-- .../mapper/order/HardOrderMapper.xml | 28 +++++++++++ .../impl/zy/ZyDoForeignServiceImpl.java | 3 +- 9 files changed, 114 insertions(+), 9 deletions(-) create mode 100644 pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardZyCardSyncVo.java diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java index be3fb28f9..147d06fa9 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/constant/order/HardOrderTypeEnum.java @@ -38,4 +38,10 @@ public enum HardOrderTypeEnum { return refundList.contains(type); } + public static List getExternalCodes() { + return List.of( + HardOrderTypeEnum.FOREIGN_TICKET.type, + HardOrderTypeEnum.STRIDE_DEPT.type + ); + } } diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/HardOrderDto.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/HardOrderDto.java index 6ab0fe157..be29ec0a7 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/HardOrderDto.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/order/HardOrderDto.java @@ -31,6 +31,8 @@ public class HardOrderDto extends HardOrderEntity implements BaseIsIncludeTreeIn private LocalDateTime[] payTimeList; + private List orderTypeCodes; + /** * 是否查询购物车列表 */ diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardZyCardSyncVo.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardZyCardSyncVo.java new file mode 100644 index 000000000..f111dcf3b --- /dev/null +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardZyCardSyncVo.java @@ -0,0 +1,48 @@ +package com.bsd.pjcloud.hard.api.vo.order; + +import lombok.Data; + +@Data +public class HardZyCardSyncVo { + + /** + * 总人数 + */ + private Long totalNum; + + /** + * 总金额 + */ + private Long totalMoney; + + /** + * 年总人数 + */ + private Long totalNumYear; + + /** + * 年总金额 + */ + private Long totalMoneyYear; + + /** + * 月总人数 + */ + private Long totalNumMonth; + + /** + * 月总金额 + */ + private Long totalMoneyMonth; + + /** + * 月总人数 + */ + private Long totalNumDay; + + /** + * 月总金额 + */ + private Long totalMoneyDay; + +} diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderTotalController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderTotalController.java index 3f49abf34..3a722a141 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderTotalController.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderTotalController.java @@ -13,11 +13,13 @@ import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.common.log.annotation.SysLog; import com.bsd.pjcloud.hard.api.constant.HardTypeEnum; import com.bsd.pjcloud.hard.api.constant.order.HardOrderStatusEnum; +import com.bsd.pjcloud.hard.api.constant.order.HardOrderTypeEnum; import com.bsd.pjcloud.hard.api.dto.order.HardDeptTotalDto; import com.bsd.pjcloud.hard.api.dto.order.HardOrderDto; import com.bsd.pjcloud.hard.api.vo.order.HardDeptTotalVo; import com.bsd.pjcloud.hard.api.vo.order.HardOrderCsVo; import com.bsd.pjcloud.hard.api.vo.order.HardOrderSbVo; +import com.bsd.pjcloud.hard.api.vo.order.HardZyCardSyncVo; import com.bsd.pjcloud.hard.service.HardOrderTotalService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.security.SecurityRequirement; @@ -45,6 +47,19 @@ public class HardOrderTotalController { private final HardOrderTotalService HardOrderTotalService; + /* ************************************* start 远程调用 start ************************************* */ + + @PostMapping("/zy-card-sync") + @Operation(summary = "正元本地一卡通交易数据同步") + public R zyCardSync() { + HardOrderDto dto = new HardOrderDto(); + dto.setOrderStatusCodes(HardOrderStatusEnum.getPayPrice()); + dto.setOrderTypeCodes(HardOrderTypeEnum.getExternalCodes()); + return R.ok(HardOrderTotalService.totalYearMonthDay(dto)); + } + + /* ************************************* end 远程调用 end ************************************* */ + @PostMapping("/page-list-sb") @Operation(summary = "设备交易记录") public R> pageListSb(@ParameterObject Page page, @RequestBody HardOrderDto dto) { diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/order/HardOrderMapper.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/order/HardOrderMapper.java index 5bbbd35ba..fc2ca74f9 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/order/HardOrderMapper.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/mapper/order/HardOrderMapper.java @@ -11,10 +11,7 @@ import com.bsd.pjcloud.hard.api.dto.order.HardOrderSumAndCountDto; import com.bsd.pjcloud.hard.api.entity.HardManagerEntity; import com.bsd.pjcloud.hard.api.entity.order.HardAfterSaleEntity; import com.bsd.pjcloud.hard.api.entity.order.HardOrderEntity; -import com.bsd.pjcloud.hard.api.vo.order.HardOrderCsVo; -import com.bsd.pjcloud.hard.api.vo.order.HardOrderSbVo; -import com.bsd.pjcloud.hard.api.vo.order.HardOrderSumAndCountVo; -import com.bsd.pjcloud.hard.api.vo.order.HardOrderVo; +import com.bsd.pjcloud.hard.api.vo.order.*; import com.github.yulichang.wrapper.MPJLambdaWrapper; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -98,4 +95,6 @@ public interface HardOrderMapper extends PjcloudBaseMapper { List listCs(@Param("dto") HardOrderDto dto); List sumAndCount(@Param("dto") HardOrderSumAndCountDto dto); + + HardZyCardSyncVo totalYearMonthDay(@Param("dto") HardOrderDto hardOrderDto); } \ No newline at end of file diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderTotalService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderTotalService.java index 6a605938c..8ec4f0f38 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderTotalService.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderTotalService.java @@ -6,6 +6,7 @@ import com.bsd.pjcloud.hard.api.dto.order.HardOrderDto; import com.bsd.pjcloud.hard.api.vo.order.HardDeptTotalVo; import com.bsd.pjcloud.hard.api.vo.order.HardOrderCsVo; import com.bsd.pjcloud.hard.api.vo.order.HardOrderSbVo; +import com.bsd.pjcloud.hard.api.vo.order.HardZyCardSyncVo; import java.util.List; @@ -20,4 +21,6 @@ public interface HardOrderTotalService { List listCs(HardOrderDto dto); List pageListDept(HardDeptTotalDto dto); + + HardZyCardSyncVo totalYearMonthDay(HardOrderDto dto); } diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderTotalServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderTotalServiceImpl.java index 93acc7c1e..26442ff10 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderTotalServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderTotalServiceImpl.java @@ -8,16 +8,14 @@ import com.bsd.pjcloud.admin.api.entity.SysDept; import com.bsd.pjcloud.admin.api.feign.RemoteDeptService; import com.bsd.pjcloud.common.core.util.CollectionUtils; import com.bsd.pjcloud.hard.api.constant.order.HardOrderStatusEnum; +import com.bsd.pjcloud.hard.api.constant.order.HardOrderTypeEnum; import com.bsd.pjcloud.hard.api.dto.HardManagerDto; import com.bsd.pjcloud.hard.api.dto.order.HardDeptTotalDto; import com.bsd.pjcloud.hard.api.dto.order.HardOrderDto; import com.bsd.pjcloud.hard.api.dto.order.HardOrderSumAndCountDto; import com.bsd.pjcloud.hard.api.entity.HardManagerEntity; import com.bsd.pjcloud.hard.api.utils.HardUtil; -import com.bsd.pjcloud.hard.api.vo.order.HardDeptTotalVo; -import com.bsd.pjcloud.hard.api.vo.order.HardOrderCsVo; -import com.bsd.pjcloud.hard.api.vo.order.HardOrderSbVo; -import com.bsd.pjcloud.hard.api.vo.order.HardOrderSumAndCountVo; +import com.bsd.pjcloud.hard.api.vo.order.*; import com.bsd.pjcloud.hard.mapper.HardManagerMapper; import com.bsd.pjcloud.hard.mapper.order.HardOrderMapper; import com.bsd.pjcloud.hard.service.HardOrderTotalService; @@ -291,4 +289,9 @@ public class HardOrderTotalServiceImpl implements HardOrderTotalService { }); return resultListFuture.join(); } + + @Override + public HardZyCardSyncVo totalYearMonthDay(HardOrderDto dto) { + return hardOrderMapper.totalYearMonthDay(dto); + } } diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/resources/mapper/order/HardOrderMapper.xml b/pjcloud-hardware/pjcloud-hardware-biz/src/main/resources/mapper/order/HardOrderMapper.xml index c45b4df98..df786316d 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/resources/mapper/order/HardOrderMapper.xml +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/resources/mapper/order/HardOrderMapper.xml @@ -189,4 +189,32 @@ group by a.dept_id + \ No newline at end of file diff --git a/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ZyDoForeignServiceImpl.java b/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ZyDoForeignServiceImpl.java index 3a7c909c0..cc642f6ea 100644 --- a/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ZyDoForeignServiceImpl.java +++ b/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ZyDoForeignServiceImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.util.ObjectUtil; import com.bsd.pjcloud.thirdparty.dto.zy.foreign.ZyForeignSyncNativeCardTradeInfoDto; import com.bsd.pjcloud.thirdparty.service.ZyDoForeignService; import com.bsd.pjcloud.thirdparty.vo.zy.foreign.ZyForeignGetRegionIdByTokenVo; +import com.bsd.pjcloud.thirdparty.vo.zy.foreign.ZyForeignSyncNativeCardTradeInfoVo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -25,6 +26,6 @@ public class ZyDoForeignServiceImpl implements ZyDoForeignService { } ZyForeignSyncNativeCardTradeInfoDto asyncDto = new ZyForeignSyncNativeCardTradeInfoDto(); asyncDto.setRegionCode(region.getRegionCode()); - zyForeignServiceImpl.syncNativeCardTradeInfoApi(asyncDto); + ZyForeignSyncNativeCardTradeInfoVo vo = zyForeignServiceImpl.syncNativeCardTradeInfoApi(asyncDto); } }