private async Task <LetterAdvanceCreateModelView> getDataForCreate(int letterId, int delegateId) { var letter = await _context.Letters .Include(b => b.TripBooking) .Include(b => b.TripBooking.SchedulingTripDetail.TripType) .Include(b => b.TripBooking.StudentsParticipatingInTrips) .Include(b => b.TripBooking.TripDelegates) .Include(b => b.TripBooking.SchedulingTripDetail.EducationalBody.User) .Include(b => b.TripBooking.SchedulingTripDetail.EducationalBody) .Include(b => b.TripBooking.SchedulingTripDetail.TripType) .FirstOrDefaultAsync(l => l.Id == letterId); string empName; string empMobile; string EmployeeNomber; if (delegateId == 0) { empName = letter.TripBooking.SchedulingTripDetail.EducationalBody.User.FullName; empMobile = letter.TripBooking.SchedulingTripDetail.EducationalBody.User.PhoneNumber; EmployeeNomber = letter.TripBooking.SchedulingTripDetail.EducationalBody.User.UserName; } else { empName = letter.TripBooking.TripDelegates.FirstOrDefault(e => e.Id == delegateId).EmployeeName; empMobile = letter.TripBooking.TripDelegates.FirstOrDefault(e => e.Id == delegateId).EmployeMobile; EmployeeNomber = letter.TripBooking.TripDelegates.FirstOrDefault(e => e.Id == delegateId).EmployeeNumber.ToString(); } var advanc = new LetterAdvanceCreateModelView() { Amount = TripType(letter.TripBooking.SchedulingTripDetail.TripType.Name), QtyStudents = letter.TripBooking.StudentsParticipatingInTrips.Count(), CreditToEMployee = empName, EmployeeMobile = empMobile.ToString(), LetterId = letter.Id, TripType = letter.TripBooking.SchedulingTripDetail.TripType.Name, EducationName = letter.TripBooking.SchedulingTripDetail.EducationalBody.Name, TripLocationName = letter.TripBooking.TripLocationName, TripDate = letter.TripBooking.SchedulingTripDetail.TripDate, bokingId = letter.TripBookingId, EmployeeNomber = EmployeeNomber }; return(advanc); }
public async Task <IActionResult> Create(int letterId, int delegateId, LetterAdvanceCreateModelView letter) { if (ModelState.IsValid) { var advanced = new LetterAdvancedDelegation() { Amount = letter.Amount, AmountAdditional = letter.AmountAdditional, CreditToEMployee = letter.CreditToEMployee, EmployeeMobile = letter.EmployeeMobile, LetterId = letter.LetterId, QtyStudents = letter.QtyStudents, EmployeeNomber = letter.EmployeeNomber }; _context.Add(advanced); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(IndexByBokingId), new { bokingId = letter.bokingId })); } return(View(getDataForCreate(letterId, delegateId).Result)); }