public async Task <IActionResult> CurrentVisit(long VisitId) { var currentVisit = await _visitService.GetById(new GetByIdInDTO { Id = VisitId, UserId = _userManager.GetUserAsync(HttpContext.User).Result.Id }); if (currentVisit == null || currentVisit.State == StateVisit.Completed) { return(RedirectToAction("TimeTable", "Home", new { area = "Doctor" })); } var allMedicament = await _medicamentService.GetAllMedicament(); var patient = await _patientAccountService.GetPatientById(currentVisit.PatientId); var visits = await _visitService.GetCompletedVisits(currentVisit.PatientId); visits.Reverse(); CurrentVisitVM viewModel = new CurrentVisitVM() { Medicaments = allMedicament, FirstName = patient.FirstName, LastName = patient.LastName, Birth = patient.Birth, VisitID = currentVisit.Id, State = currentVisit.State, Visits = visits, PatientID = patient.UserID }; var specializationOutDto = await _specializationService.GetAllAsync(); specializationOutDto.Select(x => x.Name).ToList().ForEach(name => { viewModel.Specializations.Add(new SelectListItem { Text = name, Value = name }); }); return(View(viewModel)); }
public async Task <IActionResult> MedicamentBase(string searchMedicament, string page = "A", string length = "10") { var tmpLength = Request.Cookies["cookieLength"]; if (!String.IsNullOrEmpty(tmpLength)) { length = tmpLength; } var vModel = new HomeVM(); char charPage = page[0]; var medicaments = await _medicamentService.GetMedicamentsByLetter(charPage); // Searching filter do not need to assign any page if (!String.IsNullOrEmpty(searchMedicament)) { medicaments = await _medicamentService.GetAllMedicament(); medicaments = medicaments.FindAll(s => s.Name.ToLower().Contains(searchMedicament.ToLower())); vModel.medicamentsVM = new List <MedicamentVM>(); foreach (var med in medicaments) { vModel.medicamentsVM.Add(_mapper.Map <MedicamentVM>(med)); } return(View(vModel)); } // Without searching filter-normal view vModel.medicamentsVM = new List <MedicamentVM>(); var medCounts = await _medicamentService.CountAllMedicaments(); var medCountByLetter = medicaments.Count; var pageCounts = medCountByLetter / Int32.Parse(length); foreach (var med in medicaments) { vModel.medicamentsVM.Add(_mapper.Map <MedicamentVM>(med)); } return(View(vModel)); }