public async Task <ActionResult <Data.Models.Role> > CreateNewRole(Data.Models.RoleForCreate newRole)
        {
            Data.Entities.Role dbNewRole = null;
            try
            {
                dbNewRole = _mapper.Map <Data.Entities.Role>(newRole);
            }
            catch (Exception ex)
            {
                return(BadRequest("Input is in invalid format: " + ex.Message));
            }

            if (dbNewRole == null)
            {
                return(BadRequest("Input is in invalid format"));
            }

            await _repository.AddAsync <Data.Entities.Role>(dbNewRole);

            await _repository.SaveChangesAsync();

            Data.Models.Role addedRole = _mapper.Map <Data.Models.Role>(dbNewRole);

            var url = _linkgenerator.GetPathByAction(HttpContext, "GetRoleByRoleId", "Roles", addedRole);

            return(this.Created(url, addedRole));
        }
        public async Task <ActionResult <Data.Models.Role> > PatchRole(short roleId, JsonPatchDocument <Data.Models.RoleForUpdate> patchDocument)
        {
            try
            {
                Data.Entities.Role dbRole = await _repository.GetRoleAsync(roleId);

                if (dbRole == null)
                {
                    return(NotFound());
                }

                var updatedRole = _mapper.Map <Data.Models.RoleForUpdate>(dbRole);
                patchDocument.ApplyTo(updatedRole, ModelState);

                _mapper.Map(updatedRole, dbRole);

                if (await _repository.SaveChangesAsync())
                {
                    Data.Models.Role savedRole = _mapper.Map <Data.Models.Role>(await _repository.GetRoleAsync(roleId));
                    return(Ok(savedRole));
                }
                else
                {
                    return(StatusCode(StatusCodes.Status500InternalServerError, "Unable to save to database"));
                }
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, "Unable to patch role " + ex.Message));
            }
        }
        public async Task <ActionResult <Data.Models.Role> > UpdateRole(short roleId, Data.Models.RoleForUpdate updatedRole)
        {
            try
            {
                Data.Entities.Role dbRole = await _repository.GetRoleAsync(roleId);

                if (dbRole == null)
                {
                    return(NotFound());
                }

                _mapper.Map(updatedRole, dbRole);
                if (await _repository.SaveChangesAsync())
                {
                    Data.Models.Role savedRole = _mapper.Map <Data.Models.Role>(dbRole);
                    return(Ok(savedRole));
                }
                else
                {
                    return(BadRequest("Failed to update."));
                }
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, "Database exception: " + ex.Message));
            }
        }
Ejemplo n.º 4
0
        public async Task <RoleDto> Create(RoleRequestModel model)
        {
            var role = new Data.Models.Role
            {
                Name        = model.Name,
                Description = model.Description
            };

            _db.Roles.Add(role);
            await _db.SaveChangesAsync();

            return(await GetById(role.Id));
        }
Ejemplo n.º 5
0
        public ActionResult GetList(string filter = "", int pageIndex = 1, int pageSize = 10)
        {
            int count = 0;
            var r     = new Data.Models.Role()
            {
                Name      = filter,
                PageIndex = pageIndex,
                PageSize  = pageSize
            };
            var result = role.GetPageList <Data.Models.Role>(r);

            return(new ResponseModel <IEnumerable <Data.Models.Role> >(ErrorCode.success, result, count));
        }
Ejemplo n.º 6
0
 public ActionResult Update(UpdateRoleModel updateRoleModel)
 {
     Data.Models.Role r = new Data.Models.Role()
     {
         Id          = updateRoleModel.Id,
         Name        = updateRoleModel.Name,
         Description = updateRoleModel.Description,
         UpdateTime  = DateTime.Now
     };
     if (role.Update(r) > 0)
     {
         return(new ResponseModel <string>(ErrorCode.success, ""));
     }
     else
     {
         return(new ResponseModel <string>(ErrorCode.record_exist, ""));
     }
 }
Ejemplo n.º 7
0
 public ActionResult Add(RoleModel roleModel)
 {
     if (role.GetByName(roleModel.Name) != null)
     {
         return(new ResponseModel <string>(ErrorCode.record_exist, ""));
     }
     Data.Models.Role r = new Data.Models.Role()
     {
         Name            = roleModel.Name,
         PermissionCount = 0,
         Description     = roleModel.Description,
         CreateTime      = DateTime.Now
     };
     if (role.Insert(r) > 0)
     {
         return(new ResponseModel <string>(ErrorCode.success, ""));
     }
     else
     {
         return(new ResponseModel <string>(ErrorCode.server_exception, ""));
     }
 }