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.
		
		
		
		
			
				
					77 lines
				
				2.2 KiB
			
		
		
			
		
	
	
					77 lines
				
				2.2 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								package com.ynxbd.common.dao;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import com.ynxbd.common.bean.pay.PayResult;
							 | 
						||
| 
								 | 
							
								import com.ynxbd.common.config.db.DataBase;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * @Author wsq
							 | 
						||
| 
								 | 
							
								 * @Date 2021/3/23 16:38
							 | 
						||
| 
								 | 
							
								 * @Copyright @ 2020 云南新八达科技有限公司 All rights reserved.
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								public class PayResultDao {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * 查询是否存在支付记录(排重)
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @param openid     openid
							 | 
						||
| 
								 | 
							
								     * @param outTradeNo 订单号
							 | 
						||
| 
								 | 
							
								     * @return 是否存在
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    public boolean queryOrderByOutTradeNoAndOpenid(String outTradeNo, String openid) {
							 | 
						||
| 
								 | 
							
								        String sql = "select id from pay_result where outTradeNo=? and openid=?";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        return DataBase.select(sql, PayResult.class, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setString(1, outTradeNo);
							 | 
						||
| 
								 | 
							
								            ps.setString(2, openid);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        }).size() > 0;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * 查询订单
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @param outTradeNo 订单号
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    public PayResult queryOrderByOutTradeNo(String outTradeNo) {
							 | 
						||
| 
								 | 
							
								        String sql = "select * from pay_result where outTradeNo=?";
							 | 
						||
| 
								 | 
							
								        return DataBase.selectOne(sql, PayResult.class, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setString(1, outTradeNo);
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * 查询订单
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @param authCode 付款码
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    public PayResult queryOrderByAuthCode(String authCode) {
							 | 
						||
| 
								 | 
							
								        String sql = "select * from pay_result where authCode=?";
							 | 
						||
| 
								 | 
							
								        return DataBase.selectOne(sql, PayResult.class, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setString(1, authCode);
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    /**
							 | 
						||
| 
								 | 
							
								     * 保存支付结果信息
							 | 
						||
| 
								 | 
							
								     *
							 | 
						||
| 
								 | 
							
								     * @param orderType  订单类型
							 | 
						||
| 
								 | 
							
								     * @param openid     openid
							 | 
						||
| 
								 | 
							
								     * @param outTradeNo 订单号
							 | 
						||
| 
								 | 
							
								     * @param info       微信支付返回信息
							 | 
						||
| 
								 | 
							
								     * @return 是否保存成功
							 | 
						||
| 
								 | 
							
								     */
							 | 
						||
| 
								 | 
							
								    public boolean insert(String orderType, String outTradeNo, String openid, String info, String authCode) {
							 | 
						||
| 
								 | 
							
								        String sql = "insert into pay_result(outTradeNo, orderType, openid, info, authCode, updateTime) values (?, ?, ?, ?, ?, now())";
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        return DataBase.insert(sql, ps -> {
							 | 
						||
| 
								 | 
							
								            ps.setString(1, outTradeNo);
							 | 
						||
| 
								 | 
							
								            ps.setString(2, orderType);
							 | 
						||
| 
								 | 
							
								            ps.setString(3, openid);
							 | 
						||
| 
								 | 
							
								            ps.setString(4, info);
							 | 
						||
| 
								 | 
							
								            ps.setString(5, authCode);
							 | 
						||
| 
								 | 
							
								        }) > 0;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								}
							 |