Jelajahi Sumber

修改抽检批判断通过和撤销的当前工序和下一道工序

章政 8 tahun lalu
induk
melakukan
f2f15c5d6d

+ 2 - 2
UAS-MES/FunctionCode/OQC/OQC_BatchResultJudge.cs

@@ -286,7 +286,7 @@ namespace UAS_MES.OQC
                         sql.Add("update make set ma_madeqty=ma_madeqty-" + batchqty + " where ma_code='" + ob_makecode.Text + "'");
                     }
                     //获取上一步执行的工序
-                    string PastCode = dh.getFieldDataByCondition("makeserial", "SUBSTR(ms_paststep,0,INSTR(ms_paststep,',', -1, 1)-1) ms_paststep", "ms_sncode='" + ms_sncode.Text + "'").ToString();
+                    string PastCode = dh.getFieldDataByCondition("makeserial", "SUBSTR(ms_paststep,0,INSTR(ms_paststep,',', -1, 1)-1) ms_paststep", "ms_checkno='" + ob_checkno.Text + "'").ToString();
                     string[] LastStepCode = PastCode.Split(',');
                     sql.Add("update makeserial set ms_paststep=(select distinct SUBSTR(ms_paststep,0,INSTR(ms_paststep,',', -1, 1)-1)  from makeserial where ms_checkno='" + ob_checkno.Text + "') where ms_checkno='" + ob_checkno.Text + "'");
                     sql.Add("update makeserial set ms_stepcode='" + LastStepCode[LastStepCode.Length - 1] + "',ms_nextstepcode='" + User.CurrentStepCode + "',ms_status=1 where ms_checkno='" + ob_checkno.Text + "'");
