using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; using System.Reflection; using ICSSoft.Base.Config.DBHelper; using ICSSoft.Base.Config.AppConfig; namespace ICSSoft.Frame.APP { public partial class FormICSDrawingShow : Form { public bool hasFile = false; public FormICSDrawingShow(string fileName, string itemCode) { InitializeComponent(); this.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); this.WindowState = FormWindowState.Maximized; //string fileName = filePath + "\\" + "1301010290-JJGY$A1.pdf"; //string fileName = "E:\\1501010061$A1.pdf"; axAcroPDF1.LoadFile(fileName); axAcroPDF1.setShowToolbar(false); axAcroPDF1.setShowToolbar(false); axAcroPDF1.setPageMode("thumbs"); axAcroPDF1.setPageMode("none"); axAcroPDF1.Show(); axAcroPDF1.setPageMode("thumbs"); axAcroPDF1.setPageMode("none"); axAcroPDF1.IsAccessible = false; axAcroPDF1.setShowToolbar(false); axAcroPDF1.setShowToolbar(false); axAcroPDF1.Update(); axAcroPDF1.Refresh(); } public FormICSDrawingShow(string itemCode) { InitializeComponent(); //this.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); //this.WindowState = FormWindowState.Maximized; BandData(itemCode); } #region 根据存货编码查询列表信息 private void BandData(string itemCode) { try { #region new string sql = @"SELECT DISTINCT T.CDOCUMENTNAME as [FileName], T.CDOCUMENTID as FileID, T.CDOCUMENTVER as FileVer, T.CDFORMAT as FileFormat FROM DOC_008 T LEFT OUTER JOIN DOC_030 S ON (T.SECRECYGRADEID = S.SECRECYGRADEID) LEFT OUTER JOIN SYS_057 SORT ON (T.SORTID = SORT.SORTID) LEFT OUTER JOIN SYS_019 Q ON (T.CMODIFIER = Q.CPERSONID), DOC_026 T_ADD, SYS_019 P, DOC_017 K, BOM_026 M WHERE T.CDOCUMENTID = M.CDOCUMENTID AND T.CDOCUMENTVER = M.CDOCUMENTVER AND T.CDOCUMENTID = T_ADD.CDOCUMENTID AND T.CDOCUMENTVER = T_ADD.CDOCUMENTVER AND T.CCREATORID = P.CPERSONID AND T.CMKINDID = K.CMKINDID AND M.PARTVAR = 'A1' AND T.CDFORMAT = 'pdf' AND M.PARTID = '{0}'"; sql = string.Format(sql, itemCode); #endregion #region old // string sql = @"SELECT A.CDOCUMENTID as FileID, // A.CDOCUMENTVER as FileVer, // A.CDOCUMENTNAME as [FileName], // A.CDFORMAT as FileFormat // FROM DOC_008 A // LEFT OUTER JOIN DOC_030 D ON(A.SECRECYGRADEID=D.SECRECYGRADEID) // LEFT OUTER JOIN SYS_057 E ON (A.SORTID = E.SORTID) // LEFT OUTER JOIN SYS_019 Q ON (A.CMODIFIER = Q.CPERSONID) // LEFT OUTER JOIN DOC_026 B ON(A.CDOCUMENTID=B.CDOCUMENTID AND A.CDOCUMENTVER=B.CDOCUMENTVER) // LEFT OUTER JOIN (SELECT A.CDOCUMENTID, A.CDOCUMENTVER, C.CANAME, D.CPERSONNAME,E.CSTATENAME FROM DOC_011 A, PRJ_001 C, DOC_025 B LEFT JOIN SYS_019 D ON (B.CPERSONID = D.CPERSONID), DOC_013 E // WHERE E.INTERNATIONKEY = 'zh_CN' AND A.CTASKID = B.CTASKID AND B.CACTIVEID = C.CACTIVEID AND E.CSTATEID = B.CSTATEID AND ISNULL(A.CDOCUMENTID,'') <> '' AND ISNULL(A.CDOCUMENTVER,'') <> '' AND (B.CSTATEID = '2' OR B.CSTATEID = '3') AND A.CSTATEID <> '4' AND A.CSTATEID <> '5' AND E.INTERNATIONKEY = 'zh_CN') AS CHK // ON (A.CDOCUMENTID = CHK.CDOCUMENTID AND A.CDOCUMENTVER = CHK.CDOCUMENTVER), SYS_019 C ,DOC_017 F // WHERE A.CCREATORID=C.CPERSONID and A.CMKINDID=F.CMKINDID "; // if (!string.IsNullOrEmpty(itemCode)) // { // sql += "and a.CDOCUMENTID like '%" + itemCode + "%' "; // } #endregion string connectionStr = AppConfig.GetDataBaseConnectStringByKey("[DB.PLM]"); DataTable dt = DBHelper.ExecuteDataset(connectionStr, CommandType.Text, sql).Tables[0]; string connectionString = AppConfig.GetDataBaseConnectStringByKey("[DB.FTP]"); string[] ftps = connectionString.Split(';'); string ftpServerIP = ftps[0].Split('=')[1]; string ftpRemotePath = ftps[1].Split('=')[1]; string ftpUserID = ftps[2].Split('=')[1]; string ftpPassword = ftps[3].Split('=')[1]; FtpWeb ftpWeb = new FtpWeb(ftpServerIP, ftpRemotePath, ftpUserID, ftpPassword); string filePath = System.IO.Path.GetTempPath() + "\\Drawing"; if (!Directory.Exists(filePath)) { Directory.CreateDirectory(filePath); } string fileName = ""; for (int i = 0; i < dt.Rows.Count;i++ ) { DataRow dr = dt.Rows[i]; //文件名称有 ID + “$” + 版本 + 文件格式组成 fileName = dr["FileID"].ToString() + "$" + dr["FileVer"].ToString() + "." + dr["FileFormat"].ToString(); } if (!string.IsNullOrEmpty(fileName)) { hasFile = true; ftpWeb.Download(filePath + "\\", fileName); string filePathName = filePath + "\\" + fileName; axAcroPDF1.LoadFile(filePathName); axAcroPDF1.setShowToolbar(false); axAcroPDF1.setPageMode("thumbs"); axAcroPDF1.setPageMode("none"); axAcroPDF1.Show(); axAcroPDF1.setPageMode("thumbs"); axAcroPDF1.setPageMode("none"); axAcroPDF1.IsAccessible = false; axAcroPDF1.setShowToolbar(false); axAcroPDF1.Update(); axAcroPDF1.Refresh(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } #endregion private void FormICSDrawingShow_FormClosing(object sender, FormClosingEventArgs e) { //DeleteFile(); } public void DeleteFile() { try { //获取文件夹 //string path = Server.MapPath("Image"); string filePath = System.IO.Path.GetTempPath() + "\\Drawing"; //获取文件夹中所有图片 if (Directory.GetFileSystemEntries(filePath).Length > 0) { //遍历文件夹中所有文件 foreach (string file in Directory.GetFiles(filePath)) { try { //文件己存在 if (File.Exists(file)) { FileInfo fi = new FileInfo(file); //判断当前文件属性是否是只读 if (fi.Attributes.ToString().IndexOf("ReadyOnly") >= 0) { fi.Attributes = FileAttributes.Normal; } //删除文件 File.Delete(file); } } catch (Exception ex) { } } //删除文件夹 //Directory.Delete(path); } } catch (Exception ex) { } } } }