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

76 lines
2.8 KiB
C#

using CRM.Core.BLL.EventBus.Events;
using CRM.Core.BLL.Util;
using CRM.Core.Common.EventBus;
using CRM.Core.DTO;
using CRM.Core.Model.Entity;
using System;
using System.Linq;
using System.Net.Mail;
using System.Text;
using WX.CRM.Common;
namespace CRM.Core.BLL.EventBus.EventHandlers
{
public class CmsNewsEventHandler : IEventHandler<CmsNewsEvent>
{
public void Handle(CmsNewsEvent @event)
{
try
{
string GetPushDeptcode = @event.DeptCode;//获取推送的deptcode
CACHE_BL cachebl = new CACHE_BL();
Bas_CompanyVirtual bas_company = cachebl.GetCompanyVirtual().FirstOrDefault(m => m.CompanyCode == @event.DeptCode);
if (bas_company != null)
{
var ss = bas_company.Channel.Split('|')[0].Split(',');
int maxchannel = Convert.ToInt32(ss[1]);
int minchannel = Convert.ToInt32(ss[0]);
Bas_CompanyChannel channe = cachebl.GetCompanyCode().FirstOrDefault(m => m.Max <= maxchannel && m.Min >= minchannel);
if (channe != null)
{
GetPushDeptcode = channe.CompanyCode;
}
}
var host = Utility.GetSettingOrNullByKey("DataSyncApiUrl");
var url = host + "/api/DataSync";
var para = new SYNC_PUSH_DTO()
{
bidatatype = "Client_CmsNews",
deptcode = GetPushDeptcode,
jsontext = new
{
newid = @event.log.newid,
Status = @event.log.Status,
OpUser = @event.log.OpUser,
OpName = @event.log.OpName,
deptcode = @event.log.deptcode,
OpEvent = @event.log.OpEvent,
CheckRemark = @event.log.CheckRemark,
AuditImg1 = @event.log.AuditImg1,
AuditImg2 = @event.log.AuditImg2,
AuditImg3 = @event.log.AuditImg3,
AuditImg4 = @event.log.AuditImg4,
AuditImg5 = @event.log.AuditImg5,
AuditImg6 = @event.log.AuditImg6,
Reason = @event.log.Reason,
Attachment = @event.log.Attachment,
}.ToJson()
};
var rep = Utility.PostAjaxData(url, para.ToJson(), Encoding.UTF8);
var ret = Utility.JSONToObject<retMsg>(rep);
if (!ret.result)
LogHelper.Error("接口 Client_CmsNews 写入失败!");
}
catch (Exception ex)
{
LogHelper.Error(ex.ToString());
}
}
}
}