Esempio n. 1
0
        /// <summary>
        /// 货柜信息
        /// </summary>
        public BoxRpt BoxInfo(int box)
        {
            BoxRpt boxRpt = new BoxRpt();

            int       colcount  = JPBoxConfigUtil.GetColcount(m_com);
            HuoDaoRpt huoDaoRpt = base.GET_HUODAO((byte)box);
            int       i         = 0;

            foreach (HuoDaoInfo huoDaoInfo in huoDaoRpt.HuoDaoInfoList)
            {
                i++;
                RoadRpt roadRpt = new RoadRpt();
                roadRpt.Floor = ((i - 1) / colcount) + 1;
                roadRpt.Num   = ((i - 1) % colcount) + 1;
                roadRpt.IsOK  = huoDaoInfo.HuoDaoSt == HuoDaoSt.正常 ? true : false;
                switch (huoDaoInfo.HuoDaoSt)
                {
                case HuoDaoSt.货道不存在:
                    roadRpt.ErrorMsg = "货道不存在";
                    break;

                case HuoDaoSt.暂不可用:
                    roadRpt.ErrorMsg = "货道暂不可用";
                    break;

                case HuoDaoSt.故障:
                    roadRpt.ErrorMsg = "货道故障";
                    break;
                }
                roadRpt.Remainder = huoDaoInfo.Remainder;
                boxRpt.RoadCollection.RoadList.Add(roadRpt);
            }

            return(boxRpt);
        }
Esempio n. 2
0
        /// <summary>
        /// 查询单个货道信息
        /// </summary>
        public RoadRpt QueryRoadRpt(int box, int floor, int num)
        {
            RoadRpt roadRpt = new RoadRpt();

            if (huoDaoRpt == null)
            {
                huoDaoRpt = base.GET_HUODAO((byte)box);
            }

            int hd_id = -1;

            #region 计算货道
            hd_id = (byte)((floor - 1) * JPBoxConfigUtil.GetColcount(m_com) + num);
            #endregion

            if (hd_id <= 0 || hd_id > huoDaoRpt.HuoDaoInfoList.Count)
            {
                roadRpt.IsOK     = false;
                roadRpt.ErrorMsg = "换算物理货道失败";
                return(roadRpt);
            }

            HuoDaoInfo huoDaoInfo = huoDaoRpt.HuoDaoInfoList[hd_id - 1];

            roadRpt.Floor = floor;
            roadRpt.Num   = num;
            if (huoDaoInfo.HuoDaoSt == HuoDaoSt.正常)
            {
                roadRpt.IsOK      = true;
                roadRpt.Remainder = huoDaoInfo.Remainder;
            }
            else
            {
                roadRpt.IsOK = false;
                switch (huoDaoInfo.HuoDaoSt)
                {
                case HuoDaoSt.故障:
                    roadRpt.ErrorMsg = "货道故障";
                    break;

                case HuoDaoSt.货道不存在:
                    roadRpt.ErrorMsg = "货道不存在";
                    break;

                case HuoDaoSt.暂不可用:
                    roadRpt.ErrorMsg = "货道暂不可用";
                    break;
                }
            }
            return(roadRpt);
        }