Beispiel #1
0
        public void ConfigureCron()
        {
            CronManager.Start();
            var jobs = CronManager.GetJobs();

            foreach (var job in jobs)
            {
                CronManager.RemoveJob(job.JobID);
            }

            var productStatus = new CreateScheduleProductStatus();

            CronManager.AddJob(productStatus);
            CronJobController.update("Product Status", productStatus.JobID);

            var websites = productStatus.getWebAdvertisements();

            foreach (var website in websites)
            {
                CronManager.AddJob(new RunScheduleProductStatus(website));
            }
        }
Beispiel #2
0
        /// <summary>
        /// Cập nhật lại trạng thái và giờ start
        /// </summary>
        /// <param name="name"></param>
        /// <param name="cronExpression"></param>
        /// <param name="status"></param>
        /// <returns></returns>
        public static IM_PJ.Models.CronJob update(IM_PJ.Models.CronJob cronNew)
        {
            using (var con = new inventorymanagementEntities())
            {
                var cronJOB = con.CronJobs
                              .Where(x => x.Name.Trim().ToLower() == cronNew.Name.Trim().ToLower())
                              .FirstOrDefault();

                if (cronJOB != null)
                {
                    // Cập nhật lại trạng thái và giờ start
                    cronJOB.CronExpression = cronNew.CronExpression;
                    cronJOB.Status         = cronNew.Status;
                    cronJOB.RunAllProduct  = cronNew.RunAllProduct;
                    cronJOB.MinProduct     = cronNew.MinProduct;
                    cronJOB.ModifiedDate   = DateTime.Now;

                    con.SaveChanges();

                    // Xóa task củ
                    if (cronJOB.JobID.HasValue)
                    {
                        CronManager.RemoveJob(cronJOB.JobID.Value);
                    }

                    // Load lại cron job để cập nhật thông tin mới
                    var taskProductStatus = new CreateScheduleProductStatus();
                    CronManager.AddJob(taskProductStatus);

                    // Cập nhật lại JobID new
                    cronJOB.JobID = taskProductStatus.JobID;
                    con.SaveChanges();
                }

                return(cronJOB);
            }
        }