public IActionResult Edit(DoctorEditViewModel model)
        {
            if (ModelState.IsValid)
            {
                Doctor doctor = _doctorRepository.GetDoctor(model.DoctorID);
                doctor.FirstName   = model.FirstName;
                doctor.LastName    = model.LastName;
                doctor.Specialty   = model.Specialty;
                doctor.Email       = model.Email;
                doctor.Description = model.Description;


                if (model.Photo != null)
                {
                    if (model.ExistingPhotoPath != null)
                    {
                        string filePath = Path.Combine(hostingEnvironment.WebRootPath, "Images", model.ExistingPhotoPath);
                        System.IO.File.Delete(filePath);
                    }
                    doctor.PhotoPath = ProcessUploadedFile(model);
                }

                _doctorRepository.Update(doctor);

                return(RedirectToAction("NewIndex"));
            }
            return(View());
        }
        public ActionResult Edit()
        {
            string userId = User.Identity.GetUserId();
            var    user   = _db.Users.Where(u => u.Id.Equals(userId)).FirstOrDefault();

            var model = new DoctorEditViewModel
            {
                id            = user.Id,
                Name          = user.Name,
                PhoneNumber   = user.PhoneNumber,
                DateOfBirth   = user.dateOfBirth.ToString("dd-MMMM-yyyy"),
                Address       = user.doctor.Address,
                Education     = user.doctor.Education,
                StartTime     = user.doctor.StartTime,
                EndTime       = user.doctor.EndTime,
                Qualification = user.doctor.Qualification,
                Speciality    = user.doctor.Speciality,
                Gender        = user.Gender
            };

            ViewBag.Gender = new List <SelectListItem>
            {
                new SelectListItem()
                {
                    Text = "Male", Value = "Male",
                },
                new SelectListItem()
                {
                    Text = "Female", Value = "Female",
                }
            };

            return(View(model));
        }
Exemple #3
0
        public ActionResult EditDoctorAccount(DoctorEditViewModel model)
        {
            var user = _db.Users.Where(d => d.Id.Equals(model.id)).FirstOrDefault();

            _db.Entry(user).State = EntityState.Modified;

            user.Name                 = model.Name;
            user.PhoneNumber          = model.PhoneNumber;
            user.dateOfBirth          = DateTime.Parse(model.DateOfBirth);
            user.doctor.Address       = model.Address;
            user.doctor.Education     = model.Education;
            user.doctor.StartTime     = model.StartTime;
            user.doctor.EndTime       = model.EndTime;
            user.doctor.Qualification = model.Qualification;
            user.doctor.Speciality    = model.Speciality;
            user.Gender               = model.Gender;

            TempData["Success"] = "Changes Saved!";

            ViewBag.Gender = new List <SelectListItem>
            {
                new SelectListItem()
                {
                    Text = "Male", Value = "Male",
                },
                new SelectListItem()
                {
                    Text = "Female", Value = "Female",
                }
            };

            _db.SaveChanges();

            return(View(model));
        }
        // GET: Doctors/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var doctor = db.Doctors
                         .Include(d => d.Image)
                         .SingleOrDefault(d => d.ID == id);

            if (doctor == null)
            {
                return(HttpNotFound());
            }
            var doctorName = doctor.FirstName + " " + doctor.LastName;
            DoctorTranslator    editDoctorTranslator = new DoctorTranslator();
            DoctorEditViewModel viewModel            = new DoctorEditViewModel();

            viewModel.DoctorsName = doctorName;
            viewModel.Doctor      = editDoctorTranslator.ToDoctorViewModel(doctor);


            File image = db.Files.Single(i => i.ID == doctor.ImageID);

            viewModel.Image = editDoctorTranslator.ToImageViewModel(image, doctor);

            return(View(viewModel));
        }
