Esempio n. 1
0
        public async Task <int> CreateCaseAsync(CreateCaseInputModel inputModel, string userId)
        {
            Case caseToAdd = new Case
            {
                Number      = inputModel.Number,
                Subject     = inputModel.Subject,
                Description = inputModel.Description,
                CreatedOn   = DateTime.UtcNow,
                UserId      = userId,
                TypeId      = inputModel.TypeId,
                StatusId    = inputModel.StatusId,
                PriorityId  = inputModel.PriorityId,
                ServiceId   = inputModel.ServiceId,
            };

            dbContext.Cases.Add(caseToAdd);
            int saveResult = await dbContext.SaveChangesAsync();

            if (saveResult > 0)
            {
                return(caseToAdd.Id);
            }

            return(saveResult);
        }
Esempio n. 2
0
        public async Task <IActionResult> Create(CreateCaseInputModel inputModel)
        {
            if (!ModelState.IsValid)
            {
                // Populate drop-down menus' options and return create page to edit data and re-submit
                inputModel.CaseTypes = await casesService.GetAllCaseTypesAsync();

                inputModel.CaseStatuses = await casesService.GetAllCaseStatusesAsync();

                inputModel.CasePriorities = await casesService.GetAllCasePrioritiesAsync();

                inputModel.CaseServices = await casesService.GetAllCaseServicesAsync();

                return(View(inputModel));
            }

            string userId = usersService.UserManager.GetUserId(User);

            int createResult = await casesService.CreateCaseAsync(inputModel, userId);

            if (createResult > 0)
            {
                await usersService.UpdateUserLastActivityDateAsync(userId);

                TempData["CaseCreatedSuccesffully"] = true;

                return(RedirectToAction("ViewUpdate", new { id = createResult }));
            }

            return(View("Error", new ErrorViewModel()));
        }
Esempio n. 3
0
        public async Task <IActionResult> Create()
        {
            CreateCaseInputModel model = new CreateCaseInputModel
            {
                // Populate drop-down menus' options
                CaseTypes      = await casesService.GetAllCaseTypesAsync(),
                CaseStatuses   = await casesService.GetAllCaseStatusesAsync(),
                CasePriorities = await casesService.GetAllCasePrioritiesAsync(),
                CaseServices   = await casesService.GetAllCaseServicesAsync(),
            };

            return(View(model));
        }
Esempio n. 4
0
        public CreateCaseResult Execute(CreateCaseInputModel model)
        {
            var toolkit = _session.CreateSupportToolkit();

            var setup = new CreateCaseSetup(model.SiteId, model.ContactFirstName, model.ContactLastName, model.ContactPhone)
                            {
                                Title = model.Title,
                                Queue = model.Queue,
                                PhoneLogNotes = model.Description,
                                Priority = model.Priority,
                                CaseType = model.CaseType,
                                Severity = model.IssueSeverity
                            };

            var result = toolkit.CreateCase(setup);

            return new CreateCaseResult {Id = result.IDNum};
        }
Esempio n. 5
0
        public CreateCaseResult Execute(CreateCaseInputModel model)
        {
            var toolkit = _sessionCache.GetUserSession().CreateSupportToolkit();

            var setup = new CreateCaseSetup(model.SiteId, model.ContactFirstName, model.ContactLastName, model.ContactPhone)
            {
                Title         = model.Title,
                Queue         = model.Queue,
                PhoneLogNotes = model.Description,
                Priority      = model.Priority,
                CaseType      = model.CaseType,
                Severity      = model.IssueSeverity
            };

            var result = toolkit.CreateCase(setup);

            return(new CreateCaseResult {
                Id = result.IDNum
            });
        }