From 182dacc8558b56c1ae89ec74c4f2ca3938d86c11 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 26 Mar 2025 18:40:14 +0800 Subject: [PATCH 01/10] =?UTF-8?q?feat:=E6=AD=A3=E5=85=83=E4=BD=99=E9=A2=9D?= =?UTF-8?q?=E4=B8=8D=E8=B6=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/800pjcloudx_wallet.sql | 2 +- .../core/constant/enums/MerchantTypeEnum.java | 2 +- .../dto/hard/CurrentUserHardTypeInfoDto.java | 8 +- .../hard/api/dto/order/HardOrderDto.java | 4 +- .../api/entity/order/HardOrderEntity.java | 7 ++ .../hard/api/vo/order/HardOrderVo.java | 2 + .../controller/order/HardOrderController.java | 2 +- .../impl/order/HardOrderServiceImpl.java | 10 +- .../impl/order/HardOrderTotalServiceImpl.java | 6 +- .../mapper/order/HardOrderMapper.xml | 11 +++ .../impl/zy/ThirdZySelfServiceImpl.java | 83 +++++++++-------- .../rule/WalletRuleMchConfigEntity.java | 92 ++++++++++--------- .../rule/WalletRulePriceConfigEntity.java | 5 +- 13 files changed, 134 insertions(+), 100 deletions(-) diff --git a/db/800pjcloudx_wallet.sql b/db/800pjcloudx_wallet.sql index 378dc1e2c..de2887da7 100644 --- a/db/800pjcloudx_wallet.sql +++ b/db/800pjcloudx_wallet.sql @@ -95,7 +95,7 @@ CREATE TABLE wallet_rule_price_config id bigint NOT NULL COMMENT '主键', rule_price_type varchar(64) NOT NULL COMMENT '规则类型', base_price bigint NOT NULL COMMENT '基础金额', - multiple bigint NOT NULL COMMENT '金额的倍数必须大于1', + multiple bigint NOT NULL COMMENT '额外支付的倍数', create_by varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '创建人', create_time datetime DEFAULT NULL COMMENT '创建时间', update_by varchar(64) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '修改人', diff --git a/pjcloud-common/pjcloud-common-core/src/main/java/com/bsd/pjcloud/common/core/constant/enums/MerchantTypeEnum.java b/pjcloud-common/pjcloud-common-core/src/main/java/com/bsd/pjcloud/common/core/constant/enums/MerchantTypeEnum.java index 54797610b..21d951643 100644 --- a/pjcloud-common/pjcloud-common-core/src/main/java/com/bsd/pjcloud/common/core/constant/enums/MerchantTypeEnum.java +++ b/pjcloud-common/pjcloud-common-core/src/main/java/com/bsd/pjcloud/common/core/constant/enums/MerchantTypeEnum.java @@ -7,8 +7,8 @@ import lombok.RequiredArgsConstructor; @Getter public enum MerchantTypeEnum { CANTEEN("1", "食堂"), - SUPERMARKET("3", "合作超市"), SELF_SUPERMARKET("2", "自营超市"), + SUPERMARKET("3", "合作超市"), ; /** diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java index 6ba63a131..e8bf9c0ba 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java @@ -1,7 +1,6 @@ package com.bsd.pjcloud.hard.api.dto.hard; -import cn.hutool.core.util.ObjectUtil; -import com.bsd.pjcloud.hard.api.constant.HardTypeEnum; +import com.bsd.pjcloud.common.core.constant.enums.MerchantTypeEnum; import lombok.Data; import java.util.ArrayList; @@ -29,10 +28,11 @@ public class CurrentUserHardTypeInfoDto { List list = new ArrayList<>(); if (isAll()) return list; if (this.getCanteenView() != null && this.getCanteenView()) { - list.add(HardTypeEnum.CANTEEN.getType()); + list.add(MerchantTypeEnum.CANTEEN.getType()); } if (this.getSupermarket() != null && this.getSupermarket()) { - list.add(HardTypeEnum.SUPERMARKET.getType()); + list.add(MerchantTypeEnum.SELF_SUPERMARKET.getType()); + list.add(MerchantTypeEnum.CANTEEN.getType()); } return list; } 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 8d913d157..b9cd8c701 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 @@ -23,12 +23,12 @@ public class HardOrderDto extends HardOrderEntity implements BaseIsIncludeTreeIn private List hardIds; - private List hardTypeCodes; - private String hardTypeCode; private List mchIds; + private List mchTypeCodes; + private List orderStatusCodes; private LocalDate[] createTimeList; diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/order/HardOrderEntity.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/order/HardOrderEntity.java index 446a6bcd8..211de98ff 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/order/HardOrderEntity.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/order/HardOrderEntity.java @@ -56,6 +56,13 @@ public class HardOrderEntity extends Model { @Schema(description = "商户id") private Long merchantId; + /** + * 商户类型 + */ + @Schema(description = "商户类型") + private String merchantType; + + /** * 设备id */ diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardOrderVo.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardOrderVo.java index f4f388602..2f01ab08b 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardOrderVo.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/vo/order/HardOrderVo.java @@ -40,6 +40,8 @@ public class HardOrderVo extends HardOrderEntity implements BaseUserInterface, B private String hardType; + private List hardTypeCodes; + /** * 购物车 */ diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java index 8c6e43c36..11194f570 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java @@ -155,7 +155,7 @@ public class HardOrderController { dataScope.setScopeDeptName("user_dept_id"); PjcloudUser user = SecurityUtils.getUser(); CurrentUserHardTypeInfoDto hardTypeInfo = hardManagerService.getCurrentUserHardTypeInfo(user); - dto.setHardTypeCodes(hardTypeInfo.getHardTypeList()); + dto.setMchTypeCodes(hardTypeInfo.getHardTypeList()); return R.ok(hardwareOrderService.scopePageList(page, dto, dataScope)); } diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java index 5a97dc52a..ee045c4bb 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java @@ -264,6 +264,7 @@ public class HardOrderServiceImpl extends ServiceImpl carList = hardCarService.getByParentCarId(dto.getCarParentId()); if (ObjectUtil.isEmpty(carList)) throw new RuntimeException("购物车不存在"); @@ -327,6 +331,7 @@ public class HardOrderServiceImpl extends ServiceImpl + @@ -45,6 +46,7 @@ a.user_id, a.user_dept_id, a.merchant_id, + a.merchant_type, a.hard_id, a.dept_id, a.wallet_id, @@ -78,6 +80,9 @@ a.del_flag = '0' + + and a.merchant_type = #{dto.merchantType} + and a.hour_type = #{dto.hourType} @@ -174,6 +179,12 @@ #{v} + + and a.merchant_type in + + #{v} + + order by a.create_time desc, a.user_id desc diff --git a/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ThirdZySelfServiceImpl.java b/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ThirdZySelfServiceImpl.java index 98161371f..c6ab6dcd3 100644 --- a/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ThirdZySelfServiceImpl.java +++ b/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ThirdZySelfServiceImpl.java @@ -137,32 +137,37 @@ public class ThirdZySelfServiceImpl implements ThirdZySelfService { refundDto.setSerialNum(dto.getSerialNum()); HardCallbackRefundVo refundRes = hardCallback.refund(refundDto).getData(); result.setCode(refundRes.getCode().getType()); + result.setCode(refundRes.getCode().getDescription()); + ZySelfPayVo zySelfPayVo = new ZySelfPayVo(); + // 人员编号 + ThirdZyIdDictEntity userIdDict = thirdZyIdDictMapper.getBySelfId(ThirdZyBizEnumType.SYNC_ACCOUNT_INFO, String.valueOf(refundRes.getUserId())); + String userZyId = userIdDict.getZyId(); + zySelfPayVo.setAccNum(userZyId); + zySelfPayVo.setAccName(refundRes.getUsername()); + zySelfPayVo.setPerCode(userZyId); + zySelfPayVo.setSerialNum(refundRes.getOrderNo()); + zySelfPayVo.setRecDate(LocalDateTimeUtil.format(refundRes.getRefundTime(), DatePattern.NORM_DATETIME_PATTERN)); switch (refundRes.getCode()) { case SUCCESS -> { - ThirdZyIdDictEntity userIdDict = thirdZyIdDictMapper.getBySelfId(ThirdZyBizEnumType.SYNC_ACCOUNT_INFO, String.valueOf(refundRes.getUserId())); - String userZyId = userIdDict.getZyId(); ZySelfPayVo success = new ZySelfPayVo(); - success.setAccNum(userZyId); - success.setAccName(refundRes.getUsername()); - success.setPerCode(userZyId); success.setPlatformSerialNum(String.valueOf(refundRes.getRefundId())); - success.setSerialNum(refundRes.getOrderNo()); - success.setRecDate(LocalDateTimeUtil.format(refundRes.getRefundTime(), DatePattern.NORM_DATETIME_PATTERN)); success.setAmount(dto.getAmount()); result.setMsg(ZyBaseVo.selfSuccessMsg); - Map resMap = BeanUtil.beanToMap(result); - Map dataMap = BeanUtil.beanToMap(success); - dataMap.put("sign", zyApiTool.generateSign(dataMap, false)); - resMap.put("data", Base64.encode(JSONUtil.toJsonStr(dataMap))); - entity.setOrgRes(JSONUtil.toJsonStr(success)); - entity.setEncipherRes(JSONUtil.toJsonStr(resMap)); - long elapsedTime = System.currentTimeMillis() - startTime; - entity.setTimeConsuming(Long.toString(elapsedTime)); - thirdZyLogService.save(entity); - return resMap; } - default -> throw new RuntimeException(); + default -> { + zySelfPayVo.setPlatformSerialNum("temporary_" + dto.getSerialNum()); + } } + Map resMap = BeanUtil.beanToMap(result); + Map dataMap = BeanUtil.beanToMap(zySelfPayVo); + dataMap.put("sign", zyApiTool.generateSign(dataMap, false)); + resMap.put("data", Base64.encode(JSONUtil.toJsonStr(dataMap))); + entity.setOrgRes(JSONUtil.toJsonStr(zySelfPayVo)); + entity.setEncipherRes(JSONUtil.toJsonStr(resMap)); + long elapsedTime = System.currentTimeMillis() - startTime; + entity.setTimeConsuming(Long.toString(elapsedTime)); + thirdZyLogService.save(entity); + return resMap; } catch (Exception e) { String error = String.format("|%s||correct|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace())); log.error(error); @@ -229,30 +234,32 @@ public class ThirdZySelfServiceImpl implements ThirdZySelfService { payDto.setOrderNo(dto.getSerialNum()); HardCallbackPayVo payRes = hardCallback.pay(payDto).getData(); result.setCode(payRes.getCode().getType()); + result.setMsg(payRes.getCode().getDescription()); + ZySelfPayVo zySelfPayVo = new ZySelfPayVo(); + zySelfPayVo.setSerialNum(dto.getSerialNum()); + zySelfPayVo.setRecDate(LocalDateTimeUtil.format(payRes.getPayTime(), DatePattern.NORM_DATETIME_PATTERN)); switch (payRes.getCode()) { case SUCCESS -> { - ZySelfPayVo success = new ZySelfPayVo(); - success.setAccNum(payRes.getUserId().toString()); - success.setAccName(payRes.getUsername()); - success.setPerCode(payRes.getUserId().toString()); - success.setPlatformSerialNum(payRes.getOrderId().toString()); - success.setSerialNum(dto.getSerialNum()); - success.setAmount(amount); - success.setRecDate(LocalDateTimeUtil.format(payRes.getPayTime(), DatePattern.NORM_DATETIME_PATTERN)); - result.setMsg(ZyBaseVo.selfSuccessMsg); - Map resMap = BeanUtil.beanToMap(result); - Map dataMap = BeanUtil.beanToMap(success); - dataMap.put("sign", zyApiTool.generateSign(dataMap, false)); - resMap.put("data", Base64.encode(JSONUtil.toJsonStr(dataMap))); - entity.setOrgRes(JSONUtil.toJsonStr(success)); - entity.setEncipherRes(JSONUtil.toJsonStr(resMap)); - long elapsedTime = System.currentTimeMillis() - startTime; - entity.setTimeConsuming(Long.toString(elapsedTime)); - thirdZyLogService.save(entity); - return resMap; + zySelfPayVo.setAccNum(payRes.getUserId().toString()); + zySelfPayVo.setAccName(payRes.getUsername()); + zySelfPayVo.setPerCode(payRes.getUserId().toString()); + zySelfPayVo.setPlatformSerialNum(payRes.getOrderId().toString()); + zySelfPayVo.setAmount(amount); + } + default -> { + zySelfPayVo.setPlatformSerialNum("temporary_" + dto.getSerialNum()); } - default -> throw new RuntimeException(); } + Map resMap = BeanUtil.beanToMap(result); + Map dataMap = BeanUtil.beanToMap(zySelfPayVo); + dataMap.put("sign", zyApiTool.generateSign(dataMap, false)); + resMap.put("data", Base64.encode(JSONUtil.toJsonStr(dataMap))); + entity.setOrgRes(JSONUtil.toJsonStr(zySelfPayVo)); + entity.setEncipherRes(JSONUtil.toJsonStr(resMap)); + long elapsedTime = System.currentTimeMillis() - startTime; + entity.setTimeConsuming(Long.toString(elapsedTime)); + thirdZyLogService.save(entity); + return resMap; } catch (Exception e) { String error = String.format("|%s||pay|意外的错误error|%s|stack|%s|", TAG, e.getMessage(), Arrays.toString(e.getStackTrace())); log.error(error); diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/rule/WalletRuleMchConfigEntity.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/rule/WalletRuleMchConfigEntity.java index 967c45e1d..99a581cb7 100644 --- a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/rule/WalletRuleMchConfigEntity.java +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/rule/WalletRuleMchConfigEntity.java @@ -6,6 +6,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; import com.bsd.pjcloud.common.core.util.TenantTable; + import java.time.LocalDateTime; /** @@ -22,69 +23,70 @@ import java.time.LocalDateTime; public class WalletRuleMchConfigEntity extends Model { - /** - * 主键 - */ - @Schema(description="主键") + /** + * 主键 + */ + @TableId(type = IdType.ASSIGN_ID) + @Schema(description = "主键") private Long id; - /** - * 源商户id - */ - @Schema(description="源商户id") + /** + * 源商户id + */ + @Schema(description = "源商户id") private Long sourceMchId; - /** - * 目标商户id - */ - @Schema(description="目标商户id") + /** + * 目标商户id + */ + @Schema(description = "目标商户id") private Long tragetMchId; - /** - * 规则配置id - */ - @Schema(description="规则配置id") + /** + * 规则配置id + */ + @Schema(description = "规则配置id") private Long rulePriceConfigId; - /** - * 创建人 - */ - @TableField(fill = FieldFill.INSERT) - @Schema(description="创建人") + /** + * 创建人 + */ + @TableField(fill = FieldFill.INSERT) + @Schema(description = "创建人") private String createBy; - /** - * 创建时间 - */ - @TableField(fill = FieldFill.INSERT) - @Schema(description="创建时间") + /** + * 创建时间 + */ + @TableField(fill = FieldFill.INSERT) + @Schema(description = "创建时间") private LocalDateTime createTime; - /** - * 修改人 - */ - @TableField(fill = FieldFill.INSERT_UPDATE) - @Schema(description="修改人") + /** + * 修改人 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + @Schema(description = "修改人") private String updateBy; - /** - * 修改时间 - */ - @TableField(fill = FieldFill.INSERT_UPDATE) - @Schema(description="修改时间") + /** + * 修改时间 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + @Schema(description = "修改时间") private LocalDateTime updateTime; - /** - * 删除标记 - */ + /** + * 删除标记 + */ @TableLogic - @TableField(fill = FieldFill.INSERT) - @Schema(description="删除标记") + @TableField(fill = FieldFill.INSERT) + @Schema(description = "删除标记") private String delFlag; - /** - * 租户ID - */ - @Schema(description="租户ID") + /** + * 租户ID + */ + @Schema(description = "租户ID") private Long tenantId; } \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/rule/WalletRulePriceConfigEntity.java b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/rule/WalletRulePriceConfigEntity.java index fd3d183ca..f0708f310 100644 --- a/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/rule/WalletRulePriceConfigEntity.java +++ b/pjcloud-wallet/pjcloud-wallet-api/src/main/java/com/bsd/pjcloud/wallet/api/entity/rule/WalletRulePriceConfigEntity.java @@ -21,6 +21,7 @@ public class WalletRulePriceConfigEntity extends Model Date: Wed, 26 Mar 2025 18:43:56 +0800 Subject: [PATCH 02/10] 11 --- .../bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java index 4662550ca..83383ee08 100644 --- a/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java +++ b/pjcloud-upms/pjcloud-upms-biz/src/main/java/com/bsd/pjcloud/admin/service/impl/SysUserServiceImpl.java @@ -196,8 +196,7 @@ public class SysUserServiceImpl extends ServiceImpl impl CompletableFuture.runAsync(() -> { remoteWalletService.createWallet(sysUser.getUserId()); }); - -// remoteWalletService.userChange(sysUser.getUserId(), Boolean.FALSE); + remoteWalletService.userChange(sysUser.getUserId(), Boolean.FALSE); } return sysUser.getUserId(); @@ -367,7 +366,6 @@ public class SysUserServiceImpl extends ServiceImpl impl remoteWalletService.createWallet(userDto.getUserId()); }); remoteWalletService.userChange(userDto.getUserId(), Boolean.FALSE); - return Boolean.TRUE; } @@ -845,7 +843,7 @@ public class SysUserServiceImpl extends ServiceImpl impl @Override public List listScopeByLikeNameOrByMobileScope(LambdaQueryWrapper eq) { - return baseMapper.selectListByScope(eq, DataScope.of()); + return baseMapper.selectListByScope(eq, DataScope.of()); } private SysUserServiceImpl getSelf() { From 67eefb743657db9f0c80f930090a0f788e242a0a Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 26 Mar 2025 19:26:45 +0800 Subject: [PATCH 03/10] =?UTF-8?q?feat:=E6=AD=A3=E5=85=83=E4=BD=99=E9=A2=9D?= =?UTF-8?q?=E4=B8=8D=E8=B6=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/zy/ThirdZySelfServiceImpl.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ThirdZySelfServiceImpl.java b/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ThirdZySelfServiceImpl.java index c6ab6dcd3..a3567ea67 100644 --- a/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ThirdZySelfServiceImpl.java +++ b/pjcloud-thirdparty/pjcloud-thirdparty-biz/src/main/java/com/bsd/pjcloud/thirdparty/service/impl/zy/ThirdZySelfServiceImpl.java @@ -137,7 +137,7 @@ public class ThirdZySelfServiceImpl implements ThirdZySelfService { refundDto.setSerialNum(dto.getSerialNum()); HardCallbackRefundVo refundRes = hardCallback.refund(refundDto).getData(); result.setCode(refundRes.getCode().getType()); - result.setCode(refundRes.getCode().getDescription()); + result.setMsg(refundRes.getCode().getDescription()); ZySelfPayVo zySelfPayVo = new ZySelfPayVo(); // 人员编号 ThirdZyIdDictEntity userIdDict = thirdZyIdDictMapper.getBySelfId(ThirdZyBizEnumType.SYNC_ACCOUNT_INFO, String.valueOf(refundRes.getUserId())); @@ -146,16 +146,15 @@ public class ThirdZySelfServiceImpl implements ThirdZySelfService { zySelfPayVo.setAccName(refundRes.getUsername()); zySelfPayVo.setPerCode(userZyId); zySelfPayVo.setSerialNum(refundRes.getOrderNo()); - zySelfPayVo.setRecDate(LocalDateTimeUtil.format(refundRes.getRefundTime(), DatePattern.NORM_DATETIME_PATTERN)); switch (refundRes.getCode()) { case SUCCESS -> { - ZySelfPayVo success = new ZySelfPayVo(); - success.setPlatformSerialNum(String.valueOf(refundRes.getRefundId())); - success.setAmount(dto.getAmount()); - result.setMsg(ZyBaseVo.selfSuccessMsg); + zySelfPayVo.setPlatformSerialNum(String.valueOf(refundRes.getRefundId())); + zySelfPayVo.setAmount(dto.getAmount()); + zySelfPayVo.setRecDate(LocalDateTimeUtil.format(refundRes.getRefundTime(), DatePattern.NORM_DATETIME_PATTERN)); } default -> { zySelfPayVo.setPlatformSerialNum("temporary_" + dto.getSerialNum()); + zySelfPayVo.setRecDate(LocalDateTimeUtil.format(LocalDateTime.now(), DatePattern.NORM_DATETIME_PATTERN)); } } Map resMap = BeanUtil.beanToMap(result); @@ -237,7 +236,6 @@ public class ThirdZySelfServiceImpl implements ThirdZySelfService { result.setMsg(payRes.getCode().getDescription()); ZySelfPayVo zySelfPayVo = new ZySelfPayVo(); zySelfPayVo.setSerialNum(dto.getSerialNum()); - zySelfPayVo.setRecDate(LocalDateTimeUtil.format(payRes.getPayTime(), DatePattern.NORM_DATETIME_PATTERN)); switch (payRes.getCode()) { case SUCCESS -> { zySelfPayVo.setAccNum(payRes.getUserId().toString()); @@ -245,9 +243,11 @@ public class ThirdZySelfServiceImpl implements ThirdZySelfService { zySelfPayVo.setPerCode(payRes.getUserId().toString()); zySelfPayVo.setPlatformSerialNum(payRes.getOrderId().toString()); zySelfPayVo.setAmount(amount); + zySelfPayVo.setRecDate(LocalDateTimeUtil.format(payRes.getPayTime(), DatePattern.NORM_DATETIME_PATTERN)); } default -> { zySelfPayVo.setPlatformSerialNum("temporary_" + dto.getSerialNum()); + zySelfPayVo.setRecDate(LocalDateTimeUtil.format(LocalDateTime.now(), DatePattern.NORM_DATETIME_PATTERN)); } } Map resMap = BeanUtil.beanToMap(result); From bf6d095671e27f2bb616b9e29b079e852ceac1a7 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 26 Mar 2025 19:38:04 +0800 Subject: [PATCH 04/10] =?UTF-8?q?feat:=E8=AE=A2=E5=8D=95=E6=90=9C=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/bsd/pjcloud/hard/api/dto/order/HardOrderDto.java | 2 ++ .../src/main/resources/mapper/order/HardOrderMapper.xml | 3 +++ 2 files changed, 5 insertions(+) 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 b9cd8c701..1bed8bcd9 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 @@ -39,6 +39,8 @@ public class HardOrderDto extends HardOrderEntity implements BaseIsIncludeTreeIn private List orderPayTypeCodes; + private List hardTypeCodes; + /** * 是否查询购物车列表 */ 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 f75f31d0e..fb908f633 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 @@ -83,6 +83,9 @@ and a.merchant_type = #{dto.merchantType} + + and a.order_type = #{dto.orderType} + and a.hour_type = #{dto.hourType} From be395b42c97ce27081b55bd8226cc27f16b86b26 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 26 Mar 2025 20:07:00 +0800 Subject: [PATCH 05/10] 11 --- .../pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java index e8bf9c0ba..590c2d736 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/dto/hard/CurrentUserHardTypeInfoDto.java @@ -32,7 +32,7 @@ public class CurrentUserHardTypeInfoDto { } if (this.getSupermarket() != null && this.getSupermarket()) { list.add(MerchantTypeEnum.SELF_SUPERMARKET.getType()); - list.add(MerchantTypeEnum.CANTEEN.getType()); + list.add(MerchantTypeEnum.SUPERMARKET.getType()); } return list; } From e16dbe27e0c2a31a9c6c3692bb53f5b889c9dfa5 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 26 Mar 2025 20:46:16 +0800 Subject: [PATCH 06/10] 11 --- .../hard/controller/order/HardOrderController.java | 14 +++++++++++--- .../pjcloud/hard/mapper/order/HardOrderMapper.java | 2 +- .../bsd/pjcloud/hard/service/HardOrderService.java | 2 +- .../service/impl/order/HardOrderServiceImpl.java | 4 ++-- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java index 11194f570..583c15fd8 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java @@ -12,9 +12,11 @@ import com.alibaba.excel.write.metadata.fill.FillConfig; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bsd.pjcloud.common.core.constant.enums.MerchantTypeEnum; import com.bsd.pjcloud.common.core.util.BeanUtils; import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.common.data.datascope.DataScope; +import com.bsd.pjcloud.common.data.datascope.DataScopeFuncEnum; import com.bsd.pjcloud.common.idempotent.annotation.Idempotent; import com.bsd.pjcloud.common.log.annotation.SysLog; import com.bsd.pjcloud.common.security.annotation.Inner; @@ -36,6 +38,8 @@ import com.bsd.pjcloud.hard.mapper.order.HardOrderMapper; import com.bsd.pjcloud.hard.service.HardManagerService; import com.bsd.pjcloud.hard.service.HardOrderService; import com.bsd.pjcloud.wallet.api.constant.WalletTypeEnum; +import com.bsd.pjcloud.wallet.api.feign.RemoteMchService; +import com.bsd.pjcloud.wallet.api.vo.MchManageVo; import jakarta.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; @@ -73,6 +77,8 @@ public class HardOrderController { private final HardOrderMapper hardOrderMapper; + private final RemoteMchService mchService; + /* ************************************* start 远程调用 start ************************************* */ @Inner @Operation(summary = "app查询订单列表", description = "app查询订单列表") @@ -151,12 +157,14 @@ public class HardOrderController { @GetMapping("/page-join") @PreAuthorize("@pms.hasPermission('hard_hardwareOrder_view')") public R pageJoin(@ParameterObject Page page, @ParameterObject HardOrderDto dto) { - DataScope dataScope = DataScope.of(); - dataScope.setScopeDeptName("user_dept_id"); PjcloudUser user = SecurityUtils.getUser(); CurrentUserHardTypeInfoDto hardTypeInfo = hardManagerService.getCurrentUserHardTypeInfo(user); dto.setMchTypeCodes(hardTypeInfo.getHardTypeList()); - return R.ok(hardwareOrderService.scopePageList(page, dto, dataScope)); + MchManageVo data = mchService.getByDeptId(user.getDeptId(), MerchantTypeEnum.SELF_SUPERMARKET).getData(); + if (ObjectUtil.isNotEmpty(data)) { + dto.setMerchantId(data.getId()); + } + return R.ok(hardwareOrderService.scopePageList(page, dto)); } @Operation(summary = "通过id查询", description = "通过id查询") 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 ef586e575..c70c7550a 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 @@ -84,7 +84,7 @@ public interface HardOrderMapper extends PjcloudBaseMapper { return selectListByScope(commonWrapper(dto), DataScope.of()); } - Page scopePageList(Page page, @Param("dto") HardOrderDto dto, @Param("dataScope") DataScope dataScope); + Page scopePageList(Page page, @Param("dto") HardOrderDto dto); List listSb(@Param("dto") HardOrderDto dto, DataScope dataScope); diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java index ea46186b9..601ecb94f 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java @@ -24,7 +24,7 @@ public interface HardOrderService extends IService { */ Page appMchPageJoin(Page page, HardOrderDto dto, PjcloudUser user); - Page scopePageList(Page page, HardOrderDto dto, DataScope dataScope); + Page scopePageList(Page page, HardOrderDto dto); List scopeList(HardOrderDto dto); diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java index ee045c4bb..6f8875ae7 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java @@ -132,8 +132,8 @@ public class HardOrderServiceImpl extends ServiceImpl scopePageList(Page page, HardOrderDto dto, DataScope dataScope) { - Page list = baseMapper.scopePageList(page, dto, dataScope); + public Page scopePageList(Page page, HardOrderDto dto) { + Page list = baseMapper.scopePageList(page, dto); if (ObjectUtil.isNotEmpty(list.getRecords())) { // 用户 List userIds = list.getRecords().stream().map(HardOrderVo::getUserId).filter(ObjectUtil::isNotEmpty).distinct().toList(); From bad9b24aa5cbe15e989f7e8096513a74967081cc Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Wed, 26 Mar 2025 20:53:20 +0800 Subject: [PATCH 07/10] 111 --- .../pjcloud/common/core/constant/enums/MerchantTypeEnum.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pjcloud-common/pjcloud-common-core/src/main/java/com/bsd/pjcloud/common/core/constant/enums/MerchantTypeEnum.java b/pjcloud-common/pjcloud-common-core/src/main/java/com/bsd/pjcloud/common/core/constant/enums/MerchantTypeEnum.java index 21d951643..5403a03a1 100644 --- a/pjcloud-common/pjcloud-common-core/src/main/java/com/bsd/pjcloud/common/core/constant/enums/MerchantTypeEnum.java +++ b/pjcloud-common/pjcloud-common-core/src/main/java/com/bsd/pjcloud/common/core/constant/enums/MerchantTypeEnum.java @@ -7,8 +7,8 @@ import lombok.RequiredArgsConstructor; @Getter public enum MerchantTypeEnum { CANTEEN("1", "食堂"), - SELF_SUPERMARKET("2", "自营超市"), - SUPERMARKET("3", "合作超市"), + SUPERMARKET("2", "合作超市"), + SELF_SUPERMARKET("3", "自营超市"), ; /** From cee050edb9c88506f8082489d6b97524380e8592 Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Thu, 27 Mar 2025 09:45:51 +0800 Subject: [PATCH 08/10] 11 --- .../hard/controller/order/HardOrderController.java | 8 +++----- .../bsd/pjcloud/hard/mapper/order/HardOrderMapper.java | 2 +- .../com/bsd/pjcloud/hard/service/HardOrderService.java | 2 +- .../hard/service/impl/order/HardOrderServiceImpl.java | 4 ++-- .../src/main/resources/mapper/order/HardOrderMapper.xml | 3 ++- 5 files changed, 9 insertions(+), 10 deletions(-) diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java index 583c15fd8..e6b9bddbd 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java @@ -157,14 +157,12 @@ public class HardOrderController { @GetMapping("/page-join") @PreAuthorize("@pms.hasPermission('hard_hardwareOrder_view')") public R pageJoin(@ParameterObject Page page, @ParameterObject HardOrderDto dto) { + DataScope dataScope = DataScope.of(); + dataScope.setScopeDeptName("hardTypeDeptId"); PjcloudUser user = SecurityUtils.getUser(); CurrentUserHardTypeInfoDto hardTypeInfo = hardManagerService.getCurrentUserHardTypeInfo(user); dto.setMchTypeCodes(hardTypeInfo.getHardTypeList()); - MchManageVo data = mchService.getByDeptId(user.getDeptId(), MerchantTypeEnum.SELF_SUPERMARKET).getData(); - if (ObjectUtil.isNotEmpty(data)) { - dto.setMerchantId(data.getId()); - } - return R.ok(hardwareOrderService.scopePageList(page, dto)); + return R.ok(hardwareOrderService.scopePageList(page, dto, dataScope)); } @Operation(summary = "通过id查询", description = "通过id查询") 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 c70c7550a..4bba10015 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 @@ -84,7 +84,7 @@ public interface HardOrderMapper extends PjcloudBaseMapper { return selectListByScope(commonWrapper(dto), DataScope.of()); } - Page scopePageList(Page page, @Param("dto") HardOrderDto dto); + Page scopePageList(Page page, @Param("dto") HardOrderDto dto, DataScope dataScope); List listSb(@Param("dto") HardOrderDto dto, DataScope dataScope); diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java index 601ecb94f..ea46186b9 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java @@ -24,7 +24,7 @@ public interface HardOrderService extends IService { */ Page appMchPageJoin(Page page, HardOrderDto dto, PjcloudUser user); - Page scopePageList(Page page, HardOrderDto dto); + Page scopePageList(Page page, HardOrderDto dto, DataScope dataScope); List scopeList(HardOrderDto dto); diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java index 6f8875ae7..ee045c4bb 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java @@ -132,8 +132,8 @@ public class HardOrderServiceImpl extends ServiceImpl scopePageList(Page page, HardOrderDto dto) { - Page list = baseMapper.scopePageList(page, dto); + public Page scopePageList(Page page, HardOrderDto dto, DataScope dataScope) { + Page list = baseMapper.scopePageList(page, dto, dataScope); if (ObjectUtil.isNotEmpty(list.getRecords())) { // 用户 List userIds = list.getRecords().stream().map(HardOrderVo::getUserId).filter(ObjectUtil::isNotEmpty).distinct().toList(); 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 fb908f633..af9d54051 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 @@ -168,7 +168,8 @@ + + p.id as rulePirceConfigId, + p.rule_price_type, + p.base_price, + p.multiple + from wallet_rule_mch_config a + left join wallet_rule_price_config p on a.rule_price_config_id = p.id + + + + order by a.create_time desc , a.id desc + + \ No newline at end of file diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/rule/WalletRulePriceConfigMapper.xml b/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/rule/WalletRulePriceConfigMapper.xml new file mode 100644 index 000000000..39e197642 --- /dev/null +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/resources/mapper/rule/WalletRulePriceConfigMapper.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file From e6de7dd2aebb8d9f7dd6b37de0bc1d98d411a09e Mon Sep 17 00:00:00 2001 From: dzc <2388224167@qq.com> Date: Thu, 27 Mar 2025 14:53:34 +0800 Subject: [PATCH 10/10] 11 --- .../api/entity/order/HardOrderEntity.java | 6 +++++ .../controller/order/HardOrderController.java | 6 ++++- .../hard/mapper/order/HardOrderMapper.java | 2 +- .../hard/service/HardManagerService.java | 7 +++++ .../hard/service/HardOrderService.java | 2 +- .../service/impl/HardManagerServiceImpl.java | 27 ++++++++++++++++--- .../impl/order/HardOrderServiceImpl.java | 7 +++-- .../mapper/order/HardOrderMapper.xml | 2 ++ 8 files changed, 50 insertions(+), 9 deletions(-) diff --git a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/order/HardOrderEntity.java b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/order/HardOrderEntity.java index 211de98ff..1dddd5400 100644 --- a/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/order/HardOrderEntity.java +++ b/pjcloud-hardware/pjcloud-hardware-api/src/main/java/com/bsd/pjcloud/hard/api/entity/order/HardOrderEntity.java @@ -62,6 +62,12 @@ public class HardOrderEntity extends Model { @Schema(description = "商户类型") private String merchantType; + /** + * 商户绑定的部门id + */ + @Schema(description = "商户绑定的部门id") + private Long merchantDeptId; + /** * 设备id diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java index 82fa86c76..bd60355ac 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/controller/order/HardOrderController.java @@ -157,10 +157,14 @@ public class HardOrderController { @GetMapping("/page-join") @PreAuthorize("@pms.hasPermission('hard_hardwareOrder_view')") public R pageJoin(@ParameterObject Page page, @ParameterObject HardOrderDto dto) { + DataScope dataScope = DataScope.of().func(DataScopeFuncEnum.ALL); + dataScope.setScopeDeptName("merchant_dept_id"); PjcloudUser user = SecurityUtils.getUser(); CurrentUserHardTypeInfoDto hardTypeInfo = hardManagerService.getCurrentUserHardTypeInfo(user); dto.setMchTypeCodes(hardTypeInfo.getHardTypeList()); - return R.ok(hardwareOrderService.scopePageList(page, dto)); + // List mchIds = hardManagerService.getCurrentUserMchInfo(user, dto.getMchIds()); + // dto.setMchIds(mchIds); + return R.ok(hardwareOrderService.scopePageList(page, dto, dataScope)); } @Operation(summary = "通过id查询", description = "通过id查询") 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 c70c7550a..4bba10015 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 @@ -84,7 +84,7 @@ public interface HardOrderMapper extends PjcloudBaseMapper { return selectListByScope(commonWrapper(dto), DataScope.of()); } - Page scopePageList(Page page, @Param("dto") HardOrderDto dto); + Page scopePageList(Page page, @Param("dto") HardOrderDto dto, DataScope dataScope); List listSb(@Param("dto") HardOrderDto dto, DataScope dataScope); diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardManagerService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardManagerService.java index acfa6fbd1..adfbe0d82 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardManagerService.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardManagerService.java @@ -9,6 +9,8 @@ import com.bsd.pjcloud.hard.api.dto.hard.HardBindDto; import com.bsd.pjcloud.hard.api.entity.HardManagerEntity; import com.bsd.pjcloud.hard.api.vo.HardManagerVo; +import java.util.List; + public interface HardManagerService extends IService { Page pageJoin(Page page, HardManagerDto dto); @@ -27,4 +29,9 @@ public interface HardManagerService extends IService { * 判断当前用户是否有食堂或者超市管理元权限 */ CurrentUserHardTypeInfoDto getCurrentUserHardTypeInfo(PjcloudUser user); + + /** + * 判断当前用户有哪些商户的权限 + */ + List getCurrentUserMchInfo(PjcloudUser user, List mchIds); } \ No newline at end of file diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java index 601ecb94f..ea46186b9 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/HardOrderService.java @@ -24,7 +24,7 @@ public interface HardOrderService extends IService { */ Page appMchPageJoin(Page page, HardOrderDto dto, PjcloudUser user); - Page scopePageList(Page page, HardOrderDto dto); + Page scopePageList(Page page, HardOrderDto dto, DataScope dataScope); List scopeList(HardOrderDto dto); diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardManagerServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardManagerServiceImpl.java index 945599c00..435eb4830 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardManagerServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/HardManagerServiceImpl.java @@ -11,6 +11,7 @@ import com.bsd.pjcloud.admin.api.feign.RemoteDeptService; import com.bsd.pjcloud.admin.api.feign.RemoteUserService; import com.bsd.pjcloud.admin.api.utils.DataUtil; import com.bsd.pjcloud.common.core.constant.CommonRoleConstant; +import com.bsd.pjcloud.common.core.constant.enums.MerchantTypeEnum; import com.bsd.pjcloud.common.core.util.BeanUtils; import com.bsd.pjcloud.common.core.util.CollectionUtils; import com.bsd.pjcloud.common.core.util.R; @@ -38,10 +39,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.util.Optional; +import java.util.*; /** * 设备管理 @@ -235,6 +233,27 @@ public class HardManagerServiceImpl extends ServiceImpl getCurrentUserMchInfo(PjcloudUser user, List mchIds) { + if (ObjectUtil.isEmpty(mchIds)) mchIds = new ArrayList<>(); + UserInfo userInfo = userService.getByUserId(user.getId()).getData(); + if (ObjectUtil.isEmpty(userInfo)) return mchIds; + String[] roles = userInfo.getRoleCodes(); + if (roles.length == 0) return mchIds; + List roleList = Arrays.asList(roles); + MchManageVo mchDetail = null; + if (roleList.contains(CommonRoleConstant.SUPERMARKET_ADMIN)) { + mchDetail = mchService.getByDeptId(user.getDeptId(), MerchantTypeEnum.SELF_SUPERMARKET).getData(); + } + if (roleList.contains(CommonRoleConstant.CANTEEN_ADMIN)) { + mchDetail = mchService.getByDeptId(user.getDeptId(), MerchantTypeEnum.CANTEEN).getData(); + } + if (ObjectUtil.isNotEmpty(mchDetail)) { + mchIds.add(mchDetail.getId()); + } + return mchIds; + } + private boolean existUniqueCode(String uniqueCode, Long id) { Long count = baseMapper.selectCount(new LambdaQueryWrapper() .eq(ObjectUtil.isNotEmpty(uniqueCode), HardManagerEntity::getUniqueCode, uniqueCode) diff --git a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java index 6f8875ae7..1c1ba91a9 100644 --- a/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java +++ b/pjcloud-hardware/pjcloud-hardware-biz/src/main/java/com/bsd/pjcloud/hard/service/impl/order/HardOrderServiceImpl.java @@ -132,8 +132,8 @@ public class HardOrderServiceImpl extends ServiceImpl scopePageList(Page page, HardOrderDto dto) { - Page list = baseMapper.scopePageList(page, dto); + public Page scopePageList(Page page, HardOrderDto dto, DataScope dataScope) { + Page list = baseMapper.scopePageList(page, dto, dataScope); if (ObjectUtil.isNotEmpty(list.getRecords())) { // 用户 List userIds = list.getRecords().stream().map(HardOrderVo::getUserId).filter(ObjectUtil::isNotEmpty).distinct().toList(); @@ -265,6 +265,7 @@ public class HardOrderServiceImpl extends ServiceImpl + @@ -47,6 +48,7 @@ a.user_dept_id, a.merchant_id, a.merchant_type, + a.merchant_dept_id, a.hard_id, a.dept_id, a.wallet_id,