public async Task <IResultModel> Permissions(ResourceUpdateModel model) { var entity = await _resourceRepository.FirstAsync(model.Id); if (entity == null) { return(ResultModel.NotExists); } _mapper.Map(model, entity); try { _dbContext.Db.BeginTran(); await _resourceRepository.UpdateAsync(entity, _dbContext.Db); //过滤 await _resourceFilterRepository.DeleteAsync(m => m.ResourceId == entity.Id, _dbContext.Db); await _resourceFilterRepository.InsertRangeAsync(model.Filters, _dbContext.Db); //白名单 await _resourceWhitelistRepository.DeleteAsync(m => m.ResourceId == entity.Id, _dbContext.Db); await _resourceWhitelistRepository.InsertRangeAsync(model.Whitelists, _dbContext.Db); _dbContext.Db.CommitTran(); } catch (Exception ex) { _dbContext.Db.RollbackTran(); return(ResultModel.Failed(ex.Message)); } return(ResultModel.Success()); }