private void ucButtonAdd_Click(object sender, System.EventArgs e) { foreach (ListViewItem addedItem in this.listViewSelect.SelectedItems) { string errorCodeGroup = this.ucLabelComboxErrorGroup.SelectedItemValue.ToString(); string errorCode = ((ErrorCodeA)addedItem.Tag).ErrorCode; bool found = false; foreach (ListViewItem item in this.listViewSelected.Items) { if (((TSErrorCode)item.Tag).ErrorCodeGroup == errorCodeGroup && ((TSErrorCode)item.Tag).ErrorCode == errorCode) { found = true; break; } } TSErrorCode tsErrorCode = _TSFacade.CreateNewTSErrorCode(); tsErrorCode.TSId = CurrentTS.TSId; tsErrorCode.ErrorCodeGroup = errorCodeGroup; tsErrorCode.ErrorCode = errorCode; tsErrorCode.MaintainUser = ApplicationService.Current().UserCode; ListViewItem newItem = new ListViewItem(string.Format("{0}:{1}", tsErrorCode.ErrorCodeGroup, tsErrorCode.ErrorCode)); newItem.Tag = tsErrorCode; if (!found) { this.listViewSelected.Items.Add(newItem); _ListHelper.Add(tsErrorCode); } } }
//add by kathy @20130830,获取不良代码组、不良代码、不良数量 public static string ParseECGECQty(object[] errorInfo, string actType) { string strReturn = String.Empty; if (errorInfo == null) { return(strReturn); } for (int i = 0; i < errorInfo.Length; i++) { if (actType == ActionType.DataCollectAction_NG || actType == ActionType.DataCollectAction_OutLineNG) { TSErrorCode tsLoc = ((TSErrorCode)errorInfo[i]); strReturn += tsLoc.ErrorCodeGroup + ":" + tsLoc.ErrorCode + ":" + tsLoc.ErrorQty + ";"; } } return(strReturn); }
private void FCollectErrorCode_Load(object sender, EventArgs e) { UserControl.UIStyleBuilder.FormUI(this); //补录不良时默认不带出不良代码 if (!_isResActive) { this.LoadInitData(); } if (this.IsSelectErrorCode && Old_ErrorCodes != null && Old_ErrorCodes.Length > 0) { TSErrorCode2Location[] errorInfo = new TSErrorCode2Location[Old_ErrorCodes.Length]; for (int i = 0; i < Old_ErrorCodes.Length; i++) { TSErrorCode ec = Old_ErrorCodes[i] as TSErrorCode; errorInfo[i] = new BenQGuru.eMES.Domain.TS.TSErrorCode2Location(); errorInfo[i].ErrorCode = ec.ErrorCode; errorInfo[i].ErrorCodeGroup = ec.ErrorCodeGroup; if (ec.EAttribute1 != "" && ec.EAttribute1 != null) { string[] strLocPoint = ec.EAttribute1.Split('|'); errorInfo[i].ErrorLocation = strLocPoint[0]; // Marked by Scott //if (strLocPoint.Length > 1 && strLocPoint[1] != "") // errorInfo[i].Points = int.Parse(strLocPoint[1]); } errorInfo[i].AB = ItemLocationSide.ItemLocationSide_AB; } ucErrorCodeSelect21.AddSelectedErrorCodes(errorInfo); } if (this.IsSelectErrorCode) { txtResource.Visible = false; } }
/// <summary> /// 采集KeyPart不良 /// </summary> public Messages CollectKeyPartNG(string keyPartNo, TSErrorCode2Location[] errorInfo, string userCode, string resourceCode) { Messages msg = new Messages(); string strSql = "SELECT * FROM tblOnWIPItem WHERE MCard='" + keyPartNo + "' ORDER BY MDate DESC,MTime DESC "; object[] objs = this._domainDataProvider.CustomQuery(typeof(BenQGuru.eMES.Domain.DataCollect.OnWIPItem), new SQLCondition(strSql)); if (objs == null || objs.Length == 0) { msg.Add(new Message(MessageType.Error, "$KeyPart_NG_ErrorKeyPart")); return(msg); } BenQGuru.eMES.Domain.DataCollect.OnWIPItem item = (BenQGuru.eMES.Domain.DataCollect.OnWIPItem)objs[0]; TS.TSFacade tsFacade = new BenQGuru.eMES.TS.TSFacade(this.DataProvider); BenQGuru.eMES.Domain.TS.TS itemTs = new BenQGuru.eMES.Domain.TS.TS(); object objTs = tsFacade.GetCardLastTSRecord(keyPartNo); if (objTs != null) { Domain.TS.TS ts = (Domain.TS.TS)objTs; if (ts.TSStatus == TSStatus.TSStatus_New || ts.TSStatus == TSStatus.TSStatus_Confirm || ts.TSStatus == TSStatus.TSStatus_TS) { msg.Add(new Message(MessageType.Error, "$KeyPart_NG_In_TS")); return(msg); } } #region ItemTS DBDateTime dbDateTime = FormatHelper.GetNowDBDateTime(DataProvider); itemTs.MOCode = item.MOCode; itemTs.RunningCard = keyPartNo; itemTs.RunningCardSequence = tsFacade.GetUniqueTSRunningCardSequence(keyPartNo); itemTs.TSId = FormatHelper.GetUniqueID(item.MOCode, itemTs.RunningCard, itemTs.RunningCardSequence.ToString()); itemTs.TranslateCard = item.RunningCard; itemTs.TranslateCardSequence = item.RunningCardSequence; itemTs.CardType = CardType.CardType_Part; itemTs.TSStatus = TSStatus.TSStatus_New; itemTs.MaintainUser = userCode; itemTs.MaintainDate = dbDateTime.DBDate; itemTs.MaintainTime = dbDateTime.DBTime; itemTs.TSDate = itemTs.ConfirmDate; itemTs.TSTime = itemTs.ConfirmTime; itemTs.FromInputType = BenQGuru.eMES.TS.TSFacade.TSSource_TS; itemTs.FromUser = userCode; itemTs.FromDate = itemTs.MaintainDate; itemTs.FormTime = itemTs.MaintainTime; itemTs.FromOPCode = "TS"; itemTs.FromResourceCode = resourceCode; itemTs.FromRouteCode = item.RouteCode; itemTs.FromSegmentCode = item.SegmentCode; itemTs.FromShiftCode = item.ShiftCode; itemTs.FromShiftDay = item.MaintainDate; itemTs.FromShiftTypeCode = item.ShiftTypeCode; itemTs.FromStepSequenceCode = item.StepSequenceCode; itemTs.FromTimePeriodCode = item.TimePeriodCode; itemTs.ItemCode = item.MItemCode; itemTs.ModelCode = item.ModelCode; itemTs.TransactionStatus = TransactionStatus.TransactionStatus_NO; itemTs.TSDate = 0; itemTs.TSTime = 0; itemTs.MOSeq = item.MOSeq; itemTs.TSTimes = 1; tsFacade.AddTS(itemTs); #endregion #region Error Info for (int i = 0; errorInfo != null && i < errorInfo.Length; i++) { TSErrorCode tsErrorCode = new TSErrorCode(); TSErrorCode2Location tsErrorCode2Location = new TSErrorCode2Location(); int j = tsFacade.QueryTSErrorCodeCount(((TSErrorCode2Location)errorInfo[i]).ErrorCodeGroup, ((TSErrorCode2Location)errorInfo[i]).ErrorCode, itemTs.TSId); if (j == 0) { tsErrorCode.ErrorCode = ((TSErrorCode2Location)errorInfo[i]).ErrorCode; tsErrorCode.ErrorCodeGroup = ((TSErrorCode2Location)errorInfo[i]).ErrorCodeGroup; tsErrorCode.ItemCode = itemTs.ItemCode; tsErrorCode.MaintainDate = itemTs.MaintainDate; tsErrorCode.MaintainTime = itemTs.MaintainTime; tsErrorCode.MaintainUser = itemTs.MaintainUser; tsErrorCode.MOCode = itemTs.MOCode; tsErrorCode.ModelCode = itemTs.ModelCode; tsErrorCode.RunningCard = itemTs.RunningCard; tsErrorCode.RunningCardSequence = itemTs.RunningCardSequence; tsErrorCode.TSId = itemTs.TSId; tsErrorCode.MOSeq = itemTs.MOSeq; tsFacade.AddTSErrorCode(tsErrorCode); } if (((TSErrorCode2Location)errorInfo[i]).ErrorLocation.Trim() != string.Empty) { tsErrorCode2Location.AB = ((TSErrorCode2Location)errorInfo[i]).AB; tsErrorCode2Location.ErrorLocation = ((TSErrorCode2Location)errorInfo[i]).ErrorLocation; tsErrorCode2Location.ErrorCode = ((TSErrorCode2Location)errorInfo[i]).ErrorCode; tsErrorCode2Location.ErrorCodeGroup = ((TSErrorCode2Location)errorInfo[i]).ErrorCodeGroup; tsErrorCode2Location.ItemCode = tsErrorCode.ItemCode; tsErrorCode2Location.MaintainDate = tsErrorCode.MaintainDate; tsErrorCode2Location.MaintainTime = tsErrorCode.MaintainTime; tsErrorCode2Location.MaintainUser = tsErrorCode.MaintainUser; tsErrorCode2Location.MEMO = ""; tsErrorCode2Location.MOCode = tsErrorCode.MOCode; tsErrorCode2Location.ModelCode = tsErrorCode.ModelCode; tsErrorCode2Location.RunningCard = tsErrorCode.RunningCard; tsErrorCode2Location.RunningCardSequence = tsErrorCode.RunningCardSequence; if (tsErrorCode2Location.ErrorLocation.IndexOf(".") < 0) { tsErrorCode2Location.SubErrorLocation = tsErrorCode2Location.ErrorLocation; } else { tsErrorCode2Location.SubErrorLocation = tsErrorCode2Location.ErrorLocation.Substring( 0, tsErrorCode2Location.ErrorLocation.IndexOf(".")); } tsErrorCode2Location.TSId = tsErrorCode.TSId; tsErrorCode2Location.ShiftDay = tsErrorCode2Location.MaintainDate; tsErrorCode2Location.MOSeq = tsErrorCode.MOSeq; tsFacade.AddTSErrorCode2Location(tsErrorCode2Location); } } #endregion return(msg); }