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

55 lines
1.7 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 UserCenterEventEventHandler : IEventHandler<UserCenterEventEvent>
{
private CACHE_BL _cache = new CACHE_BL();
public void Handle(UserCenterEventEvent @event)
{
try
{
LogHelper.Info("用户中心事件执行" + @event.ToJson());
//根据渠道号获取部门编码
var ch = @event.Channel;
var companyCode = _cache.GetCompanyCode();
var company = companyCode.FirstOrDefault(p => p.Min <= ch && p.Max >= ch);
if (company.CompanyCode == "AGENT")
{
return;
}
var host = Utility.GetSettingOrNullByKey("DataSyncApiUrl");
var url = host + "/api/DataSync";
var para = new SYNC_PUSH_DTO()
{
bidatatype = "Client_UserCenterEvent",
deptcode = company.CompanyCode,
jsontext = @event.ToJson(),
isbatch = 1
};
var rep = Utility.PostAjaxData(url, para.ToJson(), Encoding.UTF8);
var ret = Utility.JSONToObject<retMsg>(rep);
if (!ret.result)
LogHelper.Error("接口 UserCenterEventEventHandler 写入失败!");
}
catch (Exception ex)
{
LogHelper.Error(ex.ToString());
}
}
}
}