예제 #1
0
        private void btnForward_Click(object sender, EventArgs e)
        {
            int intSelectedCount = 0;

            foreach (ResponsibleResponderInfo staff in responders)
            {
                if (staff.Choice)
                {
                    intSelectedCount++;
                }
            }
            if (intSelectedCount <= 0)
            {
                MessageBox.Show("至少要选择一个人员!", Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
                grdStaffs.Focus();
                return;
            }

            string strProcedureName = className + ".btnForward_Click";

            WriteLog.Instance.WriteBeginSplitter(strProcedureName);
            try
            {
                int            errCode    = 0;
                string         errText    = "";
                AndonEventInfo andonEvent = cboAndonEvents.SelectedItem as AndonEventInfo;

                foreach (ResponsibleResponderInfo staff in responders)
                {
                    if (staff.Choice)
                    {
                        try
                        {
                            IRAPFVSClient.Instance.usp_AndonEventForwarding(
                                IRAPUser.Instance.CommunityID,
                                andonEvent.EventFactID,
                                andonEvent.OpID,
                                staff.Ordinal,
                                staff.UserCode,
                                IRAPUser.Instance.SysLogID,
                                out errCode,
                                out errText);
                            WriteLog.Instance.Write(string.Format("({0}){1}", errCode, errText), strProcedureName);
                            MessageBox.Show(errText, Text, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                        }
                        catch (Exception error)
                        {
                            MessageBox.Show(error.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }

                btnReturn.PerformClick();
            }
            finally
            {
                WriteLog.Instance.WriteEndSplitter(strProcedureName);
            }
        }
예제 #2
0
        private void CancelAndonEvent(AndonEventInfo andonEvent, string veriCode)
        {
            #region 伟世通要求在撤销的时候,输入撤销原因
            string reason = "";
            if (IRAPUser.Instance.CommunityID == 60006)
            {
                //reason = GetString.Instance.Show(Text, "请输入当前安灯事件撤销原因:", "");
                reason =
                    Dialogs.frmSelectAndonEventCancelReason.Instance.GetReason(
                        IRAPUser.Instance.CommunityID,
                        IRAPUser.Instance.SysLogID);
                if (reason.Trim() == "")
                {
                    IRAPMessageBox.Instance.Show(
                        "撤销原因未选择或撤销原因未配置,不能撤销安灯事件!",
                        Text,
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Error);
                    return;
                }
            }
            #endregion

            string strProcedureName =
                string.Format(
                    "{0}.{1}",
                    className,
                    MethodBase.GetCurrentMethod().Name);

            WriteLog.Instance.WriteBeginSplitter(strProcedureName);
            try
            {
                int    errCode = 0;
                string errText = "";

                #region 保存
                try
                {
                    switch (IRAPUser.Instance.CommunityID)
                    {
                    case 60006:
                        IRAPFVSClient.Instance.usp_AndonEventCancel_Visteon(
                            IRAPUser.Instance.CommunityID,
                            andonEvent.EventFactID,
                            andonEvent.OpID,
                            this.staffInfo.UserCode,
                            veriCode,
                            reason,
                            IRAPUser.Instance.SysLogID,
                            out errCode,
                            out errText);
                        break;

                    default:
                        IRAPFVSClient.Instance.usp_AndonEventCancel(
                            IRAPUser.Instance.CommunityID,
                            andonEvent.EventFactID,
                            andonEvent.OpID,
                            this.staffInfo.UserCode,
                            veriCode,
                            IRAPUser.Instance.SysLogID,
                            out errCode,
                            out errText);
                        break;
                    }

                    WriteLog.Instance.Write(
                        string.Format("({0}){1}", errCode, errText),
                        strProcedureName);
                    if (errCode != 0)
                    {
                        isShowMessageBeforeActive = true;
                        IRAPMessageBox.Instance.Show(
                            errText,
                            Text,
                            MessageBoxButtons.OK,
                            MessageBoxIcon.Error);
                    }
                    else
                    {
                        isShowMessageBeforeActive = true;
                        IRAPMessageBox.Instance.Show(
                            errText,
                            Text,
                            MessageBoxButtons.OK,
                            MessageBoxIcon.Asterisk);
                    }
                }
                catch (Exception error)
                {
                    WriteLog.Instance.Write(error.Message, strProcedureName);
                    isShowMessageBeforeActive = true;
                    IRAPMessageBox.Instance.Show(
                        error.Message,
                        Text,
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Error);
                }
                #endregion
            }
            finally
            {
                WriteLog.Instance.WriteEndSplitter(strProcedureName);
            }
        }
예제 #3
0
        private void btnCancel_Click(object sender, EventArgs e)
        {
            int index = grdvAndonEvents.GetFocusedDataSourceRowIndex();

            int    itemID     = 0;
            string parameters = "";

            if (Tag == null)
            {
                return;
            }
            itemID     = ((MenuInfo)Tag).ItemID;
            parameters = ((MenuInfo)Tag).Parameters;

            #region 要求操作员再次确认撤销该安灯事件
            AndonEventInfo andonEvent = (grdAndonEvents.DataSource as List <AndonEventInfo>)[index];

            if (
                IRAPMessageBox.Instance.Show(
                    string.Format(
                        "是否要撤销{0}?",
                        andonEvent.EventDescription),
                    Text,
                    MessageBoxButtons.YesNo,
                    MessageBoxIcon.Question,
                    MessageBoxDefaultButton.Button2) == DialogResult.No)
            {
                return;
            }
            #endregion

            string strProcedureName =
                string.Format(
                    "{0}.{1}",
                    className,
                    MethodBase.GetCurrentMethod().Name);

            int    errCode  = 0;
            string errText  = "";
            string veriCode = "";

            WriteLog.Instance.WriteBeginSplitter(strProcedureName);
            try
            {
                switch (IRAPUser.Instance.CommunityID)
                {
                case 60006:
                    break;

                default:
                    try
                    {
                        IRAPFVSClient.Instance.usp_AuthorizationRequest(
                            IRAPUser.Instance.CommunityID,
                            andonEvents[index].EventFactID,
                            staffInfo.UserCode,
                            staffInfo.UserName,
                            itemID,
                            Tools.ConvertToInt32(parameters),
                            IRAPUser.Instance.SysLogID,
                            out errCode,
                            out errText);
                        WriteLog.Instance.Write(
                            string.Format("({0}){1}", errCode, errText),
                            strProcedureName);
                        if (errCode != 0)
                        {
                            isShowMessageBeforeActive = true;
                            IRAPMessageBox.Instance.Show(
                                errText,
                                Text,
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Error);
                            return;
                        }
                        else
                        {
                            if (errText.Trim() != "")
                            {
                                isShowMessageBeforeActive = true;
                                IRAPMessageBox.Instance.Show(
                                    errText,
                                    Text,
                                    MessageBoxButtons.OK,
                                    MessageBoxIcon.Asterisk);
                            }
                        }
                    }
                    catch (Exception error)
                    {
                        WriteLog.Instance.Write(
                            error.Message,
                            strProcedureName);
                        WriteLog.Instance.Write(
                            error.StackTrace,
                            strProcedureName);

                        isShowMessageBeforeActive = true;
                        IRAPMessageBox.Instance.Show(
                            error.Message,
                            Text,
                            MessageBoxButtons.OK,
                            MessageBoxIcon.Error);
                        return;
                    }

                    #region 要求用户输入安灯事件撤销授权码
                    veriCode = InputAuthrizeCode.Instance.Execute(errText);
                    #endregion

                    break;
                }

                #region 撤销安灯事件
                CancelAndonEvent(andonEvents[index], veriCode);
                #endregion
            }
            finally
            {
                WriteLog.Instance.WriteEndSplitter(strProcedureName);
            }

            edtIDCardNo.Text = "";
            edtIDCardNo.Focus();

            tcMain.SelectedTabPage = tpIDCardnoRead;
        }
예제 #4
0
        private void cboAndonEvents_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (cboAndonEvents.SelectedIndex < 0)
            {
                responders.Clear();
                grdStaffs.DataSource = null;
                return;
            }

            string strProcedureName =
                string.Format(
                    "{0}.{1}",
                    className,
                    MethodBase.GetCurrentMethod().Name);

            WriteLog.Instance.WriteBeginSplitter(strProcedureName);
            try
            {
                AndonEventInfo andonEvent = cboAndonEvents.SelectedItem as AndonEventInfo;

                int    errCode = 0;
                string errText = "";

                try
                {
                    responders.Clear();
                    IRAPFVSClient.Instance.ufn_GetList_ResponsibleRespondersToInform(
                        IRAPUser.Instance.CommunityID,
                        andonEvent.EventFactID,
                        andonEvent.OpID,
                        IRAPUser.Instance.SysLogID,
                        ref responders,
                        out errCode,
                        out errText);
                    WriteLog.Instance.Write(string.Format("({0}){1}", errCode, errText), strProcedureName);
                    if (errCode == 0)
                    {
                        for (int i = 0; i < responders.Count; i++)
                        {
                            if (responders[i].UserCode == staffInfo.UserCode)
                            {
                                responders.RemoveAt(i);
                                break;
                            }
                        }
                        grdStaffs.DataSource = responders;
                    }
                    else
                    {
                        grdStaffs.DataSource = null;
                        MessageBox.Show(errText, Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                catch (Exception error)
                {
                    grdStaffs.DataSource = null;

                    WriteLog.Instance.Write(error.Message, strProcedureName);
                    MessageBox.Show(error.Message, Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            finally
            {
                WriteLog.Instance.WriteEndSplitter(strProcedureName);
            }
        }
예제 #5
0
        private void SaveAndonEventRespond(AndonEventInfo andonEvent)
        {
            string strProcedureName =
                string.Format(
                    "{0}.{1}",
                    className,
                    MethodBase.GetCurrentMethod().Name);

            WriteLog.Instance.WriteBeginSplitter(strProcedureName);
            try
            {
                int    errCode    = 0;
                string errText    = "";
                long   transactNo = 0;
                long   factID     = 0;

                #region 获取交易号和事实编号
                try
                {
                    factID = IRAPUTSClient.Instance.mfn_GetFactID(
                        IRAPUser.Instance.CommunityID,
                        1,
                        IRAPUser.Instance.SysLogID,
                        ((MenuInfo)this.Tag).OpNode);
                }
                catch (Exception error)
                {
                    WriteLog.Instance.Write(error.Message, strProcedureName);

                    isShowMessageBeforeActive = true;
                    IRAPMessageBox.Instance.Show(
                        error.Message,
                        "系统信息",
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Error);

                    return;
                }

                try
                {
                    transactNo = IRAPUTSClient.Instance.mfn_GetTransactNo(
                        IRAPUser.Instance.CommunityID,
                        1,
                        IRAPUser.Instance.SysLogID,
                        ((MenuInfo)this.Tag).OpNode);
                }
                catch (Exception error)
                {
                    WriteLog.Instance.Write(error.Message, strProcedureName);

                    isShowMessageBeforeActive = true;
                    IRAPMessageBox.Instance.Show(
                        error.Message,
                        "系统信息",
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Error);

                    return;
                }
                #endregion

                #region 保存
                try
                {
                    IRAPFVSClient.Instance.usp_SaveFact_AndonEventOnSiteRespond(
                        IRAPUser.Instance.CommunityID,
                        transactNo,
                        factID,
                        andonEvent.EventFactID,
                        andonEvent.OpID,
                        this.staffInfo.UserCode,
                        IRAPUser.Instance.SysLogID,
                        out errCode,
                        out errText);
                    WriteLog.Instance.Write(string.Format("({0}){1}", errCode, errText), strProcedureName);

                    isShowMessageBeforeActive = true;
                    if (errCode != 0)
                    {
                        IRAPMessageBox.Instance.Show(
                            errText,
                            Text,
                            MessageBoxButtons.OK,
                            MessageBoxIcon.Error);
                    }
                    else
                    {
                        IRAPMessageBox.Instance.Show(
                            errText,
                            Text,
                            MessageBoxButtons.OK,
                            MessageBoxIcon.Asterisk);
                    }
                }
                catch (Exception error)
                {
                    WriteLog.Instance.Write(error.Message, strProcedureName);

                    isShowMessageBeforeActive = true;
                    IRAPMessageBox.Instance.Show(
                        error.Message,
                        Text,
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Error);
                }
                #endregion
            }
            finally
            {
                WriteLog.Instance.WriteEndSplitter(strProcedureName);
            }
        }