private void GetShiftCodeMessageByBigSSCode() { //获取当前产线的所有班次 WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] shiftCodeList = watchPanelFacade.QueryShiftCode(this.BigLine, string.Empty); //end if (shiftCodeList != null && shiftCodeList.Length > 0) { foreach (Shift obj in shiftCodeList) { _ShiftCodeList.Add(obj); } } }
//获取当前产线的所有班次 private ArrayList GetShiftCodeList(string bigSSCode) { ArrayList shiftCodeList = new ArrayList(); WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] shiftCode = watchPanelFacade.QueryShiftCode(bigSSCode, string.Empty); if (shiftCode != null && shiftCode.Length > 0) { foreach (Shift obj in shiftCode) { shiftCodeList.Add(obj); } } return(shiftCodeList); }
//产线代码 private void ucProductLine_Load(object sender, EventArgs e) { this.ucProductLine.Clear(); if (_watchFacade == null) { _watchFacade = new WatchPanelFacade(_dataProvider); } this.ucProductLine.AddItem("", ""); object[] ssCodeList = _watchFacade.GetStepSequenceBySeg(this.ucWorkShopBySSCode.SelectedItemValue.ToString().Trim()); if (ssCodeList != null && ssCodeList.Length != 0) { foreach (StepSequence sscode in ssCodeList) { this.ucProductLine.AddItem(sscode.StepSequenceCode + "-" + sscode.StepSequenceDescription, sscode.StepSequenceCode); } } this.ucProductLine.SelectedIndex = 0; }
//车间代码 private void ucWorkShopBySSCode_Load(object sender, EventArgs e) { this.ucWorkShopBySSCode.Clear(); this.ucWorkShopBySSCode.AddItem("", ""); if (_watchFacade == null) { _watchFacade = new WatchPanelFacade(_dataProvider); } object[] segmentList = _watchFacade.GetAllWorkShop(); if (segmentList != null && segmentList.Length != 0) { foreach (Segment seg in segmentList) { ucWorkShopBySSCode.AddItem(seg.SegmentCode + "-" + seg.SegmentDescription, seg.SegmentCode); } } this.ucWorkShopBySSCode.SelectedIndex = 0; }
//数据的Load private void AutoTimer_Tick(object sender, EventArgs e) { try { _WatchPanelFacade = new WatchPanelFacade(this.DataProvider); if (_IsShowFacSurvey && _UserControlID == 1) { this.GetFacSurevyFromXML(); FacMessageControl control = (FacMessageControl)this.mainLayout.GetControlFromPosition(0, 0); control.RTF = FacConfigMessage.CommonInfo; control.ValueRefresh(); } if (_IsShowFacWatchPanel && _UserControlID == 2) { FacProductMessageControl FacProductMessageControl = (FacProductMessageControl)this.mainLayout.GetControlFromPosition(0, 0); SetFacProductMessageControlValue(FacProductMessageControl); FacProductMessageControl.Dock = DockStyle.Fill; } if (_IsShowFacQtyAndRate && _UserControlID == 3) { TChartControl tChartControl = (TChartControl)mainLayout.GetControlFromPosition(0, 0); SetFacTChartControlValue(tChartControl, false); tChartControl.Refresh(); } if (_IsShowLineSurvey && _UserControlID == 4) { string[] bigsscode = _BigLineList.Split(','); SSCodeProductMessageControl tChartControl = (SSCodeProductMessageControl)mainLayout.GetControlFromPosition(0, 0); if (_LineWatchPaneControlID == bigsscode.Length) { SetSSCodeProductMessageControlValue(tChartControl, bigsscode[_LineWatchPaneControlID - 1].ToString()); } } this.mainLayout.Refresh(); } catch { } }
//产线看板Grid的数据源 private object[] GetProductGridDataSource(string bigSSCode) { WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); string tpCode = string.Empty; TimePeriod timePeriod = (TimePeriod)watchPanelFacade.GettimePeriod(bigSSCode); if (timePeriod != null) { tpCode = timePeriod.TimePeriodCode; } object[] productDataList = null; if (watchPanelFacade.CheckBigLineCodeIsHaveSSCode(bigSSCode)) { productDataList = watchPanelFacade.QueryProductData(bigSSCode, GetShiftDay(bigSSCode), GetShiftCodeList(bigSSCode), tpCode); } return(productDataList); }
private void DoQuery() { WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] equipmentList = watchPanelFacade.GetAllEquipment(); if (equipmentList != null) { DataRow rowNew; foreach (Equipment equipment in equipmentList) { rowNew = this.m_EQPID.NewRow(); rowNew["Checked"] = false; rowNew["EQPID"] = equipment.EqpId; rowNew["EQPDesc"] = equipment.EqpDesc; this.m_EQPID.Rows.Add(rowNew); } this.m_EQPID.AcceptChanges(); } }
private void DoQuery() { WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] bigLineList = watchPanelFacade.GetAllStepSequence(); if (bigLineList != null) { DataRow rowNew; foreach (StepSequence ss in bigLineList) { rowNew = this.m_BigLine.NewRow(); rowNew["Checked"] = false; rowNew["SSCode"] = ss.StepSequenceCode; rowNew["SSCodeDesc"] = ss.StepSequenceDescription; this.m_BigLine.Rows.Add(rowNew); } this.m_BigLine.AcceptChanges(); } }
private string CheckSSCode(string selectedSSCodeList) { string returnValue = string.Empty; try { WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] ssCodeList = watchPanelFacade.GetAllStepSequence(); string[] textSSCodeList = selectedSSCodeList.ToUpper().Trim().Split(','); for (int i = 0; i < textSSCodeList.Length; i++) { for (int j = 0; j < ssCodeList.Length; j++) { if (((StepSequence)ssCodeList[j]).StepSequenceCode.Trim().ToUpper() == textSSCodeList[i].Trim().ToUpper()) { break; } if (j == ssCodeList.Length - 1) { returnValue += textSSCodeList[i].Trim().ToUpper() + ","; } } } } catch (Exception ex) { if (ex.Message == "$Error_Command_Execute") { MessageBox.Show("数据库连接错误,请检查配置!"); } } if (returnValue.Length > 0) { returnValue = returnValue.Substring(0, returnValue.Length - 1); } return(returnValue); }
//车间概况电子看板设定 private void SetFacProductMessageControlValue(FacProductMessageControl facProductMessageControl) { WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] outPut = watchPanelFacade.QueryOutPutQtyGroupByItemType(_BigLineList, _CuerrtDay, false); int finshItemQty = 0; int semimanuFactureQty = 0; if (outPut != null) { foreach (watchPanelProductDate obj in outPut) { if (obj.Mtype == ItemType.ITEMTYPE_FINISHEDPRODUCT) { finshItemQty = obj.MonthProductQty; } if (obj.Mtype == ItemType.ITEMTYPE_SEMIMANUFACTURE) { semimanuFactureQty = obj.MonthProductQty; } } } object[] gridDataSource = _WatchPanelFacade.QueryProudctDataByDateAndSSCodeList(_CuerrtDay, _BigLineList); object[] barJoinDataSource = _WatchPanelFacade.QueryOQCLotPassRate(_CuerrtDay, _BigLineList); object[] peiDataSource = _WatchPanelFacade.QueryErrorCasueTopFive(_CuerrtDay, _BigLineList); facProductMessageControl.FinshItemQty = finshItemQty; facProductMessageControl.SemimanuFactureQty = semimanuFactureQty; facProductMessageControl.BigLineListInProduct = GetBigLineListInProduct(true); facProductMessageControl.BigLineListOutProduct = GetBigLineListInProduct(false); facProductMessageControl.GridDataSource = gridDataSource; facProductMessageControl.BarJoinDataSource = barJoinDataSource; facProductMessageControl.PeiDataSource = peiDataSource; //Added By Nettie Chen 2009/09/23 facProductMessageControl.IsShowFinishedProduct = _IsShowFinishedProduct; facProductMessageControl.IsShowSemimanuProduct = _IsShowSemimanuProduct; //End Added facProductMessageControl.InitControlsValue(); }
//异常信息 private string GetExceptionMessageList(string bigSSCode) { string exceptionMessageList = string.Empty; WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] exceptionList = watchPanelFacade.QueryExceptionList(bigSSCode, GetShiftDay(bigSSCode)); if (exceptionList != null && exceptionList.Length > 0) { string cuerrtExecptionMessage = string.Empty; int showNumber = 1; foreach (ExceptionEventWithDescription obj in exceptionList) { cuerrtExecptionMessage = obj.ItemCode + "-" + obj.Description + "-" + obj.Memo + "(" + FormatHelper.ToTimeString(obj.BeginTime, ":") + "-" + FormatHelper.ToTimeString(obj.EndTime, ":") + ")" + "\r\n"; exceptionMessageList += showNumber.ToString() + ": " + cuerrtExecptionMessage; showNumber += 1; } } return(exceptionMessageList); }
//获取该大线的所有班组 private string GetCrewCodeList(string bigSSCode) { string crewList = string.Empty; WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] crew = watchPanelFacade.QueryCrewList(bigSSCode, GetShiftDay(bigSSCode)); if (crew != null) { foreach (Line2Crew obj in crew) { crewList += "," + obj.CrewCode; } } if (crewList.Length > 0) { crewList = crewList.Substring(1); } return(crewList); }
private void ShiftDayTimer_Tick(object sender, EventArgs e) { int newShiftDay = 0; string xmlPath = AppDomain.CurrentDomain.BaseDirectory + "WatchConfig.xml"; XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(xmlPath); XmlNode xmlNode1 = xmlDoc.SelectSingleNode("//LineTypeConfig[@ConfigName='TimerConfig']"); if (xmlNode1 != null) { XmlNodeList xmlNodeList = xmlNode1.ChildNodes; foreach (XmlNode xn in xmlNodeList) { XmlElement xe = (XmlElement)xn; if (xe.Name == "CuerrtDay") { if (xe.InnerText == null || xe.InnerText == string.Empty) { newShiftDay = WatchPanelFacade.GetNowDBDateTime(this.DataProvider).DBDate; } else { newShiftDay = Convert.ToInt32(xe.InnerText); } } } } if (newShiftDay == 0) { newShiftDay = WatchPanelFacade.GetNowDBDateTime(this.DataProvider).DBDate; } //将新值同步到全局变量中 _CuerrtDay = newShiftDay; }
//刷新异常信息 private void RefreshExceptionMessage() { WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); object[] exceptionList = watchPanelFacade.QueryExceptionList(this.BigLine, this.NowDBDate); if (exceptionList != null && exceptionList.Length > 0) { string exceptionMessageList = string.Empty; string cuerrtExecptionMessage = string.Empty; this.userControlExceptionMessage.ClearMessage(); int showNumber = 1; foreach (ExceptionEventWithDescription obj in exceptionList) { cuerrtExecptionMessage = obj.ItemCode + "-" + obj.Description + "-" + obj.Memo + "(" + FormatHelper.ToTimeString(obj.BeginTime, ":") + "-" + FormatHelper.ToTimeString(obj.EndTime, ":") + ")" + "\r\n"; exceptionMessageList += showNumber.ToString() + ": " + cuerrtExecptionMessage; showNumber += 1; } this.userControlExceptionMessage.ExpectionMessage = exceptionMessageList; this.userControlExceptionMessage.Refresh(); } }
//设定产线看板 private void SetSSCodeProductMessageControlValue(SSCodeProductMessageControl ssCodeProductMessageControl, string bigSSCode) { WatchPanelFacade watchPanelFacade = new WatchPanelFacade(this.DataProvider); int PlanQty = watchPanelFacade.GetWorkPlanQty(bigSSCode, GetShiftDay(bigSSCode)); int bigSSCodeOutPutQty = watchPanelFacade.GetBigSSCodeOutPutQty(bigSSCode, GetShiftDay(bigSSCode)); int onPostManCount = watchPanelFacade.GetOnPostManCount(bigSSCode, GetShiftDay(bigSSCode)); ssCodeProductMessageControl.BigLineCode = bigSSCode; ssCodeProductMessageControl.ExceptionMessageList = GetExceptionMessageList(bigSSCode); ssCodeProductMessageControl.HeaderLineMessage = bigSSCode; ssCodeProductMessageControl.CrewCodeList = GetCrewCodeList(bigSSCode); ssCodeProductMessageControl.PlanQty = PlanQty; ssCodeProductMessageControl.OnPostManCount = onPostManCount; ssCodeProductMessageControl.BigSSCodeOutPutQty = bigSSCodeOutPutQty; ssCodeProductMessageControl.ShiftCodeList = GetShiftCodeList(bigSSCode); ssCodeProductMessageControl.ProductGridDataSource = GetProductGridDataSource(bigSSCode); ssCodeProductMessageControl.RateLineTChartDataSource = GetRateLineTChartDataSource(bigSSCode); ssCodeProductMessageControl.BarJoinTChartDataSource = GetBarJoinTChartDataSource(bigSSCode); ssCodeProductMessageControl.SetControlsValue(); }
//初始化常量 private void InitValues() { string xmlPath = AppDomain.CurrentDomain.BaseDirectory + "WatchConfig.xml"; XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(xmlPath); XmlNode xmlNode = xmlDoc.SelectSingleNode("//TypeConfig[@ConfigName='" + _configTypeName + "']"); if (xmlNode != null) { XmlNodeList xmlNodeList = xmlNode.ChildNodes; foreach (XmlNode xn in xmlNodeList) { XmlElement xe = (XmlElement)xn; if (xe.Name == "FacMessage") { FacConfigMessage.CommonInfo = xe.InnerText.Trim(); } if (xe.Name == "StandbyContent") { _standbyContent = Convert.ToBoolean(xe.InnerText.Trim()); } if (xe.Name.Equals("ComprehensivePanel")) { _comprehensivePanel = Convert.ToBoolean(xe.InnerText.Trim()); } if (xe.Name.Equals("PanelDetails")) { _panelDetails = Convert.ToBoolean(xe.InnerText.Trim()); } if (xe.Name.Equals("AutoRefresh")) { if (!string.IsNullOrEmpty(xe.InnerText)) { _autoRefresh = Convert.ToDouble(xe.InnerText.Trim()); } } if (xe.Name.Equals("ScreenRefresh")) { if (!string.IsNullOrEmpty(xe.InnerText)) { _screenRefresh = Convert.ToDouble(xe.InnerText.Trim()); } } if (xe.Name.Equals("MaxLineCount")) { if (!string.IsNullOrEmpty(xe.InnerText)) { _maxLineCount = Convert.ToDouble(xe.InnerText.Trim()); } } if (xe.Name.Equals("PageScrolling")) { if (!string.IsNullOrEmpty(xe.InnerText)) { _pageScrolling = Convert.ToDouble(xe.InnerText.Trim()); } } if (xe.Name.Equals("DividedHoursByDay")) { _dividedHoursByDay = Convert.ToBoolean(xe.InnerText.Trim()); } if (xe.Name.Equals("DividedHoursByMonth")) { _dividedHoursByMonth = Convert.ToBoolean(xe.InnerText.Trim()); } if (xe.Name.Equals("DividedHoursByWeek")) { _dividedHoursByWeek = Convert.ToBoolean(xe.InnerText.Trim()); } } } //配置文件当前日期 XmlNode xmlNode1 = xmlDoc.SelectSingleNode("//LineTypeConfig[@ConfigName='TimerConfig']"); if (xmlNode1 != null) { XmlNodeList xmlNodeList = xmlNode1.ChildNodes; foreach (XmlNode xn in xmlNodeList) { XmlElement xe = (XmlElement)xn; if (xe.Name == "CuerrtDay") { if (xe.InnerText == null || xe.InnerText == string.Empty) { _CuerrtDay = WatchPanelFacade.GetNowDBDateTime(this.DataProvider).DBDate; } else { _CuerrtDay = Convert.ToInt32(xe.InnerText); } } } } if (_CuerrtDay == 0) { _CuerrtDay = WatchPanelFacade.GetNowDBDateTime(this.DataProvider).DBDate; } //加载车间下的所有产线,只在车间看板使用 if (string.IsNullOrEmpty(_ssCode)) { _ssCodeListInWorkShop = m_WatchPanelFacade.GetStepSequenceBySeg(_workShopCode); } }