Exemple #5
0
        public void OnGet(string id)
        {
            var userId  = "";
            var doctors = new Models.Doctor();
            var user    = new ApplicationUser();

            if (id == null)
            {
                userId  = User.FindFirstValue(ClaimTypes.NameIdentifier);
                doctors = _context.Doctor.Include(i => i.User).Include(p => p.Picture).AsNoTracking().FirstOrDefault(i => i.Id == userId);
                user    = _context.Users.Where(u => u.Id == userId).AsNoTracking().SingleOrDefault();
            }
            if (id != null)
            {
                doctors = _context.Doctor.Include(i => i.User).Include(p => p.Picture).Include(u => u.User).AsNoTracking().FirstOrDefault(i => i.Id == id);
                user    = _context.Users.Where(u => u.Id == id).AsNoTracking().SingleOrDefault();
            }

            pictureBase64 = Convert.ToBase64String(doctors.Picture.ImageData, 0, doctors.Picture.ImageData.Length);

            Doctor = new DoctorEditViewModel
            {
                FirstName      = user.FirstName,
                LastName       = user.LastName,
                Email          = user.Email,
                PhoneNumber    = user.PhoneNumber,
                Sex            = doctors.Sex,
                Specialization = doctors.Specializaiton,
                Id             = doctors.Id,
                Picture        = doctors.Picture
            };
        }
        public ActionResult Edit(int?id, DoctorEditViewModel viewModel, HttpPostedFileBase upload)
        {
            Doctor doctorToUpdate = db.Doctors
                                    .Include(d => d.Image)
                                    .SingleOrDefault(d => d.ID == id);

            viewModel.Image.ID = doctorToUpdate.ImageID;
            var validImageTypes = new string[]
            {
                "image/gif",
                "image/jpeg",
                "image/png"
            };

            FileManipulation editImage = new FileManipulation();

            if (ModelState.IsValid)
            {
                if (viewModel.Image.ImgUpload != null && viewModel.Image.ImgUpload.ContentLength > 0)
                {
                    if (!validImageTypes.Contains(viewModel.Image.ImgUpload.ContentType))
                    {
                        ModelState.AddModelError("ImgUpload", "Please, choose either GIF, JPG, or PNG type of files.");
                    }
                    if (viewModel.Image.ID == 1)
                    {
                        File image = new File
                        {
                            ContentType = viewModel.Image.ImgUpload.ContentType
                        };
                        editImage.FileUpload(image, viewModel.Image.ImgUpload);
                        //call for upload with file-system:
                        //EditImageUpload(viewModel.Image.ID, doctorToUpdate, image, viewModel);
                        db.Files.Add(image);
                        doctorToUpdate.Image = image;
                    }
                    else
                    {
                        File image = db.Files.Single(i => i.ID == doctorToUpdate.ImageID);

                        editImage.FileUpload(image, viewModel.Image.ImgUpload);
                    }
                }
                doctorToUpdate.FirstName   = viewModel.Doctor.FirstName;
                doctorToUpdate.LastName    = viewModel.Doctor.LastName;
                doctorToUpdate.Address     = viewModel.Doctor.Address;
                doctorToUpdate.PhoneNumber = viewModel.Doctor.PhoneNumber;
                doctorToUpdate.Email       = viewModel.Doctor.Email;
                doctorToUpdate.Position    = viewModel.Doctor.Position;

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(viewModel));
        }
        public async Task <IActionResult> DoctorEdit([Bind(Prefix = "Item2")] DoctorEditViewModel vm)
        {
            var doctor = await doctroRepo.GetDoctorByIdAsync(vm.Id);

            doctor.About = vm.About;

            doctroRepo.UpdateDoctor(doctor);
            await doctroRepo.SaveChangesAsync();

            return(new RedirectResult(vm.CurrentLink));
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="viewModel"></param>
        /// <returns></returns>
        public async Task EditByViewModelAsync(DoctorEditViewModel viewModel)
        {
            if (viewModel == null)
            {
                throw new ArgumentNullException(nameof(viewModel));
            }

            var doctor = await QueryableExtensions.FirstOrDefaultAsync <Doctor>(_doctors, model => model.Id == viewModel.Id);

            _mapper.Map(viewModel, doctor);
            await _unitOfWork.SaveAllChangesAsync(auditUserId : _httpContextManager.CurrentUserId());
        }
Exemple #9
0
        public async Task <IActionResult> Edit(string Id, string returnUrl)
        {
            var vm = new DoctorEditViewModel();

            vm.ReturnUrl = returnUrl;
            var doc = await _doctorService.GetDoctorByIdAsync(Id);

            var specs = await _doctorService.GetSpecialities()
                        .Select(x => x.Name).ToListAsync();

            var branches = await _doctorService.GetBranches()
                           .Select(x => x.Name).ToListAsync();

            vm.EditModel = new Models.User.EditUserViewModel(doc, "Doctor", branches, specs);
            return(View(vm));
        }
        public ViewResult Edit(int id)
        {
            Doctor doctor = _doctorRepository.GetDoctor(id);
            DoctorEditViewModel doctorEditViewModel = new DoctorEditViewModel
            {
                DoctorID          = doctor.DoctorID,
                FirstName         = doctor.FirstName,
                LastName          = doctor.LastName,
                Specialty         = doctor.Specialty,
                Email             = doctor.Email,
                Description       = doctor.Description,
                ExistingPhotoPath = doctor.PhotoPath
            };

            return(View(doctorEditViewModel));
        }
Exemple #11
0
        public async Task <IActionResult> Edit(DoctorEditViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }
            var docModel = viewModel.EditModel;
            await _doctorService.UpdateAsync(docModel.Id, docModel.Name1, docModel.Name2,
                                             docModel.Name3, docModel.Branch, docModel.Speciality, docModel.ContactEmail,
                                             docModel.ContactPhoneNumber, docModel.CabinetNumber);

            if (!string.IsNullOrEmpty(viewModel.ReturnUrl))
            {
                return(LocalRedirect(viewModel.ReturnUrl));
            }
            return(RedirectToAction(nameof(Index)));
        }
