public static bool GetComponentPath(Part displayPart, METE_Download_Upload_Path cMETE_Download_Upload_Path, ListView listView1, ref Dictionary <string, PartDirData> DicPartDirData) { try { PartDirData sPartDirData = new PartDirData(); sPartDirData.PartLocalDir = displayPart.FullPath; sPartDirData.PartServer1Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, Path.GetFileName(displayPart.FullPath)); //sPartDirData.PartServer2Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OIS); DicPartDirData.Add(Path.GetFileNameWithoutExtension(displayPart.FullPath), sPartDirData); listView1.Items.Add(Path.GetFileName(displayPart.FullPath)); NXOpen.Assemblies.ComponentAssembly casm = displayPart.ComponentAssembly; List <NXOpen.Assemblies.Component> ListChildrenComp = new List <NXOpen.Assemblies.Component>(); CaxAsm.GetCompChildren(casm.RootComponent, ref ListChildrenComp); foreach (NXOpen.Assemblies.Component i in ListChildrenComp) { string ServerPartPath = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, i.DisplayName + ".prt"); if (!DicPartDirData.TryGetValue(i.DisplayName, out sPartDirData)) { sPartDirData = sPartDirData = new PartDirData(); if (!File.Exists(string.Format(@"{0}\{1}", Path.GetDirectoryName(displayPart.FullPath), i.DisplayName + ".prt"))) { MessageBox.Show("零件:" + i.DisplayName + "找不到,請檢察本機資料夾是否存在"); return(false); } sPartDirData.PartLocalDir = string.Format(@"{0}\{1}", Path.GetDirectoryName(displayPart.FullPath), i.DisplayName + ".prt"); sPartDirData.PartServer1Dir = ServerPartPath; DicPartDirData.Add(i.DisplayName, sPartDirData); listView1.Items.Add(i.DisplayName + ".prt"); } //sPartDirData.PartServer2Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OIS); } } catch (System.Exception ex) { return(false); } return(true); }
public static bool GetComponentPath(Part displayPart, CaxDownUpLoad.DownUpLoadDat cDownUpLoadDat, ref Dictionary <string, PartDirData> DicPartDirData) { try { PartDirData sPartDirData = new PartDirData(); sPartDirData.PartLocalDir = displayPart.FullPath; sPartDirData.PartServer1Dir = string.Format(@"{0}\{1}", cDownUpLoadDat.Server_ShareStr, Path.GetFileName(displayPart.FullPath)); DicPartDirData.Add(Path.GetFileNameWithoutExtension(displayPart.FullPath), sPartDirData); //listView1.Items.Add(Path.GetFileName(displayPart.FullPath)); List <Component> ListChildrenComp = new List <Component>(); CaxAsm.GetCompChildren(displayPart.ComponentAssembly.RootComponent, ref ListChildrenComp); foreach (Component i in ListChildrenComp) { if (DicPartDirData.TryGetValue(i.DisplayName, out sPartDirData)) { continue; } if (!File.Exists(string.Format(@"{0}\{1}", Path.GetDirectoryName(displayPart.FullPath), i.DisplayName + ".prt"))) { MessageBox.Show("零件:" + i.DisplayName + "找不到,請檢察本機資料夾是否存在"); return(false); } sPartDirData = new PartDirData(); string ServerPartPath = string.Format(@"{0}\{1}", cDownUpLoadDat.Server_ShareStr, i.DisplayName + ".prt"); sPartDirData.PartLocalDir = string.Format(@"{0}\{1}", Path.GetDirectoryName(displayPart.FullPath), i.DisplayName + ".prt"); sPartDirData.PartServer1Dir = ServerPartPath; DicPartDirData.Add(i.DisplayName, sPartDirData); //listView1.Items.Add(i.DisplayName + ".prt"); } } catch (System.Exception ex) { return(false); } return(true); }
private void MEUploadDlg_Load(object sender, EventArgs e) { //取得METEDownload_Upload.dat CaxGetDatData.GetMETEDownload_Upload(out cMETE_Download_Upload_Path); //取得料號 PartNoLabel.Text = Path.GetFileNameWithoutExtension(displayPart.FullPath).Split('_')[0]; OISLabel.Text = Path.GetFileNameWithoutExtension(displayPart.FullPath).Split('_')[1]; //將Local_Folder_OIS先暫存起來,然後改變成Server路徑 tempLocal_Folder_OIS = cMETE_Download_Upload_Path.Local_Folder_OIS; CaxPublic.GetAllPath("ME", displayPart.FullPath, ref cMETE_Download_Upload_Path); /* * //拆零件路徑字串取得客戶名稱、料號、版本 * string PartFullPath = displayPart.FullPath; * string[] SplitPath = PartFullPath.Split('\\'); * PartInfo.CusName = SplitPath[3]; * PartInfo.PartNo = SplitPath[4]; * PartInfo.CusRev = SplitPath[5]; * PartInfo.OpNum = Path.GetFileNameWithoutExtension(displayPart.FullPath).Split(new string[] { "OIS" }, StringSplitOptions.RemoveEmptyEntries)[1]; * #region 取代Server路徑字串 * cMETE_Download_Upload_Path.Server_ShareStr = cMETE_Download_Upload_Path.Server_ShareStr.Replace("[Server_IP]", cMETE_Download_Upload_Path.Server_IP); * cMETE_Download_Upload_Path.Server_ShareStr = cMETE_Download_Upload_Path.Server_ShareStr.Replace("[CusName]", PartInfo.CusName); * cMETE_Download_Upload_Path.Server_ShareStr = cMETE_Download_Upload_Path.Server_ShareStr.Replace("[PartNo]", PartInfo.PartNo); * cMETE_Download_Upload_Path.Server_ShareStr = cMETE_Download_Upload_Path.Server_ShareStr.Replace("[CusRev]", PartInfo.CusRev); * Server_OP_Folder = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OpNum); #endregion * #region 取代Local路徑字串 * //將Local_Folder_OIS先暫存起來,然後改變成Server路徑 * tempLocal_Folder_OIS = cMETE_Download_Upload_Path.Local_Folder_OIS; * cMETE_Download_Upload_Path.Local_ShareStr = cMETE_Download_Upload_Path.Local_ShareStr.Replace("[Local_IP]", cMETE_Download_Upload_Path.Local_IP); * cMETE_Download_Upload_Path.Local_ShareStr = cMETE_Download_Upload_Path.Local_ShareStr.Replace("[CusName]", PartInfo.CusName); * cMETE_Download_Upload_Path.Local_ShareStr = cMETE_Download_Upload_Path.Local_ShareStr.Replace("[PartNo]", PartInfo.PartNo); * cMETE_Download_Upload_Path.Local_ShareStr = cMETE_Download_Upload_Path.Local_ShareStr.Replace("[CusRev]", PartInfo.CusRev); * cMETE_Download_Upload_Path.Local_Folder_OIS = cMETE_Download_Upload_Path.Local_Folder_OIS.Replace("[Local_ShareStr]", cMETE_Download_Upload_Path.Local_ShareStr); * cMETE_Download_Upload_Path.Local_Folder_OIS = cMETE_Download_Upload_Path.Local_Folder_OIS.Replace("[Oper1]", PartInfo.OpNum); #endregion */ DicPartDirData = new Dictionary <string, PartDirData>(); #region 處理Part的路徑 //預先加入總組立檔 PartDirData sPartDirData = new PartDirData(); sPartDirData.PartLocalDir = displayPart.FullPath; sPartDirData.PartServer1Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, Path.GetFileName(displayPart.FullPath)); //sPartDirData.PartServer2Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OIS); DicPartDirData.Add(Path.GetFileNameWithoutExtension(displayPart.FullPath), sPartDirData); listView1.Items.Add(Path.GetFileName(displayPart.FullPath)); //加入Comp資訊 NXOpen.Assemblies.ComponentAssembly casm = displayPart.ComponentAssembly; //NXOpen.Assemblies.Component[] compary = casm.RootComponent.GetChildren(); List <NXOpen.Assemblies.Component> ListChildrenComp = new List <NXOpen.Assemblies.Component>(); CaxAsm.GetCompChildren(casm.RootComponent, ref ListChildrenComp); foreach (NXOpen.Assemblies.Component i in ListChildrenComp) { sPartDirData = new PartDirData(); //判斷Server是否已存在此檔案,如果有就不上傳 string ServerPartPath = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, Path.GetFileName(((Part)i.Prototype).FullPath)); if (File.Exists(ServerPartPath)) { if (!((Part)i.Prototype).FullPath.Contains(PartInfo.OpNum)) { continue; } } sPartDirData.PartLocalDir = ((Part)i.Prototype).FullPath; sPartDirData.PartServer1Dir = ServerPartPath; DicPartDirData.Add(i.Name, sPartDirData); listView1.Items.Add(Path.GetFileName(((Part)i.Prototype).FullPath)); //sPartDirData.PartServer2Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OIS); } #endregion #region 處理Excel的路徑 string[] FolderFile = System.IO.Directory.GetFileSystemEntries(cMETE_Download_Upload_Path.Local_Folder_OIS, "*.xls"); //篩選出IPQC、SelfCheck List <string> List_ExcelIPQC = new List <string>(); List <string> List_ExcelSelfCheck = new List <string>(); List <string> List_ExcelIQC = new List <string>(); List <string> List_ExcelFAI = new List <string>(); foreach (string i in FolderFile) { if (i.Contains("IPQC")) { List_ExcelIPQC.Add(i); } if (i.Contains("SelfCheck")) { List_ExcelSelfCheck.Add(i); } if (i.Contains("IQC")) { List_ExcelIQC.Add(i); } if (i.Contains("FAI")) { List_ExcelFAI.Add(i); } } long ExcelIPQCFileTime = new long(); long ExcelSelfCheckFileTime = new long(); long ExcelIQCFileTime = new long(); long ExcelFAIFileTime = new long(); #region 處理IPQC foreach (string i in List_ExcelIPQC) { System.IO.FileInfo ExcelInfo = new System.IO.FileInfo(i); if (ExcelInfo.LastAccessTime.ToFileTime() > ExcelIPQCFileTime) { ExcelIPQCFileTime = ExcelInfo.LastAccessTime.ToFileTime(); sExcelDirData.ExcelIPQCLocalDir = i; string Server_Folder_OIS = ""; Server_Folder_OIS = tempLocal_Folder_OIS.Replace("[Local_ShareStr]", cMETE_Download_Upload_Path.Server_ShareStr); Server_Folder_OIS = Server_Folder_OIS.Replace("[Oper1]", PartInfo.OpNum); sExcelDirData.ExcelIPQCServerDir = string.Format(@"{0}\{1}", Server_Folder_OIS, ExcelInfo.Name); } } if (List_ExcelIPQC.Count != 0) { listView1.Items.Add(Path.GetFileName(sExcelDirData.ExcelIPQCLocalDir)); } #endregion #region 處理SelfCheck foreach (string i in List_ExcelSelfCheck) { System.IO.FileInfo ExcelInfo = new System.IO.FileInfo(i); if (ExcelInfo.LastAccessTime.ToFileTime() > ExcelSelfCheckFileTime) { ExcelSelfCheckFileTime = ExcelInfo.LastAccessTime.ToFileTime(); sExcelDirData.ExcelSelfCheckLocalDir = i; string Server_Folder_OIS = ""; Server_Folder_OIS = tempLocal_Folder_OIS.Replace("[Local_ShareStr]", cMETE_Download_Upload_Path.Server_ShareStr); Server_Folder_OIS = Server_Folder_OIS.Replace("[Oper1]", PartInfo.OpNum); sExcelDirData.ExcelSelfCheckServerDir = string.Format(@"{0}\{1}", Server_Folder_OIS, ExcelInfo.Name); } } if (List_ExcelSelfCheck.Count != 0) { listView1.Items.Add(Path.GetFileName(sExcelDirData.ExcelSelfCheckLocalDir)); } #endregion #region 處理IQC foreach (string i in List_ExcelIQC) { System.IO.FileInfo ExcelInfo = new System.IO.FileInfo(i); if (ExcelInfo.LastAccessTime.ToFileTime() > ExcelIQCFileTime) { ExcelIQCFileTime = ExcelInfo.LastAccessTime.ToFileTime(); sExcelDirData.ExcelIQCLocalDir = i; string Server_Folder_OIS = ""; Server_Folder_OIS = tempLocal_Folder_OIS.Replace("[Local_ShareStr]", cMETE_Download_Upload_Path.Server_ShareStr); Server_Folder_OIS = Server_Folder_OIS.Replace("[Oper1]", PartInfo.OpNum); sExcelDirData.ExcelIQCServerDir = string.Format(@"{0}\{1}", Server_Folder_OIS, ExcelInfo.Name); } } if (List_ExcelIQC.Count != 0) { listView1.Items.Add(Path.GetFileName(sExcelDirData.ExcelIQCLocalDir)); } #endregion #region 處理FAI foreach (string i in List_ExcelFAI) { System.IO.FileInfo ExcelInfo = new System.IO.FileInfo(i); if (ExcelInfo.LastAccessTime.ToFileTime() > ExcelFAIFileTime) { ExcelFAIFileTime = ExcelInfo.LastAccessTime.ToFileTime(); sExcelDirData.ExcelFAILocalDir = i; string Server_Folder_OIS = ""; Server_Folder_OIS = tempLocal_Folder_OIS.Replace("[Local_ShareStr]", cMETE_Download_Upload_Path.Server_ShareStr); Server_Folder_OIS = Server_Folder_OIS.Replace("[Oper1]", PartInfo.OpNum); sExcelDirData.ExcelFAIServerDir = string.Format(@"{0}\{1}", Server_Folder_OIS, ExcelInfo.Name); } } if (List_ExcelFAI.Count != 0) { listView1.Items.Add(Path.GetFileName(sExcelDirData.ExcelFAILocalDir)); } #endregion #endregion }
private void TEUploadDlg_Load(object sender, EventArgs e) { //取得METEDownload_Upload.dat CaxGetDatData.GetMETEDownload_Upload(out cMETE_Download_Upload_Path); //取得料號 PartNoLabel.Text = Path.GetFileNameWithoutExtension(displayPart.FullPath).Split('_')[0]; OISLabel.Text = Path.GetFileNameWithoutExtension(displayPart.FullPath).Split('_')[1]; //將Local_Folder_OIS先暫存起來,然後改變成Server路徑 tempLocal_Folder_CAM = cMETE_Download_Upload_Path.Local_Folder_CAM; CaxPublic.GetAllPath("TE", displayPart.FullPath, ref cMETE_Download_Upload_Path); /* * //拆零件路徑字串取得客戶名稱、料號、版本 * string PartFullPath = displayPart.FullPath; * string[] SplitPath = PartFullPath.Split('\\'); * PartInfo.CusName = SplitPath[3]; * PartInfo.PartNo = SplitPath[4]; * PartInfo.CusRev = SplitPath[5]; * PartInfo.OpNum = Regex.Replace(Path.GetFileNameWithoutExtension(displayPart.FullPath).Split('_')[1], "[^0-9]", ""); * #region 取代Server路徑字串 * cMETE_Download_Upload_Path.Server_ShareStr = cMETE_Download_Upload_Path.Server_ShareStr.Replace("[Server_IP]", cMETE_Download_Upload_Path.Server_IP); * cMETE_Download_Upload_Path.Server_ShareStr = cMETE_Download_Upload_Path.Server_ShareStr.Replace("[CusName]", PartInfo.CusName); * cMETE_Download_Upload_Path.Server_ShareStr = cMETE_Download_Upload_Path.Server_ShareStr.Replace("[PartNo]", PartInfo.PartNo); * cMETE_Download_Upload_Path.Server_ShareStr = cMETE_Download_Upload_Path.Server_ShareStr.Replace("[CusRev]", PartInfo.CusRev); * Server_OP_Folder = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OpNum); #endregion * #region 取代Local路徑字串 * //將Local_Folder_OIS先暫存起來,然後改變成Server路徑 * tempLocal_Folder_CAM = cMETE_Download_Upload_Path.Local_Folder_CAM; * cMETE_Download_Upload_Path.Local_ShareStr = cMETE_Download_Upload_Path.Local_ShareStr.Replace("[Local_IP]", cMETE_Download_Upload_Path.Local_IP); * cMETE_Download_Upload_Path.Local_ShareStr = cMETE_Download_Upload_Path.Local_ShareStr.Replace("[CusName]", PartInfo.CusName); * cMETE_Download_Upload_Path.Local_ShareStr = cMETE_Download_Upload_Path.Local_ShareStr.Replace("[PartNo]", PartInfo.PartNo); * cMETE_Download_Upload_Path.Local_ShareStr = cMETE_Download_Upload_Path.Local_ShareStr.Replace("[CusRev]", PartInfo.CusRev); * cMETE_Download_Upload_Path.Local_Folder_CAM = cMETE_Download_Upload_Path.Local_Folder_CAM.Replace("[Local_ShareStr]", cMETE_Download_Upload_Path.Local_ShareStr); * cMETE_Download_Upload_Path.Local_Folder_CAM = cMETE_Download_Upload_Path.Local_Folder_CAM.Replace("[Oper1]", PartInfo.OpNum); #endregion */ DicPartDirData = new Dictionary <string, PartDirData>(); #region 處理Part的路徑 //預先加入總組立檔 PartDirData sPartDirData = new PartDirData(); sPartDirData.PartLocalDir = displayPart.FullPath; sPartDirData.PartServer1Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, Path.GetFileName(displayPart.FullPath)); //sPartDirData.PartServer2Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OIS); DicPartDirData.Add(Path.GetFileNameWithoutExtension(displayPart.FullPath), sPartDirData); listView1.Items.Add(Path.GetFileName(displayPart.FullPath)); //加入Comp資訊 NXOpen.Assemblies.ComponentAssembly casm = displayPart.ComponentAssembly; List <NXOpen.Assemblies.Component> ListChildrenComp = new List <NXOpen.Assemblies.Component>(); CaxAsm.GetCompChildren(casm.RootComponent, ref ListChildrenComp); foreach (NXOpen.Assemblies.Component i in ListChildrenComp) { sPartDirData = new PartDirData(); //判斷Server是否已存在此檔案,如果有就不上傳 string ServerPartPath = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, Path.GetFileName(((Part)i.Prototype).FullPath)); if (File.Exists(ServerPartPath)) { if (!((Part)i.Prototype).FullPath.Contains(PartInfo.OpNum)) { continue; } } sPartDirData.PartLocalDir = ((Part)i.Prototype).FullPath; sPartDirData.PartServer1Dir = ServerPartPath; DicPartDirData.Add(i.Name, sPartDirData); listView1.Items.Add(Path.GetFileName(((Part)i.Prototype).FullPath)); //sPartDirData.PartServer2Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OIS); } //foreach (NXOpen.Assemblies.Component i in ListChildrenComp) //{ // sPartDirData = new PartDirData(); // sPartDirData.PartLocalDir = ((Part)i.Prototype).FullPath; // sPartDirData.PartServer1Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, Path.GetFileName(((Part)i.Prototype).FullPath)); // //sPartDirData.PartServer2Dir = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Server_ShareStr, "OP" + PartInfo.OIS); // DicPartDirData.Add(i.Name, sPartDirData); // listView1.Items.Add(Path.GetFileName(((Part)i.Prototype).FullPath)); //} #endregion #region 處理Excel的路徑 string[] FolderFile = System.IO.Directory.GetFileSystemEntries(cMETE_Download_Upload_Path.Local_Folder_CAM, "*.xls"); string Server_Folder_CAM = ""; Server_Folder_CAM = tempLocal_Folder_CAM.Replace("[Local_ShareStr]", cMETE_Download_Upload_Path.Server_ShareStr); Server_Folder_CAM = Server_Folder_CAM.Replace("[Oper1]", PartInfo.OpNum); long FileTime = new long(); for (int i = 0; i < FolderFile.Length; i++) { System.IO.FileInfo ExcelInfo = new System.IO.FileInfo(FolderFile[i]); if (ExcelInfo.LastAccessTime.ToFileTime() > FileTime) { FileTime = ExcelInfo.LastAccessTime.ToFileTime(); sExcelDirData.ExcelShopDocLocalDir = FolderFile[i]; sExcelDirData.ExcelShopDocServerDir = string.Format(@"{0}\{1}", Server_Folder_CAM, ExcelInfo.Name); } } if (File.Exists(sExcelDirData.ExcelShopDocLocalDir)) { listView1.Items.Add(Path.GetFileName(sExcelDirData.ExcelShopDocLocalDir)); } #endregion #region 處理NC程式的路徑 string Local_NC_Folder = string.Format(@"{0}\{1}", cMETE_Download_Upload_Path.Local_Folder_CAM, "NC"); if (Directory.Exists(Local_NC_Folder)) { sNCProgramDirData.NCProgramLocalDir = Local_NC_Folder; sNCProgramDirData.NCProgramServerDir = string.Format(@"{0}\{1}", Server_Folder_CAM, "NC"); listView1.Items.Add("NC資料夾"); } #endregion }