public void Add(string values) { var newAuthorizationModel = new AuthorizationBusinessModel(); JsonConvert.PopulateObject(values, newAuthorizationModel); var newAuthorization = _mapper.Map <Authorization>(newAuthorizationModel); AuthorizationRole newAutRole; foreach (var roleId in newAuthorizationModel.RoleIds) { newAutRole = new AuthorizationRole(); newAutRole.Authorization = newAuthorization; newAutRole.Role = _roleUnitOfWork.RoleRepository.GetById(roleId); newAuthorization.AuthorizationRoles.Add(newAutRole); } _roleUnitOfWork.AuthorizationRepository.Add(newAuthorization); _roleUnitOfWork.Complete(); }
public void Update(int id, string values) { Authorization authorization = _roleUnitOfWork.AuthorizationRepository.GetById(id); AuthorizationBusinessModel authorizationBusinessModel = _mapper.Map <AuthorizationBusinessModel>(authorization); _roleUnitOfWork.AuthorizationRepository.Remove(authorization); var autRoleCollections = _roleUnitOfWork.AuthorizationRoleRepository.GetAuthorizationRolesByAuthorizationId(id); int[] RoleIds = new int[autRoleCollections.Count]; int i = 0; foreach (var autRoleCollection in autRoleCollections) { RoleIds[i] = autRoleCollection.RoleId; _roleUnitOfWork.AuthorizationRoleRepository.Remove(autRoleCollection); i++; } authorizationBusinessModel.RoleIds = RoleIds; JsonConvert.PopulateObject(values, authorizationBusinessModel); var newAuthorization = _mapper.Map <Authorization>(authorizationBusinessModel); if (authorizationBusinessModel.RoleIds != null) { AuthorizationRole autRole; foreach (var autRoleId in authorizationBusinessModel.RoleIds) { autRole = new AuthorizationRole(); autRole.Role = _roleUnitOfWork.RoleRepository.GetById(autRoleId); autRole.Authorization = newAuthorization; newAuthorization.AuthorizationRoles.Add(autRole); } } _roleUnitOfWork.AuthorizationRepository.Add(newAuthorization); _roleUnitOfWork.Complete(); }