From 00dc5444aaee3535b1b4f6be43b96015bf8b3382 Mon Sep 17 00:00:00 2001 From: DongZeLiang <2746733890@qq.com> Date: Mon, 5 Aug 2024 15:20:17 +0800 Subject: [PATCH] =?UTF-8?q?feat():=20=E8=A1=A5=E9=BD=90=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=AE=A2=E6=88=B7=E7=9B=B8=E5=85=B3API=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 | 14 +++++ .../pay/domain/req/OrderCustomerUpdReq.java | 52 +++++++++++++++++++ .../OrderPayCustomerController.java | 41 ++++++++++++++- 3 files changed, 106 insertions(+), 1 deletion(-) create mode 100644 cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/req/OrderCustomerUpdReq.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 a1f179c..bb24a25 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 @@ -4,11 +4,14 @@ 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.cloud.pay.domain.req.OrderCustomerUpdReq; import com.muyu.common.core.utils.bean.BeanUtils; import com.muyu.common.core.web.domain.BaseEntity; import lombok.*; import lombok.experimental.SuperBuilder; +import java.util.function.Supplier; + /** * @Author: DongZeLiang * @date: 2024/7/30 @@ -59,4 +62,15 @@ public class OrderPayCustomer extends BaseEntity { .remark(req.getRemark()) .build(); } + + public static OrderPayCustomer updBuild(OrderCustomerUpdReq req, Supplier idSupplier){ + + return OrderPayCustomer.builder() + .id(idSupplier.get()) + .appName(req.getAppName()) + .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/OrderCustomerUpdReq.java b/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/req/OrderCustomerUpdReq.java new file mode 100644 index 0000000..6898dc7 --- /dev/null +++ b/cloud-pay-common/src/main/java/com/muyu/cloud/pay/domain/req/OrderCustomerUpdReq.java @@ -0,0 +1,52 @@ +package com.muyu.cloud.pay.domain.req; + +import com.muyu.common.core.validation.custom.IsSystemYesNo; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotEmpty; +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 +public class OrderCustomerUpdReq { + + /** + * 服务/客户名称 + */ + @NotEmpty(message = "服务客户名称不可为空") + @Schema(title = "服务/客户名称", type = "String", defaultValue = "会员服务", + description = "客户名称一般为微服务的中文名称,方便使用者进行区分", requiredProperties = {"appName"}) + private String appName; + + /** + * 服务/客户描述 + */ + @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/controller/OrderPayCustomerController.java b/cloud-pay-server/src/main/java/com/muyu/cloud/pay/controller/OrderPayCustomerController.java index cc1fa76..fdf766b 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 @@ -4,6 +4,7 @@ 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.req.OrderCustomerUpdReq; import com.muyu.cloud.pay.domain.resp.CustomerResp; import com.muyu.cloud.pay.service.OrderPayCustomerService; import com.muyu.common.core.domain.Result; @@ -75,6 +76,44 @@ public class OrderPayCustomerController { @Operation(summary = "客户信息添加",description = "添加支付平台客户信息,添加成功之后才可以使用支付类的产品") public Result save(@Validated @RequestBody OrderCustomerAddReq orderCustomerAddReq) { orderPayCustomerService.save(OrderPayCustomer.addBuild(orderCustomerAddReq)); - return Result.success(); + return Result.success(null, "操作成功"); + } + + /** + * 修改客户 + * @param orderCustomerUpdReq 修改客户请求信息 + * @return 修改结果 + */ + @PutMapping("/{orderCustomerId}") + @Operation(summary = "客户信息修改", description = "通过ID修改客户信息") + public Result update( + @Schema(title = "客户ID", type = "Long", defaultValue = "1", description = "修改客户信息需要依据的唯一条件") + @PathVariable("orderCustomerId") Long orderCustomerId, + @RequestBody @Validated OrderCustomerUpdReq orderCustomerUpdReq){ + orderPayCustomerService.updateById(OrderPayCustomer.updBuild(orderCustomerUpdReq, () -> orderCustomerId)); + return Result.success(null, "操作成功"); + } + + /** + * 删除客户 + * @param orderCustomerId 删除客户请求信息 + * @return 删除结果 + */ + @DeleteMapping("/{orderCustomerId}") + @Operation(summary = "客户信息删除", description = "通过ID删除客户信息") + public Result delete(@PathVariable("orderCustomerId") Long orderCustomerId){ + orderPayCustomerService.removeById(orderCustomerId); + return Result.success(null, "操作成功"); + } + + /** + * 通过ID获取客户 + * @param orderCustomerId ID + * @return 客户信息 + */ + @GetMapping("/{orderCustomerId}") + @Operation(summary = "通过ID获取客户信息", description = "通过ID获取客户信息") + public Result findById(@PathVariable("orderCustomerId") Long orderCustomerId){ + return Result.success(orderPayCustomerService.getById(orderCustomerId), "操作成功"); } }