feat():增加新增客户支付接口
parent
f47bb7f640
commit
9da7c44f44
|
@ -3,6 +3,7 @@ package com.muyu.cloud.pay.domain;
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.muyu.cloud.pay.domain.req.OrderCustomerAddReq;
|
||||||
import com.muyu.common.core.web.domain.BaseEntity;
|
import com.muyu.common.core.web.domain.BaseEntity;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import lombok.experimental.SuperBuilder;
|
import lombok.experimental.SuperBuilder;
|
||||||
|
@ -27,8 +28,23 @@ public class OrderPayCustomer extends BaseEntity {
|
||||||
* 服务/客户编码
|
* 服务/客户编码
|
||||||
*/
|
*/
|
||||||
private String appCode;
|
private String appCode;
|
||||||
|
/**
|
||||||
|
* 客户描述
|
||||||
|
*/
|
||||||
|
private String appDesc;
|
||||||
/**
|
/**
|
||||||
* 状态
|
* 状态
|
||||||
*/
|
*/
|
||||||
private String status;
|
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();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
||||||
|
}
|
|
@ -3,6 +3,7 @@ package com.muyu.cloud.pay.controller;
|
||||||
import com.dtflys.forest.springboot.annotation.ForestScannerRegister;
|
import com.dtflys.forest.springboot.annotation.ForestScannerRegister;
|
||||||
import com.muyu.cloud.pay.domain.OrderPayCustomer;
|
import com.muyu.cloud.pay.domain.OrderPayCustomer;
|
||||||
import com.muyu.cloud.pay.domain.req.CustomerListReq;
|
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.domain.resp.CustomerResp;
|
||||||
import com.muyu.cloud.pay.service.OrderPayCustomerService;
|
import com.muyu.cloud.pay.service.OrderPayCustomerService;
|
||||||
import com.muyu.common.core.domain.Result;
|
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();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,6 +9,7 @@ import com.muyu.cloud.pay.domain.resp.CustomerResp;
|
||||||
import com.muyu.cloud.pay.mapper.OrderPayCustomerMapper;
|
import com.muyu.cloud.pay.mapper.OrderPayCustomerMapper;
|
||||||
import com.muyu.cloud.pay.service.OrderPayCustomerService;
|
import com.muyu.cloud.pay.service.OrderPayCustomerService;
|
||||||
import com.muyu.cloud.pay.service.OrderPayService;
|
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.core.utils.StringUtils;
|
||||||
import com.muyu.common.nacos.service.NacosService;
|
import com.muyu.common.nacos.service.NacosService;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
@ -76,4 +77,19 @@ public class OrderPayCustomerServiceImpl extends ServiceImpl<OrderPayCustomerMap
|
||||||
.filter(nacosService -> !customerSet.contains(nacosService))
|
.filter(nacosService -> !customerSet.contains(nacosService))
|
||||||
.toList();
|
.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);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue