Beispiel #1
0
        public ActionResult Create([Bind(Include = "Id,ClientId,Name,Gender,Age, Image")] PatientModel patient, HttpPostedFileBase Image)
        {
            try
            {
                if (patient.Name == null || patient.Name == string.Empty)
                {
                    ModelState.AddModelError("Name", "Debe ingresar un nombre");
                }

                if (patient.ClientId == 0)
                {
                    ModelState.AddModelError("ClientId", "Debe seleccionar un cliente");
                }

                if (patient.Age == 0)
                {
                    ModelState.AddModelError("Age", "Debe ingresar una edad");
                }

                IEnumerable <Patient> patients = patientBusiness.GetByFilters(PatientModel.FromModel(patient));

                if (patients.ToList().Count > 0)
                {
                    ModelState.AddModelError("Model", "Ya existe un paciente con nombre: " +
                                             patient.Name + " y dueño: " + patient.ClientId);
                }


                if (ModelState.IsValid)
                {
                    Patient p = patientBusiness.Insert(PatientModel.FromModel(patient));

                    //Guardar imagen en carpeta local
                    if (Image != null)
                    {
                        var fileName    = Path.GetFileName(Image.FileName);
                        var extension   = fileName.Substring(fileName.IndexOf('.'));
                        var newFileName = p.Id + extension;
                        var path        = Path.Combine(Server.MapPath("~/Content/Images"), newFileName);
                        Image.SaveAs(path);
                    }


                    return(RedirectToAction("Index"));
                }

                var clients = patientBusiness.List();
                ViewBag.ClientId = new SelectList(clients, "Id", "Name", patient.ClientId);
                return(View(patient));
            }
            catch (Exception ex)
            {
                Log.Error(ex.Message, ex);
                return(View());
            }
        }
Beispiel #2
0
        public ActionResult Edit([Bind(Include = "Id,ClientId,Name,Gender,Age")] PatientModel patient)
        {
            try
            {
                if (patient.Name == null || patient.Name == string.Empty)
                {
                    ModelState.AddModelError("Name", "Debe ingresar un nombre");
                }

                if (patient.ClientId == 0)
                {
                    ModelState.AddModelError("ClientId", "Debe seleccionar un cliente");
                }

                if (patient.Age == 0)
                {
                    ModelState.AddModelError("Age", "Debe ingresar una edad");
                }

                IEnumerable <Patient> patients = patientBusiness.GetByFilters(PatientModel.FromModel(patient));

                if (patients.ToList().Count > 0)
                {
                    ModelState.AddModelError("Model", "Ya existe un paciente con nombre: " +
                                             patient.Name + " y dueño: " + patient.ClientId);
                }

                if (ModelState.IsValid)
                {
                    patientBusiness.Update(PatientModel.FromModel(patient));

                    return(RedirectToAction("Index"));
                }

                var allPatients = patientBusiness.List();
                ViewBag.ClientId = new SelectList(PatientModel.ToModelList(allPatients), "Id", "Name", patient.ClientId);
                return(View(patient));
            }
            catch (Exception ex)
            {
                Log.Error(ex.Message, ex);
                return(View());
            }
        }