@@ -297,7 +297,7 @@ namespace UAS_MES.OQC
                 {
                     //更新下一工序
                     string ErrorMessage = "";
-                    LogicHandler.UpdateOQCMessage(ms_sncode.Text, ob_makecode.Text, Kind, User.UserSourceCode, User.UserName, Result, out ErrorMessage);
+                    LogicHandler.UpdateOQCMessage(ms_sncode.Text,ob_checkno.Text, ob_makecode.Text, Kind, User.UserSourceCode, User.UserName, Result, out ErrorMessage);
                     sql.Clear();
                     sql.Append("insert into MakeProcess(mp_id,mp_makecode,mp_maid, mp_mscode,mp_sncode,mp_stepcode,mp_stepname,");
                     sql.Append("mp_craftcode,mp_craftname,mp_kind,mp_result,mp_indate,mp_inman,mp_wccode,mp_linecode,mp_sourcecode,mp_snstatus,mp_sncheckno,mp_snoutboxcode)");

+ 1 - 1
UAS-MES/FunctionCode/OQC/OQC_SamplingDataCollection.cs

@@ -277,7 +277,7 @@ namespace UAS_MES.OQC
                 {
                     dh.ExecuteSql("update OQCBatch set ob_status='OK',ob_result='OK' where ob_checkno='" + ob_checkno.Text + "'", "select");
                     string ErrorMessage;
-                    LogicHandler.UpdateOQCMessage(ms_sncode.Text, ob_makecode.Text, "OQC批判过", User.UserSourceCode, User.UserName, "批次通过", out ErrorMessage);
+                    LogicHandler.UpdateOQCMessage(ms_sncode.Text, ob_checkno.Text,ob_makecode.Text, "OQC批判过", User.UserSourceCode, User.UserName, "批次通过", out ErrorMessage);
                     //记录操作日志
                     LogicHandler.InsertMakeProcess(ms_sncode.Text, ob_makecode.Text, User.UserSourceCode, "批结果判定", "批次通过", User.UserName);
                     GetBatch.PerformClick();

+ 7 - 9
UAS-MES/PublicMethod/LogicHandler.cs

@@ -1202,7 +1202,7 @@ namespace UAS_MES.PublicMethod
                 return false;
         }
 
-        public static bool UpdateOQCMessage(string iSnCode, string iMakeCode, string iMPKind, string iSourceCode, string iUserCode, string iResult, out string oErrorMessage)
+        public static bool UpdateOQCMessage(string iSnCode,string iCheckno, string iMakeCode, string iMPKind, string iSourceCode, string iUserCode, string iResult, out string oErrorMessage)
         {
             oErrorMessage = "";
             string StepCode = "";
@@ -1215,38 +1215,36 @@ namespace UAS_MES.PublicMethod
             GetStepCodeAndNameAndLineBySource(iSourceCode, ref StepCode, ref StepName, ref LineCode);
             //查询批次和批数量
             int batchqty = 0;
-            string checkno = "";
-            DataTable dt = (DataTable)dh.ExecuteSql("select count(ms_checkno) count,ms_checkno from makeserial where ms_checkno=(select ms_checkno from makeserial where ms_sncode='" + iSnCode + "') group by ms_checkno", "select");
+            DataTable dt = (DataTable)dh.ExecuteSql("select count(ms_checkno) count,ms_checkno from makeserial where ms_checkno='"+ iCheckno + "' group by ms_checkno", "select");
             if (dt.Rows.Count > 0)
             {
                 batchqty = int.Parse(dt.Rows[0]["count"].ToString());
-                checkno = dt.Rows[0]["ms_checkno"].ToString();
             }
-            object nextstepcode = dh.getFieldDataByCondition("makecraftdetail", "mcd_nextstepcode", "mcd_macode='" + iMakeCode + "' and mcd_stepcode='" + StepCode + "'");
+            string nextstepcode = dh.getFieldDataByCondition("make left join craft on ma_craftcode=cr_code and ma_prodcode=cr_prodcode left join craftdetail on cr_id = cd_crid", "cd_nextstepcode", "ma_code='" + iMakeCode + "' and cd_stepcode='" + StepCode + "'").ToString();
             if (iResult.Contains("批次通过") && dt.Rows.Count > 0)
             {
                 //更新执行的数量
                 sqls.Add("update makecraftdetail set mcd_inqty=mcd_inqty+" + batchqty + ",mcd_outqty = mcd_outqty + " + batchqty + ",mcd_okqty = mcd_okqty + " + batchqty + " where mcd_macode='" + iMakeCode + "' and mcd_stepcode='" + StepCode + "' ");
                 //更新makeSerial 的下一工序
-                sqls.Add("update makeserial set ms_paststep = ms_paststep || '," + StepCode + "',ms_stepcode='" + StepCode + "',ms_nextstepcode='" + nextstepcode.ToString() + "' where ms_checkno='" + checkno + "'");
+                sqls.Add("update makeserial set ms_paststep = ms_paststep || '," + StepCode + "',ms_stepcode='" + StepCode + "',ms_nextstepcode='" + nextstepcode+ "' where ms_checkno='" + iCheckno + "'");
             }
             else
             {
                 //更新执行的数量
                 sqls.Add("update makecraftdetail set mcd_inqty=mcd_inqty+1,mcd_outqty = mcd_outqty + 1,mcd_okqty = mcd_okqty + 1 where mcd_macode='" + iMakeCode + "' and mcd_stepcode='" + StepCode + "' ");
                 //更新makeSerial 的下一工序
-                sqls.Add("update makeserial set ms_paststep = ms_paststep || '," + StepCode + "',ms_stepcode='" + StepCode + "',ms_nextstepcode='" + nextstepcode.ToString() + "' where ms_sncode='" + iSnCode + "' and ms_makecode='" + iMakeCode + "'");
+                sqls.Add("update makeserial set ms_paststep = ms_paststep || '," + StepCode + "',ms_stepcode='" + StepCode + "',ms_nextstepcode='" + nextstepcode + "' where ms_sncode='" + iSnCode + "' and ms_makecode='" + iMakeCode + "'");
             }
             //更新序列号已经采集的工序 ms_paststep 已采集数据,更新下一工序
             dh.ExecuteSQLTran(sqls.ToArray());
             sqls.Clear();
             //检测下道工序是否存在,不存在 更新状态为已完成
-            if (nextstepcode == null || nextstepcode.ToString() == "")
+            if (nextstepcode == null || nextstepcode == "")
             {
                 if (iResult.Contains("批次通过"))
                 {
                     sqls.Add("update make set ma_madeqty=ma_madeqty+" + batchqty + " where ma_code='" + iMakeCode + "'");
-                    sqls.Add("update makeserial set ms_status=2 where ms_checkno='" + checkno + "'");
+                    sqls.Add("update makeserial set ms_status=2 where ms_checkno='" + iCheckno + "'");
                 }
                 else
                 {