You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

139 lines
4.5 KiB
C#

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using POSV.Entity;
using POSV.Proxy.ThirdPartyPayMent.PayApiBase;
using POSV.ShoppingCart;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace POSV.Proxy.ThirdPartyPayMent
{
public class DemoPay : PayBase
{
public DemoPay()
{
this.PayNmae = "**支付";
}
/// <summary>
/// 异步支付
/// </summary>
/// <param name="payCode"></param>
/// <param name="payMode"></param>
/// <param name="order"></param>
public override void AsyncPayStart(string payCode, PayMode payMode, OrderObject order, Dictionary<string, string> value)
{
}
/// <summary>
/// 同步支付
/// </summary>
/// <returns></returns>
public override Tuple<bool, string, PayItem> PayStart(string payCode, PayMode payMode, string TradeNo, decimal PaidAmount, Dictionary<string, string> value)
{
try
{
logger.Info("进入" + this.PayNmae + "支付接口...");
return new Tuple<bool, string, PayItem>(true, "", null);
}
catch (Exception ex)
{
logger.Error(ex, this.PayNmae + "支付接口异常");
return new Tuple<bool, string, PayItem>(false, ex.Message, null);
}
}
/// <summary>
/// 支付查询
/// </summary>
/// <param name="payMode"></param>
/// <param name="args">1、商户2、乐刷订单号必须按顺序</param>
/// <returns></returns>
public override Tuple<bool, string, PayItem> QueryPay(PayMode payMode, string TradeNo, string OutTradeNo, Dictionary<string, string> value)
{
try
{
logger.Info("进入" + this.PayNmae + "查询接口...");
return new Tuple<bool, string, PayItem>(true, "", null);
}
catch (Exception ex)
{
logger.Error(ex, this.PayNmae + "查询接口异常");
return new Tuple<bool, string, PayItem>(false, ex.Message, null);
}
}
/// <summary>
/// 退款
/// </summary>
/// <param name="payMode"></param>
/// <param name="payItem"></param>
/// <param name="args"></param>
/// <returns></returns>
public override Tuple<bool, string, PayItem> RefundPay(PayMode payMode, PayItem payItem, Dictionary<string, string> value)
{
try
{
logger.Info("进入" + this.PayNmae + "退款接口...");
return new Tuple<bool, string, PayItem>(true, "", null);
}
catch (Exception ex)
{
logger.Error(ex, this.PayNmae + "退款接口异常");
return new Tuple<bool, string, PayItem>(false, ex.Message, null);
}
}
/// <summary>
/// 验证支付配置
/// </summary>
/// <param name="payCode"></param>
/// <param name="payMode"></param>
/// <returns></returns>
public override Tuple<bool, string, Dictionary<string, string>> VerifyPay(PayMode payMode)
{
try
{
logger.Info("获取" + this.PayNmae + "参数...");
return new Tuple<bool, string, Dictionary<string, string>>(true, "", null);
}
catch (Exception ex)
{
logger.Info("获取支付参数异常...");
logger.Error(ex, this.PayNmae + "获取参数异常");
return new Tuple<bool, string, Dictionary<string, string>>(false, ex.Message, null);
}
}
//================================内部方法================================
/// <summary>
/// 第三方转本地对象
/// </summary>
/// <param name="queryParam"></param>
/// <param name="payMode"></param>
/// <param name="TradeNo"></param>
/// <param name="PaidAmount"></param>
/// <returns></returns>
protected override Tuple<bool, string, PayItem> ToPayObject(object queryParam, PayMode payMode, string TradeNo, decimal PaidAmount)
{
try
{
return new Tuple<bool, string, PayItem>(true, "", null);
}
catch (Exception ex)
{
logger.Error(ex);
return new Tuple<bool, string, PayItem>(false, ex.Message, null);
}
}
}
}