Ejemplo n.º 1
0
        public ResultModels DeleteUpdateCurrentSchedulerTask(SettingSchedulerTaskModels model)
        {
            try
            {
                using (var cxt = new NuWebContext())
                {
                    using (var dbContextTransaction = cxt.Database.BeginTransaction())
                    {
                        try
                        {
                            var schedulerTaskOnStore = cxt.G_ScheduleTaskOnStore.FirstOrDefault(x => x.ScheduleTaskId == model.ID);
                            cxt.G_ScheduleTaskOnStore.Remove(schedulerTaskOnStore);
                            var schedulerTask = cxt.G_ScheduleTask.FirstOrDefault(x => x.Id == model.ID && x.ReportId == model.ReportId);
                            cxt.G_ScheduleTask.Remove(schedulerTask);
                            cxt.SaveChanges();
                            dbContextTransaction.Commit();

                            StatusResponse.IsOk    = true;
                            StatusResponse.Message = "Scheduler Task delete successful.";
                        }
                        catch (Exception)
                        {
                            dbContextTransaction.Rollback();
                        }
                    }
                }
            }
            catch (Exception)
            {
                StatusResponse.IsOk    = false;
                StatusResponse.Message = "Scheduler Task delete fail!!!";
            }
            return(StatusResponse);
        }
Ejemplo n.º 2
0
 public SettingSchedulerTaskModels FindById(string Id, string StoreId)
 {
     using (var cxt = new NuWebContext())
     {
         SettingSchedulerTaskModels model = new SettingSchedulerTaskModels();
         model = cxt.G_ScheduleTask.Join(cxt.G_ScheduleTaskOnStore, o => o.Id, s => s.ScheduleTaskId, (o, s) => new{ o, s }).Where(item => item.o.Id == Id && item.s.StoreId == StoreId).Select(item => new SettingSchedulerTaskModels
         {
             ID          = item.o.Id,
             ReportId    = item.o.ReportId,
             Email       = item.o.Email,
             Cc          = item.o.Cc,
             Bcc         = item.o.Bcc,
             Hour        = item.o.Hour,
             Minute      = item.o.Minute,
             Enabled     = item.o.Enabled,
             IsDaily     = item.o.IsDaily,
             IsMonth     = item.o.IsMonthly,
             CreatedDate = item.o.CreatedDate,
             CreatedUser = item.o.CreatedUser,
             //DayOfWeeks = item.DayOfWeeks,
             EmailSubject     = item.o.EmailSubject,
             LastDateModified = item.o.LastDateModified,
             //LastSuccessUtc = item.o.LastSuccessUtc,
             LastUserModified = item.o.LastUserModified,
             StoreId          = item.s.StoreId,
             Description      = item.s.Description,
             //StoreName = item.StoreName
         }).FirstOrDefault();
         //model.GetDateOfWeek();
         return(model);
     }
 }
Ejemplo n.º 3
0
 public ActionResult Delete(SettingSchedulerTaskModels model)
 {
     try
     {
         ResultModels result = _factory.DeleteUpdateCurrentSchedulerTask(model);
         if (result.IsOk)
         {
             //return RedirectToAction("Index");
         }
         else
         {
             model.GetListReportName();
             model.ReportName = model.ListNameReport.Where(o => o.Value.Equals(model.ReportId)).Select(s => s.Text).FirstOrDefault();
             ModelState.AddModelError("ReportId", "Have a error when you deleted an Scheduler Report");
             Response.StatusCode = (int)HttpStatusCode.BadRequest;
             return(PartialView("_Delete", model));
         }
         return(new HttpStatusCodeResult(HttpStatusCode.OK));
     }
     catch (Exception ex)
     {
         _logger.Error("SchedulerTaskModels_Delete: " + ex);
         ModelState.AddModelError("Name", "Have a error when you deleted an Scheduler Report");
         Response.StatusCode = (int)HttpStatusCode.BadRequest;
         return(PartialView("_Delete", model));
     }
 }
