Beispiel #1
0
        public async Task <IResponseResult> SaveScreens(ScreensAssignedParameters parameters)
        {
            if (parameters.ScreenAssigned != null)
            {
                foreach (var ScreenId in parameters.ScreenAssigned)
                {
                    var isExists = await _menuRoleUnitOfWork.Repository.FirstOrDefaultAsync(q => q.MenuId == ScreenId && q.RoleId == parameters.RoleId) != null;

                    if (!isExists)
                    {
                        var obj = new MenuRoles()
                        {
                            Id = Guid.NewGuid().ToString(), RoleId = parameters.RoleId, MenuId = ScreenId
                        };
                        _menuRoleUnitOfWork.Repository.Add(obj);
                    }
                }
            }
            if (parameters.ScreenAssignedRemove != null)
            {
                var dataRemoved = await _menuRoleUnitOfWork.Repository.FindAsync(q => parameters.ScreenAssignedRemove.Contains(q.MenuId) && q.RoleId == parameters.RoleId);

                _menuRoleUnitOfWork.Repository.RemoveRange(dataRemoved);
            }

            await _menuRoleUnitOfWork.SaveChanges();

            return(ResponseResult.GetRepositoryActionResult(true, status: HttpStatusCode.Created, message: HttpStatusCode.Created.ToString()));
        }
Beispiel #2
0
        public async Task <IResult> SaveScreens([FromForm] ScreensAssignedParameters parameters)
        {
            var repositoryResult = await _menuServices.SaveScreens(parameters);

            var result = ResponseHandler.GetResult(repositoryResult);

            return(result);
        }