using CRM.Core.BLL.EventBus.Events; using CRM.Core.BLL.Wx; using CRM.Core.Common.EventBus; using CRM.Core.Model.Entity; using Quartz; using System; using WX.CRM.Common; namespace CRM.Core.CoreService.Order { public class OrderStatusJob : IJob { static bool bRunning = false; WX_SZZYORDER_BL orderBll = new WX_SZZYORDER_BL(); public void Execute(JobExecutionContext context) { if (bRunning) return; bRunning = true; try { LogHelper.Info("==================开始关闭订单状态Start=============="); var list = orderBll.GetUnPayList(7); if (list != null && list.Count > 0) { foreach (var item in list) { var model = new WX_SZZYORDER(); model = item; model.ORDERSTATUS = "60"; model.ORDERSTATUSNAME = "已关闭"; var res = orderBll.Update(model); if (res) { //走退款推送,修改订单状态 EventBus.Instance.Publish(new CloseOrderEvent(Convert.ToInt32(model.ORDERID), model.ORDERSTATUS, model.ORDERSTATUSNAME, model.companycode)); LogHelper.Info("关闭订单状态:" + model.ORDERID.ToString()); } } } LogHelper.Info("==================结束关闭订单状态End=============="); LogHelper.Info("==================开始到期订单状态Start=============="); var expireList = orderBll.GetExpireOrderList(); if (expireList != null && expireList.Count > 0) { foreach (var item in expireList) { var model = new WX_SZZYORDER(); model = item; model.ORDERSTATUS = "80"; model.ORDERSTATUSNAME = "已到期"; var res = orderBll.Update(model); if (res) { //走退款推送,修改订单状态 EventBus.Instance.Publish(new CloseOrderEvent(Convert.ToInt32(model.ORDERID), model.ORDERSTATUS, model.ORDERSTATUSNAME, model.companycode)); LogHelper.Info("到期订单状态:" + model.ORDERID.ToString()); } } } LogHelper.Info("==================结束到期订单状态End=============="); } catch (Exception e) { LogHelper.Error("关闭订单错误:" + e.ToString()); } finally { bRunning = false; } } } }