From fc1b8bcfcd81bb011771ac2aac9efb1843240729 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Mon, 9 Jun 2025 17:19:59 +0800 Subject: [PATCH 1/4] =?UTF-8?q?feat:=E7=A6=BB=E7=BA=BF=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/order/HardOrderSyncServiceImpl.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderSyncServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderSyncServiceImpl.java index 45c7748b4..442e08873 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderSyncServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderSyncServiceImpl.java @@ -4,6 +4,8 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.extra.spring.SpringUtil; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.bsd.pjcloud.admin.api.dto.UserInfo; +import com.bsd.pjcloud.admin.api.feign.RemoteUserService; import com.bsd.pjcloud.common.core.constant.enums.YesNoEnum; import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.hard.api.constant.HardTypeEnum; @@ -57,6 +59,7 @@ public class HardOrderSyncServiceImpl implements HardOrderSyncService { private final RemoteMchService remoteMchService; private final RemoteWalletSettingService walletSettingService; private final RemoteWalletService walletService; + private final RemoteUserService userService; @Override @Transactional(rollbackFor = Exception.class) @@ -84,7 +87,13 @@ public class HardOrderSyncServiceImpl implements HardOrderSyncService { createIdList.add(findOrder.getAndroidOrderCode()); continue; } - HardOrderEntity order = parseOrder(i, body.getHardwareId(), body.getMerchantId(), merchant.getDeptId()); + // 查询用户 + UserInfo userInfo = userService.getByUserId(i.getUserCode()).getData(); + if (ObjectUtil.isEmpty(userInfo)) { + log.error("|{}|同步安卓机离线订单,用户不存在:{}", TAG, JSON.toJSONString(i)); + continue; + } + HardOrderEntity order = parseOrder(i, body.getHardwareId(), merchant, merchant.getDeptId(), userInfo); HardParentCarEntity parentCar = parseParentCar(i, body.getMerchantId()); List carList = i.getCarList().stream().map(this::parseCar).toList(); @@ -168,12 +177,15 @@ public class HardOrderSyncServiceImpl implements HardOrderSyncService { return false; } - public HardOrderEntity parseOrder(OfflineOrder order, Long hardwareId, Long merchantId, Long merchantDeptId) { + public HardOrderEntity parseOrder(OfflineOrder order, Long hardwareId, MchManageVo mchDetail, Long merchantDeptId, UserInfo userInfo) { HardOrderEntity res = new HardOrderEntity(); res.setAndroidOrderCode(order.getUniqueCode()); res.setUserId(order.getUserCode()); + res.setUserDeptId(userInfo.getSysUser().getDeptId()); res.setHardId(hardwareId); - res.setMerchantId(merchantId); + res.setMerchantId(mchDetail.getId()); + res.setMerchantDeptId(mchDetail.getDeptId()); + res.setMerchantType(mchDetail.getTypes()); res.setDeptId(merchantDeptId); res.setSysType(order.getSysType().getType()); res.setWalletId(order.getWalletId()); From 7719222299b20154eeb60b081de003471375645c Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Mon, 9 Jun 2025 19:24:13 +0800 Subject: [PATCH 2/4] 11 --- .../hard/mapper/order/HardOrderMapper.java | 3 ++ .../impl/order/HardOrderTotalServiceImpl.java | 2 +- .../mapper/order/HardOrderMapper.xml | 36 +++++++++++++++++++ 3 files changed, 40 insertions(+), 1 deletion(-) 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 572a167c7..146651122 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 @@ -122,7 +122,10 @@ public interface HardOrderMapper extends PjcloudBaseMapper { List sumAndCount(@Param("dto") HardOrderSumAndCountDto dto); + List refundSumAndCount(@Param("dto") HardOrderSumAndCountDto refundDto); + List sumAndCountTotalByHourType(@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/impl/order/HardOrderTotalServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderTotalServiceImpl.java index 5aee99170..a4ce93a99 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 @@ -402,7 +402,7 @@ public class HardOrderTotalServiceImpl implements HardOrderTotalService { if (ObjectUtil.isNotEmpty(dto.getWalletTypeId())) { refundDto.setWalletTypeId(dto.getWalletTypeId()); } - return hardOrderMapper.sumAndCount(refundDto); + return hardOrderMapper.refundSumAndCount(refundDto); }); // 消费净次数 CompletableFuture> profitFuture = CompletableFuture.supplyAsync(() -> { 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 d984a1298..b741c4e5d 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 @@ -341,6 +341,42 @@ group by a.user_dept_id + +