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 7ac4c067..e9d2bc88 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 @@ -1,8 +1,10 @@ package com.bsd.pjcloud.common.core.constant.enums; +import cn.hutool.core.util.ObjectUtil; import lombok.Getter; import lombok.RequiredArgsConstructor; +import java.util.Arrays; import java.util.List; @RequiredArgsConstructor @@ -28,4 +30,10 @@ public enum MerchantTypeEnum { static public List all() { return List.of(values()); } + + public static MerchantTypeEnum valueOfByType(String type) { + return Arrays.stream(MerchantTypeEnum.values()) + .filter(v -> ObjectUtil.equal(v.getType(), type)) + .findFirst().orElse(null); + } } diff --git a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/mch/MchManageController.java b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/mch/MchManageController.java index 9a60bdbf..88b6b528 100644 --- a/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/mch/MchManageController.java +++ b/pjcloud-wallet/pjcloud-wallet-biz/src/main/java/com/bsd/pjcloud/wallet/controller/mch/MchManageController.java @@ -264,7 +264,17 @@ public class MchManageController { public R getSelect(@ParameterObject Page page, @ParameterObject MchManageDto dto) { DataScope dataScope = null; PjcloudUser user = SecurityUtils.getUser(); - List selfMchIdList = mchManageService.getSelfMchIdList(user.getId(), List.of(MerchantTypeEnum.CANTEEN)); + List typeList = new ArrayList<>(); + if (ObjectUtil.isNotEmpty(dto.getTypes())) { + MerchantTypeEnum targeTypes = MerchantTypeEnum.valueOfByType(dto.getTypes()); + if (ObjectUtil.isNotEmpty(targeTypes)) { + typeList.add(targeTypes); + } + } + if (typeList.isEmpty()) { + typeList = List.of(MerchantTypeEnum.CANTEEN); + } + List selfMchIdList = mchManageService.getSelfMchIdList(user.getId(), typeList); if (ObjectUtil.isNotEmpty(selfMchIdList)) { List ids = dto.getIds(); if (ObjectUtil.isEmpty(ids)) ids = new ArrayList<>();