예제 #1
0
        public ActionResult Select()
        {
            VM_schedules schedule = new VM_schedules();

            schedule.doctors = DoctorWorkDay.ListWorkDays(); // panggil service hari kerja dokter
            //schedule = schedule.doctors.Where(e => e.dayIn.Count > 0 && e.doctorSpecialties.Count > 0);
            return(View(schedule));
        }
예제 #2
0
        public Patient CreatePatient(VM_schedules data)
        {
            var dataPatient = new Patient()
            {
                Name        = data.name,
                Address     = data.homeAddress,
                PhoneNumber = data.phone,
                Gender      = data.gender
            };

            db.Patients.Add(dataPatient);
            db.SaveChanges();
            return(dataPatient);
        }
예제 #3
0
        public ActionResult Create(string id)
        {
            VM_schedules schedule = new VM_schedules();

            ViewBag.photo    = schedule.photo;
            schedule.doctors = new List <VM_doctorList>()
            {
                new VM_doctorList {
                    doctorId = id.ToString()
                }
            };
            var blockDate = DateTime.Now.ToString("yyyy-MM-dd");

            ViewBag.doctorId  = id;
            ViewBag.blockDate = blockDate;
            return(View(schedule));
        }
예제 #4
0
        public ActionResult Create(VM_schedules data)
        {
            //var checkUpload = Request.Files.Count;
            if (!ModelState.IsValid)
            {
                return(View(data));
            }
            string docId         = data.doctors[0].doctorId;                                // Choosen doctor id
            var    checkSchedule = BookListService.CheckSchedule(data.dateSchedule, docId); // Check schedule service

            if (checkSchedule > 0)
            {
                var checkPatient = BookListService.CheckPatient(data.name, data.phone);  // check patient service
                if (checkPatient != null)
                {
                    var getScheduleByToday = db.Schedules.Where(e => e.PatientID == checkPatient.id).ToList();
                    if (CheckPatientScheduleByToday(getScheduleByToday, data.dateSchedule))
                    {
                        TempData["Error"] = "Error";
                        return(RedirectToAction("formResult"));
                    }
                    else
                    {
                        var dataBooking = BookListService.CreateBooking(checkPatient.id, docId, data.dateSchedule); // Create booking service
                        TempData["id"]    = dataBooking;
                        TempData["Error"] = "";
                        return(RedirectToAction("formResult"));
                    }
                }
                else
                {
                    var type        = "";
                    var dataPatient = patientService.CreatePatient(data); // Create patient service
                    if (data.photo != null)
                    {
                        data.photo = data.photo.Replace("data:image/png;base64,", "");
                        string base64 = data.photo.Substring(data.photo.IndexOf(',') + 1);
                        base64 = base64.Trim('\0');

                        byte[] chartData = Convert.FromBase64String(base64);
                        data.photo = data.name.ToString() + ".png";
                        type       = "image/png";
                        photoService.UploadPatientPicture(chartData, type, dataPatient.ID);

                        //type = data.photo.ContentType; // Check image type ryan logic
                        //photoService.UploadPatientPicture(data.photo.InputStream, type, dataPatient.id); // Upload patient pictures to database
                    }
                    else if (data.photo == null)
                    {
                        type = data.photos.ContentType;                                                        // Check image type ryan logic
                        photoService.UploadPatientPictureFILE(data.photos.InputStream, type, dataPatient.ID);  // Upload patient pictures to database
                    }
                    var dataBooking = BookListService.CreateBooking(dataPatient.ID, docId, data.dateSchedule); // Create booking service
                    TempData["id"]    = dataBooking;
                    TempData["Error"] = "";
                    return(RedirectToAction("formResult"));
                }
            }
            else
            {
                ModelState.AddModelError("dateSchedule", "Doctor is not available on that day");
                var blockDate = DateTime.Now.ToString("yyyy-MM-dd");
                ViewBag.blockDate = blockDate;
                return(View(data));
            }
        }