private void DataGrid_Update_CellEditEnding(object sender, System.Windows.Controls.DataGridCellEditEndingEventArgs e)
 {
     try
     {
         string            editTex           = ((TextBox)e.EditingElement).Text;
         PatientCategories patientCategories = ((FrameworkElement)e.Row).DataContext as PatientCategories;
         if (!patientCategories.PatientCategory_Title.Equals(editTex))
         {
             if (MessageBox.Show("確定將<" + patientCategories.PatientCategory_Title + ">修改為<" + editTex + ">?\r\n如果是的話,所有擁有此分類的病患分類也會被更動", "提示", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
             {
                 PatientCategories updateItem = (from pc in dde.PatientCategories
                                                 where pc.PatientCategory_ID == patientCategories.PatientCategory_ID
                                                 select pc).First();
                 updateItem.PatientCategory_Title = editTex;
                 dde.SaveChanges();
             }
             else
             {
                 pcvm.PatientCategories = dde.PatientCategories.ToList();
             }
         }
     }
     catch (Exception ex)
     {
         Error_Log.ErrorMessageOutput(ex.ToString());
     }
 }
Beispiel #2
0
        private void Button_PatientCategory_Click(object sender, RoutedEventArgs e)
        {
            PatientCategories patientCategories = ((FrameworkElement)sender).DataContext as PatientCategories;

            using (var dde = new DigiDentalEntities())
            {
                psvm.ListPatients = (from pc in dde.Patients
                                     where pc.PatientCategories.Any(w => w.PatientCategory_ID == patientCategories.PatientCategory_ID)
                                     select pc).ToList();
            }
        }
 private void Button_CategoryAdd_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         var pc = new PatientCategories()
         {
             PatientCategory_Title = textBoxCategoryInput.Text
         };
         dde.PatientCategories.Add(pc);
         dde.SaveChanges();
         pcvm.PatientCategories    = dde.PatientCategories.ToList();
         textBoxCategoryInput.Text = string.Empty;
     }
     catch (Exception ex)
     {
         Error_Log.ErrorMessageOutput(ex.ToString());
     }
 }
 private void Button_CategoryDelete_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         PatientCategories patientCategories = ((FrameworkElement)sender).DataContext as PatientCategories;
         if (MessageBox.Show("確定刪除<" + patientCategories.PatientCategory_Title + ">分類?\r\n如果是的話,所有擁有此分類的病患分類也會被取消", "提示", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
         {
             var deleteItem = dde.PatientCategories.Where(w => w.PatientCategory_ID == patientCategories.PatientCategory_ID).First();
             deleteItem.Patients.Remove(new Patients());
             dde.PatientCategories.Remove(deleteItem);
             dde.SaveChanges();
             pcvm.PatientCategories = dde.PatientCategories.ToList();
         }
     }
     catch (Exception ex)
     {
         Error_Log.ErrorMessageOutput(ex.ToString());
     }
 }
