using CRM.Core.BLL.Application.Order; using CRM.Core.BLL.Wx; using CRM.Core.Common.Layui; using Quartz; using System; using System.Linq; using WX.CRM.Common; namespace CRM.Core.CoreService.Order { public class AutoOpenOrder { private Wx_AutoOpenOrder_BL _autoOpenOrder = new Wx_AutoOpenOrder_BL(); private OrderService _order = new OrderService(); public void Exe() { LogHelper.Info("批量订单开通开始"); var list = _autoOpenOrder.GetList(p => p.IsExe == 0, p => p.Id, new Laypage() { page = 1, limit = 20 }).ToList(); foreach (var item in list) { try { var retmsg = _order.Open(item.OrderId, item.Creator, item.CreatorName); item.IsExe = 1; item.ETime = DateTime.Now; item.IsOk = retmsg.result ? 1 : 0; if (retmsg.retcode == 60) { item.Remark = "该订单已经关闭"; } else if (retmsg.retcode == 200) { item.Remark = "该订单还未支付"; } else if (retmsg.retcode == 201) { item.Remark = "总部风控还未通过"; } else if (retmsg.retcode == 220) { item.Remark = "该订单已经开通过了"; } else if (retmsg.retcode == 20) { item.Remark = "到账金额不能小于订单应付金额"; } else { item.Remark = retmsg.retmsg; } _autoOpenOrder.Update(item); } catch (Exception ex) { LogHelper.Error(ex.ToString()); } } LogHelper.Info("批量订单开通结束"); } } public class AutoOpenOrderJob : IJob { static bool runnding = false; public void Execute(JobExecutionContext context) { if (runnding) return; runnding = true; try { new AutoOpenOrder().Exe(); } catch (Exception e) { LogHelper.Error(e); } finally { runnding = false; } } } }