package com.ruoyi.system.domain; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.BaseEntity; import com.ruoyi.common.core.domain.ValidGroup; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.Date; /** * 充值记录对象 sm_transaction_bill * * @author 邱贞招 * @date 2024-02-21 */ @Data public class SmTransactionBill extends BaseEntity { private static final long serialVersionUID = 1L; /** 主键 */ @ApiModelProperty("主键") private Long billId; /** 订单编号 */ @ApiModelProperty("订单编号") private String billNo; /** 用户 */ @Excel(name = "用户") @ApiModelProperty("用户id") private Long userId; /** 类型 */ @ApiModelProperty("类型:1充值,2提现") private String type; /** 设备 */ @Excel(name = "设备") @ApiModelProperty("设备id") @NotNull(message = "设备id不允许为空", groups = {ValidGroup.Recharge.class}) private Long deviceId; /** 房东(到账用户) */ @Excel(name = "房东(到账用户)") @ApiModelProperty("房东(到账用户)id") private Long landlordId; /** 交易金额 */ @Excel(name = "交易金额") @ApiModelProperty("交易金额") @NotNull(message = "交易金额不允许为空", groups = {ValidGroup.Recharge.class}) @Min(value = 10, message = "交易金额不允许小于10", groups = {ValidGroup.Recharge.class}) private BigDecimal money; /** 实际到账金额 */ @Excel(name = "房东实际到账金额") @ApiModelProperty("房东实际到账金额") @NotNull(message = "房东实际到账金额不允许为空", groups = {ValidGroup.Recharge.class}) @Min(value = 0, message = "房东实际到账金额不允许小于0", groups = {ValidGroup.Recharge.class}) private BigDecimal arrivalAmount; @Excel(name = "设备实际到账金额") @ApiModelProperty("设备实际到账金额") @NotNull(message = "设备实际到账金额不允许为空", groups = {ValidGroup.Recharge.class}) @Min(value = 0, message = "设备实际到账金额不允许小于0", groups = {ValidGroup.Recharge.class}) private BigDecimal deviceAmount; /** 手续费 */ @Excel(name = "手续费") @ApiModelProperty("手续费") @NotNull(message = "手续费不允许为空", groups = {ValidGroup.Recharge.class}) @Min(value = 0, message = "手续费不允许小于0", groups = {ValidGroup.Recharge.class}) private BigDecimal serviceCharge; /** 计费标准 */ @Excel(name = "计费标准(元/度)") @ApiModelProperty("计费标准(元/度)") private BigDecimal unitPrice; @ApiModelProperty("订单状态:1未支付,2支付成功,3已退款,4已取消") private String status; @ApiModelProperty("支付方式:1微信支付,2支付宝,3银行卡") private String payType; @ApiModelProperty("到账后余额") private BigDecimal afterBalance; @ApiModelProperty("支付成功的时间") private Date payTime; @ApiModelProperty("支付过期时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date expireTime; @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("billId", getBillId()) .append("userId", getUserId()) .append("type", getType()) .append("deviceId", getDeviceId()) .append("landlordId", getLandlordId()) .append("money", getMoney()) .append("arrivalAmount", getArrivalAmount()) .append("serviceCharge", getServiceCharge()) .append("createTime", getCreateTime()) .append("remark", getRemark()) .toString(); } }