/// <summary> /// 從輸入加載RootCause /// </summary> /// <param name="Station"></param> /// <param name="Input">RootCause輸入值轉換為大寫</param> /// <param name="Paras">ErrorCode</param> public static void RootCauseDataloader(MESStation.BaseClass.MESStationBase Station, MESStation.BaseClass.MESStationInput Input, List <MESDataObject.Module.R_Station_Action_Para> Paras) { if (Paras.Count != 1) { throw new Exception(MESReturnMessage.GetMESReturnMessage("MES00000050")); } string RootCauseInput = Input.Value.ToString();// = Station.StationSession[0].Value.ToString(); //Modify by LLF 2018-02-03 //MESStationSession strInput = Station.StationSession.Find(t => t.MESDataType == Paras[0].SESSION_TYPE && t.SessionKey == Paras[0].SESSION_KEY); //if (strInput == null) //{ // //Station.AddMessage("MES00000076", new string[] { "Sn", Sn }, MESReturnView.Station.StationMessageState.Fail); //} //else //{ // RootCauseInput = strInput.Value.ToString(); //} //string strSql = $@"SELECT * FROM C_ERROR_CODE WHERE ERROR_CODE = '{RootCauseInput.Replace("'", "''")}'"; //OleDbParameter[] paramet = new OleDbParameter[] { new OleDbParameter(":RootCause", RootCauseInput) }; //DataTable res = Station.SFCDB.ExecuteDataTable(strSql, CommandType.Text, paramet); MESStationSession ErrorCode = Station.StationSession.Find(t => t.MESDataType == Paras[0].SESSION_TYPE && t.SessionKey == Paras[0].SESSION_KEY); if (ErrorCode == null) { ErrorCode = new MESStationSession() { MESDataType = Paras[0].SESSION_TYPE, InputValue = Input.Value.ToString(), SessionKey = Paras[0].SESSION_KEY, ResetInput = Input }; Station.StationSession.Add(ErrorCode); } T_C_ERROR_CODE Obj_C_ERROR_CODE = new T_C_ERROR_CODE(Station.SFCDB, DB_TYPE_ENUM.Oracle); C_ERROR_CODE ObjErrorCode = Obj_C_ERROR_CODE.GetByErrorCode(RootCauseInput, Station.SFCDB); if (ObjErrorCode == null) { throw new MESReturnMessage(MESReturnMessage.GetMESReturnMessage("MES00000142", new string[] { RootCauseInput })); } else { ErrorCode.Value = RootCauseInput; Station.Inputs[Station.Inputs.Count - 1].Value = ObjErrorCode.ENGLISH_DESCRIPTION.ToString(); } //Modify by LLF 2018-02-03 //if (res.Rows.Count <= 0) //{ // Station.NextInput = Input; // Station.AddMessage("MES00000007", new string[] { "RootCause", RootCauseInput }, MESReturnView.Station.StationMessageState.Fail); //} //else //{ // MESStationSession ErrorCode = Station.StationSession.Find(t => t.MESDataType == Paras[0].SESSION_TYPE && t.SessionKey == Paras[0].SESSION_KEY); // if (ErrorCode == null) // { // ErrorCode = new MESStationSession() { MESDataType = Paras[0].SESSION_TYPE, InputValue = Input.Value.ToString(), SessionKey = Paras[0].SESSION_KEY, ResetInput = Input }; // Station.StationSession.Add(ErrorCode); // } // ErrorCode.Value = RootCauseInput; //} }
public void DeleteErrorCodeById(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JToken Data, MESStationReturn StationReturn) { OleExec sfcdb = null; try { sfcdb = this.DBPools["SFCDB"].Borrow(); string strId = Data["Id"].ToString().Trim(); T_C_ERROR_CODE TC_ERROR_CODE = new T_C_ERROR_CODE(sfcdb, MESDataObject.DB_TYPE_ENUM.Oracle); C_ERROR_CODE SelectErrorCode = new C_ERROR_CODE(); SelectErrorCode = TC_ERROR_CODE.GetByid(strId, sfcdb); if (SelectErrorCode == null) { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000007"; StationReturn.MessagePara.Add(strId); } else { int result = TC_ERROR_CODE.DeleteById(strId, sfcdb); if (result > 0) { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Pass; StationReturn.MessageCode = "MES00000001"; } else { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000023"; StationReturn.MessagePara.Add(strId); } } this.DBPools["SFCDB"].Return(sfcdb); } catch (Exception ex) { if (sfcdb != null) { this.DBPools["SFCDB"].Return(sfcdb); } StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000037"; StationReturn.MessagePara.Add(ex.Message); } }
public void GetByErrorCode(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JToken Data, MESStationReturn StationReturn) { OleExec sfcdb = null; try { sfcdb = this.DBPools["SFCDB"].Borrow(); T_C_ERROR_CODE TC_ERROR_CODE = new T_C_ERROR_CODE(sfcdb, MESDataObject.DB_TYPE_ENUM.Oracle); C_ERROR_CODE SelectErrorCode = new C_ERROR_CODE(); string ErrorCode = Data["ErrorCode"].ToString(); SelectErrorCode = TC_ERROR_CODE.GetByErrorCode(ErrorCode, sfcdb); if (SelectErrorCode != null) { StationReturn.Data = SelectErrorCode; StationReturn.Status = StationReturnStatusValue.Pass; StationReturn.MessageCode = "MES00000001"; } else { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000007"; StationReturn.MessagePara.Add(ErrorCode); } this.DBPools["SFCDB"].Return(sfcdb); } catch (Exception ex) { if (sfcdb != null) { this.DBPools["SFCDB"].Return(sfcdb); } StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000037"; StationReturn.MessagePara.Add(ex.Message); } }
/// <summary> /// 掃描不良從輸入加載FAIL_CODE對象 /// </summary> /// <param name="Station"></param> /// <param name="Input"></param> /// <param name="Paras"></param> public static void FailCodeDataloader(MESPubLab.MESStation.MESStationBase Station, MESPubLab.MESStation.MESStationInput Input, List <MESDataObject.Module.R_Station_Action_Para> Paras) { if (Paras.Count != 1) { throw new Exception(MESReturnMessage.GetMESReturnMessage("MES00000050")); } string inputValue = Input.Value.ToString(); MESStationSession sessionFailCode = Station.StationSession.Find(t => t.MESDataType == Paras[0].SESSION_TYPE && t.SessionKey == Paras[0].SESSION_KEY); if (sessionFailCode == null) { sessionFailCode = new MESStationSession() { MESDataType = Paras[0].SESSION_TYPE, SessionKey = Paras[0].SESSION_KEY, ResetInput = Input }; Station.StationSession.Add(sessionFailCode); } else { //inputValue = sessionFailCode.Value.ToString(); sessionFailCode.Value = null; } T_C_ERROR_CODE t_c_error_code = new T_C_ERROR_CODE(Station.SFCDB, DB_TYPE_ENUM.Oracle); C_ERROR_CODE failCodeObject = t_c_error_code.GetByErrorCode(inputValue, Station.SFCDB); if (failCodeObject == null) { throw new MESReturnMessage(MESReturnMessage.GetMESReturnMessage("MES00000142", new string[] { inputValue })); } else { sessionFailCode.Value = failCodeObject; Station.Inputs[Station.Inputs.Count - 1].Value = failCodeObject.ENGLISH_DESCRIPTION.ToString(); } }
public void UpdateErrorCodeById(Newtonsoft.Json.Linq.JObject requestValue, Newtonsoft.Json.Linq.JToken Data, MESStationReturn StationReturn) { OleExec sfcdb = null; try { sfcdb = this.DBPools["SFCDB"].Borrow(); T_C_ERROR_CODE TC_ERROR_CODE = new T_C_ERROR_CODE(sfcdb, MESDataObject.DB_TYPE_ENUM.Oracle); C_ERROR_CODE SelectErrorCode = new C_ERROR_CODE(); string strId = Data["Id"].ToString().Trim(); string ErrorCode = Data["ErrorCode"].ToString().Trim(); string EDescription = Data["EnglishDescription"].ToString().Trim(); string CDescription = Data["ChineseDescription"].ToString().Trim(); if (ErrorCode.Length <= 0) { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000006"; StationReturn.MessagePara.Add("ErrorCode"); this.DBPools["SFCDB"].Return(sfcdb); return; } if (EDescription.Length <= 0) { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000006"; StationReturn.MessagePara.Add("EnglishDescription"); this.DBPools["SFCDB"].Return(sfcdb); return; } if (CDescription.Length <= 0) { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000006"; StationReturn.MessagePara.Add("ChineseDescription"); this.DBPools["SFCDB"].Return(sfcdb); return; } SelectErrorCode = TC_ERROR_CODE.GetByid(strId, sfcdb); if (SelectErrorCode == null) { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000007"; StationReturn.MessagePara.Add("Id:" + strId); this.DBPools["SFCDB"].Return(sfcdb); return; } SelectErrorCode = TC_ERROR_CODE.GetByErrorCode(ErrorCode, sfcdb); if (SelectErrorCode != null && SelectErrorCode.ID != strId) { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000008"; StationReturn.MessagePara.Add(ErrorCode); this.DBPools["SFCDB"].Return(sfcdb); return; } C_ERROR_CODE NewErrorCode = new C_ERROR_CODE(); NewErrorCode.ID = strId; NewErrorCode.ERROR_CODE = ErrorCode; NewErrorCode.ENGLISH_DESCRIPTION = EDescription; NewErrorCode.CHINESE_DESCRIPTION = CDescription; NewErrorCode.EDIT_EMP = LoginUser.EMP_NO; NewErrorCode.EDIT_TIME = GetDBDateTime(); int result = TC_ERROR_CODE.UpdateById(NewErrorCode, sfcdb); if (result > 0) { StationReturn.Data = NewErrorCode; StationReturn.Status = StationReturnStatusValue.Pass; StationReturn.MessageCode = "MES00000001"; } else { StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000025"; StationReturn.MessagePara.Add(ErrorCode); } this.DBPools["SFCDB"].Return(sfcdb); } catch (Exception ex) { if (sfcdb != null) { this.DBPools["SFCDB"].Return(sfcdb); } StationReturn.Data = ""; StationReturn.Status = StationReturnStatusValue.Fail; StationReturn.MessageCode = "MES00000037"; StationReturn.MessagePara.Add(ex.Message); } }