You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
603 lines
27 KiB
603 lines
27 KiB
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Drawing;
|
|
using System.Windows.Forms;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using ICSSoft.Base.Config.AppConfig;
|
|
using DevExpress.XtraEditors;
|
|
using ICSSoft.Frame.Data.BLL;
|
|
using System.Data.SqlClient;
|
|
using ICSSoft.Base.Config.DBHelper;
|
|
using System.IO;
|
|
|
|
namespace ICSSoft.Frame.APP
|
|
{
|
|
public partial class UserControlDrawShow : UserControl
|
|
{
|
|
public string EQPType;
|
|
string itemCode = "";
|
|
string routeCode = "";
|
|
string itemname = "";
|
|
string itemstd = "";
|
|
String guid = AppConfig.GetGuid();
|
|
//WorkPointBLL workBll = new WorkPointBLL();
|
|
|
|
public UserControlDrawShow()
|
|
{
|
|
InitializeComponent();
|
|
rdoLOTNO.Checked = true;
|
|
//rdoFileID.Checked = true;
|
|
txtLOTNO.Focus();
|
|
|
|
txtType.Items.Clear();
|
|
txtType.Items.Add(FileDrawing.TuZhi);
|
|
//txtType.Items.Add(FileDrawing.WuLiao);
|
|
txtType.Items.Add(FileDrawing.CuJiaGong);
|
|
txtType.Items.Add(FileDrawing.ZuoYeZhiDao);
|
|
//txtType.Items.Add(FileDrawing.YaoSu);
|
|
//txtType.Items.Add(FileDrawing.GuanCha);
|
|
//txtType.Items.Add(FileDrawing.ZuHe);
|
|
txtType.Items.Add(FileDrawing.SZuoYeZhiDao);
|
|
txtType.Items.Add(FileDrawing.SheBei);
|
|
txtType.Items.Add(FileDrawing.WPS);
|
|
txtType.Items.Add(FileDrawing.ChengXu);
|
|
//txtType.Items.Add(FileDrawing.ShiPin);
|
|
txtType.Items.Add(FileDrawing.ZhuYi);
|
|
txtType.Items.Add(FileDrawing.GuiFan);
|
|
txtType.Items.Add(FileDrawing.WenTi);
|
|
txtType.Items.Add(FileDrawing.PeiXun);
|
|
}
|
|
|
|
#region 移动窗体
|
|
private const int WM_NCHITTEST = 0x84;
|
|
private const int HTCLIENT = 0x1;
|
|
private const int HTCAPTION = 0x2;
|
|
//首先必须了解Windows的消息传递机制,当有鼠标活动消息时,
|
|
//系统发送WM_NCHITTEST 消息给窗体作为判断消息发生地的根据。 nchittest
|
|
//假如你点击的是标题栏,窗体收到的消息值就是 HTCAPTION ,
|
|
//同样地,若接受到的消息是 HTCLIENT,说明用户点击的是客户区,也就是鼠标消息发生在客户区。
|
|
|
|
//重写窗体,使窗体可以不通过自带标题栏实现移动
|
|
protected override void WndProc(ref Message m)
|
|
{
|
|
|
|
|
|
//当重载窗体的 WndProc 方法时,可以截获 WM_NCHITTEST 消息并改些该消息,
|
|
//当判断鼠标事件发生在客户区时,改写改消息,发送 HTCAPTION 给窗体,
|
|
//这样,窗体收到的消息就时 HTCAPTION ,在客户区通过鼠标来拖动窗体就如同通过标题栏来拖动一样。
|
|
//注意:当你重载 WndProc 并改写鼠标事件后,整个窗体的鼠标事件也就随之改变了。
|
|
switch (m.Msg)
|
|
{
|
|
case WM_NCHITTEST:
|
|
base.WndProc(ref m);
|
|
if ((int)m.Result == HTCLIENT)
|
|
m.Result = (IntPtr)HTCAPTION;
|
|
return;
|
|
}
|
|
//拦截双击标题栏、移动窗体的系统消息
|
|
if (m.Msg != 0xA3)
|
|
{
|
|
base.WndProc(ref m);
|
|
}
|
|
|
|
}
|
|
#endregion
|
|
|
|
private void btnDownload_Click(object sender, EventArgs e)
|
|
{
|
|
SimpleButton btntemp = (SimpleButton)sender;
|
|
//if (AppConfig.GetUserExcuteRight(this.Tag.ToString(), btntemp.Name) == false)
|
|
//{
|
|
// ICSBaseSimpleCode.AppshowMessageBox("对不起您没有:" + btntemp.Text + "权限,请联系系统管理员!");
|
|
// return;
|
|
//}
|
|
if (string.IsNullOrEmpty(this.txtLOTNO.Text.Trim()) && string.IsNullOrEmpty(this.txtFileID.Text.Trim()))
|
|
{
|
|
ICSBaseSimpleCode.AppshowMessageBox("请输入条件!");
|
|
return;
|
|
}
|
|
if (!string.IsNullOrEmpty(this.txtLOTNO.Text.Trim()))
|
|
{
|
|
MOByMoCode(this.txtLOTNO.Text.Trim());
|
|
}
|
|
else
|
|
{
|
|
SearchItem(this.txtFileID.Text.Trim());
|
|
}
|
|
}
|
|
|
|
#region 根据存货编码产品信息
|
|
private void SearchItem(string itemcode)
|
|
{
|
|
try
|
|
{
|
|
string sql = @"SELECT
|
|
ItemName,
|
|
ItemStd,ROUTECODE
|
|
|
|
FROM
|
|
Base_Inventory a
|
|
LEFT JOIN (SELECT
|
|
h.ItemCode,
|
|
CASE WHEN i.ROUTECODE IS NULL THEN j.ROUTECODE ELSE i.ROUTECODE END AS ROUTECODE
|
|
FROM
|
|
Base_Inventory h
|
|
LEFT JOIN (SELECT * FROM ICSITEM2ROUTE WHERE ISREF = '是') i ON h.ItemCode = i.ITEMCODE
|
|
LEFT JOIN (SELECT * FROM ICSMODEL2ROUTE WHERE ISREF = '是') j ON h.ItemMainCategoryCode=j.MODELCODE) d ON a.ItemCode=d.ItemCode
|
|
WHERE a.ItemCode='{0}' ";
|
|
sql = string.Format(sql, itemcode);
|
|
|
|
SqlDataReader rd = DBHelper.ExecuteReader(AppConfig.AppConnectString, CommandType.Text, sql);
|
|
while (rd.Read())
|
|
{
|
|
itemCode = itemcode;
|
|
itemname = rd["ItemName"].ToString();
|
|
itemstd = rd["ItemStd"].ToString();
|
|
routeCode = rd["ROUTECODE"].ToString();
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(itemCode))
|
|
{
|
|
ICSBaseSimpleCode.AppshowMessageBox("未查到对应的产品!");
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
BandData();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message);
|
|
}
|
|
|
|
}
|
|
#endregion
|
|
|
|
#region 根据存货编码查询列表信息
|
|
private void BandData()
|
|
{
|
|
try
|
|
{
|
|
#region 查询数据
|
|
//图纸
|
|
string sqlTUZHI = @"SELECT DISTINCT
|
|
A.CDOCUMENTNAME AS [FileName],
|
|
A.CDOCUMENTID AS FileID,
|
|
A.CDOCUMENTVER AS FileVer,
|
|
A.CDFORMAT AS FileFormat,
|
|
A.CDOCUMENTID,
|
|
'' as ItemCode,
|
|
'' as ItemName,
|
|
'' as ItemStd
|
|
FROM
|
|
DOC_008 A
|
|
LEFT JOIN BOM_026 B ON A.CDOCUMENTID = B.CDOCUMENTID And A.CDOCUMENTVER = B.CDOCUMENTVER
|
|
LEFT JOIN DOC_017 C ON A.CMKINDID=C.CMKINDID
|
|
WHERE
|
|
B.PARTID like '%{1}%'
|
|
AND A.CDFORMAT in ({0})";
|
|
//工艺、视频、--规范
|
|
string sqlGONGYI = @"SELECT DISTINCT
|
|
CDOCUMENTNAME as [FileName],
|
|
CDOCUMENTID as FileID,
|
|
CDOCUMENTVER as FileVer,
|
|
CDFORMAT as FileFormat,
|
|
CDOCUMENTID,
|
|
'' as ItemCode,
|
|
'' as ItemName,
|
|
'' as ItemStd
|
|
from DOC_008 where CDOCUMENTID like '%{1}%' AND CDFORMAT in ({0})";
|
|
//作业指导书
|
|
string sqlZuoYeZhiDao = @"SELECT DISTINCT
|
|
CDOCUMENTNAME as [FileName],
|
|
CDOCUMENTID as FileID,
|
|
CDOCUMENTVER as FileVer,
|
|
CDFORMAT as FileFormat,
|
|
CDOCUMENTID,
|
|
'' as ItemCode,
|
|
'' as ItemName,
|
|
'' as ItemStd
|
|
from DOC_008 where CDOCUMENTNAME like '%{1}%' AND CDFORMAT in ({0})";
|
|
#endregion
|
|
string suffix = "";
|
|
string sql = "";
|
|
if (chkType.Checked)
|
|
{
|
|
string type = txtType.Text.Trim();
|
|
if (string.IsNullOrWhiteSpace(type))
|
|
{
|
|
suffix = "'pdf','mp4','dwg','CNC'";
|
|
sql = string.Format(sqlTUZHI, suffix, itemCode);
|
|
sql += " UNION " + string.Format(sqlGONGYI, suffix, "%" + routeCode + "%' OR CDOCUMENTID like '" + itemCode);
|
|
sql += " UNION " + string.Format(sqlZuoYeZhiDao, suffix, "%" + routeCode);
|
|
}
|
|
else if (type.Equals(FileDrawing.ZuoYeZhiDao))
|
|
{
|
|
suffix = "'pdf'";
|
|
sql = string.Format(sqlZuoYeZhiDao, suffix, routeCode);
|
|
}
|
|
else if (type.Equals(FileDrawing.ZuHe) ||
|
|
type.Equals(FileDrawing.YaoSu) || type.Equals(FileDrawing.GuanCha) ||
|
|
type.Equals(FileDrawing.WPS))
|
|
{
|
|
string newRouteCode="";
|
|
if (type.Equals(FileDrawing.YaoSu))
|
|
newRouteCode = "YS-" + routeCode;
|
|
else if (type.Equals(FileDrawing.GuanCha))
|
|
newRouteCode = "GC-" + routeCode;
|
|
else if (type.Equals(FileDrawing.ZuHe))
|
|
newRouteCode = "ZH-" + routeCode;
|
|
else if (type.Equals(FileDrawing.WPS))
|
|
newRouteCode = "WPS-" + itemCode;
|
|
|
|
suffix = "'pdf'";
|
|
sql = string.Format(sqlGONGYI, suffix, newRouteCode);
|
|
}
|
|
else if (type.Equals(FileDrawing.ChengXu))
|
|
{
|
|
suffix = "'CNC'";
|
|
sql = string.Format(sqlGONGYI, suffix, itemCode);
|
|
}
|
|
else if (type.Equals(FileDrawing.ShiPin))
|
|
{
|
|
suffix = "'mp4'";
|
|
sql = string.Format(sqlGONGYI,suffix,routeCode);
|
|
}
|
|
else if (type.Equals(FileDrawing.TuZhi) || type.Equals(FileDrawing.CuJiaGong))
|
|
{
|
|
suffix = "'pdf','dwg'";
|
|
sql = string.Format(sqlTUZHI, suffix, itemCode);
|
|
|
|
if (type.Equals(FileDrawing.CuJiaGong))
|
|
sql += " AND C.CMKINDNAME = 'CJ-粗加工'";
|
|
}
|
|
else
|
|
{
|
|
if (string.IsNullOrWhiteSpace(EQPType))
|
|
{
|
|
ICSBaseSimpleCode.AppshowMessageBox("请先扫描设备条码!");
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
if (type.Equals(FileDrawing.SZuoYeZhiDao))
|
|
{
|
|
string newEQPType = "5S-" + EQPType;
|
|
|
|
suffix = "'pdf'";
|
|
sql = string.Format(sqlGONGYI, suffix, newEQPType);
|
|
}
|
|
else if (type.Equals(FileDrawing.SheBei))
|
|
{
|
|
string newEQPType = "SG-" + EQPType;
|
|
|
|
suffix = "'pdf'";
|
|
sql = string.Format(sqlGONGYI, suffix, newEQPType);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
suffix = "'pdf','mp4','dwg','CNC'";
|
|
sql = string.Format(sqlTUZHI, suffix, itemCode);
|
|
sql += " UNION " + string.Format(sqlGONGYI, suffix, "%" + routeCode + "%' OR CDOCUMENTID like '" + itemCode);
|
|
sql += " UNION " + string.Format(sqlZuoYeZhiDao, suffix, "%" + routeCode);
|
|
}
|
|
|
|
|
|
#region new
|
|
// string sql = @"SELECT DISTINCT
|
|
// T.CDOCUMENTNAME as [FileName],
|
|
// T.CDOCUMENTID as FileID,
|
|
// T.CDOCUMENTVER as FileVer,
|
|
// T.CDFORMAT as FileFormat,
|
|
// '' as ItemCode,
|
|
// '' as ItemName,
|
|
// '' as ItemStd
|
|
//
|
|
// 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' ";
|
|
|
|
// if (!string.IsNullOrEmpty(itemCode))
|
|
// {
|
|
// sql += "and M.PARTID like '%" + 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 connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["PLM"].ConnectionString.ToString();
|
|
// string connectionString = "Data Source=ICSSERVER01\\MSSQLSERVER2012;Database=yonyou20160331153618;Uid=sa;Pwd=aA123456;";
|
|
string connectionString = AppConfig.GetDataBaseConnectStringByKey("[DB.PLM]");
|
|
DataTable dt = DBHelper.ExecuteDataset(connectionString, CommandType.Text, sql).Tables[0];
|
|
|
|
if (dt != null && dt.Rows.Count <= 0)
|
|
{
|
|
ICSBaseSimpleCode.AppshowMessageBox("未查到该产品对应的文件信息!");
|
|
}
|
|
else
|
|
{
|
|
foreach (DataRow dr in dt.Rows)
|
|
{
|
|
dr["ItemCode"] = itemCode;
|
|
dr["ItemName"] = itemname;
|
|
dr["ItemStd"] = itemstd;
|
|
}
|
|
}
|
|
this.grdDetail.DataSource = dt;
|
|
this.grvDetail.BestFitColumns();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message);
|
|
}
|
|
|
|
}
|
|
#endregion
|
|
#region 根据批次号查询工单产品信息
|
|
private void MOByMoCode(string MOCode)
|
|
{
|
|
try
|
|
{
|
|
string sql = @"SELECT
|
|
a.MOCODE,
|
|
a.ITEMCODE,
|
|
c.ItemName,
|
|
c.ItemStd,ROUTECODE
|
|
FROM
|
|
ICSMO a
|
|
INNER JOIN ICSMO2Lot b ON a.MOCODE = b.MOCODE
|
|
LEFT JOIN Base_Inventory c on a.ITEMCODE=c.ItemCode
|
|
LEFT JOIN (SELECT
|
|
h.ItemCode,
|
|
CASE WHEN i.ROUTECODE IS NULL THEN j.ROUTECODE ELSE i.ROUTECODE END AS ROUTECODE
|
|
FROM
|
|
Base_Inventory h
|
|
LEFT JOIN (SELECT * FROM ICSITEM2ROUTE WHERE ISREF = '是') i ON h.ItemCode = i.ITEMCODE
|
|
LEFT JOIN (SELECT * FROM ICSMODEL2ROUTE WHERE ISREF = '是') j ON h.ItemMainCategoryCode=j.MODELCODE) d ON c.ItemCode=d.ItemCode
|
|
WHERE LOTNO='{0}' ";
|
|
sql = string.Format(sql, MOCode);
|
|
|
|
SqlDataReader rd = DBHelper.ExecuteReader(AppConfig.AppConnectString, CommandType.Text, sql);
|
|
while (rd.Read())
|
|
{
|
|
itemCode = rd["ITEMCODE"].ToString();
|
|
itemname = rd["ItemName"].ToString();
|
|
itemstd = rd["ItemStd"].ToString();
|
|
routeCode = rd["ROUTECODE"].ToString();
|
|
}
|
|
//DataTable dt = DBHelper.ExecuteDataset(AppConfig.AppConnectString, CommandType.Text, sql).Tables[0];
|
|
//foreach (DataRow dr in dt.Rows)
|
|
//{
|
|
// itemCode = dr["ITEMCODE"].ToString();
|
|
//}
|
|
|
|
if (string.IsNullOrEmpty(itemCode))
|
|
{
|
|
ICSBaseSimpleCode.AppshowMessageBox("未查到对应的产品!");
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
BandData();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message);
|
|
}
|
|
|
|
}
|
|
#endregion
|
|
private void UserControlDrawShow_Load(object sender, EventArgs e)
|
|
{
|
|
//DeleteFile();
|
|
}
|
|
public void DeleteFile()
|
|
{
|
|
try
|
|
{
|
|
//获取文件夹
|
|
//string path = Server.MapPath("Image");
|
|
string filePath = System.IO.Path.GetTempPath() + "\\tempfiles";
|
|
//获取文件夹中所有图片
|
|
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)
|
|
{
|
|
|
|
}
|
|
}
|
|
|
|
private void txtFileID_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
|
|
{
|
|
if (e.KeyChar == 13)
|
|
{
|
|
if (string.IsNullOrEmpty(this.txtLOTNO.Text.Trim()) && string.IsNullOrEmpty(this.txtFileID.Text.Trim()))
|
|
{
|
|
ICSBaseSimpleCode.AppshowMessageBox("请输入条件!");
|
|
return;
|
|
}
|
|
if (!string.IsNullOrEmpty(this.txtLOTNO.Text.Trim()))
|
|
{
|
|
MOByMoCode(this.txtLOTNO.Text.Trim());
|
|
}
|
|
else
|
|
{
|
|
SearchItem(this.txtFileID.Text.Trim());
|
|
}
|
|
}
|
|
}
|
|
|
|
private void fileRead_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
|
|
{
|
|
|
|
try
|
|
{
|
|
DevExpress.XtraGrid.Views.Grid.GridView view = ((DevExpress.XtraGrid.Views.Grid.GridView)(grdDetail.MainView));
|
|
int rowhandle = view.FocusedRowHandle;
|
|
DataRow dr = view.GetDataRow(rowhandle);
|
|
|
|
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];
|
|
string viewerApp = "C:\\Program Files (x86)\\CADSeePlus\\CADSee.exe";
|
|
//string ftpServerIP = System.Configuration.ConfigurationManager.AppSettings["FtpServerIP"];
|
|
//string ftpRemotePath = System.Configuration.ConfigurationManager.AppSettings["FtpRemotePath"];
|
|
//string ftpUserID = System.Configuration.ConfigurationManager.AppSettings["FtpUserID"];
|
|
//string ftpPassword = System.Configuration.ConfigurationManager.AppSettings["FtpPassword"];
|
|
//string viewerApp = System.Configuration.ConfigurationManager.AppSettings["ViewerApp"];
|
|
FtpWeb ftpWeb = new FtpWeb(ftpServerIP, ftpRemotePath, ftpUserID, ftpPassword);
|
|
string filePath = System.IO.Path.GetTempPath() + "\\tempfiles";
|
|
|
|
if (!Directory.Exists(filePath))
|
|
{
|
|
Directory.CreateDirectory(filePath);
|
|
}
|
|
|
|
//文件名称有 ID + “$” + 版本 + 文件格式组成
|
|
string fileName = dr["FileID"].ToString() + "$" + dr["FileVer"].ToString() + "." + dr["FileFormat"].ToString();
|
|
|
|
fileName = fileName.Replace("/", "");
|
|
ftpWeb.Download(filePath + "\\", fileName);
|
|
|
|
string filePathName = filePath + "\\" + fileName;
|
|
if (dr["FileFormat"].ToString().Equals("pdf"))
|
|
{
|
|
FileDrawing.LoadPDF(filePathName);
|
|
}
|
|
else if(dr["FileFormat"].ToString().Equals("dwg"))
|
|
{
|
|
//MyProcess myPro = new MyProcess();
|
|
//myPro.OpenWithStartInfo(filePathName, viewerApp);
|
|
}
|
|
else if (dr["FileFormat"].ToString().Equals("mp4"))
|
|
{
|
|
FormICSMedia draw = new FormICSMedia(filePathName);
|
|
draw.ShowDialog();
|
|
}
|
|
//else if (dr["FileFormat"].ToString().Equals("CNC"))
|
|
//{
|
|
// string downPath = "C:\\mesjk";
|
|
// string downName = downPath + "\\NC.txt";
|
|
|
|
// if (!Directory.Exists(downPath))
|
|
// {
|
|
// Directory.CreateDirectory(downPath);
|
|
// }
|
|
|
|
// if (!File.Exists(downName))
|
|
// {
|
|
// File.Create(downName);
|
|
// }
|
|
|
|
// //StreamReader reader = new StreamReader(filePathName, Encoding.Default);
|
|
// //string text = reader.ReadToEnd();
|
|
// //reader.Close();
|
|
// StreamWriter writer = new StreamWriter(downName);
|
|
// string text = LotNo + "_" + OPCode + "_" + EQPCode;
|
|
// writer.Write(text);
|
|
// writer.Close();
|
|
//}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message);
|
|
}
|
|
|
|
}
|
|
|
|
private void rdoLOTNO_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
if (rdoLOTNO.Checked)
|
|
{
|
|
txtFileID.Text = "";
|
|
txtFileID.Enabled = false;
|
|
txtLOTNO.Enabled = true;
|
|
txtLOTNO.Focus();
|
|
}
|
|
}
|
|
|
|
private void rdoFileID_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
if (rdoFileID.Checked)
|
|
{
|
|
txtLOTNO.Text = "";
|
|
txtLOTNO.Enabled = false;
|
|
txtFileID.Enabled = true;
|
|
txtFileID.Focus();
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|