//private string _itemId; //public QueryMultiStockRunner(string itemId) //{ // this._itemId = itemId; //} protected override void Do() { //var getItemMultiStockRequest = new GetItemMultiStockRequest(_itemId); //var rsp = Client.Execute<dynamic>(getItemMultiStockRequest); var executor = new GetItemMultiStockExecutor(DateTime.Now.AddHours(-1),Logger); executor.Execute(); //Console.WriteLine(rsp); }
public void Execute(IJobExecutionContext context) { #if DEBUG DateTime benchTime = DateTime.Now.AddYears(-1); #else JobDataMap data = context.JobDetail.JobDataMap; var interval = data.ContainsKey("intervalofmins") ? data.GetInt("intervalofmins") : 1; if (!data.ContainsKey("benchtime")) { data.Put("benchtime", DateTime.Now.AddMinutes(-interval)); } else { data["benchtime"] = data.GetDateTimeValue("benchtime").AddMinutes(interval); } var benchTime = data.GetDateTime("benchtime"); #endif ILog logger = LogManager.GetLogger(this.GetType()); ExecuteResult executeInfo = null; var analytic = ActionTimer.Perform(() => { var inventorySyncExecutor = new GetItemMultiStockExecutor(benchTime, logger); executeInfo = inventorySyncExecutor.Execute(); }); if (executeInfo.Status != ExecuteStatus.Succeed) { foreach (var msg in executeInfo.MessageList) { logger.Error(msg); } } else { logger.Info(string.Format("Sync stocks succeed : {0}, failed :{1}, total: {2}, elapsed:{3}, ratio: {4}", executeInfo.SucceedCount, executeInfo.FailedCount, executeInfo.TotalCount, analytic.TotalSeconds, executeInfo.SucceedCount / analytic.TotalSeconds)); } }