51 lines
1.6 KiB
C#
51 lines
1.6 KiB
C#
using CRM.Core.BLL.EventBus.Events;
|
||
using CRM.Core.BLL.Util;
|
||
using CRM.Core.Common.EventBus;
|
||
using CRM.Core.DTO;
|
||
using System;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using WX.CRM.Common;
|
||
|
||
namespace CRM.Core.BLL.EventBus.EventHandlers
|
||
{
|
||
public class OrderAndPayInfoEventHandler : IEventHandler<OrderAndPayInfoEvent>
|
||
{
|
||
private CACHE_BL _cache = new CACHE_BL();
|
||
public void Handle(OrderAndPayInfoEvent @event)
|
||
{
|
||
try
|
||
{
|
||
LogHelper.Info("OrderAndPayInfoEvent数据同步:" + @event.ToJson());
|
||
|
||
var host = Utility.GetSettingOrNullByKey("DataSyncApiUrl");
|
||
var url = host + "/api/DataSync";
|
||
|
||
//根据渠道号获取部门编码
|
||
var ch = @event.channel;
|
||
var companyCode = _cache.GetCompanyCode();
|
||
var company = companyCode.FirstOrDefault(p => p.Min <= ch && p.Max >= ch);
|
||
|
||
var para = new SYNC_PUSH_DTO()
|
||
{
|
||
bidatatype = "Client_OrderAndPayInfo",
|
||
deptcode = company.CompanyCode,
|
||
jsontext = @event.ToJson()
|
||
};
|
||
|
||
var rep = Utility.PostAjaxData(url, para.ToJson(), Encoding.UTF8);
|
||
var ret = Utility.JSONToObject<retMsg>(rep);
|
||
if (!ret.result)
|
||
LogHelper.Error("接口 OrderAndPayInfoEventHandler 写入失败!");
|
||
|
||
}
|
||
catch (Exception ex)
|
||
{
|
||
LogHelper.Error("订单-订金-支付同步事件:" + ex.ToString());
|
||
}
|
||
}
|
||
}
|
||
|
||
|
||
}
|