private async Task <bool> AddEntity(TrainingPlanViewModel model, ICollection <TrainingPlanDistance> TrainingPlanDistances, IQueryable <Distance> regions) { bool isSaveSuccess = true; List <TrainingPlanDistance> TrainingPlanDistanceList = new List <TrainingPlanDistance>(); foreach (var record in model.DistanceIds) { var currentRolePermission = regions.Any(a => a.Id == record); if (currentRolePermission) { TrainingPlanDistance TrainingPlanDistance = new TrainingPlanDistance(); TrainingPlanDistanceList.Add(TrainingPlanDistance.ToEntity(record, model.Id, model.SessionUserId)); } } if (TrainingPlanDistanceList.Count > 0) { await _context.TrainingPlanDistance.AddRangeAsync(TrainingPlanDistanceList); await _context.SaveChangesAsync(); isSaveSuccess = true; } return(isSaveSuccess); }
private async Task <bool> AddTrainingPlanDistanceWherePreviousExists(TrainingPlanViewModel model, ICollection <TrainingPlanDistance> TrainingPlanDistances, IQueryable <Distance> regions) { bool isSaveSuccess = true; List <TrainingPlanDistance> assignedTrainingPlanDistances = new List <TrainingPlanDistance>(); foreach (var recordId in model.DistanceIds) { var currentRolePermission = regions.Where(a => a.Id == recordId).FirstOrDefault(); if (currentRolePermission != null) { if (!TrainingPlanDistances.Any(a => a.DistanceId == recordId)) { // var currentUserRoleID = currentMenuRoles.First(a => a.Distance.RoleID == currentRolePermission.RoleID).RegionID; var TrainingPlanDistanceRepo = new TrainingPlanDistance(); assignedTrainingPlanDistances.Add(TrainingPlanDistanceRepo.ToEntity(recordId, model.Id, model.SessionUserId)); } } } if (assignedTrainingPlanDistances.Count > 0) { await _context.TrainingPlanDistance.AddRangeAsync(assignedTrainingPlanDistances); await _context.SaveChangesAsync(); isSaveSuccess = true; } return(isSaveSuccess); }