Commit 1bfa00c2 by 陶然

优化扫码支付

parent b4715d90
......@@ -193,13 +193,13 @@ namespace Com.Bocom.OpenApi
}
public static MPNG210001ResponseV1 GenerateReceiveCode(List<Settlement> settlements)
public static MPNG210001ResponseV1 GenerateReceiveCode(List<Settlement> settlements, string uniqueCode = null)
{
if (settlements.IsNullOrEmpty()) return null;
if (settlements.Exists(o => o.OffsetKvid != Guid.Empty || o.AmountPayment > 0)) throw new Exception("存在不符合生成收款码条件的结算");
var amount = settlements.Sum(o => o.Amount);
if (amount <= 0) return null;
var uniqueCode = Guid.NewGuid().ToString();//生成二维码的唯一性交易编号
if (uniqueCode.IsNullOrEmpty()) uniqueCode = Guid.NewGuid().ToString();//生成二维码的唯一性交易编号
var summary = $"{settlements[0].BizId}等共{settlements.Count}条结算进行扫码支付!";
var remark = settlements[0].PayerName;
//var rtnTests = new MPNG210001ResponseV1();
......@@ -241,6 +241,7 @@ namespace Com.Bocom.OpenApi
{
//-----------------------记录下这份收款码的数据的信息,如果这份订单取消了就要作废--------------------------------
var rtns = response as MPNG210001ResponseV1;
if (rtns.rsp_head.response_status != "S") throw new Exception(rtns.rsp_head.response_msg);
//rtns.rsp_body.display_code_text = $"http://yunbanktest.bankcomm.com/tcipp/pmss/cipp.jsp?qrCode={rtns.rsp_body.display_code_text}";
return rtns;
}
......@@ -282,6 +283,7 @@ namespace Com.Bocom.OpenApi
if (response.IsSuccess())
{
var rtns = response as MPNG020702ResponseV1;
if (rtns.rsp_head.response_status != "S") throw new Exception(rtns.rsp_head.response_msg);
return rtns;
}
else
......
......@@ -15,9 +15,10 @@ namespace Njzj.Bocoms.Openapis
public class SettlementGenerateReceiveCode : RestfulExecution<Settlement>
{
public List<Guid> SettlementKvids { get; set; }
public string View { get; set; }
public string PayMerTranNo { get; set; }//唯一的业务编号,可以不传,系统将自动从Guid转化
public override object OnExecution(IRequest req, IResponse res)
{
SettlementKvids.ThrowIfNullOrEmpty("请传入要收款的结算!");
......@@ -28,7 +29,7 @@ namespace Njzj.Bocoms.Openapis
rtns.Results = new List<MPNG020702ResponseV1>();
try
{
var results = Extension.GenerateReceiveCode(settlements);
var results = Extension.GenerateReceiveCode(settlements, PayMerTranNo);
var payMerTranNo = results.rsp_body.pay_mer_tran_no;
var order = Extension.GetReceiveCodeOrder(payMerTranNo);
......@@ -144,8 +145,8 @@ namespace Njzj.Bocoms.Openapis
existCode.AddOnlyProperties(o => o.tran_content);
conn.UpdateOnly(existCode);
existCode.RemoveAllOnlyProperties();
rtns.Results.Add(existCode);
}
rtns.Results.Add(existCode);
return rtns;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment