55 lines
1.7 KiB
C#
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());
|
|
}
|
|
}
|
|
}
|
|
}
|