Esempio n. 1
0
        public async Task <IActionResult> Create(ActivityCreateViewModel model)
        {
            if (ModelState.IsValid)
            {
                //await _client.PostRequest<object>($"Activity/Create", model);
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }
                var user = await _userManager.GetUserAsync(HttpContext.User);

                var userData = _userRepository.GetUserByIdentity(user.Id);
                model.IdUser = userData.Id;

                // Failsafe
                if (model.Type != 2 || !userData.IsOrganizer)
                {
                    model.Type = 1;
                }

                await _eventHub.SendMessage(new QueueElement <ActivityCreateViewModel>
                {
                    Type = "ActivityCreate",
                    Data = model,
                });

                return(RedirectToAction("Index"));
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> Create(int id)
        {
            ActivityCreateViewModel activityCreateViewModel = new ActivityCreateViewModel
            {
                VSocietyInfoEntity = await _societyServices.GetVSocietyInfo(id)
            };

            return(View(activityCreateViewModel));
        }
        public async Task <IActionResult> Update(ActivityCreateViewModel form)
        {
            if (ModelState.IsValid)
            {
                var m = _activityService.GetActivitiesAsync(out int _).Result.SingleOrDefault(x => x.Id.Equals(form.Id));

                if (m != null)
                {
                    m.Name = form.Name;
                    m.Date = form.Date;
                    m.Code = form.Code;

                    TryValidateModel(m);

                    if (!ModelState.IsValid)
                    {
                        return(Json(new
                        {
                            success = "fail",
                            errorList = JsonConvert.SerializeObject(ModelState.Values.Where(x => x.Errors.Count > 0),
                                                                    Formatting.None,
                                                                    new JsonSerializerSettings {
                                ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                            })
                        }));
                    }

                    if (_optionsAccessor.Value.EfSettings.DataContext.SaveEntity)
                    {
                        try
                        {
                            _db.Activity.Update(m);
                            _db.SaveChanges();

                            if (_optionsAccessor.Value.EfSettings.DataContext.SendEmail)
                            {
                                await SendCreatedConfirmEmail(m);
                            }

                            _logger.Log(LogLevel.Information, new EventId(2), "", null, (s, exception) => "Activity Updated");
                            //_cache.Remove(Url.Action("GetActivitys", "Activity"));
                            return(Content("success"));
                        }
                        catch (Exception dbEx)
                        {
                            _logger.LogError(new EventId(2), dbEx, $"An error occured saving Activity: {form.Id}");
                        }
                    }
                }
            }
            return(Json(new { success = "fail", errorList = JsonConvert.SerializeObject(ModelState.Values.Where(x => x.Errors.Count > 0), Formatting.None, new JsonSerializerSettings {
                    ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                }) }));
        }
Esempio n. 4
0
        // GET: Activities/Create
        public IActionResult Create(string btnAddActivity)
        {
            var viewModel = new ActivityCreateViewModel
            {
                TaskID           = Convert.ToInt32(btnAddActivity),
                StartDate        = DateTime.Today,
                EstimatedEndDate = DateTime.Today
            };

            return(View(viewModel));
        }
Esempio n. 5
0
 public ActionResult Create(ActivityCreateViewModel activity)
 {
     if (ModelState.IsValid)
     {
         db.Activities.Add(new Activity(activity));
         db.SaveChanges();
         return(RedirectToAction("Index", new { activity.ModuleId }));
     }
     MakeBreadCrumbs(db.Modules.Find(activity.ModuleId));
     return(View(activity));
 }
        public async Task <IActionResult> Create(ActivityCreateViewModel form)
        {
            if (ModelState.IsValid)
            {
                var m = new Activity
                {
                    Name = form.Name,
                    Date = form.Date,
                    Code = form.Code
                };

                var activities = _activityService.GetActivitiesAsync(out int _);

                if (activities.Result.Any())
                {
                    m.Code = activities.Result.Last().Code + 1;
                }
                else
                {
                    m.Code = 1;
                }

                TryValidateModel(m);

                if (!ModelState.IsValid)
                {
                    return(Json(new { success = "fail", errorList = JsonConvert.SerializeObject(ModelState.Values.Where(x => x.Errors.Count > 0), Formatting.None, new JsonSerializerSettings {
                            ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                        }) }));
                }

                if (_optionsAccessor.Value.EfSettings.DataContext.SaveEntity)
                {
                    _activityService.AddActivity(m, out var result);

                    if (result > 0)
                    {
                        if (_optionsAccessor.Value.EfSettings.DataContext.SendEmail)
                        {
                            await SendCreatedConfirmEmail(m);
                        }

                        _cache.Remove(Url.Action("GetActivities", "Activity"));

                        return(Content("success"));
                    }
                }
            }
            return(Json(new { success = "fail", errorList = JsonConvert.SerializeObject(ModelState.Values.Where(x => x.Errors.Count > 0), Formatting.None, new JsonSerializerSettings {
                    ReferenceLoopHandling = ReferenceLoopHandling.Ignore
                }) }));
        }
Esempio n. 7
0
        public async Task <IActionResult> Create(int id, ActivityCreateViewModel activityCreateViewModel)
        {
            if (ModelState.IsValid)
            {
                if (await _activityServices.CreateActivity(id, activityCreateViewModel))
                {
                    ViewData["Result"] = ActivityServices.ActivityCreateResultEnum.Success;
                }
            }

            activityCreateViewModel.VSocietyInfoEntity = await _societyServices.GetVSocietyInfo(id);

            return(View(activityCreateViewModel));
        }
Esempio n. 8
0
        public async Task <IActionResult> Create(ActivityCreateViewModel model)
        {
            if (ModelState.IsValid)
            {
                //await _client.PostRequest<object>($"Activity/Create", model);
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }
                var user = await _userManager.GetUserAsync(HttpContext.User);

                var userData = _userRepository.GetUserByIdentity(user.Id);
                model.IdUser = userData.Id;

                // Failsafe
                if (model.Type != 2 || !userData.IsOrganizer)
                {
                    model.Type = 1;
                }


                if (Program.UseEventHub)
                {
                    await _eventHub.SendMessage(new QueueElement <ActivityCreateViewModel>
                    {
                        Type = "ActivityCreate",
                        Data = model,
                    });
                }
                else
                {
                    var queue = new ServiceBusManager(_configuration["ServiceBusConnectionString"], _configuration["ServiceBusQueueName"]);
                    await queue.SendMessage(new QueueElement <ActivityCreateViewModel>
                    {
                        Type = "ActivityCreate",
                        Data = model,
                    });
                }



                return(RedirectToAction("Index"));
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
Esempio n. 9
0
        public async Task <bool> CreateActivity(int id, ActivityCreateViewModel activityCreateViewModel)
        {
            ActivityEntity activityEntity = new ActivityEntity
            {
                Society     = id,
                Name        = activityCreateViewModel.Name,
                Description = activityCreateViewModel.Description,
                Time        = activityCreateViewModel.Time,
                CreateTime  = DateTime.Now,
                Status      = ActivityDbSetStatusEnum.Pending.ToString()
            };

            _societyManagementSystemDbContext.Activity.Add(activityEntity);

            return(await _societyManagementSystemDbContext.SaveChangesAsync() != 0);
        }
Esempio n. 10
0
        // GET: Activities/Create
        // For now we assume we have a correct moduleId, otherwise we need mode che
        public ActionResult Create(int?moduleId)
        {
            var module = db.Modules.FirstOrDefault(m => m.Id == moduleId);
            ActivityCreateViewModel model = new ActivityCreateViewModel()
            {
                Name        = "",
                Description = "",
                StartDate   = module.StartDate,
                EndDate     = module.EndDate,
                ModuleId    = module.Id,
                CourseId    = module.CourseId,
                //SelectModule = new SelectList(db.Modules, "Id", "Name", moduleId),
                SelectType = new SelectList(db.ActivityTypes, "Id", "Description")
            };

            return(View(model));
        }
Esempio n. 11
0
 public ActionResult Edit(int?id, ActivityCreateViewModel activity)
 {
     if (ModelState.IsValid)
     {
         //db.Entry(activity).State = EntityState.Modified;
         var dbactivity = db.Activities.Find(id);
         if (dbactivity == null)
         {
             return(HttpNotFound());
         }
         dbactivity.Update(activity);
         db.SaveChanges();
         return(RedirectToAction("Index", new { activity.ModuleId }));
     }
     MakeBreadCrumbs(db.Activities.Find(id)?.Module);
     ViewBag.ActivityTypeId = new SelectList(db.ActivityTypes, "Id", "Name", activity.ActivityTypeId);
     return(View(activity));
 }
Esempio n. 12
0
        public ActionResult Create([Bind(Include = "Id,Name,Description,StartDate,EndDate,TypeId,ModuleId")] Activity activity, int CourseId)
        {
            if (ModelState.IsValid)
            {
                //Activity activity = Mapper.Map<ActivityEditViewModel,Activity>(activityVM);
                var module = db.Modules.FirstOrDefault(m => m.Id == activity.ModuleId);
                if (Util.Validation.DateRangeValidation(this, module, activity))
                {
                    db.Activities.Add(activity);
                    db.SaveChanges();
                    return(RedirectToAction("Index", "CourseDetails", new { id = module.CourseId }));
                }
            }

            ActivityCreateViewModel model = Mapper.Map <Activity, ActivityCreateViewModel>(activity);

            //model.SelectModule = new SelectList(db.Modules, "Id", "Name", activity.ModuleId);
            model.CourseId   = CourseId;
            model.SelectType = new SelectList(db.ActivityTypes, "Id", "Description", activity.TypeId);
            return(View(model));
        }
Esempio n. 13
0
        public async Task <IActionResult> Create(ActivityCreateViewModel model)
        {
            if (model.EndTime <= model.BeginTime)
            {
                ModelState.AddModelError(string.Empty, "End Time can't be earlier than Begin Time!");
            }

            if (await _activityService.ExistsAsync(model.Name))
            {
                ModelState.AddModelError(string.Empty, "Name alreay exists!");
            }

            if (ModelState.IsValid)
            {
                var creator = User.GetUsername();
                await _activityService.CreateAsync(model.Name, model.BeginTime, model.EndTime, model.Description, creator);

                _logger.LogInformation(1, $"{creator} created activity - {model.Name}");
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }