public async Task <IActionResult> AddPhysician([FromForm] PhysicianViewModel model)
        {
            if (ModelState.IsValid)
            {
                var physician = new Physician
                {
                    FirstName      = model.FirstName,
                    LastName       = model.LastName,
                    Email          = model.Email,
                    Sex            = model.Sex.GetValueOrDefault(),
                    DateOfBirth    = model.DateOfBirth.GetValueOrDefault(),
                    Role           = Role.Physician,
                    Password       = HashUtils.Hash(model.LastName.ToLower()),
                    Specialization = model.Specialization.GetValueOrDefault()
                };

                try
                {
                    await _client.SendRequestWithBodyAsync(HttpMethod.Post, "Account/RegisterPhysician", physician);

                    _cacheService.InvalidateCacheAsync();
                    TempData["message"] = "Physician has been added.";
                    return(RedirectToAction("AllPhysicians"));
                }
                catch (HttpRequestException)
                {
                    ModelState.AddModelError("EmailExist", _localizer["Email is already taken"]);
                }
            }
            return(View(model));
        }
Example #2
0
        public ActionResult NewPhysician()
        {
            var viewModel = new PhysicianViewModel {
            };

            return(View("PhysicianForm", viewModel));
        }
        public async Task <IActionResult> Details(int id)
        {
            PhysicianViewModel model = new PhysicianViewModel();

            model.Patients = new GatewayController().GetPhysicianPatients(id).Result;
            model.Name     = _userManager.User.Name;

            //return View(new PhysicianViewModel() { Patients = patients });
            return(View(model));
        }
Example #4
0
        public IActionResult PhysicianDashboard()
        {
            var physicianUserDetail = _physicianRepository.GetAll();
            List <PhysicianViewModel> physicianList = new List <PhysicianViewModel>();
            PhysicianViewModel        physicianUser;

            foreach (var physician in physicianUserDetail)
            {
                physicianUser = new PhysicianViewModel {
                    Name = physician.Name, Qualification = physician.Qualification, Specialist = physician.Specialist, RegistrationNo = physician.RegistrationNo, Experience = physician.Experience, City = physician.City, CNIC = physician.CNIC, Country = physician.Country, Email = physician.Email, Phone = physician.Phone
                };
                physicianList.Add(physicianUser);
            }

            ViewData["Message"] = "Your Physician Here's.";
            return(View(physicianList));
        }
Example #5
0
        public ActionResult Edit(int physicianId)
        {
            var physician = _context.Physicians.SingleOrDefault(p => p.Id == physicianId);

            //check if Physician exist
            if (physician == null)
            {
                return(HttpNotFound());
            }

            var viewModel = new PhysicianViewModel
            {
                Physician = physician
            };

            return(View("PhysicianForm", viewModel));
        }
        public async Task <IActionResult> Edit(int id)
        {
            try
            {
                var physician = await _client.SendRequestAsync <Physician>(HttpMethod.Get, $"Physicians/{id}");

                if (physician == null)
                {
                    return(NotFound());
                }
                var model = PhysicianViewModel.GetModel(physician);

                TempData["message"] = "Your changes has been saved.";
                return(View(model));
            }
            catch (HttpRequestException)
            {
                throw new ServerConnectionException();
            }
        }
        public async Task <IActionResult> Details(int id)
        {
            if (TempData["message"] != null)
            {
                ModelState.AddModelError("info", _localizer[TempData["message"].ToString()]);
            }
            try
            {
                var physician = await _client.SendRequestAsync <Physician>(HttpMethod.Get, $"Physicians/{id}");

                if (physician == null)
                {
                    return(NotFound());
                }
                var model = PhysicianViewModel.GetModel(physician);
                return(View(model));
            }
            catch (HttpRequestException)
            {
                throw new ServerConnectionException();
            }
        }
        public async Task <IActionResult> Edit(int id, [FromForm] PhysicianViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var physician = await _client.SendRequestAsync <Physician>(HttpMethod.Get, $"Physicians/{id}");

                    model.UpdatePhysician(ref physician);

                    await _client.SendRequestWithBodyAsync <Physician>(HttpMethod.Put, $"Physicians/{id}", physician);

                    return(RedirectToAction(nameof(PhysiciansController.Details), new { id }));
                }
                catch (HttpRequestException)
                {
                    throw new ServerConnectionException();
                }
            }
            else
            {
                return(View(model));
            }
        }