feat():增加新增客户支付接口

master
86191 2024-08-07 17:11:54 +08:00
parent f47bb7f640
commit 9da7c44f44
4 changed files with 94 additions and 0 deletions

View File

@ -3,6 +3,7 @@ package com.muyu.cloud.pay.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.muyu.cloud.pay.domain.req.OrderCustomerAddReq;
import com.muyu.common.core.web.domain.BaseEntity;
import lombok.*;
import lombok.experimental.SuperBuilder;
@ -27,8 +28,23 @@ public class OrderPayCustomer extends BaseEntity {
* /
*/
private String appCode;
/**
*
*/
private String appDesc;
/**
*
*/
private String status;
public static OrderPayCustomer addBuild(OrderCustomerAddReq orderCustomerAddReq){
return OrderPayCustomer.builder()
.appCode(orderCustomerAddReq.getAppCode())
.appDesc(orderCustomerAddReq.getAppDesc())
.appName(orderCustomerAddReq.getAppName())
.status(orderCustomerAddReq.getStatus())
.remark(orderCustomerAddReq.getRemark())
.build();
}
}

View File

@ -0,0 +1,50 @@
package com.muyu.cloud.pay.domain.req;
import com.muyu.common.core.validation.IsSystemPayType;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Tag(name = "支付服务客户添加请求对象",description = "根据入参进行客户服务的添加")
public class OrderCustomerAddReq {
/**
* /
*/
@NotEmpty(message = "服务/客户名称不能为空")
@Schema(title = "服务/客户名称",type = "String",defaultValue = "会员服务",description = "客户名称一般为微服务的中文名称,方便使用者进行区分")
private String appName;
/**
* /
*/
@NotBlank(message = "服务/客户编码不能为空")
@Schema(title = "服务/客户编码",type = "String",defaultValue = "muyu-vip",
description = "客户编码,从[/customer/all]接口当中进行获取",requiredProperties = {"appName"})
private String appCode;
/**
*
*/
@Schema(title = "服务/客户描述",type = "String")
private String appDesc;
/**
*
*/
@NotBlank(message = "状态不能为空")
@IsSystemPayType
@Schema(title = "状态为Y和N,如果为Y则客户可以使用支付接口,若为N则客户不可以使用支付类接口")
private String status;
/**
*
*/
@Schema(title = "服务/客户备注",type = "String")
private String remark;
}

View File

@ -3,6 +3,7 @@ package com.muyu.cloud.pay.controller;
import com.dtflys.forest.springboot.annotation.ForestScannerRegister;
import com.muyu.cloud.pay.domain.OrderPayCustomer;
import com.muyu.cloud.pay.domain.req.CustomerListReq;
import com.muyu.cloud.pay.domain.req.OrderCustomerAddReq;
import com.muyu.cloud.pay.domain.resp.CustomerResp;
import com.muyu.cloud.pay.service.OrderPayCustomerService;
import com.muyu.common.core.domain.Result;
@ -59,4 +60,15 @@ public class OrderPayCustomerController {
);
}
/**
*
* @param orderCustomerAddReq
* @return
*/
public Result<String> save(@Validated @RequestBody OrderCustomerAddReq orderCustomerAddReq){
orderPayCustomerService.save(OrderPayCustomer.addBuild(orderCustomerAddReq));
return Result.success();
}
}

View File

@ -9,6 +9,7 @@ import com.muyu.cloud.pay.domain.resp.CustomerResp;
import com.muyu.cloud.pay.mapper.OrderPayCustomerMapper;
import com.muyu.cloud.pay.service.OrderPayCustomerService;
import com.muyu.cloud.pay.service.OrderPayService;
import com.muyu.common.core.exception.ServiceException;
import com.muyu.common.core.utils.StringUtils;
import com.muyu.common.nacos.service.NacosService;
import lombok.extern.slf4j.Slf4j;
@ -76,4 +77,19 @@ public class OrderPayCustomerServiceImpl extends ServiceImpl<OrderPayCustomerMap
.filter(nacosService -> !customerSet.contains(nacosService))
.toList();
}
@Override
public boolean save(OrderPayCustomer orderPayCustomer) {
String appCode = orderPayCustomer.getAppCode();
List<String> nacosServerAllList = nacosService.nacosServerAllList();
if (!nacosServerAllList.contains(appCode)){
throw new ServiceException("客户编码违法");
}
LambdaQueryWrapper<OrderPayCustomer> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(OrderPayCustomer::getAppCode, appCode);
if (this.count(queryWrapper) > 0) {
throw new ServiceException("该客户已接入");
}
return super.save(orderPayCustomer);
}
}