package com.ynxbd.common.dao; import com.ynxbd.common.bean.pay.PayCasebook; import com.ynxbd.common.config.db.DataBase; import java.util.List; public class CasebookDao { /** * [病例]新增订单信息 * * @param casebook 信息 * @return 是否成功 */ public boolean insert(PayCasebook casebook) { String sql = "insert into pay_casebook(updateTime, payState, noticeState, openid, patientId, patientName, cardNo, outTradeNo, bankTransNo, treatNum, payWay, authCode, operateUser, totalFee, deptCode, deptName, getWay, address, applyName, applyTime, dx) values (now(),?,?,?,?,?,?,?,?,?,?, ?,?,?,?,?,?,?,?,?,?)"; return DataBase.insert(sql, ps -> { ps.setInt(1, casebook.getPayState()); ps.setInt(2, casebook.getNoticeState()); ps.setString(3, casebook.getOpenid()); ps.setString(4, casebook.getPatientId()); ps.setString(5, casebook.getPatientName()); ps.setString(6, casebook.getCardNo()); ps.setString(7, casebook.getOutTradeNo()); ps.setString(8, casebook.getBankTransNo()); ps.setString(9, casebook.getTreatNum()); ps.setString(10, casebook.getPayWay()); ps.setString(11, casebook.getAuthCode()); ps.setString(12, casebook.getOperateUser()); ps.setBigDecimal(13, casebook.getTotalFee()); ps.setString(14, casebook.getDeptCode()); ps.setString(15, casebook.getDeptName()); ps.setString(16, casebook.getGetWay()); // ps.setString(17, casebook.getAddress()); ps.setString(18, casebook.getApplyName()); ps.setString(19, casebook.getApplyTime()); ps.setString(20, casebook.getDx()); }) > 0; } /** * 根据订单号查询 * * @param outTradeNo 订单号 * @return bean */ public PayCasebook selectByOutTradeNo(String outTradeNo) { String sql = "select * from pay_casebook where outTradeNo=? order by updateTime desc"; List 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 payState=0, bankTransNo=? where outTradeNo=? and bankTransNo is null"; return DataBase.update(sql, ps -> { ps.setString(1, bankTransNo); ps.setString(2, outTradeNo); }) > 0; } public boolean updateNotifyOk(String outTradeNo) { String sql = "update pay_casebook set payState=0, noticeState=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 payState=0, noticeState=0, noticeResult=? where outTradeNo=?"; return DataBase.update(sql, ps -> { ps.setString(1, message); ps.setString(2, outTradeNo); }) > 0; } }