package com.ynxbd.common.bean.pay; import com.ynxbd.common.helper.common.ParamHelper; import com.ynxbd.wx.wxfactory.ReqParamHelper; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import lombok.ToString; import org.apache.commons.lang3.ObjectUtils; import java.io.Serializable; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.Date; /** * [父类]支付订单信息 * * @Author wsq * @Date 2020/11/12 10:24 * @Copyright @ 2020 云南新八达科技有限公司 All rights reserved. */ @Setter @Getter @ToString @NoArgsConstructor public class Order implements Serializable { private static final long serialVersionUID = 3666666777881604L; private Long id; // 加密的id private String enId; // 修改时间 private Date updateTime; // openid private String openid; // 患者id private String patientId; // 加密的patientId private String enPatientId; // 患者姓名 private String patientName; // 证件号码 private String idCardNo; private String enCardNo; private String showCardNo; private String tel; private String enTel; private String showTel; // 性别 private String sex; private String birthday; // 订单号 private String outTradeNo; // 银行交易流水号 private String bankTransNo; // HIS交易订单号 private String tradeNo; // 交易时间 private String tradeTime; // 门诊号 | 住院号 private String treatNum; // 加密的门诊号 private String enTreatNum; // 支付方式统计(微信:{0:程序内;1:扫码;2:盒子支付;3:native支付};支付宝:{10:程序内,11:扫码:12:盒子支付}) private String payWay; // 商户名称 private String merchantName; // 单笔金额 private BigDecimal payMoney; // 订单总金额 private BigDecimal totalFee; // 商户支付状态 private Integer payStatus; // HIS通知状态 private Integer hisStatus; // --------------------------------------- // 通知状态 private Integer payState; // 通知状态 private Integer noticeState; // 通知返回提示 private Integer noticeResult; // -------------------------------------- // HIS返回提示 private String hisResult; // HIS流水号 private String hisTransNo; // HIS发票号 private String invoiceTransNo; // 退款金额 private BigDecimal refundMoney; // 退款类型 private String refundType; // 退款结果描述 private String refundResult; // 退款操作人 private String refundUser; // 退费的表 private String refundTable; // 缴费操作人 private String operateUser; // 微信返回的支付信息 private String info; // 盒子扫码授权码 private String authCode; // 错误代码,不存数据库(His返回 or 记录打印信息) private String errorCode; // 错误信息 private String errorMsg; // 订单交易状态 private String tradeState; // 判断支付是否成功标识 private boolean isSuccess; // 判断是否需要退费标识 private boolean isRefund; private String cacheType; // 调用失败重新调用 private int cacheNum; // 医保---------------------------------- // 医保订单号 private String payOrdId; // 医保-个人账户支付金额 private BigDecimal acctFee; // 医保-统筹支付金额 private BigDecimal hifpFee; // 医保-收费单据号(去掉M作为退费的单号) private String chrgBchno; // 医保-就诊ID private String mdTrtId; // 医保-用户ID private String mdUserId; // 今天日期 private String curDate; // 查询报告的日期范围 private String queryBegDate; private String queryEndDate; // 缴费订单类型 private String orderType; // PEIS通知状态 private Integer peisStatus; // PEIS返回提示 private String peisResult; public void filterInfo() { if (id != null) { this.enId = ReqParamHelper.encode(String.valueOf(id)); this.id = null; } String _cardNo = this.idCardNo; if (!ObjectUtils.isEmpty(_cardNo)) { this.idCardNo = null; this.enCardNo = ReqParamHelper.encode(_cardNo); this.showCardNo = ParamHelper.idCardNoFilter(_cardNo); } String _tel = this.tel; if (!ObjectUtils.isEmpty(_tel)) { this.tel = null; this.enTel = ReqParamHelper.encode(_tel); this.showTel = ParamHelper.telFilter(_tel); } if (!ObjectUtils.isEmpty(this.patientId)) { this.enPatientId = ReqParamHelper.encode(this.patientId); } if (!ObjectUtils.isEmpty(treatNum)) { this.enTreatNum = ReqParamHelper.encode(String.valueOf(treatNum)); } } }