コード例 #1
0
        /// <summary>
        /// 加载方案
        /// </summary>
        private bool Load()
        {
            _LstDataSendForRelay = new List <StDataSendForRelay>();
            string  _ErrorString = "";
            XmlNode _XmlNode     = clsXmlControl.LoadXml(_FAPath, out _ErrorString);

            if (_ErrorString != "")
            {
                return(false);
            }
            try
            {
                for (int _i = 0; _i < _XmlNode.ChildNodes.Count; _i++)
                {
                    StDataSendForRelay _Item = new StDataSendForRelay();
                    _Item.PrjID            = _XmlNode.ChildNodes[_i].Attributes["PrjID"].Value;                    //项目ID
                    _Item.ConnProtocolItem = _XmlNode.ChildNodes[_i].Attributes["ConnProtocolItem"].Value.Trim();  //数据项名称
                    _Item.ItemCode         = _XmlNode.ChildNodes[_i].Attributes["ItemCode"].Value.Trim();          //标识编码
                    _Item.BarCode          = _XmlNode.ChildNodes[_i].Attributes["BarCode"].Value.Trim();           //条形码
                    _Item.MeterPosition    = _XmlNode.ChildNodes[_i].Attributes["MeterPosition"].Value.Trim();     //表位号
                    _Item.PARAMS_LIST      = _XmlNode.ChildNodes[_i].Attributes["PARAMS_LIST"].Value;              //参数值
                    _Item.WriteContent     = _XmlNode.ChildNodes[_i].Attributes["WriteContent"].Value.Trim();      //写入内容
                    _Item.PROTOCOL         = _XmlNode.ChildNodes[_i].Attributes["PROTOCOL"].Value.Trim();          //通讯规约
                    _LstDataSendForRelay.Add(_Item);
                }
                return(true);
            }
            catch (Exception ex)
            {
                CLDC_DataCore.Function.ErrorLog.Write(ex);
                return(false);
            }
        }
コード例 #2
0
        /// <summary>
        /// 增加一个项目
        /// </summary>
        /// <param name="connProtocolItem"></param>
        /// <param name="itemcode"></param>
        /// <param name="datalen"></param>
        /// <param name="pointindex"></param>
        /// <param name="datatype"></param>
        /// <param name="opertype"></param>
        /// <param name="writecontent"></param>
        /// <returns></returns>
        public bool Add(string connProtocolItem
                        , string itemcode
                        , string barCode
                        , string meterPosition
                        , string pARAMS_LIST
                        , string writecontent
                        , string pROTOCOL)
        {
            StDataSendForRelay _Item         = new StDataSendForRelay();
            string             strProtocolNo = _csDataFlag.GetDataFlagNo(connProtocolItem).ToString().PadLeft(2, '0');

            _Item.PrjID            = ((int)CLDC_Comm.Enum.Cus_MeterResultPrjID.数据转发试验).ToString() + strProtocolNo;
            _Item.ConnProtocolItem = connProtocolItem;
            _Item.ItemCode         = itemcode;
            _Item.BarCode          = barCode;
            _Item.MeterPosition    = meterPosition;
            _Item.PARAMS_LIST      = pARAMS_LIST;
            _Item.PROTOCOL         = pROTOCOL;
            _Item.WriteContent     = writecontent;
            if (_LstDataSendForRelay.Contains(_Item))
            {
                return(false);
            }
            _LstDataSendForRelay.Add(_Item);
            return(true);
        }
