using CRM.Core.BLL.Base; 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 FinishRefundContractEventHandler : IEventHandler { private readonly Bas_ActLog_BL _actLog = new Bas_ActLog_BL(); public void Handle(FinishRefundContractEvent @event) { try { LogHelper.Info("合同确认事件推送执行:" + @event.ToJson()); var host = Utility.GetSettingOrNullByKey("DataSyncApiUrl"); var url = host + "/api/DataSync"; var para = new SYNC_PUSH_DTO() { bidatatype = "Client_FinishRefundContract", deptcode = @event.DeptCode, jsontext = new { @event.OrderId, @event.Status }.ToJson() }; var rep = Utility.PostAjaxData(url, para.ToJson(), Encoding.UTF8); var ret = Utility.JSONToObject(rep); if (!ret.result) LogHelper.Error("接口 FinishRefundContractEventHandler 写入失败!"); if (@event.OperaId.HasValue) { var info = new Model.Entity.Bas_ActLog() { ActType = 3, ActTypeName = "退款合同审核", Operaor = @event.OperaId.Value, OperatorName = @event.OperaName, Status = @event.Status, OperationTime = DateTime.Now, Remark = "退款合同审核", OrderId = @event.OrderId }; _actLog.Add(info); } } catch (Exception ex) { LogHelper.Error("签约事件推送错误:" + ex.ToString()); } } } }