init
This commit is contained in:
3
sl-express-ms-trade-domain/.gitignore
vendored
Normal file
3
sl-express-ms-trade-domain/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
.idea
|
||||
target/
|
||||
*.iml
|
41
sl-express-ms-trade-domain/pom.xml
Normal file
41
sl-express-ms-trade-domain/pom.xml
Normal file
@@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<parent>
|
||||
<groupId>com.sl-express</groupId>
|
||||
<artifactId>sl-express-parent</artifactId>
|
||||
<version>1.4</version>
|
||||
</parent>
|
||||
|
||||
<groupId>com.sl-express.ms.trade</groupId>
|
||||
<artifactId>sl-express-ms-trade-domain</artifactId>
|
||||
<version>1.1-SNAPSHOT</version>
|
||||
<description>交易(支付)微服务 - 实体</description>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>11</maven.compiler.source>
|
||||
<maven.compiler.target>11</maven.compiler.target>
|
||||
<sl-express-common.version>1.2-SNAPSHOT</sl-express-common.version>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.sl-express.common</groupId>
|
||||
<artifactId>sl-express-common</artifactId>
|
||||
<version>${sl-express-common.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.xiaoymin</groupId>
|
||||
<artifactId>knife4j-spring-boot-starter</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
@@ -0,0 +1,56 @@
|
||||
package com.sl.ms.trade.domain;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName PayChannelVo.java
|
||||
* @Description 支付通道
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("支付通道对象")
|
||||
public class PayChannelDTO {
|
||||
|
||||
@ApiModelProperty(value = "主键")
|
||||
private Long id;
|
||||
@ApiModelProperty(value = "通道名称")
|
||||
private String channelName;
|
||||
@ApiModelProperty(value = "通道唯一标记")
|
||||
private String channelLabel;
|
||||
@ApiModelProperty(value = "域名")
|
||||
private String domain;
|
||||
@ApiModelProperty(value = "商户appid")
|
||||
private String appId;
|
||||
@ApiModelProperty(value = "公钥")
|
||||
private String publicKey;
|
||||
@ApiModelProperty(value = "商户私钥")
|
||||
private String merchantPrivateKey;
|
||||
@ApiModelProperty(value = "其他配置")
|
||||
private String otherConfig;
|
||||
@ApiModelProperty(value = "AES混淆密钥")
|
||||
private String encryptKey;
|
||||
@ApiModelProperty(value = "说明")
|
||||
private String remark;
|
||||
@ApiModelProperty(value = "选中节点")
|
||||
private String[] checkedIds;
|
||||
@ApiModelProperty(value = "回调地址")
|
||||
private String notifyUrl;
|
||||
@ApiModelProperty(value = "是否有效")
|
||||
protected String enableFlag;
|
||||
@ApiModelProperty(value = "商户号")
|
||||
private Long enterpriseId;
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
protected LocalDateTime createdTime;
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
protected LocalDateTime updatedTime;
|
||||
}
|
@@ -0,0 +1,51 @@
|
||||
package com.sl.ms.trade.domain;
|
||||
|
||||
import com.sl.ms.trade.enums.RefundStatusEnum;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @Description:
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("退款对象")
|
||||
public class RefundRecordDTO {
|
||||
|
||||
@ApiModelProperty(value = "主键")
|
||||
private Long id;
|
||||
@ApiModelProperty(value = "交易系统订单号【对于三方来说:商户订单】")
|
||||
private Long tradingOrderNo;
|
||||
@ApiModelProperty(value = "业务系统订单号")
|
||||
private Long productOrderNo;
|
||||
@ApiModelProperty(value = "本次退款订单号")
|
||||
private String refundNo;
|
||||
@ApiModelProperty(value = "商户号")
|
||||
private Long enterpriseId;
|
||||
@ApiModelProperty(value = "退款渠道【支付宝、微信、现金】")
|
||||
private String tradingChannel;
|
||||
@ApiModelProperty(value = "退款状态")
|
||||
private RefundStatusEnum refundStatus;
|
||||
@ApiModelProperty(value = "返回编码")
|
||||
private String refundCode;
|
||||
@ApiModelProperty(value = "返回信息")
|
||||
private String refundMsg;
|
||||
@ApiModelProperty(value = "备注【订单门店,桌台信息】")
|
||||
private String memo;
|
||||
@ApiModelProperty(value = "原订单金额")
|
||||
private BigDecimal total;
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
protected LocalDateTime created;
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
protected LocalDateTime updated;
|
||||
|
||||
}
|
@@ -0,0 +1,77 @@
|
||||
package com.sl.ms.trade.domain;
|
||||
|
||||
import com.sl.ms.trade.enums.TradingStateEnum;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@ApiModel("交易数据对象")
|
||||
public class TradingDTO {
|
||||
|
||||
@ApiModelProperty(value = "主键")
|
||||
private Long id;
|
||||
@ApiModelProperty(value = "openId标识")
|
||||
private String openId;
|
||||
@ApiModelProperty(value = "业务系统订单号")
|
||||
private Long productOrderNo;
|
||||
@ApiModelProperty(value = "交易系统订单号【对于三方来说:商户订单】")
|
||||
private Long tradingOrderNo;
|
||||
@ApiModelProperty(value = "支付渠道【支付宝、微信、现金、免单挂账】")
|
||||
private String tradingChannel;
|
||||
@ApiModelProperty(value = "交易类型【付款、退款、免单、挂账】")
|
||||
private String tradingType;
|
||||
@ApiModelProperty(value = "交易单状态【DFK待付款,FKZ付款中,QXDD取消订单,YJS已结算,MD免单,GZ挂账】")
|
||||
private TradingStateEnum tradingState;
|
||||
@ApiModelProperty(value = "收款人姓名")
|
||||
private String payeeName;
|
||||
@ApiModelProperty(value = "收款人账户ID")
|
||||
private Long payeeId;
|
||||
@ApiModelProperty(value = "付款人姓名")
|
||||
private String payerName;
|
||||
@ApiModelProperty(value = "付款人Id")
|
||||
private Long payerId;
|
||||
@ApiModelProperty(value = "交易金额,单位:元")
|
||||
private BigDecimal tradingAmount;
|
||||
@ApiModelProperty(value = "退款金额【付款后】,单位:元")
|
||||
private BigDecimal refund;
|
||||
@ApiModelProperty(value = "是否有退款:YES,NO")
|
||||
private String isRefund;
|
||||
@ApiModelProperty(value = "第三方交易返回编码【最终确认交易结果】")
|
||||
private String resultCode;
|
||||
@ApiModelProperty(value = "第三方交易返回提示消息【最终确认交易信息】")
|
||||
private String resultMsg;
|
||||
@ApiModelProperty(value = "第三方交易返回信息json【分析交易最终信息】")
|
||||
private String resultJson;
|
||||
@ApiModelProperty(value = "统一下单返回编码")
|
||||
private String placeOrderCode;
|
||||
@ApiModelProperty(value = "统一下单返回信息")
|
||||
private String placeOrderMsg;
|
||||
@ApiModelProperty(value = "统一下单返回信息json【用于生产二维码、Android ios唤醒支付等】")
|
||||
private String placeOrderJson;
|
||||
@ApiModelProperty(value = "商户号")
|
||||
private Long enterpriseId;
|
||||
@ApiModelProperty(value = "备注,如:运费")
|
||||
private String memo;
|
||||
@ApiModelProperty(value = "二维码base64数据")
|
||||
private String qrCode;
|
||||
@ApiModelProperty(value = "是否有效")
|
||||
protected String enableFlag;
|
||||
@ApiModelProperty(value = "退款请求号")
|
||||
private String outRequestNo;
|
||||
@ApiModelProperty(value = "操作退款金额")
|
||||
private BigDecimal operTionRefund;
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
protected LocalDateTime created;
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
protected LocalDateTime updated;
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
package com.sl.ms.trade.domain.request;
|
||||
|
||||
import com.sl.ms.trade.enums.PayChannelEnum;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* jsapi提交支付请求对象
|
||||
*
|
||||
* @author zzj
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
public class JsapiPayDTO {
|
||||
|
||||
@ApiModelProperty(value = "openId标识", required = true)
|
||||
private String openId;
|
||||
@ApiModelProperty(value = "商户号", required = true)
|
||||
private Long enterpriseId;
|
||||
@ApiModelProperty(value = "业务系统订单号", required = true)
|
||||
private Long productOrderNo;
|
||||
@ApiModelProperty(value = "支付渠道", required = true)
|
||||
private PayChannelEnum tradingChannel;
|
||||
@ApiModelProperty(value = "交易金额,单位:元", required = true)
|
||||
private BigDecimal tradingAmount;
|
||||
@ApiModelProperty(value = "备注,如:运费", required = true)
|
||||
private String memo;
|
||||
}
|
@@ -0,0 +1,34 @@
|
||||
package com.sl.ms.trade.domain.request;
|
||||
|
||||
import com.sl.ms.trade.enums.PayChannelEnum;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.Max;
|
||||
import javax.validation.constraints.Min;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
public class NativePayDTO {
|
||||
|
||||
@ApiModelProperty(value = "商户号", required = true)
|
||||
@NotNull(message = "商户号不能为空")
|
||||
private Long enterpriseId;
|
||||
|
||||
@ApiModelProperty(value = "业务系统订单号", required = true)
|
||||
@NotNull(message = "业务系统订单号不能为空")
|
||||
private Long productOrderNo;
|
||||
|
||||
@ApiModelProperty(value = "支付渠道", required = true)
|
||||
@NotNull(message = "支付渠道不能为空")
|
||||
private PayChannelEnum tradingChannel;
|
||||
|
||||
@ApiModelProperty(value = "交易金额,单位:元", required = true)
|
||||
@NotNull(message = "交易金额不能为空")
|
||||
private BigDecimal tradingAmount;
|
||||
|
||||
@ApiModelProperty(value = "备注,如:运费", required = true)
|
||||
@NotNull(message = "备注不能为空")
|
||||
private String memo;
|
||||
}
|
@@ -0,0 +1,28 @@
|
||||
package com.sl.ms.trade.domain.response;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 扫码支付响应数据
|
||||
*
|
||||
* @author zzj
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
public class JsapiPayResponseDTO {
|
||||
|
||||
@ApiModelProperty(value = "业务系统订单号")
|
||||
private Long productOrderNo;
|
||||
@ApiModelProperty(value = "交易系统订单号【对于三方来说:商户订单】")
|
||||
private Long tradingOrderNo;
|
||||
@ApiModelProperty(value = "支付渠道【支付宝、微信、现金、免单挂账】")
|
||||
private String tradingChannel;
|
||||
@ApiModelProperty(value = "统一下单返回信息,预支付编号")
|
||||
private String placeOrderMsg;
|
||||
@ApiModelProperty(value = "统一下单返回信息json【用于生产二维码、Android ios唤醒支付等】")
|
||||
private String placeOrderJson;
|
||||
|
||||
}
|
@@ -0,0 +1,26 @@
|
||||
package com.sl.ms.trade.domain.response;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 扫码支付响应数据
|
||||
*
|
||||
* @author zzj
|
||||
* @version 1.0
|
||||
*/
|
||||
@Data
|
||||
public class NativePayResponseDTO {
|
||||
|
||||
@ApiModelProperty(value = "二维码base64数据")
|
||||
private String qrCode;
|
||||
@ApiModelProperty(value = "业务系统订单号")
|
||||
private Long productOrderNo;
|
||||
@ApiModelProperty(value = "交易系统订单号【对于三方来说:商户订单】")
|
||||
private Long tradingOrderNo;
|
||||
@ApiModelProperty(value = "支付渠道【支付宝、微信、现金、免单挂账】")
|
||||
private String tradingChannel;
|
||||
|
||||
}
|
@@ -0,0 +1,38 @@
|
||||
package com.sl.ms.trade.enums;
|
||||
|
||||
import cn.hutool.core.util.EnumUtil;
|
||||
import com.sl.transport.common.enums.BaseEnum;
|
||||
|
||||
/**
|
||||
* 支付渠道枚举
|
||||
*
|
||||
* @author zzj
|
||||
* @version 1.0
|
||||
*/
|
||||
public enum PayChannelEnum implements BaseEnum {
|
||||
|
||||
ALI_PAY(1, "支付宝"),
|
||||
WECHAT_PAY(2, "微信支付");
|
||||
|
||||
private Integer code;
|
||||
private String value;
|
||||
|
||||
PayChannelEnum(Integer code, String value) {
|
||||
this.code = code;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer getCode() {
|
||||
return this.code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getValue() {
|
||||
return this.value;
|
||||
}
|
||||
|
||||
public static PayChannelEnum codeOf(Integer code) {
|
||||
return EnumUtil.getBy(PayChannelEnum::getCode, code);
|
||||
}
|
||||
}
|
@@ -0,0 +1,38 @@
|
||||
package com.sl.ms.trade.enums;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.EnumValue;
|
||||
import com.fasterxml.jackson.annotation.JsonValue;
|
||||
import com.sl.transport.common.enums.BaseEnum;
|
||||
|
||||
/**
|
||||
* 退款状态枚举
|
||||
*
|
||||
* @author zzj
|
||||
* @version 1.0
|
||||
*/
|
||||
public enum RefundStatusEnum implements BaseEnum {
|
||||
|
||||
SENDING(1, "退款中"),
|
||||
SUCCESS(2, "成功"),
|
||||
FAIL(3, "失败");
|
||||
|
||||
@EnumValue
|
||||
@JsonValue
|
||||
private Integer code;
|
||||
private String value;
|
||||
|
||||
RefundStatusEnum(Integer code, String value) {
|
||||
this.code = code;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer getCode() {
|
||||
return this.code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getValue() {
|
||||
return this.value;
|
||||
}
|
||||
}
|
@@ -0,0 +1,42 @@
|
||||
package com.sl.ms.trade.enums;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.EnumValue;
|
||||
import com.fasterxml.jackson.annotation.JsonValue;
|
||||
import com.sl.transport.common.enums.BaseEnum;
|
||||
|
||||
/**
|
||||
* 交易单状态枚举
|
||||
*
|
||||
* @author zzj
|
||||
* @version 1.0
|
||||
*/
|
||||
public enum TradingStateEnum implements BaseEnum {
|
||||
|
||||
DFK(1, "待付款"),
|
||||
FKZ(2, "付款中"),
|
||||
FKSB(3, "付款失败"),
|
||||
YJS(4, "已结算(已付款)"),
|
||||
QXDD(5, "取消订单"),
|
||||
MD(6, "免单"),
|
||||
GZ(7, "挂账");
|
||||
|
||||
@EnumValue
|
||||
@JsonValue
|
||||
private Integer code;
|
||||
private String value;
|
||||
|
||||
TradingStateEnum(Integer code, String value) {
|
||||
this.code = code;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Integer getCode() {
|
||||
return this.code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getValue() {
|
||||
return this.value;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user