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

master
Yueng 2024-08-10 20:04:06 +08:00
parent 0eb51d3bdd
commit 62889fb041
7 changed files with 104 additions and 91 deletions

View File

@ -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,7 +28,6 @@ public class OrderPayCustomer extends BaseEntity {
*/ */
@TableId(value = "id",type= IdType.AUTO) @TableId(value = "id",type= IdType.AUTO)
private Long id; private Long id;
/** /**
* / * /
*/ */
@ -42,30 +42,19 @@ public class OrderPayCustomer extends BaseEntity {
* *
*/ */
private String appDesc; private String appDesc;
/** /**
* *
*/ */
private String status; private String status;
// /** public static OrderPayCustomer addBuild(OrderCustomerAddReq req){
// * return OrderPayCustomer.builder()
// */ .appName(req.getAppName())
// private String createdBy; .appCode(req.getAppCode())
// .appDesc(req.getAppDesc())
// /** .status(req.getStatus())
// * .remark(req.getRemark())
// */ .build();
// private String createdTime; }
//
// /**
// *
// */
// private String updateBy;
//
// /**
// *
// */
// private String updatedTime;
} }

View File

@ -0,0 +1,63 @@
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 lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @Authoryang
* @Packagecom.muyu.cloud.pay.domain.req
* @Projectcloud-pay
* @nameOrderCustomerAddReq
* @Date2024/8/10 19:18
*/
@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 = "muyu-vip",defaultValue = "会员服务",
description = "客户编码,从[/customer/all]接口当中进行获取",requiredProperties = {"appCode"})
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;
}

View File

@ -16,16 +16,16 @@ import org.springframework.context.ConfigurableApplicationContext;
* @Date2024/7/31 21:25 * @Date2024/7/31 21:25
*/ */
@Log4j2 @Log4j2
@ForestScan(basePackages = "com.muyu.common.nacos.remote")
@EnableCustomConfig @EnableCustomConfig
@EnableMyFeignClients @EnableMyFeignClients
@SpringBootApplication @SpringBootApplication
public class MuYuPayApplication { public class MuYuPayApplication {
public static void main(String[] args) { public static void main(String[] args) {
ConfigurableApplicationContext applicationContext = SpringApplication.run(MuYuPayApplication.class, args); SpringApplication.run(MuYuPayApplication.class, args);
String[] beanDefinitionNames = applicationContext.getBeanFactory().getBeanDefinitionNames(); // ConfigurableApplicationContext applicationContext = SpringApplication.run(MuYuPayApplication.class, args);
for (String beanDefinitionName : beanDefinitionNames) { // String[] beanDefinitionNames = applicationContext.getBeanFactory().getBeanDefinitionNames();
log.info("beanDefinitionName:{}",beanDefinitionName); // for (String beanDefinitionName : beanDefinitionNames) {
} // log.info("beanDefinitionName:{}",beanDefinitionName);
// }
} }
} }

View File

@ -1,59 +0,0 @@
package com.muyu.cloud.pay;
import lombok.extern.log4j.Log4j2;
import org.springframework.boot.ConfigurableBootstrapContext;
import org.springframework.boot.SpringApplicationRunListener;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.core.env.ConfigurableEnvironment;
import java.time.Duration;
/**
* @Authoryang
* @Packagecom.muyu.cloud.pay
* @Projectcloud-pay
* @nameMySpringApplicationRunllstener
* @Date2024/8/9 23:22
*/
@Log4j2
public class MySpringApplicationRunlistener implements SpringApplicationRunListener {
public MySpringApplicationRunlistener() {
log.info("MySpringApplicationRunlistener");
}
@Override
public void starting(ConfigurableBootstrapContext bootstrapContext) {
log.info("执行:{}","starting");
}
@Override
public void environmentPrepared(ConfigurableBootstrapContext bootstrapContext, ConfigurableEnvironment environment) {
log.info("执行:{}","environmentPrepared");
}
@Override
public void contextPrepared(ConfigurableApplicationContext context) {
log.info("执行:{}","contextPrepared");
}
@Override
public void contextLoaded(ConfigurableApplicationContext context) {
log.info("执行:{}","contextLoaded");
}
@Override
public void started(ConfigurableApplicationContext context, Duration timeTaken) {
log.info("执行:{}","started");
}
@Override
public void ready(ConfigurableApplicationContext context, Duration timeTaken) {
log.info("执行:{}","ready");
}
@Override
public void failed(ConfigurableApplicationContext context, Throwable exception) {
log.info("执行:{}","failed");
}
}

View File

@ -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;
@ -69,4 +70,10 @@ public class OrderPayCustomerController {
orderPayCustomerService.getCustomerAllList() orderPayCustomerService.getCustomerAllList()
); );
} }
@PostMapping
@Operation(summary = "客户信息添加",description = "添加支付平台客户信息,添加成功之后才可以使用支付类的产品")
public Result<String> save(@Validated @RequestBody OrderCustomerAddReq orderCustomerAddReq){
orderPayCustomerService.save(OrderPayCustomer.addBuild(orderCustomerAddReq));
return Result.success();
}
} }

View File

@ -11,6 +11,7 @@ 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.nacos.service.NacosServiceService; import com.muyu.common.nacos.service.NacosServiceService;
import lombok.extern.log4j.Log4j2; import lombok.extern.log4j.Log4j2;
@ -86,8 +87,21 @@ public class OrderPayCustomerServiceImpl
LambdaQueryWrapper<OrderPayCustomer> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<OrderPayCustomer> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.select(OrderPayCustomer::getAppCode); queryWrapper.select(OrderPayCustomer::getAppCode);
List<OrderPayCustomer> orderPayCustomerList = this.list(queryWrapper); List<OrderPayCustomer> orderPayCustomerList = this.list(queryWrapper);
Set<String> customerSet = orderPayCustomerList.stream().map(OrderPayCustomer::getAppCode).collect(Collectors.toSet()); Set<String> customerSet
= orderPayCustomerList.stream().map(OrderPayCustomer::getAppCode).collect(Collectors.toSet());
return nacosServerAllList.stream().filter(nacosService -> !customerSet.contains(nacosService)).toList(); return nacosServerAllList.stream()
.filter(nacosService -> !customerSet.contains(nacosService))
.toList();
}
@Override
public boolean save(OrderPayCustomer orderPayCustomer) {
String appCode = orderPayCustomer.getAppCode();
List<String> customerAllList = this.getCustomerAllList();
if (!customerAllList.contains(appCode)){
throw new ServiceException("客户编码重复");
}
return super.save(orderPayCustomer);
} }
} }

View File

@ -1 +0,0 @@
com.muyu.cloud.pay.MySpringApplicationRunlistener