From aa22d8b4dbffa2bef1e8d51092da3cfb8c914857 Mon Sep 17 00:00:00 2001 From: DongZeLiang <2746733890@qq.com> Date: Mon, 5 Aug 2024 11:02:03 +0800 Subject: [PATCH] =?UTF-8?q?feat():=20=E5=A2=9E=E5=8A=A0=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E5=AE=A2=E6=88=B7=E6=94=AF=E4=BB=98=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cloud/pay/domain/OrderPayCustomer.java | 16 +++++ .../pay/domain/req/OrderCustomerAddReq.java | 65 +++++++++++++++++++ .../muyu/cloud/pay/MuYuPayApplication.java | 4 -- .../OrderPayCustomerController.java | 13 ++++ .../impl/OrderPayCustomerServiceImpl.java | 11 ++++ 5 files changed, 105 insertions(+), 4 deletions(-) create mode 100644 cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/req/OrderCustomerAddReq.java diff --git a/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/OrderPayCustomer.java b/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/OrderPayCustomer.java index 5299f51..a1f179c 100644 --- a/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/OrderPayCustomer.java +++ b/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/OrderPayCustomer.java @@ -3,6 +3,8 @@ 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.utils.bean.BeanUtils; import com.muyu.common.core.web.domain.BaseEntity; import lombok.*; import lombok.experimental.SuperBuilder; @@ -37,10 +39,24 @@ public class OrderPayCustomer extends BaseEntity { */ private String appCode; + /** + * 服务/客户编码 + */ + private String appDesc; + /** * 状态 */ private String status; + public static OrderPayCustomer addBuild(OrderCustomerAddReq req){ + return OrderPayCustomer.builder() + .appName(req.getAppName()) + .appCode(req.getAppCode()) + .appDesc(req.getAppDesc()) + .status(req.getStatus()) + .remark(req.getRemark()) + .build(); + } } diff --git a/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/req/OrderCustomerAddReq.java b/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/req/OrderCustomerAddReq.java new file mode 100644 index 0000000..f8fed33 --- /dev/null +++ b/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/req/OrderCustomerAddReq.java @@ -0,0 +1,65 @@ +package com.muyu.cloud.pay.domain.req; + +import com.muyu.cloud.pay.domain.OrderPayCustomer; +import com.muyu.common.core.validation.custom.IsSystemYesNo; +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 jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @Author: DongZeLiang + * @date: 2024/8/5 + * @Description: 客户添加 + * @Version: 1.0 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Tag(name = "支付服务客户添加请求对象", description = "根据入参进行客户服务的添加") +public class OrderCustomerAddReq { + + /** + * 服务/客户名称 + */ + @NotEmpty(message = "服务客户名称不可为空") + @Schema(title = "服务/客户名称", type = "String", defaultValue = "会员服务", + description = "客户名称一般为微服务的中文名称,方便使用者进行区分", requiredProperties = {"appName"}) + 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 = "客户使用状态不可为空") + @IsSystemYesNo + @Schema(title = "服务/客户开通状态", type = "String", defaultValue = "Y", + description = "状态为Y和N,如果为Y则客户可以使用支付接口,若为N则客户不可以使用支付类接口") + private String status; + + /** + * 客户备注 + */ + @Schema(title = "服务/客户备注", type = "String") + private String remark; + +} diff --git a/cloud-pay-server/src/main/java/com/muyu/cloud/pay/MuYuPayApplication.java b/cloud-pay-server/src/main/java/com/muyu/cloud/pay/MuYuPayApplication.java index ebec961..0b62d09 100644 --- a/cloud-pay-server/src/main/java/com/muyu/cloud/pay/MuYuPayApplication.java +++ b/cloud-pay-server/src/main/java/com/muyu/cloud/pay/MuYuPayApplication.java @@ -21,10 +21,6 @@ import org.springframework.context.ConfigurableApplicationContext; public class MuYuPayApplication { public static void main (String[] args) { ConfigurableApplicationContext applicationContext = SpringApplication.run(MuYuPayApplication.class, args); - String[] beanDefinitionNames = applicationContext.getBeanFactory().getBeanDefinitionNames(); - for (String beanDefinitionName : beanDefinitionNames) { - log.info("beanDefinitionName:{}" , beanDefinitionName); - } } } diff --git a/cloud-pay-server/src/main/java/com/muyu/cloud/pay/controller/OrderPayCustomerController.java b/cloud-pay-server/src/main/java/com/muyu/cloud/pay/controller/OrderPayCustomerController.java index 0a2bac4..cc1fa76 100644 --- a/cloud-pay-server/src/main/java/com/muyu/cloud/pay/controller/OrderPayCustomerController.java +++ b/cloud-pay-server/src/main/java/com/muyu/cloud/pay/controller/OrderPayCustomerController.java @@ -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; @@ -64,4 +65,16 @@ public class OrderPayCustomerController { orderPayCustomerService.getCustomerAllList() ); } + + /** + * 添加客户 + * @param orderCustomerAddReq 客户信息 + * @return 添加结果 + */ + @PostMapping + @Operation(summary = "客户信息添加",description = "添加支付平台客户信息,添加成功之后才可以使用支付类的产品") + public Result save(@Validated @RequestBody OrderCustomerAddReq orderCustomerAddReq) { + orderPayCustomerService.save(OrderPayCustomer.addBuild(orderCustomerAddReq)); + return Result.success(); + } } diff --git a/cloud-pay-server/src/main/java/com/muyu/cloud/pay/service/impl/OrderPayCustomerServiceImpl.java b/cloud-pay-server/src/main/java/com/muyu/cloud/pay/service/impl/OrderPayCustomerServiceImpl.java index ca7d999..f09fb62 100644 --- a/cloud-pay-server/src/main/java/com/muyu/cloud/pay/service/impl/OrderPayCustomerServiceImpl.java +++ b/cloud-pay-server/src/main/java/com/muyu/cloud/pay/service/impl/OrderPayCustomerServiceImpl.java @@ -10,6 +10,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.NacosServerService; import lombok.extern.log4j.Log4j2; @@ -90,4 +91,14 @@ public class OrderPayCustomerServiceImpl .filter(nacosServer -> !customerSet.contains(nacosServer)) .toList(); } + + @Override + public boolean save (OrderPayCustomer orderPayCustomer) { + String appCode = orderPayCustomer.getAppCode(); + List customerAllList = this.getCustomerAllList(); + if (!customerAllList.contains(appCode)){ + throw new ServiceException("客户编码重复"); + } + return super.save(orderPayCustomer); + } }