Explorar el Código

feat : 接口对接修改

bilingfeng hace 2 años
padre
commit
9064f9f138

+ 11 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/ChoiceController.java

@@ -64,6 +64,9 @@ public class ChoiceController {
     @Autowired
     private IPayApplicationService payApplicationService;
 
+    @Autowired
+    private IPayDeviceService payDeviceService;
+
     @ApiOperation(value = "vip等级选择列表")
     @GetMapping(value = "/vip/level/list")
     @PreAuthorize(permissionKey = "sdk:choiceVipLevel:list")
@@ -144,6 +147,14 @@ public class ChoiceController {
         return new ResultVO<>(payWayService.payWayChoiceList());
     }
 
+    @ApiOperation(value = "支付类型选择列表")
+    @GetMapping(value = "/pay/device/list")
+    @PreAuthorize(permissionKey = "sdk:payDeviceChoice:list")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = PayDeviceChoiceVO.class, responseContainer = "list")})
+    public ResultVO<List<PayDeviceChoiceVO>> payDeviceChoiceList() {
+        return new ResultVO<>(payDeviceService.payDeviceChoiceList());
+    }
+
     @ApiOperation(value = "商户选择列表")
     @GetMapping(value = "/pay/merchant/list")
     @PreAuthorize(permissionKey = "sdk:payMerchantChoice:list")

+ 12 - 4
game-module/game-manage/src/main/java/com/zanxiang/manage/controller/PayMerchantController.java

@@ -3,6 +3,7 @@ package com.zanxiang.manage.controller;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.zanxiang.common.domain.ResultVO;
 import com.zanxiang.erp.security.annotation.PreAuthorize;
+import com.zanxiang.manage.domain.params.PayMerchantAddUpdateParam;
 import com.zanxiang.manage.domain.params.PayMerchantListParam;
 import com.zanxiang.manage.domain.vo.PayMerchantListVO;
 import com.zanxiang.manage.service.IPayMerchantService;
@@ -15,10 +16,9 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 /**
- * 游戏支付商户配置表 前端控制器
- *
- * @author xufeng
- * @date 2022-06-16 19:04
+ * @author : lingfeng
+ * @time : 2022-11-25
+ * @description : 商户管理
  */
 @Api(tags = "商户号管理")
 @RestController
