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); }
private async Task <SaveResult> EditEntityAsync(TrainingPlanViewModel model, TrainingPlanDistance record) { var saveResult = new SaveResult(); var editTrainingPlanDistance = await _context.TrainingPlanDistance.FindAsync(record.Id); editTrainingPlanDistance.ToEntity(record.DistanceId, model.Id, model.SessionUserId); _context.Update(editTrainingPlanDistance); await _context.SaveChangesAsync(); saveResult.IsSuccess = true; return(saveResult); }
public static TrainingPlanDistance ToEntity(this TrainingPlanDistance entity, int referralId, int containerId, string sessionUserID) { if (entity.Id > 0) { entity.UpdatedUserId = sessionUserID; entity.UpdatedTimestamp = DateTime.Now; } else { entity.TrainingPlanId = containerId; entity.DistanceId = referralId; entity.CreatedUserId = sessionUserID; } return(entity); }