微信后端代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

181 lines
5.1 KiB

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));
}
}
}