Ejemplo n.º 1
0
        public async Task <Result <BugTicketManageModel> > GetBugTicket(int id)
        {
            if (id == 0)
            {
                return(new BugTicketManageModel(null)
                {
                    PublicId = Guid.NewGuid(),
                    StatusCode = BugTicketStatus.Active,
                    Priority = TicketPriority.Low,
                    IsAllowEdit = true,
                    Comments = new List <BugTicketCommentManageModel>(),
                    Files = new List <FileModel>(),
                });
            }

            var result = await _helpService.GetBugTicketAsync(id);

            var toReturn = new BugTicketManageModel(result);

            var superAdmin = _referenceData.AdminRoles.Single(x => x.Key == (int)RoleType.SuperAdminUser).Text;

            if (HttpContext.User.IsInRole(superAdmin.Normalize()) || result.IdAddedBy == Int32.Parse(_userManager.GetUserId(User)))
            {
                toReturn.IsAllowEdit = true;
            }

            return(toReturn);
        }
Ejemplo n.º 2
0
        public async Task <Result <BugTicketManageModel> > UpdateBugTicket([FromBody] BugTicketManageModel model)
        {
            if (!Validate(model))
            {
                return(null);
            }
            var item = model.Convert();

            var superAdmin   = _referenceData.AdminRoles.Single(x => x.Key == (int)RoleType.SuperAdminUser).Text;
            var isSuperAdmin = HttpContext.User.IsInRole(superAdmin.Normalize());

            item = await _helpService.UpdateBugTicketAsync(item, Int32.Parse(_userManager.GetUserId(User)), isSuperAdmin);

            return(new BugTicketManageModel(item));
        }