public IActionResult UrlForm(int id)
        {
            UrlAndSchedulerModel model = new UrlAndSchedulerModel();

            model.StartDate = DateTime.Now.ToShortDateString();
            if (id != 0)
            {
                var dataResult = _urlService.GetUrlById(id);
                if (dataResult.Success)
                {
                    model.UrlId      = id;
                    model.IsActive   = Convert.ToBoolean(dataResult.Data.IsActive);
                    model.UrlAddress = dataResult.Data.Address;
                    model.UrlName    = dataResult.Data.Name;
                    var urlScheduler = _urlSchedulerService.GetUrlSchedulerListByUrlId(id);
                    if (urlScheduler.Success && (urlScheduler.Data != null))
                    {
                        model.ScheduleId = urlScheduler.Data.Id;
                        model.StartDate  = urlScheduler.Data.StartDate.Value.ToShortDateString();
                        if (urlScheduler.Data.RepeatForever == 0)
                        {
                            model.EndDate = urlScheduler.Data.EndDate.Value.ToShortDateString();
                        }
                        model.WithInternalInMinutes = urlScheduler.Data.WithInternalInMinutes;
                        model.Hour          = urlScheduler.Data.StartDate.Value.Hour;
                        model.Minute        = urlScheduler.Data.StartDate.Value.Minute;
                        model.RepeatForever = Convert.ToBoolean(urlScheduler.Data.RepeatForever);
                    }
                }
            }
            return(View(model));
        }
        public IActionResult UrlForm(UrlAndSchedulerModel saveModel)
        {
            if (ModelState.IsValid)
            {
                Url urlSaveModel = new Url();
                urlSaveModel.IsActive = Convert.ToInt32(saveModel.IsActive);
                urlSaveModel.Name     = saveModel.UrlName;
                urlSaveModel.Address  = saveModel.UrlAddress;
                urlSaveModel.UserId   = SessionUserId;
                urlSaveModel.Id       = saveModel.UrlId;
                UrlScheduler urlSchedulerSaveModel = new UrlScheduler();
                urlSchedulerSaveModel.Id                    = saveModel.ScheduleId;
                urlSchedulerSaveModel.IsActive              = 1;
                urlSchedulerSaveModel.RepeatForever         = 1;
                urlSchedulerSaveModel.WithInternalInMinutes = saveModel.WithInternalInMinutes;
                DateTime convertStartDate = Convert.ToDateTime(saveModel.StartDate);
                DateTime _startDate       = new DateTime(convertStartDate.Year, convertStartDate.Month, convertStartDate.Day, saveModel.Hour, saveModel.Minute, 0);
                urlSchedulerSaveModel.StartDate     = _startDate;
                urlSchedulerSaveModel.RepeatForever = Convert.ToInt32(saveModel.RepeatForever);
                if (!saveModel.RepeatForever)
                {
                    urlSchedulerSaveModel.EndDate = Convert.ToDateTime(saveModel.EndDate);
                }
                urlSchedulerSaveModel.EndDate = null;
                if (saveModel.UrlId == 0)
                {
                    urlSaveModel.CreateDate = DateTime.Now;
                    _urlService.Save(urlSaveModel);
                    int urlId = urlSaveModel.Id;
                    if (urlId > 0)
                    {
                        urlSchedulerSaveModel.UrlId = urlId;
                        _urlSchedulerService.Save(urlSchedulerSaveModel);
                        if (urlSchedulerSaveModel.Id > 0)
                        {
                            _customScheduler.StartJob(setJob(urlSaveModel, urlSchedulerSaveModel));
                        }
                    }
                }
                else
                {
                    urlSchedulerSaveModel.UrlId = urlSaveModel.Id;
                    _urlSchedulerService.Update(urlSchedulerSaveModel);
                    _urlService.Update(urlSaveModel);
                    _customScheduler.UpdateJob(setJob(urlSaveModel, urlSchedulerSaveModel));
                }
            }



            return(RedirectToAction("Index"));
        }