Exemplo n.º 1
0
        private void ucCasting_Load(object sender, EventArgs e)
        {
            SmeltBatchProductionInfo data = GetWorkUnitProductionInfo();

            if (data != null)
            {
                prdtStatus = ProductionStatus.Busy;

                edtOperator.Text =
                    string.Format(
                        "[{0}]{1}",
                        data.OperatorCode,
                        data.OperatorName);

                edtProductDate.DateTime = data.BatchStartDate;

                lblBatchNo.Text = data.BatchNumber;
            }
            else
            {
                prdtStatus = ProductionStatus.Idle;

                edtProductDate.DateTime = DateTime.Now;
            }

            RefreshForm();
        }
Exemplo n.º 2
0
        private SmeltBatchProductionInfo GetWorkUnitProductionInfo()
        {
            string strProcedureName =
                string.Format(
                    "{0}.{1}",
                    className,
                    MethodBase.GetCurrentMethod().Name);

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

                IRAPMESSmeltClient.Instance.ufn_GetInfo_SmeltBatchProduct(
                    IRAPUser.Instance.CommunityID,
                    station.T107LeafID,
                    station.T216LeafID,
                    station.T133LeafID,
                    IRAPUser.Instance.SysLogID,
                    ref data,
                    out errCode,
                    out errText);
                WriteLog.Instance.Write(
                    string.Format("({0}){1}", errCode, errText),
                    strProcedureName);
                if (errCode != 0)
                {
                    XtraMessageBox.Show(
                        errText,
                        caption,
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Error);
                    return(null);
                }
                else
                {
                    if (data.InProduction == 0)
                    {
                        return(null);
                    }
                    else
                    {
                        return(data);
                    }
                }
            }
            finally
            {
                WriteLog.Instance.WriteEndSplitter(strProcedureName);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// 获取指定设备的当前生产状态
        /// </summary>
        private void GetProductingInfo(
            int t107LeafID,
            int t216LeafID,
            int t133LeafID)
        {
            string strProcedureName =
                string.Format(
                    "{0}.{1}",
                    className,
                    MethodBase.GetCurrentMethod().Name);

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

                infoSmeltProduct = null;
                IRAPMESBatchClient.Instance.ufn_GetInfo_SmeltBatchProduct(
                    IRAPUser.Instance.CommunityID,
                    t107LeafID,
                    t216LeafID,
                    t133LeafID,
                    IRAPUser.Instance.SysLogID,
                    ref infoSmeltProduct,
                    out errCode,
                    out errText);
                WriteLog.Instance.Write(
                    string.Format("({0}){1}", errCode, errText),
                    strProcedureName);
                if (errCode != 0)
                {
                    XtraMessageBox.Show(
                        errText,
                        caption,
                        MessageBoxButtons.OK,
                        MessageBoxIcon.Error);
                }
            }
            finally
            {
                WriteLog.Instance.WriteEndSplitter(strProcedureName);
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// 获取指定工序、工位和设备的当前生产状态
        /// </summary>
        /// <param name="communityID">社区标识</param>
        /// <param name="t107LeafID">工位叶标识</param>
        /// <param name="t216LeafID">工序叶标识</param>
        /// <param name="t133LeafID">设备叶标识</param>
        /// <param name="sysLogID">系统登录标识</param>
        public void ufn_GetInfo_SmeltBatchProduct(
            int communityID,
            int t107LeafID,
            int t216LeafID,
            int t133LeafID,
            long sysLogID,
            ref SmeltBatchProductionInfo data,
            out int errCode,
            out string errText)
        {
            string strProcedureName =
                string.Format(
                    "{0}.{1}",
                    className,
                    MethodBase.GetCurrentMethod().Name);

            WriteLog.Instance.WriteBeginSplitter(strProcedureName);
            try
            {
                data = null;

                #region 将函数调用参数加入 HashTable 中
                Hashtable hashParams = new Hashtable();

                hashParams.Add("communityID", communityID);
                hashParams.Add("t107LeafID", t107LeafID);
                hashParams.Add("t216LeafID", t216LeafID);
                hashParams.Add("t133LeafID", t133LeafID);
                hashParams.Add("sysLogID", sysLogID);
                WriteLog.Instance.Write(
                    string.Format(
                        "调用 ufn_GetInfo_SmeltBatchProduct 函数,参数:" +
                        "CommunityID={0}|T107LeafID={1}|T216LeafID={2}|" +
                        "T133LeafID={3}|SysLogID={4}",
                        communityID, t107LeafID, t216LeafID, t133LeafID, sysLogID),
                    strProcedureName);
                #endregion

                #region 执行存储过程或者函数
                using (WCFClient client = new WCFClient())
                {
                    object rlt =
                        client.WCFRESTFul(
                            "IRAP.BL.MES.dll",
                            "IRAP.BL.MES.BatchSystem_Asimco",
                            "ufn_GetInfo_SmeltBatchProduct",
                            hashParams,
                            out errCode,
                            out errText);
                    WriteLog.Instance.Write(
                        string.Format(
                            "({0}){1}", errCode, errText),
                        strProcedureName);

                    if (errCode == 0)
                    {
                        List <SmeltBatchProductionInfo> datas =
                            rlt as List <SmeltBatchProductionInfo>;
                        if (datas != null && datas.Count > 0)
                        {
                            data = datas[0];
                        }
                    }
                }
                #endregion
            }
            catch (Exception error)
            {
                WriteLog.Instance.Write(error.Message, strProcedureName);
                errCode = -1001;
                errText = error.Message;
            }
            finally
            {
                WriteLog.Instance.WriteEndSplitter(strProcedureName);
            }
        }