Ejemplo n.º 4
0
        public PartialViewResult Delete(string id, string StoreId)
        {
            SettingSchedulerTaskModels model = GetDetail(id, StoreId);

            model.GetListReportName();
            model.ReportName = model.ListNameReport.Where(o => o.Value.Equals(model.ReportId)).Select(s => s.Text).FirstOrDefault();
            return(PartialView("_Delete", model));
        }
Ejemplo n.º 5
0
        public ResultModels UpdateCurrentSchedulerTask(SettingSchedulerTaskModels model)
        {
            try
            {
                using (var cxt = new NuWebContext())
                {
                    using (var dbContextTransaction = cxt.Database.BeginTransaction())
                    {
                        try
                        {
                            var schedulerTask = cxt.G_ScheduleTask.FirstOrDefault(x => x.Id == model.ID && x.ReportId == model.ReportId);
                            schedulerTask.EmailSubject     = model.EmailSubject;
                            schedulerTask.Email            = model.Email;
                            schedulerTask.Cc               = model.Cc;
                            schedulerTask.Bcc              = model.Bcc;
                            schedulerTask.Hour             = model.Hour;
                            schedulerTask.Minute           = model.Minute;
                            schedulerTask.Enabled          = model.Enabled;
                            schedulerTask.IsDaily          = model.IsDaily;
                            schedulerTask.IsMonthly        = model.IsMonth;
                            schedulerTask.LastDateModified = DateTime.Now;

                            // for scheduler task on store
                            var schedulerTaskOnStore = cxt.G_ScheduleTaskOnStore.FirstOrDefault(x => x.ScheduleTaskId == model.ID /*&& x.StoreId == model.StoreId*/);
                            schedulerTaskOnStore.Id               = schedulerTaskOnStore.Id;
                            schedulerTaskOnStore.ScheduleTaskId   = schedulerTask.Id;
                            schedulerTaskOnStore.StoreId          = model.StoreId;
                            schedulerTaskOnStore.Description      = model.Description;
                            schedulerTaskOnStore.LastDateModified = DateTime.Now;

                            cxt.SaveChanges();
                            dbContextTransaction.Commit();

                            StatusResponse.IsOk    = true;
                            StatusResponse.Message = "Scheduler Task update successful.";
                        }
                        catch (Exception)
                        {
                            dbContextTransaction.Rollback();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                string error = ex.ToString();
                StatusResponse.IsOk    = false;
                StatusResponse.Message = "Scheduler Task update fail!!!";
            }
            return(StatusResponse);
        }
Ejemplo n.º 6
0
        public ActionResult Edit(SettingSchedulerTaskModels model)
        {
            try
            {
                //model.GetDateOfWeek();
                //===============
                var           user = System.Web.HttpContext.Current.Session["User"] as UserSession;
                List <string> listOrganizationId = new List <string>();
                if (user != null)
                {
                    listOrganizationId = user.ListOrganizationId;
                }
                var storeName = model.GetDataStore(listOrganizationId).Where(x => x.Value == model.StoreId).Select(x => x.Text).FirstOrDefault();
                model.StoreName = storeName;
                //string DayOfWeeks = "";
                //if (Request.Form["DayOfWeeks"] == null)
                //{
                //    //ModelState.AddModelError("DayOfWeeks", "Please choose Day of week!!!");
                //    DayOfWeeks = Request.Form["DoW"].ToString();
                //}
                //else
                //{
                //    DayOfWeeks = Request.Form["DayOfWeeks"].ToString();
                //}
                //model.DayOfWeeks = DayOfWeeks;
                if (!ModelState.IsValid)
                {
                    Response.StatusCode = (int)HttpStatusCode.BadRequest;
                    return(PartialView("_Edit", model));
                }

                ResultModels result = _factory.UpdateCurrentSchedulerTask(model);
                if (result.IsOk) // Success
                {
                    //return RedirectToAction("Index");
                    return(new HttpStatusCodeResult(HttpStatusCode.OK));
                }
                else //Fail
                {
                    Response.StatusCode = (int)HttpStatusCode.BadRequest;
                    return(PartialView("_Edit", model));
                }
            }
            catch (Exception ex)
            {
                _logger.Error("Organization_Edit: " + ex);
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(PartialView("_Edit", model));
            }
        }
Ejemplo n.º 7
0
        public PartialViewResult Edit(string id, string StoreId)
        {
            SettingSchedulerTaskModels model = GetDetail(id, StoreId);
            //===============
            var           user = System.Web.HttpContext.Current.Session["User"] as UserSession;
            List <string> listOrganizationId = new List <string>();

            if (user != null)
            {
                listOrganizationId = user.ListOrganizationId;
            }
            model.GetDataStore(listOrganizationId);
            return(PartialView("_Edit", model));
        }
Ejemplo n.º 8
0
        public ActionResult Create()
        {
            SettingSchedulerTaskModels model = new SettingSchedulerTaskModels();
            //model.GetDateOfWeek();
            //===============
            var           user = System.Web.HttpContext.Current.Session["User"] as UserSession;
            List <string> listOrganizationId = new List <string>();

            if (user != null)
            {
                listOrganizationId = user.ListOrganizationId;
            }
            model.GetDataStore(listOrganizationId);
            return(View(model));
        }
Ejemplo n.º 9
0
        public ActionResult Create(SettingSchedulerTaskModels model)
        {
            try
            {
                //model.GetDateOfWeek();
                //===============
                var           user = System.Web.HttpContext.Current.Session["User"] as UserSession;
                List <string> listOrganizationId = new List <string>();
                if (user != null)
                {
                    listOrganizationId = user.ListOrganizationId;
                }
                var storeName = model.GetDataStore(listOrganizationId).Where(x => x.Value == model.StoreId).Select(x => x.Text).FirstOrDefault();
                model.StoreName = storeName;
                //==================
                if (model.ReportId == null)
                {
                    ModelState.AddModelError("ReportId", "Please choose Report!!!");
                }
                var _obj = Request.Form["ReportId"].Split(',');
                if (!ModelState.IsValid)
                {
                    foreach (var item in _obj)
                    {
                        model.ListReportID.Add(item);
                    }
                    return(View(model));
                }

                foreach (var item in _obj)
                {
                    string       _report             = item;
                    ResultModels listStatusResponses = _factory.CreateSchedulerTask(model, _report);
                }
                return(RedirectToAction("Index"));
            }
            catch (Exception ex)
            {
                _logger.Error("SettingSchedulerTask_Create: " + ex);
                return(new HttpStatusCodeResult(400, ex.Message));
            }
        }
Ejemplo n.º 10
0
 public ActionResult Index()
 {
     try
     {
         SettingSchedulerTaskViewModels model = new SettingSchedulerTaskViewModels();
         SettingSchedulerTaskModels     temp  = new SettingSchedulerTaskModels();
         temp.GetListReportName();
         model.ListSchedulerTaskModels = _factory.GetData();
         foreach (var item in model.ListSchedulerTaskModels)
         {
             if (temp.ListNameReport.Any())
             {
                 item.ReportName = temp.ListNameReport.Where(o => o.Value.Equals(item.ReportId)).Select(s => s.Text).FirstOrDefault();
             }
             item.StoreName = GetStoreName(item.StoreId);
         }
         return(View(model));
     }
     catch (Exception ex)
     {
         _logger.Error("SettingSchedulerTask_Index: " + ex);
         return(new HttpStatusCodeResult(400, ex.Message));
     }
 }
Ejemplo n.º 11
0
        public ResultModels CreateSchedulerTask(SettingSchedulerTaskModels model, string _report)
        {
            using (var cxt = new NuWebContext())
            {
                try
                {
                    var schedulerTask        = cxt.G_ScheduleTask.FirstOrDefault(x => x.ReportId == _report);
                    var schedulerTaskOnStore = cxt.G_ScheduleTaskOnStore.FirstOrDefault(x => x.StoreId == model.StoreId && x.ScheduleTaskId == model.ID);
                    if (schedulerTask != null && schedulerTaskOnStore != null) //Update
                    {
                        using (var dbContextTransaction = cxt.Database.BeginTransaction())
                        {
                            try
                            {
                                schedulerTask.Id           = schedulerTask.Id;
                                schedulerTask.ReportId     = schedulerTask.ReportId;
                                schedulerTask.EmailSubject = model.EmailSubject;
                                schedulerTask.Email        = model.Email;
                                schedulerTask.Cc           = model.Cc;
                                schedulerTask.Bcc          = model.Bcc;
                                //schedulerTask.DayOfWeeks = model.DayOfWeeks;
                                schedulerTask.Hour    = model.Hour;
                                schedulerTask.Minute  = model.Minute;
                                schedulerTask.Enabled = model.Enabled;
                                schedulerTask.IsDaily = model.IsDaily;
                                //schedulerTask.IsMonth = model.IsMonth;

                                schedulerTask.LastDateModified = DateTime.Now;

                                //schedulerTask.StoreId = model.StoreId;
                                //for schedule on store
                                schedulerTaskOnStore.Id               = schedulerTaskOnStore.Id;
                                schedulerTaskOnStore.ScheduleTaskId   = schedulerTask.Id;
                                schedulerTaskOnStore.StoreId          = schedulerTaskOnStore.StoreId;
                                schedulerTaskOnStore.Description      = model.Description;
                                schedulerTaskOnStore.CreatedDate      = schedulerTaskOnStore.CreatedDate;
                                schedulerTaskOnStore.CreatedUser      = "******";
                                schedulerTaskOnStore.LastUserModified = "SA";
                                schedulerTaskOnStore.LastDateModified = DateTime.Now;

                                cxt.SaveChanges();
                                dbContextTransaction.Commit();
                            }
                            catch (Exception)
                            {
                                dbContextTransaction.Rollback();
                            }
                        }
                    }
                    else // Insert
                    {
                        using (var dbContextTransaction = cxt.Database.BeginTransaction())
                        {
                            try
                            {
                                G_ScheduleTask itemInsert = new G_ScheduleTask();
                                itemInsert.Id               = Guid.NewGuid().ToString();
                                itemInsert.CreatedDate      = DateTime.Now;
                                itemInsert.CreatedUser      = "******";
                                itemInsert.LastDateModified = DateTime.Now;
                                //itemInsert.LastSuccessUtc = DateTime.Now;
                                itemInsert.LastUserModified = "SA";
                                itemInsert.EmailSubject     = model.EmailSubject;

                                itemInsert.ReportId = _report;
                                itemInsert.Email    = model.Email;
                                itemInsert.Cc       = model.Cc;
                                itemInsert.Bcc      = model.Bcc;
                                itemInsert.IsDaily  = model.IsDaily;
                                //itemInsert.IsMonth = model.IsMonth;
                                itemInsert.Hour    = model.Hour;
                                itemInsert.Minute  = model.Minute;
                                itemInsert.Enabled = model.Enabled;

                                cxt.G_ScheduleTask.Add(itemInsert);

                                //for Schedule On Store
                                G_ScheduleTaskOnStore itemInsertOnStore = new G_ScheduleTaskOnStore();
                                itemInsertOnStore.Id               = Guid.NewGuid().ToString();
                                itemInsertOnStore.ScheduleTaskId   = itemInsert.Id;
                                itemInsertOnStore.StoreId          = model.StoreId;
                                itemInsertOnStore.Description      = model.Description;
                                itemInsertOnStore.CreatedDate      = DateTime.Now;
                                itemInsertOnStore.CreatedUser      = "******";
                                itemInsertOnStore.LastUserModified = "SA";
                                itemInsertOnStore.LastDateModified = DateTime.Now;
                                cxt.G_ScheduleTaskOnStore.Add(itemInsertOnStore);
                                cxt.SaveChanges();
                                dbContextTransaction.Commit();
                            }
                            catch (Exception)
                            {
                                dbContextTransaction.Rollback();
                            }
                        }
                    }
                }
                catch (DbEntityValidationException e)
                {
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        string error = string.Format("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                                     eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            string error2 = string.Format("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                    //throw;
                }
            }
            return(StatusResponse);
        }