/// <summary> /// 接班按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void tsbJieBan_Click(object sender, EventArgs e) { Flag = 2; if (lupFacRoom.Text == "") { MessageService.ShowMessage("请选择工厂名称?", "${res:Global.SystemInfo}"); return; } if (lupGongXu.Text == "") { MessageService.ShowMessage("请选择工序名称?", "${res:Global.SystemInfo}"); return; } OperationHandover _operationHandover = new OperationHandover(); factRoom = this.lupFacRoom.EditValue.ToString(); operation = this.lupGongXu.EditValue.ToString(); shift = this.lupShift.EditValue.ToString(); receiveoperator = this.txtJobNumber.EditValue.ToString(); sendoperator = this.txtJobNumber.EditValue.ToString(); string _lupShift = lupShift.Text.Trim(); string _lupGongXu = lupGongXu.Text.Trim(); string facRoom = lupFacRoom.Text; string _lupFacRoomKey = lupFacRoom.Properties.GetKeyValueByDisplayText(facRoom).ToString(); //根据当前班次和当前日期获取上一班次和上一班的交班日期。根据上一班次、工厂车间、工序名称、上一班的交班日期获取上一班的交班记录 DataSet dsGetShangBanShift = _operationHandover.GetShangBanShift(_lupShift, _lupGongXu, _lupFacRoomKey); if (dsGetShangBanShift.Tables[0].Rows.Count > 0) { if (dsGetShangBanShift.Tables[0].Rows[0][0].ToString() == "1") {//如果存在上一班交班记录且交班记录状态为已交班,打开“工序交接班清单”界面 foreach (IViewContent viewContent in WorkbenchSingleton.Workbench.ViewContentCollection) { //if (viewContent.TitleName == StringParser.Parse("${res:FanHai.Hemera.Addins.FMM.WorkOrderManagement.Name}")) if (viewContent.TitleName == "Default Title") { viewContent.WorkbenchWindow.SelectWindow(); return; } } //显示材料耗用清单的用户控件 WorkbenchSingleton.Workbench.ShowView(new HandOverTheWatchListContent()); } else if (dsGetShangBanShift.Tables[0].Rows[0][0].ToString() == "2") { MessageService.ShowMessage("已进行接班,不能再次接班。", "${res:Global.SystemInfo}"); } else if (dsGetShangBanShift.Tables[0].Rows[0][0].ToString() == "0") {//如果存在上一班交班记录且交班记录状态为未交班,给出提示上一班没有确认交班,不能进行接班。 MessageService.ShowMessage("上一班没有确认交班,不能进行接班。", "${res:Global.SystemInfo}"); } } else { MessageService.ShowMessage("上一班没有交班记录,不能进行接班。", "${res:Global.SystemInfo}"); } }
/// <summary> /// 交班按钮 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void tsbRefresMaterial_Click(object sender, EventArgs e) { Flag = 1; if (lupFacRoom.Text == "") { MessageService.ShowMessage("请选择工厂名称?", "${res:Global.SystemInfo}"); return; } if (lupGongXu.Text == "") { MessageService.ShowMessage("请选择工序名称?", "${res:Global.SystemInfo}"); return; } factRoom = this.lupFacRoom.EditValue.ToString(); operation = this.lupGongXu.EditValue.ToString(); shift = this.lupShift.EditValue.ToString(); sendoperator = this.txtJobNumber.EditValue.ToString(); OperationHandover _operationHandover = new OperationHandover(); string _lupShift = lupShift.Text.Trim(); string _lupGongXu = lupGongXu.Text.Trim(); string facRoom = lupFacRoom.Text; string _lupFacRoomKey = lupFacRoom.Properties.GetKeyValueByDisplayText(facRoom).ToString(); //根据当前班次和当前日期获取上一班次和上一班的交班日期。根据上一班次、工厂车间、工序名称、上一班的交班日期获取上一班的交班记录 DataSet dsGetShangBanShift = _operationHandover.GetShangBanShift(_lupShift, _lupGongXu, _lupFacRoomKey); if (dsGetShangBanShift.Tables[0].Rows.Count > 0) { if (dsGetShangBanShift.Tables[0].Rows[0][0].ToString() != "2") {//如果上一班次的工序交接班记录状态不为”2:已接班“,则提示用户”不能交班,您还没有进行接班操作,是否执行接班操作?" //MessageService.ShowMessage("不能交班,您还没有进行接班操作,是否执行接班操作?", "${res:Global.SystemInfo}"); if (MessageBox.Show(StringParser.Parse("不能交班,您还没有进行接班操作,是否执行接班操作?"), StringParser.Parse("${res:Global.SystemInfo}"), MessageBoxButtons.OKCancel) == DialogResult.OK) { tsbJieBan_Click(sender, e); } } else { foreach (IViewContent viewContent in WorkbenchSingleton.Workbench.ViewContentCollection) { //if (viewContent.TitleName == StringParser.Parse("${res:FanHai.Hemera.Addins.FMM.WorkOrderManagement.Name}")) if (viewContent.TitleName == "Default Title") { viewContent.WorkbenchWindow.SelectWindow(); return; } } //显示材料耗用清单的用户控件 WorkbenchSingleton.Workbench.ShowView(new HandOverTheWatchListContent()); } } else { DataSet dsGetShangBan = _operationHandover.GetShangBan(_lupGongXu, _lupFacRoomKey); if (dsGetShangBan.Tables[0].Rows.Count > 0) {//如果上一班次的工序交接班记录不存在,继续根据工厂车间、工序名称判断是否存在工序交接班记录 MessageService.ShowMessage("上一班次未执行交接班操作,请补齐交接班记录", "${res:Global.SystemInfo}"); } else { foreach (IViewContent viewContent in WorkbenchSingleton.Workbench.ViewContentCollection) { //if (viewContent.TitleName == StringParser.Parse("${res:FanHai.Hemera.Addins.FMM.WorkOrderManagement.Name}")) if (viewContent.TitleName == "Default Title") { viewContent.WorkbenchWindow.SelectWindow(); return; } } //显示材料耗用清单的用户控件 WorkbenchSingleton.Workbench.ShowView(new HandOverTheWatchListContent()); } } }