package com.ruoyi.system.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import java.util.Date; /** * OMG 支付交易流水 pos_order_omg_payment * *

每笔 OMG 交易一条,承载幂等(按 trade_no = OMG TradeNo)与对账明细。不复用蓝新 pos_order_payment。 * 幂等:回调按 trade_no 查重,已 pay_status=1 则跳过(仍回 1|OK)。 * trade_no 唯一索引(MySQL 允许多个 NULL,发起时尚无 trade_no)。 * * @author ruoyi * @date 2026-07-29 */ @Data @TableName(value = "pos_order_omg_payment") public class PosOrderOmgPayment { private static final long serialVersionUID = 1L; /** 主键 */ @TableId(type = IdType.AUTO) private Long id; /** 系统订单号(关联 pos_order.dd_id) */ private String ddId; /** 商店交易编号 MerchantTradeNo(发起生成) */ private String merchantTradeNo; /** OMG 交易编号 TradeNo(回调获得,幂等键,唯一) */ private String tradeNo; /** 门店ID */ private Long storeId; /** OMG 商店代号(发起时门店凭证) */ private String merchantId; /** 发起方式:ALL */ private String choosePayment; /** 回覆 PaymentType(Credit_CreditCard / BarcodeATM_CHINATRUST / ATM 系列 / CVS 系列 / AFTEE_AFTEE) */ private String payType; /** 交易金额(整数元 = 订单 amount) */ private Integer amount; /** 回调 RtnCode(1=成功) */ private Integer rtnCode; /** 回调 RtnMsg */ private String rtnMsg; /** 0 未支付/1 已支付/2 失败/3 已退款 */ private Integer payStatus; /** 授权码(信用卡回调) */ private String authCode; /** 支付完成时间(回调 PaymentDate) */ private Date payTime; /** 订单创建时间(回调 TradeDate) */ private Date tradeDate; /** 回调原始报文(调试/对账) */ private String callbackRaw; /** 创建时间 */ @TableField(fill = FieldFill.INSERT) private Date createTime; /** 更新时间 */ @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; }