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.
118 lines
4.5 KiB
118 lines
4.5 KiB
package com.ynxbd.common.dao;
|
|
|
|
import com.ynxbd.common.bean.pay.PayCasebook;
|
|
import com.ynxbd.common.config.db.DataBase;
|
|
|
|
import java.math.BigDecimal;
|
|
import java.util.List;
|
|
|
|
public class CasebookDao {
|
|
|
|
/**
|
|
* [病历]新增订单信息
|
|
*
|
|
* @param casebook 信息
|
|
* @return 是否成功
|
|
*/
|
|
public boolean insert(PayCasebook casebook,String openId,String patientId) {
|
|
String sql = "insert into pay_casebook(UpdateTime,TreatNum, PatientName, UseToNo, UseToName, GetWay, Address, Phone,OpenID,PatientID) values (now(),?,?,?,?,?,?,?,?,?)";
|
|
return DataBase.insert(sql, ps -> {
|
|
ps.setString(1,casebook.getTreatNum());
|
|
ps.setString(2,casebook.getPatientName());
|
|
ps.setString(3,casebook.getUseToNo());
|
|
ps.setString(4,casebook.getUseToName());
|
|
ps.setInt(5,casebook.getGetWay());
|
|
ps.setString(6,casebook.getAddress());
|
|
ps.setString(7, casebook.getPhone());
|
|
ps.setString(8,openId);
|
|
ps.setString(9,patientId);
|
|
}) > 0;
|
|
}
|
|
|
|
|
|
/**
|
|
* 根据订单号查询
|
|
*
|
|
* @param outTradeNo 订单号
|
|
* @return bean
|
|
*/
|
|
public PayCasebook selectByOutTradeNo(String outTradeNo) {
|
|
String sql = "select * from pay_casebook where outTradeNo=? order by updateTime desc";
|
|
List<PayCasebook> list = DataBase.select(sql, PayCasebook.class, ps -> {
|
|
ps.setString(1, outTradeNo);
|
|
});
|
|
if (list.size() > 0) {
|
|
return list.get(0);
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* 修改收到支付的状态码
|
|
*
|
|
* @param outTradeNo 订单号
|
|
* @param bankTransNo 交易流水号
|
|
*/
|
|
public boolean updatePayStateOk(String outTradeNo, String bankTransNo) {
|
|
String sql = "update pay_casebook set payStatus=0, bankTransNo=? where outTradeNo=? and bankTransNo is null";
|
|
return DataBase.update(sql, ps -> {
|
|
ps.setString(1, bankTransNo);
|
|
ps.setString(2, outTradeNo);
|
|
}) > 0;
|
|
}
|
|
|
|
public boolean updatePayStatePre(String patientId, String treatNum, String applyId, BigDecimal totalFee,String outTradeNo,String getWay, String useToName) {
|
|
String sql = "update pay_casebook set payStatus=-1, applyId = ?, payMoney = ?, TotalFee = ?, outTradeNo =? where patientId=? and treatNum = ? and getWay = ? and useToName = ?";
|
|
return DataBase.update(sql, ps -> {
|
|
ps.setString(1, applyId);
|
|
ps.setBigDecimal(2,totalFee);
|
|
ps.setBigDecimal(3,totalFee);
|
|
ps.setString(4,outTradeNo);
|
|
ps.setString(5,patientId);
|
|
ps.setString(6,treatNum);
|
|
ps.setString(7,getWay);
|
|
ps.setString(8,useToName);
|
|
}) > 0;
|
|
}
|
|
|
|
public boolean selectIsExit(String patientId, String treatNum, String getWay, String useToName){
|
|
String sql = "select * from pay_casebook where patientId=? and treatNum = ? and getWay = ? and getWay !=1 and useToName = ? and (payStatus is null or payStatus = -1)";
|
|
return DataBase.select(sql, PayCasebook.class, ps -> {
|
|
ps.setString(1,patientId);
|
|
ps.setString(2,treatNum);
|
|
ps.setString(3,getWay);
|
|
ps.setString(4,useToName);
|
|
}).size()>0;
|
|
}
|
|
|
|
public boolean selectIsPay(String patientId, String treatNum, String applyId,String getWay, String useToName){
|
|
String sql = "select * from pay_casebook where patientId=? and treatNum = ? and applyId = ? and getWay = ? and useToName = ? and payStatus = 0";
|
|
return DataBase.select(sql, PayCasebook.class, ps -> {
|
|
ps.setString(1,patientId);
|
|
ps.setString(2,treatNum);
|
|
ps.setString(3,applyId);
|
|
ps.setString(4,getWay);
|
|
ps.setString(5,useToName);
|
|
}).size()>0;
|
|
}
|
|
|
|
|
|
public boolean updateNotifyOk(String outTradeNo) {
|
|
String sql = "update pay_casebook set payStatus=0, HisStatus=0 where outTradeNo=?";
|
|
|
|
return DataBase.update(sql, ps -> {
|
|
ps.setString(1, outTradeNo);
|
|
}) > 0;
|
|
}
|
|
|
|
public boolean updateNotifyErr(String outTradeNo, String message) {
|
|
String sql = "update pay_casebook set payStates=0, HisStatus=-1, HisResult=? where outTradeNo=?";
|
|
|
|
return DataBase.update(sql, ps -> {
|
|
ps.setString(1, message);
|
|
ps.setString(2, outTradeNo);
|
|
}) > 0;
|
|
}
|
|
|
|
|
|
}
|
|
|