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 { 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(rep); if (!ret.result) LogHelper.Error("接口 OpenOrderEventHandler 写入失败!"); } catch (Exception ex) { LogHelper.Error("确认支付事件执行错误:" + ex.ToString()); } } } }