public static bool OpenIfExist(string FilePath, VaultSystem.VentsCadFile.Type type, DateTime?lastChange) { var open = false; //Получение файлов в хранилище if (string.IsNullOrEmpty(FilePath)) { return(true); } var fileName = Path.GetFileNameWithoutExtension(FilePath); var cadFiles = VaultSystem.VentsCadFile.Get(fileName, type, Settings.Default.PdmBaseName); if (cadFiles == null) { return(false); } VaultSystem.VentsCadFile findedFile = null; try { findedFile = cadFiles.Single(x => Path.GetFileNameWithoutExtension(x.Path).ToLower() == fileName.ToLower()); } catch (Exception exception) { // //MessageBox.Show(exception.ToString(), "findedFile"); } if (findedFile == null) { return(false); } #region To delete //var filesList = ""; //foreach (var file in cadFiles) //{ // filesList = filesList + "\n" + file.Path; //} // //MessageBox.Show(filesList); ////Совпавший по наименованию и типу файл // //MessageBox.Show(cadFiles[0].Path + "\n" + fileName); //var findedFile = cadFiles[0].ToString().ToLower().Equals(fileName.ToLower()) ? cadFiles[0] : null; //if (findedFile == null) return false; #endregion //Определение и получение данных в объект -olderFile- если файл записан раньше чем изменен шаблон (findedFile.Time < lastChange) var olderFile = VersionsFileInfo.Replaced.GetIfOlder(findedFile.Path, lastChange, findedFile.Time); bool result; if (olderFile == null) { result = true; //MessageBox.Show(fileName + " уже есть в базе. Открыть? ", "", MessageBoxButton.YesNo); } else { result = true; //MessageBox.Show(fileName + " уже есть в базе, но конструкция устарела.\nЧтобы обновить нажмите \"Да\",\nоткрыть существующую без обновления - \"Отмена\"? ", "Обновить?", MessageBoxButton.YesNoCancel); } if (result == false) { open = true; } else if (result != false) { if (result == true) { if (olderFile == null) { var processes = Process.GetProcessesByName("SLDWORKS"); if (processes?.Length > 0) { VentsCad.OpenSwDoc(findedFile.Path); } else { Process.Start("conisio://" + Settings.Default.TestPdmBaseName + "/open?projectid=" + findedFile.ProjectId + "&documentid=" + findedFile.PartIdPdm + "&objecttype=1"); } open = true; } else { VaultSystem.CheckInOutPdm(new List <FileInfo> { new FileInfo(findedFile.Path) }, false); open = false; } } if (result == false) { var processes = Process.GetProcessesByName("SLDWORKS"); if (processes?.Length > 0) { VentsCad.OpenSwDoc(findedFile.Path); } else { Process.Start("conisio://" + Settings.Default.TestPdmBaseName + "/open?projectid=" + findedFile.ProjectId + "&documentid=" + findedFile.PartIdPdm + "&objecttype=1"); } open = true; //VaultSystem.CheckInOutPdm(new List<FileInfo> { new FileInfo(findedFile.Path) }, false); //open = false; } } return(open); }
void SaveSettingsClick(object sender, RoutedEventArgs e) { Логгер.Информация("Сохранение настроек программы", "", "Сохранение настроек программы", "SettingsW"); var testVaultSwEpdmRootPath = VaultSystem.GetSwEpdRootFolder("Tets_debag"); //VaultSystem.SetPmdVaultName(VaultsComboBox.Text); var pdmRootPath = VaultSystem.GetSwEpdRootFolder(VaultsComboBox.Text); switch (VaultsComboBox.Text) { case "Tets_debag": //Settings.Default.SourceFolder = testVaultSwEpdmRootPath; MessageBox.Show(testVaultSwEpdmRootPath); Settings.Default.DestinationFolder = testVaultSwEpdmRootPath + "\\Vents-PDM"; Settings.Default.PdmBaseName = "Vents-PDM"; //VaultsComboBox.Text; Settings.Default.TestPdmBaseName = VaultsComboBox.Text; Settings.Default.Save(); MessageBox.Show(Settings.Default.DestinationFolder); Settings.Default.TestPdmBaseName = @"Tets_debag"; break; case "Vents-PDM": Settings.Default.PdmBaseName = VaultsComboBox.Text; Settings.Default.TestPdmBaseName = VaultsComboBox.Text; Settings.Default.SourceFolder = pdmRootPath; Settings.Default.DestinationFolder = pdmRootPath; break; default: Settings.Default.PdmBaseName = VaultsComboBox.Text; Settings.Default.TestPdmBaseName = VaultsComboBox.Text; Settings.Default.SourceFolder = pdmRootPath; Settings.Default.DestinationFolder = pdmRootPath; break; } #region To Delete //switch (SQLBase.Text) //{ // case "Тестовая": // Settings.Default.ConnectionToSQL = App.SqlTestConnectionString; // break; // default: // Settings.Default.ConnectionToSQL = App.SqlConnectionString; // break; //} #endregion var selectedItem = (KeyValuePair <string, int>)VaultsComboBox.SelectedItem; Settings.Default.VaultSystemType = selectedItem.Value; Settings.Default.ServiceAddress = VentsServiceAddress.Text; App.Service.SetAddress(Settings.Default.ServiceAddress); Settings.Default.Save(); PdmBaseName.Content = " PdmBaseName - " + Settings.Default.PdmBaseName; TestPdmBaseName.Content = " TestPdmBaseName - " + Settings.Default.TestPdmBaseName; SourceFolder.Content = " SourceFolder - " + Settings.Default.SourceFolder; DestinationFolder.Content = " DestinationFolder - " + Settings.Default.DestinationFolder; MessageBox.Show(Settings.Default.DestinationFolder); Логгер.Информация($"Сохранение настроек программы завершено для хранилища - {VaultsComboBox.Text},", "", "Сохранение настроек программы", "SettingsW"); Visibility = Visibility.Collapsed; }
public static bool OpenIfExist(string FilePath, VaultSystem.VentsCadFile.Type type, DateTime?lastChange) { var open = false; //Получение файлов в хранилище if (string.IsNullOrEmpty(FilePath)) { return(true); } var fileName = Path.GetFileNameWithoutExtension(FilePath); var cadFiles = VaultSystem.VentsCadFile.Get(fileName, type, Settings.Default.PdmBaseName); if (cadFiles == null) { return(false); } //Совпавший по наименованию и типу файл var findedFile = cadFiles[0]; //Определение и получение данных в объект -olderFile- если файл записан раньше чем изменен шаблон (findedFile.Time < lastChange) var olderFile = VersionsFileInfo.Replaced.GetIfOlder(findedFile.Path, lastChange, findedFile.Time); MessageBoxResult result; if (olderFile == null) { result = MessageBox.Show(fileName + " уже есть в базе. Открыть? ", "", MessageBoxButton.YesNo); } else { result = MessageBox.Show(fileName + " уже есть в базе, но конструкция устарела.\nЧтобы обновить нажмите \"Да\",\nоткрыть существующую без обновления - \"Отмена\"? ", "Обновить?", MessageBoxButton.YesNoCancel); } if (result == MessageBoxResult.No) { open = true; } else if (result != MessageBoxResult.No) { if (result == MessageBoxResult.Yes) { if (olderFile == null) { var processes = Process.GetProcessesByName("SLDWORKS"); if (processes?.Length > 0) { VentsCad.OpenSwDoc(findedFile.Path); } else { Process.Start("conisio://" + Settings.Default.TestPdmBaseName + "/open?projectid=" + findedFile.ProjectId + "&documentid=" + findedFile.PartIdPdm + "&objecttype=1"); } open = true; } else { VaultSystem.CheckInOutPdm(new List <FileInfo> { new FileInfo(findedFile.Path) }, false); open = false; } } if (result == MessageBoxResult.Cancel) { var processes = Process.GetProcessesByName("SLDWORKS"); if (processes?.Length > 0) { VentsCad.OpenSwDoc(findedFile.Path); } else { Process.Start("conisio://" + Settings.Default.TestPdmBaseName + "/open?projectid=" + findedFile.ProjectId + "&documentid=" + findedFile.PartIdPdm + "&objecttype=1"); } open = true; //VaultSystem.CheckInOutPdm(new List<FileInfo> { new FileInfo(findedFile.Path) }, false); //open = false; } } return(open); }