ComplianceServer/oldcode/Core.BLL/EventBus/EventHandlers/PayOrderEventHandler.cs

54 lines
2.0 KiB
C#

using CRM.Core.BLL.EventBus.Events;
using CRM.Core.Common.EventBus;
using CRM.Core.DTO;
using System;
using System.Text;
using WX.CRM.Common;
namespace CRM.Core.BLL.EventBus.EventHandlers
{
public class PayOrderEventHandler : IEventHandler<PayOrderEvent>
{
public void Handle(PayOrderEvent @event)
{
try
{
LogHelper.Info("确认支付事件执行:" + @event.ToJson());
try
{
//http://post.hc.dn8188.com/Rights/orderback.html
var noticeUrl = Utility.GetSettingByKey("noticeUrl");
if (!string.IsNullOrEmpty(noticeUrl))
{
Utility.GetData(noticeUrl, "orderid=" + @event.OrderId.ToString() + "type=1&values=" + @event.OrderStatus, Encoding.UTF8);
}
}
catch (Exception exx)
{
LogHelper.Error("通知前端错误:" + exx.ToString());
}
var host = Utility.GetSettingOrNullByKey("DataSyncApiUrl");
var url = host + "/api/DataSync";
var para = new SYNC_PUSH_DTO()
{
bidatatype = "Client_PayOrder",
deptcode = @event.DeptCode,
jsontext = new { @event.OrderId, @event.OrderStatus, @event.OrderStatusName, @event.ArrivalPay, @event.ArrivalTime, @event.Sid, @event.Auditor, @event.AuditorName, @event.AuditTime, @event.PayNo, @event.PayDate }.ToJson()
};
var rep = Utility.PostAjaxData(url, para.ToJson(), Encoding.UTF8);
var ret = Utility.JSONToObject<retMsg>(rep);
if (!ret.result)
LogHelper.Error("接口 OpenOrderEventHandler 写入失败!");
}
catch (Exception ex)
{
LogHelper.Error("确认支付事件执行错误:" + ex.ToString());
}
}
}
}