Exemple #12
0
        public void OnGet(string id)
        {
            var doctor = _context.Doctor.Include(u => u.User).Include(p => p.Picture).Where(temp => temp.Id == id).AsNoTracking().FirstOrDefault();

            base64 = Convert.ToBase64String(doctor.Picture.ImageData);

            Doctor = new DoctorEditViewModel
            {
                Id             = doctor.Id,
                FirstName      = doctor.User.FirstName,
                LastName       = doctor.User.LastName,
                Email          = doctor.User.Email,
                PhoneNumber    = doctor.User.PhoneNumber,
                Sex            = doctor.Sex,
                Specialization = doctor.Specializaiton
            };
        }
Exemple #13
0
        public virtual async Task <ActionResult> Edit(DoctorEditViewModel viewModel)
        {
            if (viewModel == null)
            {
                return(View(MVC.Error.Views.BadRequest));
            }

            if (ModelState.IsValid == false)
            {
                return(View(MVC.Doctor.Views.Create));
            }

            await _doctorService.EditByViewModelAsync(viewModel);

            this.AddToastMessage("ویرایش پزشک با موفقیت انجام شد", "", ToastType.Success);
            return(RedirectToAction(MVC.Doctor.List()));
        }
        public ActionResult Edit(DoctorEditViewModel model)
        {
            var user = _db.Users.Where(d => d.Id.Equals(model.id)).FirstOrDefault();

            _db.Entry(user).State = EntityState.Modified;

            user.Name                 = model.Name;
            user.PhoneNumber          = model.PhoneNumber;
            user.dateOfBirth          = DateTime.Parse(model.DateOfBirth);
            user.doctor.Address       = model.Address;
            user.doctor.Education     = model.Education;
            user.doctor.StartTime     = model.StartTime;
            user.doctor.EndTime       = model.EndTime;
            user.doctor.Qualification = model.Qualification;
            user.doctor.Speciality    = model.Speciality;
            user.Gender               = model.Gender;

            TempData["Success"] = "Changes Saved!";

            _db.SaveChanges();

            return(RedirectToAction("UserProfile", "DoctorAccount"));
        }
        // GET: Doctors/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Doctor doctor = db.Doctors.SingleOrDefault(d => d.ID == id);

            if (doctor == null)
            {
                return(HttpNotFound());
            }
            DoctorEditViewModel viewModel        = new DoctorEditViewModel();
            DoctorTranslator    doctorTranslator = new DoctorTranslator();

            viewModel.Doctor = doctorTranslator.ToDoctorViewModel(doctor);

            File image = db.Files.Single(i => i.ID == doctor.ImageID);

            viewModel.Image = doctorTranslator.ToImageViewModel(image, doctor);

            return(View(viewModel));
        }