コード例 #3
0
        /// <summary>
        /// 加载方案项目
        /// </summary>
        /// <param name="FaItem">方案项目</param>
        public void LoadFA(CLDC_DataCore.Model.Plan.Plan_DataSendForRelay FaItem)
        {
            Dgv_Data.Rows.Clear();

            base.FaName = FaItem.Name;

            for (int _i = 0; _i < FaItem.Count; _i++)                                  //循环方案对象
            {
                StDataSendForRelay _Item             = FaItem.getDataSendForRelay(_i); //取出一个方案项目
                string             zouziShortDecript = string.Empty;
                int RowIndex = Dgv_Data.Rows.Add();
                Dgv_Data.Rows[RowIndex].Cells[0].Value = _i + 1;
                ((DataGridViewCell)Dgv_Data.Rows[RowIndex].Cells[1]).Value      = _Item.MeterPosition.ToString();    //表位号
                ((DataGridViewCell)Dgv_Data.Rows[RowIndex].Cells[2]).Value      = _Item.BarCode;                     //条形码
                ((DataGridViewCell)Dgv_Data.Rows[RowIndex].Cells[3]).Value      = _Item.ItemCode.ToString();         //标志编码
                ((DataGridViewCell)Dgv_Data.Rows[RowIndex].Cells[4]).Value      = _Item.ConnProtocolItem.ToString(); //数据项名称
                ((DataGridViewCell)Dgv_Data.Rows[RowIndex].Cells[5]).Value      = _Item.WriteContent;                //发送内容
                ((DataGridViewCell)Dgv_Data.Rows[RowIndex].Cells[6]).Value      = _Item.PARAMS_LIST.ToString();      //参数值
                ((DataGridViewCell)Dgv_Data.Rows[RowIndex].Cells[7]).Value      = _Item.PROTOCOL;                    //通讯规约
                Dgv_Data.Rows[RowIndex].Cells[Dgv_Data.Columns.Count - 1].Value = "删除";                              //删除按钮
                Dgv_Data[Dgv_Data.Columns.Count - 1, RowIndex].Style.ForeColor  = Color.Red;                         //删除按钮为红色
            }

            {
                int RowIndex = Dgv_Data.Rows.Add();                 //最后增加一个空行,用于新增
                Dgv_Data.Rows[RowIndex].Cells[Dgv_Data.Columns.Count - 1].Value           = CONST_ADD;
                Dgv_Data.Rows[RowIndex].Cells[Dgv_Data.Columns.Count - 1].Style.ForeColor = Color.Blue;
            }
            this.UpDownButtonState(0);    //设置上下移动按钮状态
        }
コード例 #4
0
 /// <summary>
 /// 移动项目
 /// </summary>
 /// <param name="i">需要移动到的列表位置</param>
 /// <param name="Item">项目结构体</param>
 public void Move(int i, StDataSendForRelay Item)
 {
     i = i < 0 ? 0 : i;
     i = i >= _LstDataSendForRelay.Count ? _LstDataSendForRelay.Count - 1 : i;
     this.Remove(Item);
     _LstDataSendForRelay.Insert(i, Item);
     return;
 }
コード例 #5
0
 /// <summary>
 /// 根据项目移除
 /// </summary>
 /// <param name="Item">项目结构体</param>
 public void Remove(StDataSendForRelay Item)
 {
     if (!_LstDataSendForRelay.Contains(Item))
     {
         return;
     }
     _LstDataSendForRelay.Remove(Item);
     return;
 }
コード例 #6
0
        /// <summary>
        /// 保存方案到XML文档
        /// </summary>
        public void Save()
        {
            if (System.IO.File.Exists(_FAPath))
            {
                System.IO.File.Delete(_FAPath);
            }
            if (_LstDataSendForRelay.Count == 0)
            {
                return;
            }
            clsXmlControl _XmlNode = new clsXmlControl();

            _XmlNode.appendchild("", "ConnProtocol", "Name", Name);
            for (int _i = 0; _i < _LstDataSendForRelay.Count; _i++)
            {
                StDataSendForRelay _Item      = _LstDataSendForRelay[_i];
                XmlNode            _ChildNode = _XmlNode.appendchild(true
                                                                     , "R"
                                                                     , "PrjID"
                                                                     , _Item.PrjID
                                                                     , "ConnProtocolItem"
                                                                     , _Item.ConnProtocolItem
                                                                     , "ItemCode"
                                                                     , _Item.ItemCode
                                                                     , "BarCode"
                                                                     , _Item.BarCode
                                                                     , "MeterPosition"
                                                                     , _Item.MeterPosition
                                                                     , "PARAMS_LIST"
                                                                     , _Item.PARAMS_LIST
                                                                     , "PROTOCOL"
                                                                     , _Item.PROTOCOL
                                                                     , "WriteContent"
                                                                     , _Item.WriteContent);
            }
            _XmlNode.SaveXml(_FAPath);
            return;
        }