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.
		
		
		
		
			
				
					87 lines
				
				3.0 KiB
			
		
		
			
		
	
	
					87 lines
				
				3.0 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								package com.ynxbd.common.dao;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import com.ynxbd.common.bean.pay.PayOutCollect;
							 | 
						||
| 
								 | 
							
								import com.ynxbd.common.config.db.DataBase;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import java.util.List;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								public class OutCollectPayDao {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * 外采支付
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @param order 订单信息
							 | 
						||
| 
								 | 
							
								     * @return Y|N
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    public boolean insert(PayOutCollect order) {
							 | 
						||
| 
								 | 
							
								        String sql = "insert into oc_pay(updateTime, totalFee, outTradeNo, bankTransNo, authCode, operateUser, patientId, openid, mid, name, idCardNo, collectId, barCode, payState, noticeState) values (now(),?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
							 | 
						||
| 
								 | 
							
								        return DataBase.insert(sql, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setBigDecimal(1, order.getTotalFee());
							 | 
						||
| 
								 | 
							
								            ps.setString(2, order.getOutTradeNo());
							 | 
						||
| 
								 | 
							
								            ps.setString(3, order.getBankTransNo());
							 | 
						||
| 
								 | 
							
								            ps.setString(4, order.getAuthCode());
							 | 
						||
| 
								 | 
							
								            ps.setString(5, order.getOperateUser());
							 | 
						||
| 
								 | 
							
								            ps.setString(6, order.getPatientId());
							 | 
						||
| 
								 | 
							
								            ps.setString(7, order.getOpenid());
							 | 
						||
| 
								 | 
							
								            ps.setString(8, order.getMid());
							 | 
						||
| 
								 | 
							
								            //
							 | 
						||
| 
								 | 
							
								            ps.setString(9, order.getIdCardNo());
							 | 
						||
| 
								 | 
							
								            ps.setString(10, order.getName());
							 | 
						||
| 
								 | 
							
								            ps.setString(11, order.getCollectId());
							 | 
						||
| 
								 | 
							
								            ps.setString(12, order.getBarCode());
							 | 
						||
| 
								 | 
							
								            //
							 | 
						||
| 
								 | 
							
								            ps.setInt(13, order.getPayState());
							 | 
						||
| 
								 | 
							
								            ps.setInt(14, order.getNoticeState());
							 | 
						||
| 
								 | 
							
								        }) > 0;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * 外采支付
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @return Y|N
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    public PayOutCollect selectByOutTradeNo(String outTradeNo) {
							 | 
						||
| 
								 | 
							
								        String sql = "select * from oc_pay where outTradeNo=? order by updateTime desc";
							 | 
						||
| 
								 | 
							
								        List<PayOutCollect> list = DataBase.select(sql, PayOutCollect.class, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setString(1, outTradeNo);
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								        if (list.size() > 0) {
							 | 
						||
| 
								 | 
							
								            return list.get(0);
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								        return null;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * [支付状态]更新挂号支付信息
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @param outTradeNo  订单号
							 | 
						||
| 
								 | 
							
								     * @param bankTransNo 交易流水号
							 | 
						||
| 
								 | 
							
								     * @return 信息
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    public boolean updateMerPaidByOutTradeNo(String outTradeNo, String bankTransNo) {
							 | 
						||
| 
								 | 
							
								        String sql = "update oc_pay set payState=?, bankTransNo=? where outTradeNo=? and bankTransNo is null";
							 | 
						||
| 
								 | 
							
								        return DataBase.update(sql, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setInt(1, 0);
							 | 
						||
| 
								 | 
							
								            ps.setString(2, bankTransNo);
							 | 
						||
| 
								 | 
							
								            ps.setString(3, outTradeNo);
							 | 
						||
| 
								 | 
							
								        }) > 0;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    public boolean updateNoticeErr(String outTradeNo, Integer noticeState, String noticeResult) {
							 | 
						||
| 
								 | 
							
								        String sql = "update oc_pay set noticeState=?, noticeResult=? where outTradeNo=? ";
							 | 
						||
| 
								 | 
							
								        return DataBase.update(sql, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setInt(1, noticeState);
							 | 
						||
| 
								 | 
							
								            ps.setString(2, noticeResult);
							 | 
						||
| 
								 | 
							
								            ps.setString(3, outTradeNo);
							 | 
						||
| 
								 | 
							
								        }) > 0;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    public boolean updateNoticeOk(String outTradeNo) {
							 | 
						||
| 
								 | 
							
								        String sql = "update oc_pay set noticeState=0 where outTradeNo=? and payState = 0";
							 | 
						||
| 
								 | 
							
								        return DataBase.update(sql, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setString(1, outTradeNo);
							 | 
						||
| 
								 | 
							
								        }) > 0;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 |