@@ -28,6 +28,14 @@ public class PayMerchantController {
     @Autowired
     private IPayMerchantService payMerchantService;
 
+    @ApiOperation(value = "商户添加或者更新")
+    @PostMapping(value = "/add/or/update")
+    @PreAuthorize(permissionKey = "manage:payMerchant:addOrUpdate")
+    @ApiResponses(value = {@ApiResponse(code = 200, message = "成功", response = Boolean.class)})
+    public ResultVO<Boolean> list(@Validated @RequestBody PayMerchantAddUpdateParam param) {
+        return new ResultVO<>(payMerchantService.addOrUpdate(param));
+    }
+
     @ApiOperation(value = "商户列表查询")
     @PostMapping(value = "/list")
     @PreAuthorize(permissionKey = "manage:payMerchant:list")

+ 91 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantAddUpdateParam.java

@@ -0,0 +1,91 @@
+package com.zanxiang.manage.domain.params;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+/**
+ * @author : lingfeng
+ * @time : 2023-02-13
+ * @description : 商户添加更新参数
+ */
+@Data
+public class PayMerchantAddUpdateParam {
+
+    /**
+     * 商户id
+     */
+    @ApiModelProperty(notes = "商户id, 传则更新, 不传则添加")
+    private Long id;
+
+    /**
+     * 商户平台
+     */
+    @NotNull(message = "商户平台id不可为空")
+    @ApiModelProperty(notes = "商户平台id")
+    private Long payWayId;
+
+    /**
+     * 商户号
+     */
+    @NotNull(message = "商户号不可为空")
+    @ApiModelProperty(notes = "商户号")
+    private String merchantNo;
+
+    /**
+     * 商户主体
+     */
+    @NotNull(message = "商户主体不可为空")
+    @ApiModelProperty(notes = "商户主体")
+    private String merchantName;
+
+    /**
+     * 支付类型id列表
+     */
+    @ApiModelProperty(notes = "支付类型id列表")
+    private List<Long> payDeviceIdList;
+
+    /**
+     * 登录账号
+     */
+    @ApiModelProperty(notes = "登录账号")
+    private String account;
+
+    /**
+     * 登录密码
+     */
+    @ApiModelProperty(notes = "登录密码")
+    private String password;
+
+    /**
+     * 管理员
+     */
+    @ApiModelProperty(notes = "管理员")
+    private String manager;
+
+    /**
+     * 绑定手机号
+     */
+    @ApiModelProperty(notes = "绑定手机号")
+    private String mobile;
+
+    /**
+     * 联系邮箱
+     */
+    @ApiModelProperty(notes = "联系邮箱")
+    private String email;
+
+    /**
+     * 备注
+     */
+    @ApiModelProperty(notes = "备注")
+    private String remark;
+
+    /**
+     * 密钥
+     */
+    @ApiModelProperty(notes = "密钥")
+    private String secretKey;
+}

+ 0 - 135
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/params/PayMerchantParam.java

@@ -1,135 +0,0 @@
-package com.zanxiang.manage.domain.params;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-import lombok.NonNull;
-
-import java.io.Serializable;
-import java.math.BigDecimal;
-import java.util.Date;
-
-/**
- * @author xufeng
- * @date 2022/6/16 19:14
- */
-@Data
-@NoArgsConstructor
-public class PayMerchantParam implements Serializable {
-
-    private Long id;
-
-    @ApiModelProperty(notes = "支付方式id")
-    private Integer payWayId;
-
-    @ApiModelProperty(notes = "商户号")
-    @NonNull
-    private String merchantNo;
-
-    /**
-     * 商户名称
-     */
-    @ApiModelProperty(notes = "商户名称")
-    private String merchantName;
-
-    /**
-     * 支持支付方式(pc/h5/app/)
-     */
-    @ApiModelProperty(notes = "支持支付方式(pc/h5/app/)")
-    private String payDevice;
-
-    /**
-     * 商户号登录账号
-     */
-    @ApiModelProperty(notes = "商户号登录账号")
-    private String loginName;
-
-    /**
-     * 商户号登录密码
-     */
-    @ApiModelProperty(notes = "商户号登录密码")
-    private String loginPassword;
-
-    /**
-     * 管理员
-     */
-    @ApiModelProperty(notes = "管理员")
-    private String managePerson;
-
-    /**
-     * 绑定手机号
-     */
-    @ApiModelProperty(notes = "绑定手机号")
-    private String mobile;
-
-    /**
-     * 绑定邮箱
-     */
-    @ApiModelProperty(notes = "绑定邮箱")
-    private String email;
-
-    @ApiModelProperty(notes = "状态 1 不可用 0 可用")
-    private Integer status;
-
-    /**
-     * 支付配置json (存储根据payway设置后,配置的具体商户号信息)
-     */
-    @ApiModelProperty(notes = "支付配置json")
-    private String payConfig;
-
-    /**
-     * 最大支付额度锁 0 正常 1 锁定
-     */
-    @ApiModelProperty(notes = "最大支付额度锁 0 正常 1 锁定")
-    private Integer maxPayLock;
-
-    /**
-     * 最大支付额度
-     */
-    private BigDecimal maxPayAmount;
-
-    /**
-     * 月已用支付额度
-     */
-    private BigDecimal mouthPayAmount;
-
-    /**
-     * 月更新日期
-     */
-    private Date mouthUpdateDate;
-
-    /**
-     * 周已用额度
-     */
-    private BigDecimal weakerPayAmount;
-
-    /**
-     * 周更新日期
-     */
-    private Date weakerUpdateDate;
-
-    /**
-     * 日已用额度
-     */
-    private BigDecimal dayPayAmount;
-
-    /**
-     * 日更新日期
-     */
-    private Date dayUpdateDate;
-
-    /**
-     * 备注
-     */
-    @ApiModelProperty(notes = "备注")
-    private String remark;
-
-    /**
-     * 是否已删除 1 已删除 2 正常
-     */
-    @ApiModelProperty(notes = "是否已删除 1 已删除 0 正常")
-    private Integer isDelete;
-
-
-    private Integer pageNum;
-}

+ 25 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayDeviceChoiceVO.java

@@ -0,0 +1,25 @@
+package com.zanxiang.manage.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author : lingfeng
+ * @time : 2023-02-13
+ * @description : 支付类型选择列表
+ */
+@Data
+public class PayDeviceChoiceVO {
+
+    /**
+     * 支付类型
+     */
+    @ApiModelProperty(notes = "支付类型")
+    private Long id;
+
+    /**
+     * 支付类型名称
+     */
+    @ApiModelProperty(notes = "支付类型")
+    private String payDeviceName;
+}

+ 1 - 1
game-module/game-manage/src/main/java/com/zanxiang/manage/domain/vo/PayMerchantListVO.java

@@ -46,7 +46,7 @@ public class PayMerchantListVO {
      * 支付类型列表
      */
     @ApiModelProperty(notes = "支付类型列表")
-    private List<String> payDeviceNameList;
+    private List<PayDeviceChoiceVO> payDeviceChoiceVOList;
 
     /**
      * 商户号总收款

+ 16 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/IPayDeviceService.java

@@ -2,8 +2,10 @@ package com.zanxiang.manage.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zanxiang.manage.domain.dto.PayDeviceDTO;
+import com.zanxiang.manage.domain.vo.PayDeviceChoiceVO;
 import com.zanxiang.mybatis.entity.PayDevice;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -13,10 +15,24 @@ import java.util.Map;
  */
 public interface IPayDeviceService extends IService<PayDevice> {
 
+    /**
+     * 支付方式选择列表
+     *
+     * @return {@link List}<{@link PayDeviceChoiceVO}>
+     */
+    List<PayDeviceChoiceVO> payDeviceChoiceList();
+
     /**
      * 支付方式
      *
      * @return {@link Map}<{@link Long}, {@link PayDeviceDTO}>
      */
     Map<Long, PayDeviceDTO> payDeviceMap();
+
+    /**
+     * 支付方式选择列表
+     *
+     * @return {@link Map}<{@link Long}, {@link PayDeviceChoiceVO}>
+     */
+    Map<Long, PayDeviceChoiceVO> payDeviceChoiceMap();
 }

+ 13 - 5
game-module/game-manage/src/main/java/com/zanxiang/manage/service/IPayMerchantService.java

@@ -2,6 +2,7 @@ package com.zanxiang.manage.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.zanxiang.manage.domain.params.PayMerchantAddUpdateParam;
 import com.zanxiang.manage.domain.params.PayMerchantListParam;
 import com.zanxiang.manage.domain.vo.PayMerchantChoiceVO;
 import com.zanxiang.manage.domain.vo.PayMerchantListVO;
@@ -10,13 +11,20 @@ import com.zanxiang.mybatis.entity.PayMerchant;
 import java.util.List;
 
 /**
- * 游戏支付商户配置表 服务类接口
- *
- * @author xufeng
- * @date 2022-06-16 19:04
+ * @author : lingfeng
+ * @time : 2022-11-25
+ * @description : 商户管理
  */
 public interface IPayMerchantService extends IService<PayMerchant> {
 
+    /**
+     * 添加或更新
+     *
+     * @param param 参数
+     * @return boolean
+     */
+    boolean addOrUpdate(PayMerchantAddUpdateParam param);
+
     /**
      * 支付方式选择列表查询
      *
@@ -39,7 +47,7 @@ public interface IPayMerchantService extends IService<PayMerchant> {
      * @param status 状态
      * @return {@link Boolean}
      */
-    Boolean statusUpdate(Long id, Integer status);
+    boolean statusUpdate(Long id, Integer status);
 
     /**
      * 删除通过id

+ 22 - 0
game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/PayDeviceServiceImpl.java

@@ -1,9 +1,11 @@
 package com.zanxiang.manage.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.zanxiang.common.utils.bean.BeanUtils;
 import com.zanxiang.manage.domain.dto.PayDeviceDTO;
+import com.zanxiang.manage.domain.vo.PayDeviceChoiceVO;
 import com.zanxiang.manage.service.IPayDeviceService;
 import com.zanxiang.mybatis.entity.PayDevice;
 import com.zanxiang.mybatis.mapper.PayDeviceMapper;
@@ -25,6 +27,14 @@ import java.util.stream.Collectors;
 @Slf4j
 public class PayDeviceServiceImpl extends ServiceImpl<PayDeviceMapper, PayDevice> implements IPayDeviceService {
 
+    @Override
+    public List<PayDeviceChoiceVO> payDeviceChoiceList() {
+        List<PayDevice> payDeviceList = super.list(new LambdaQueryWrapper<PayDevice>()
+                .select(PayDevice::getId, PayDevice::getPayDeviceName)
+        );
+        return BeanUtils.copyList(payDeviceList, PayDeviceChoiceVO.class);
+    }
+
     @Override
     public Map<Long, PayDeviceDTO> payDeviceMap() {
         //查询
@@ -36,4 +46,16 @@ public class PayDeviceServiceImpl extends ServiceImpl<PayDeviceMapper, PayDevice
         //构造返回
         return list.stream().collect(Collectors.toMap(PayDeviceDTO::getId, Function.identity()));
     }
+
+    @Override
+    public Map<Long, PayDeviceChoiceVO> payDeviceChoiceMap() {
+        //查询
+        List<PayDevice> payDeviceList = super.list();
+        if (CollectionUtils.isEmpty(payDeviceList)) {
+            return Collections.emptyMap();
+        }
+        List<PayDeviceChoiceVO> list = BeanUtils.copyList(payDeviceList, PayDeviceChoiceVO.class);
+        //构造返回
+        return list.stream().collect(Collectors.toMap(PayDeviceChoiceVO::getId, Function.identity()));
+    }
 }

+ 115 - 24
game-module/game-manage/src/main/java/com/zanxiang/manage/service/impl/PayMerchantServiceImpl.java

@@ -3,34 +3,124 @@ package com.zanxiang.manage.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.zanxiang.common.enums.PayDeviceEnum;
+import com.zanxiang.common.enums.DeleteEnum;
 import com.zanxiang.common.enums.PayWayEnum;
+import com.zanxiang.common.enums.StatusEnum;
+import com.zanxiang.common.exception.BaseException;
 import com.zanxiang.common.utils.bean.BeanUtils;
+import com.zanxiang.manage.domain.dto.PayWayDTO;
+import com.zanxiang.manage.domain.params.PayMerchantAddUpdateParam;
 import com.zanxiang.manage.domain.params.PayMerchantListParam;
+import com.zanxiang.manage.domain.vo.PayDeviceChoiceVO;
 import com.zanxiang.manage.domain.vo.PayMerchantChoiceVO;
 import com.zanxiang.manage.domain.vo.PayMerchantListVO;
+import com.zanxiang.manage.service.IPayDeviceService;
 import com.zanxiang.manage.service.IPayMerchantService;
+import com.zanxiang.manage.service.IPayWayService;
+import com.zanxiang.module.util.JsonUtil;
 import com.zanxiang.mybatis.entity.PayMerchant;
 import com.zanxiang.mybatis.mapper.PayMerchantMapper;
 import org.apache.logging.log4j.util.Strings;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDateTime;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
- * 游戏支付商户配置表 服务实现类
- *
- * @author xufeng
- * @date 2022-06-16 19:04
+ * @author : lingfeng
+ * @time : 2022-11-25
+ * @description : 商户管理
  */
 @Service
 public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMerchant> implements IPayMerchantService {
 
+    @Autowired
+    private IPayDeviceService payDeviceService;
+
+    @Autowired
+    private IPayWayService payWayService;
+
+    @Override
+    public boolean addOrUpdate(PayMerchantAddUpdateParam param) {
+        Map<Long, PayWayDTO> payWayMap = payWayService.payWayMap();
+        String payDeviceIds = null;
+        if (CollectionUtils.isNotEmpty(param.getPayDeviceIdList())) {
+            payDeviceIds = param.getPayDeviceIdList().stream().map(String::valueOf).collect(Collectors.joining(","));
+        }
+        Long payWayId = param.getPayWayId();
+        String payConfig = null;
+        if (Strings.isNotBlank(param.getSecretKey())) {
+            Map<String, String> configMap = new HashMap<>(4);
+            if (Objects.equals(payWayId.intValue(), PayWayEnum.ALI_PAY.getPayWayId())) {
+                configMap.put("protocol", "https");
+                configMap.put("gatewayHost", "openapi.alipay.com");
+                configMap.put("signType", "RSA2");
+                configMap.put("alipayPublicKey", param.getSecretKey());
+            }
+            if (Objects.equals(payWayId.intValue(), PayWayEnum.WX_PAY.getPayWayId())) {
+                configMap.put("mchId", param.getMerchantNo());
+                configMap.put("apiKey", param.getSecretKey());
+                configMap.put("signType", "MD5");
+            }
+            payConfig = JsonUtil.toString(configMap);
+        }
+        Long id = param.getId();
+        PayMerchant payMerchant;
+        if (id == null) {
+            payMerchant = PayMerchant.builder()
+                    .merchantNo(param.getMerchantNo())
+                    .merchantName(param.getMerchantName())
+                    .payWayId(param.getPayWayId())
+                    .payWayName(payWayMap.get(payWayId) == null ? null : payWayMap.get(payWayId).getPayWayName())
+                    .account(param.getAccount())
+                    .password(param.getPassword())
+                    .manager(param.getManager())
+                    .mobile(param.getMobile())
+                    .email(param.getEmail())
+                    .payConfig(payConfig)
+                    .maxPayLock(StatusEnum.YES.getCode())
+                    .remark(param.getRemark())
+                    .status(StatusEnum.YES.getCode())
+                    .isDelete(DeleteEnum.NO.getCode())
+                    .createTime(LocalDateTime.now())
+                    .updateTime(LocalDateTime.now())
+                    .payDeviceIds(payDeviceIds)
+                    .build();
+        } else {
+            payMerchant = super.getById(id);
+            if (payMerchant == null) {
+                throw new BaseException("参数错误, 商户信息不存在");
+            }
+            //商户号更新, 判断是否已经存在商户号
+            if (!Objects.equals(payMerchant.getMerchantNo(), param.getMerchantNo())) {
+                int count = super.count(new LambdaQueryWrapper<PayMerchant>()
+                        .eq(PayMerchant::getMerchantNo, param.getMerchantNo()));
+                if (count > 0) {
+                    throw new BaseException("参数错误, 商户号已经存在, 不可更新为该商户号");
+                }
+            }
+            payMerchant.setMerchantNo(param.getMerchantNo());
+            payMerchant.setMerchantName(param.getMerchantName());
+            payMerchant.setPayWayId(param.getPayWayId());
+            payMerchant.setPayWayName(payWayMap.get(payWayId) == null ? null : payWayMap.get(payWayId).getPayWayName());
+            payMerchant.setAccount(param.getAccount());
+            payMerchant.setPassword(param.getPassword());
+            payMerchant.setManager(param.getManager());
+            payMerchant.setMobile(param.getMobile());
+            payMerchant.setEmail(param.getEmail());
+            payMerchant.setPayConfig(payConfig);
+            payMerchant.setRemark(param.getRemark());
+            payMerchant.setUpdateTime(LocalDateTime.now());
+            payMerchant.setPayDeviceIds(payDeviceIds);
+        }
+        return super.saveOrUpdate(payMerchant);
+    }
+
     @Override
     public List<PayMerchantChoiceVO> payMerchantChoiceList() {
         List<PayMerchant> payMerchantList = super.list(new LambdaQueryWrapper<PayMerchant>().
@@ -44,40 +134,41 @@ public class PayMerchantServiceImpl extends ServiceImpl<PayMerchantMapper, PayMe
         if (Objects.equals(param.getPayWayId(), PayWayEnum.MI_PAY.getPayWayId())) {
             param.setPayWayId(PayWayEnum.WX_PAY.getPayWayId());
         }
+        //支付方式
+        Map<Long, PayDeviceChoiceVO> payDeviceMap = payDeviceService.payDeviceChoiceMap();
+        //查询
         return page(param.toPage(), new LambdaQueryWrapper<PayMerchant>()
                 .eq(param.getMerchantNo() != null, PayMerchant::getMerchantNo, param.getMerchantNo())
                 .eq(param.getPayWayId() != null, PayMerchant::getPayWayId, param.getPayWayId())
                 .eq(param.getStatus() != null, PayMerchant::getStatus, param.getStatus())
                 .like(Strings.isNotBlank(param.getMerchantName()), PayMerchant::getMerchantName, param.getMerchantName())
                 .orderByDesc(PayMerchant::getCreateTime))
-                .convert(this::toVo);
+                .convert(payMerchant -> this.toVo(payMerchant, payDeviceMap));
     }
 
-    private PayMerchantListVO toVo(PayMerchant payMerchant) {
+    private PayMerchantListVO toVo(PayMerchant payMerchant, Map<Long, PayDeviceChoiceVO> payDeviceMap) {
         PayMerchantListVO payMerchantListVO = BeanUtils.copy(payMerchant, PayMerchantListVO.class);
         if (payMerchantListVO == null) {
             return null;
         }
-        List<String> payDeviceNameList = new ArrayList<>();
-        if (Objects.equals(payMerchant.getPayWayId().intValue(), PayWayEnum.ALI_PAY.getPayWayId())) {
-            payDeviceNameList.add(PayDeviceEnum.PC_PAY.getPayDeviceName());
-            payDeviceNameList.add(PayDeviceEnum.H5_PAY.getPayDeviceName());
-            payDeviceNameList.add(PayDeviceEnum.APP_PAY.getPayDeviceName());
-        }
-        if (Objects.equals(payMerchant.getPayWayId().intValue(), PayWayEnum.WX_PAY.getPayWayId())) {
-            payDeviceNameList.add(PayDeviceEnum.PC_PAY.getPayDeviceName());
-            payDeviceNameList.add(PayDeviceEnum.H5_PAY.getPayDeviceName());
-            payDeviceNameList.add(PayDeviceEnum.APPLET_PAY.getPayDeviceName());
-            payDeviceNameList.add(PayDeviceEnum.MI_PAY.getPayDeviceName());
-            payDeviceNameList.add(PayDeviceEnum.CUSTOM_PAY.getPayDeviceName());
+        List<PayDeviceChoiceVO> payDeviceChoiceVOList = new ArrayList<>();
+        String payDeviceIds = payMerchant.getPayDeviceIds();
+        if (Strings.isNotBlank(payDeviceIds)) {
+            String[] deviceIdArray = payDeviceIds.split(",");
+            for (String deviceId : deviceIdArray) {
+                PayDeviceChoiceVO payDeviceChoiceVO = payDeviceMap.get(Long.valueOf(deviceId));
+                if (payDeviceChoiceVO != null) {
+                    payDeviceChoiceVOList.add(payDeviceChoiceVO);
+                }
+            }
         }
-        payMerchantListVO.setPayDeviceNameList(payDeviceNameList);
+        payMerchantListVO.setPayDeviceChoiceVOList(payDeviceChoiceVOList);
         return payMerchantListVO;
     }
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public Boolean statusUpdate(Long id, Integer status) {
+    public boolean statusUpdate(Long id, Integer status) {
         return super.update(new LambdaUpdateWrapper<PayMerchant>()
                 .set(PayMerchant::getStatus, status)
                 .set(PayMerchant::getUpdateTime, LocalDateTime.now())

+ 9 - 0
game-module/game-mybatis/src/main/java/com/zanxiang/mybatis/entity/PayMerchant.java

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
@@ -19,6 +21,8 @@ import java.time.LocalDateTime;
  */
 @Data
 @NoArgsConstructor
+@AllArgsConstructor
+@Builder
 @TableName("t_pay_merchant")
 public class PayMerchant implements Serializable {
 
@@ -150,4 +154,9 @@ public class PayMerchant implements Serializable {
      * 更新时间
      */
     private LocalDateTime updateTime;
+
+    /**
+     * 支付方式id列表
+     */
+    private String payDeviceIds;
 }