|
@@ -9,6 +9,8 @@ using UAS_MES_NEW.Entity;
|
|
|
using UAS_MES_NEW.PublicMethod;
|
|
|
using System.Collections.Generic;
|
|
|
using UAS_MES_NEW.CustomControl.PowerControlForm;
|
|
|
+using DevExpress.XtraScheduler;
|
|
|
+using System.Web.Services.Description;
|
|
|
|
|
|
namespace UAS_MES_NEW.Make
|
|
|
{
|
|
@@ -50,6 +52,8 @@ namespace UAS_MES_NEW.Make
|
|
|
|
|
|
List<string> passsnlist = new List<string>();
|
|
|
|
|
|
+ ftpOperater ftp = new ftpOperater();
|
|
|
+
|
|
|
public Make_TestCollectionModule()
|
|
|
{
|
|
|
InitializeComponent();
|
|
@@ -187,85 +191,101 @@ namespace UAS_MES_NEW.Make
|
|
|
if (passsnlist.ToArray().Length == passqty.Value)
|
|
|
{
|
|
|
string[] arr = passsnlist.ToArray();
|
|
|
- for (int i = 0; i < arr.Length; i++)
|
|
|
+ ImportExcel1.Filter = "(*.xls)|*.xls";
|
|
|
+ DialogResult result;
|
|
|
+ result = ImportExcel1.ShowDialog();
|
|
|
+ if (result == DialogResult.OK)
|
|
|
{
|
|
|
- ms_sncode.Text = arr[i];
|
|
|
- ChoosedRejectList.Items.Clear();
|
|
|
- WaitList.Clear();
|
|
|
- ChoosedList.Clear();
|
|
|
- if (LogicHandler.CheckStepAttribute(Tag.ToString(), User.UserSourceCode, out ErrorMessage))
|
|
|
+ string sn = "";
|
|
|
+ for (int i = 0; i < arr.Length; i++)
|
|
|
{
|
|
|
-
|
|
|
- bool NoteAlready = LogicHandler.CheckDiffMakeCodeBeforeStepCheck(ms_sncode.Text, ma_code.Text, NoteForChange.Checked, out oMakeCode, out ErrorMessage);
|
|
|
- if (!NoteAlready)
|
|
|
- {
|
|
|
- OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red, ms_sncode);
|
|
|
- return;
|
|
|
- }
|
|
|
- if (LogicHandler.CheckStepSNAndMacode(oMakeCode, User.UserSourceCode, ms_sncode.Text, User.UserCode, out oMakeCode, out oMSID, out ErrorMessage))
|
|
|
+ sn += arr[i] + "_";
|
|
|
+ }
|
|
|
+ string ftppath = "/" + DateTime.Now.ToString("yyyy-MM-dd") + "/";
|
|
|
+ FilePath.Text = ImportExcel1.FileName;
|
|
|
+ ftp.UpLoadFile(FilePath.Text, sn + ".xls", ftppath);
|
|
|
+ for (int i = 0; i < arr.Length; i++)
|
|
|
+ {
|
|
|
+ ms_sncode.Text = arr[i];
|
|
|
+ ChoosedRejectList.Items.Clear();
|
|
|
+ WaitList.Clear();
|
|
|
+ ChoosedList.Clear();
|
|
|
+ if (LogicHandler.CheckStepAttribute(Tag.ToString(), User.UserSourceCode, out ErrorMessage))
|
|
|
{
|
|
|
-
|
|
|
- if (!LogicHandler.CheckDiffMakeCodeAfterStepCheck(ms_sncode.Text, oMakeCode, NoteForChange.Checked, NoteAlready, ma_code, out ErrorMessage))
|
|
|
+
|
|
|
+ bool NoteAlready = LogicHandler.CheckDiffMakeCodeBeforeStepCheck(ms_sncode.Text, ma_code.Text, NoteForChange.Checked, out oMakeCode, out ErrorMessage);
|
|
|
+ if (!NoteAlready)
|
|
|
{
|
|
|
OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red, ms_sncode);
|
|
|
return;
|
|
|
}
|
|
|
- if (ma_code.Text != oMakeCode && oMakeCode != null)
|
|
|
+ if (LogicHandler.CheckStepSNAndMacode(oMakeCode, User.UserSourceCode, ms_sncode.Text, User.UserCode, out oMakeCode, out oMSID, out ErrorMessage))
|
|
|
{
|
|
|
- dt = (DataTable)dh.ExecuteSql("select ma_code,ma_prodcode,ma_softversion,ma_salecode,pr_detail,nvl(pr_sendchecktype,'LineCode')pr_sendchecktype,ma_qty from make left join product on ma_prodcode=pr_code where ma_code='" + oMakeCode + "'", "select");
|
|
|
- if (dt.Rows.Count > 0)
|
|
|
+ dh.ExecuteSql("insert into STEPTESTDETAIL (std_id,std_sn,std_makecode,std_indate,STD_RESCODE,std_stepcode,STD_TESTRESULT,std_class)select STEPTESTDETAIL_seq.nextval,'" + arr[i] + "','" + oMakeCode + "',sysdate,'" + User.UserSourceCode + "','" + User.CurrentStepCode + "','','http://172.16.51.3:8099/ftp" + ftppath + sn + ".xls" + "' from dual", "insert");
|
|
|
+
|
|
|
+
|
|
|
+ if (!LogicHandler.CheckDiffMakeCodeAfterStepCheck(ms_sncode.Text, oMakeCode, NoteForChange.Checked, NoteAlready, ma_code, out ErrorMessage))
|
|
|
{
|
|
|
- BaseUtil.SetFormValue(this.Controls, dt);
|
|
|
- LockMakeCode.Checked = true;
|
|
|
+ OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red, ms_sncode);
|
|
|
+ return;
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- string mscode = dh.getFieldDataByCondition("makeserial LEFT JOIN craft ON ms_craftcode = cr_code and ms_prodcode = cr_prodcode LEFT JOIN craftdetail ON cr_id = cd_crid LEFT JOIN STEP ON CD_NEXTSTEPCODE = ST_CODE", "ms_code", "ms_id = '" + oMSID + "' AND CD_STEPCODE = '" + User.CurrentStepCode + "' AND ST_IFOQC = -1").ToString();
|
|
|
- if (mscode != "" && (dh.CheckExist("makeserial", "ms_id = '" + oMSID + "' and NVL(MS_BADTIMES,0)>0 ") || dh.CheckExist("makeserial", "ms_sncode = '" + mscode + "' and NVL(MS_BADTIMES,0)>0 ")))
|
|
|
- {
|
|
|
- OperateResult.AppendText(">>" + ms_sncode.Text + " 序列号即将送检,此序列号经过维修,提示\n", Color.Purple);
|
|
|
- }
|
|
|
-
|
|
|
- dt = (DataTable)dh.ExecuteSql("select ms_nextstepcode,ms_sncode,ms_reworkstatus,nvl(ms_ifrework,0)ms_ifrework,ms_stepcode,ms_status,nvl(st_ifrepair,0) st_ifrepair from makeserial left join step on ms_stepcode=st_code where ms_id='" + oMSID + "'", "select");
|
|
|
- string status = dt.Rows[0]["ms_status"].ToString();
|
|
|
- reworkstatus = dt.Rows[0]["ms_reworkstatus"].ToString();
|
|
|
- string stepcode = dt.Rows[0]["ms_stepcode"].ToString();
|
|
|
- string ifrepair = dt.Rows[0]["st_ifrepair"].ToString();
|
|
|
- string sncode = dt.Rows[0]["ms_sncode"].ToString();
|
|
|
- if (sncode != ms_sncode.Text)
|
|
|
- {
|
|
|
- OperateResult.AppendText(">>" + ms_sncode.Text + " 序列号已执行过转号,不允许使用TSN采集\n", Color.Red, ms_sncode);
|
|
|
- return;
|
|
|
- }
|
|
|
- ifrework = dt.Rows[0]["ms_ifrework"].ToString();
|
|
|
- if (GoodProduct.Checked)
|
|
|
- {
|
|
|
- if (ifrework != "0")
|
|
|
+ if (ma_code.Text != oMakeCode && oMakeCode != null)
|
|
|
{
|
|
|
- if (stepcode == User.CurrentStepCode && (reworkstatus == "1" || reworkstatus == "2") && ifrepair == "0")
|
|
|
+ dt = (DataTable)dh.ExecuteSql("select ma_code,ma_prodcode,ma_softversion,ma_salecode,pr_detail,nvl(pr_sendchecktype,'LineCode')pr_sendchecktype,ma_qty from make left join product on ma_prodcode=pr_code where ma_code='" + oMakeCode + "'", "select");
|
|
|
+ if (dt.Rows.Count > 0)
|
|
|
{
|
|
|
- OperateResult.AppendText(">>" + ms_sncode.Text + "序列号已执行过" + User.CurrentStepCode + "工序,采集结果为良品\n", Color.Red, ms_sncode);
|
|
|
- return;
|
|
|
+ BaseUtil.SetFormValue(this.Controls, dt);
|
|
|
+ LockMakeCode.Checked = true;
|
|
|
}
|
|
|
}
|
|
|
- else
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ string mscode = dh.getFieldDataByCondition("makeserial LEFT JOIN craft ON ms_craftcode = cr_code and ms_prodcode = cr_prodcode LEFT JOIN craftdetail ON cr_id = cd_crid LEFT JOIN STEP ON CD_NEXTSTEPCODE = ST_CODE", "ms_code", "ms_id = '" + oMSID + "' AND CD_STEPCODE = '" + User.CurrentStepCode + "' AND ST_IFOQC = -1").ToString();
|
|
|
+ if (mscode != "" && (dh.CheckExist("makeserial", "ms_id = '" + oMSID + "' and NVL(MS_BADTIMES,0)>0 ") || dh.CheckExist("makeserial", "ms_sncode = '" + mscode + "' and NVL(MS_BADTIMES,0)>0 ")))
|
|
|
+ {
|
|
|
+ OperateResult.AppendText(">>" + ms_sncode.Text + " 序列号即将送检,此序列号经过维修,提示\n", Color.Purple);
|
|
|
+ }
|
|
|
+
|
|
|
+ dt = (DataTable)dh.ExecuteSql("select ms_nextstepcode,ms_sncode,ms_reworkstatus,nvl(ms_ifrework,0)ms_ifrework,ms_stepcode,ms_status,nvl(st_ifrepair,0) st_ifrepair from makeserial left join step on ms_stepcode=st_code where ms_id='" + oMSID + "'", "select");
|
|
|
+ string status = dt.Rows[0]["ms_status"].ToString();
|
|
|
+ reworkstatus = dt.Rows[0]["ms_reworkstatus"].ToString();
|
|
|
+ string stepcode = dt.Rows[0]["ms_stepcode"].ToString();
|
|
|
+ string ifrepair = dt.Rows[0]["st_ifrepair"].ToString();
|
|
|
+ string sncode = dt.Rows[0]["ms_sncode"].ToString();
|
|
|
+ if (sncode != ms_sncode.Text)
|
|
|
{
|
|
|
- if (stepcode == User.CurrentStepCode && (status == "1" || status == "2") && ifrepair == "0")
|
|
|
+ OperateResult.AppendText(">>" + ms_sncode.Text + " 序列号已执行过转号,不允许使用TSN采集\n", Color.Red, ms_sncode);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ ifrework = dt.Rows[0]["ms_ifrework"].ToString();
|
|
|
+ if (GoodProduct.Checked)
|
|
|
+ {
|
|
|
+ if (ifrework != "0")
|
|
|
{
|
|
|
- OperateResult.AppendText(">>" + ms_sncode.Text + "序列号已执行过" + User.CurrentStepCode + "工序,采集结果为良品\n", Color.Red, ms_sncode);
|
|
|
- return;
|
|
|
+ if (stepcode == User.CurrentStepCode && (reworkstatus == "1" || reworkstatus == "2") && ifrepair == "0")
|
|
|
+ {
|
|
|
+ OperateResult.AppendText(">>" + ms_sncode.Text + "序列号已执行过" + User.CurrentStepCode + "工序,采集结果为良品\n", Color.Red, ms_sncode);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ if (stepcode == User.CurrentStepCode && (status == "1" || status == "2") && ifrepair == "0")
|
|
|
+ {
|
|
|
+ OperateResult.AppendText(">>" + ms_sncode.Text + "序列号已执行过" + User.CurrentStepCode + "工序,采集结果为良品\n", Color.Red, ms_sncode);
|
|
|
+ return;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+ SetCollectResult();
|
|
|
+ passsnlist.Clear();
|
|
|
}
|
|
|
- SetCollectResult();
|
|
|
- passsnlist.Clear();
|
|
|
+ else OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red, ms_sncode);
|
|
|
}
|
|
|
else OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red, ms_sncode);
|
|
|
}
|
|
|
- else OperateResult.AppendText(">>" + ErrorMessage + "\n", Color.Red, ms_sncode);
|
|
|
}
|
|
|
}
|
|
|
}
|