Browse Source

pay:后台支付应用信息列表关闭某一渠道,但是任然显示为开启状态

YunaiV 11 months ago
parent
commit
544d9030e6

+ 8 - 8
yudao-module-pay/yudao-module-pay-biz/src/main/java/cn/iocoder/yudao/module/pay/controller/admin/app/PayAppController.java

@@ -1,10 +1,9 @@
 package cn.iocoder.yudao.module.pay.controller.admin.app;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
 import cn.iocoder.yudao.framework.common.pojo.CommonResult;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
-import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
-import cn.iocoder.yudao.framework.pay.core.enums.channel.PayChannelEnum;
 import cn.iocoder.yudao.module.pay.controller.admin.app.vo.*;
 import cn.iocoder.yudao.module.pay.convert.app.PayAppConvert;
 import cn.iocoder.yudao.module.pay.dal.dataobject.app.PayAppDO;
@@ -14,14 +13,14 @@ import cn.iocoder.yudao.module.pay.service.channel.PayChannelService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.annotation.Resource;
+import jakarta.validation.Valid;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
-import jakarta.annotation.Resource;
-import jakarta.validation.Valid;
-import java.util.*;
+import java.util.List;
 
 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
 import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList;
@@ -89,9 +88,10 @@ public class PayAppController {
             return success(PageResult.empty());
         }
 
-        // 得到所有的应用编号,查出所有的渠道
-        Collection<Long> appIds = convertList(pageResult.getList(), PayAppDO::getId);
-        List<PayChannelDO> channels = channelService.getChannelListByAppIds(appIds);
+        // 得到所有的应用编号,查出所有的渠道,并移除未启用的渠道
+        List<PayChannelDO> channels = channelService.getChannelListByAppIds(
+                convertList(pageResult.getList(), PayAppDO::getId));
+        channels.removeIf(channel -> !CommonStatusEnum.ENABLE.getStatus().equals(channel.getStatus()));
 
         // 拼接后返回
         return success(PayAppConvert.INSTANCE.convertPage(pageResult, channels));