Beispiel #5
0
 private void Button_Save_Click(object sender, RoutedEventArgs e)
 {
     try
     {
         if (Patients != null)//編輯
         {
             if (MessageBox.Show("確定修改病患資料<" + pvm.PatientNumber + ">?", "提示", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
             {
                 using (var dde = new DigiDentalEntities())
                 {
                     DateTime updateTime = DateTime.Now;
                     Patients patients   = (from p in dde.Patients
                                            where p.Patient_ID == Patients.Patient_ID
                                            select p).First();
                     patients.Patient_Number   = pvm.PatientNumber;
                     patients.Patient_Name     = pvm.PatientName;
                     patients.Patient_IDNumber = pvm.PatientIDNumber;
                     patients.Patient_Birth    = pvm.Birth;
                     patients.Patient_Gender   = pvm.GenderM;
                     patients.UpdateDate       = updateTime;
                     if (IsRemove)
                     {
                         patients.Patient_Photo = null;
                     }
                     else
                     {
                         if (!string.IsNullOrEmpty(ImportPatientPhotoPath))
                         {
                             PatientsFolder pf = new PatientsFolder(Agencys, patients);
                             if (!Directory.Exists(pf.PatientFullPatientPhotoPath))
                             {
                                 Directory.CreateDirectory(pf.PatientFullPatientPhotoPath);
                             }
                             string extension   = Path.GetExtension(ImportPatientPhotoPath).ToUpper();
                             string newFileName = DateTime.Now.ToString("yyyyMMddHHmmssffff");
                             File.Copy(ImportPatientPhotoPath, pf.PatientFullPatientPhotoPath + @"\" + newFileName + extension);
                             patients.Patient_Photo = pf.PatientPhotoPath + @"\" + newFileName + extension;
                         }
                     }
                     //寫入分類
                     List <PatientCategories>   PatientCategories   = dde.PatientCategories.ToList();
                     List <PatientCategoryInfo> PatientCategoryInfo = pvm.PatientCategoryInfo.FindAll(pci => pci.IsChecked == true);
                     foreach (PatientCategories pc in PatientCategories)
                     {
                         var queryCheck = PatientCategoryInfo.FindAll(pci => pci.PatientCategory_ID == pc.PatientCategory_ID);
                         if (queryCheck.Count() > 0)
                         {
                             patients.PatientCategories.Remove(pc);
                             patients.PatientCategories.Add(pc);
                         }
                         else
                         {
                             patients.PatientCategories.Remove(pc);
                         }
                     }
                     dde.SaveChanges();
                     MessageBox.Show("修改完成", "提示", MessageBoxButton.OK, MessageBoxImage.Information);
                     DialogResult = true;
                     Close();
                 }
             }
         }
         else//新增
         {
             if (MessageBox.Show("確定新增病患<" + pvm.PatientNumber + ">?", "提示", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
             {
                 using (var dde = new DigiDentalEntities())
                 {
                     string   newPatientID   = GetPatientID();
                     DateTime newPatientDate = DateTime.Now;
                     //新增病患
                     Patients patients = new Patients()
                     {
                         Patient_ID       = newPatientID,
                         Patient_Number   = pvm.PatientNumber,
                         Patient_Name     = pvm.PatientName,
                         Patient_IDNumber = pvm.PatientIDNumber,
                         Patient_Birth    = pvm.Birth,
                         Patient_Gender   = pvm.GenderM,
                         CreateDate       = newPatientDate,
                         UpdateDate       = newPatientDate
                     };
                     if (!string.IsNullOrEmpty(ImportPatientPhotoPath))
                     {
                         PatientsFolder pf = new PatientsFolder(Agencys, patients);
                         if (!Directory.Exists(pf.PatientFullPatientPhotoPath))
                         {
                             Directory.CreateDirectory(pf.PatientFullPatientPhotoPath);
                         }
                         string extension   = Path.GetExtension(ImportPatientPhotoPath).ToUpper();
                         string newFileName = DateTime.Now.ToString("yyyyMMddHHmmssffff");
                         File.Copy(ImportPatientPhotoPath, pf.PatientFullPatientPhotoPath + @"\" + newFileName + extension);
                         patients.Patient_Photo = pf.PatientPhotoPath + @"\" + newFileName + extension;
                     }
                     //寫入分類
                     if (pvm.PatientCategoryInfo != null)
                     {
                         List <PatientCategoryInfo> PatientCategoryInfo = pvm.PatientCategoryInfo.FindAll(pcs => pcs.IsChecked == true);
                         foreach (PatientCategoryInfo pci in PatientCategoryInfo)
                         {
                             PatientCategories patientCategories = (from pc in dde.PatientCategories
                                                                    where pc.PatientCategory_ID == pci.PatientCategory_ID
                                                                    select pc).First();
                             patients.PatientCategories.Add(patientCategories);
                         }
                     }
                     dde.Patients.Add(patients);
                     dde.SaveChanges();
                     MessageBox.Show("新增完成", "提示", MessageBoxButton.OK, MessageBoxImage.Information);
                     Close();
                 }
             }
         }
     }
     catch (Exception ex)
     {
         Error_Log.ErrorMessageOutput(ex.ToString());
     }
 }