private void SyncSelRowData()
        {
            try
            {
                //if (_isBinding) return;

                ClearData();

                if (dgvDept.DataSource == null)
                {
                    return;
                }
                if (dgvDept.SelectedRows.Count <= 0)
                {
                    return;
                }

                DataGridViewRow dvr = dgvDept.SelectedRows[0];


                string roomID = dvr.Cells["房间ID"].Value.ToString();
                txtRoomName.Tag = roomID;

                DataRow[] drs = (dgvDept.DataSource as DataTable).Select("房间ID='" + roomID + "'");

                if (drs.Length > 0)
                {
                    DepRoomData roomData = new DepRoomData();
                    roomData.BindRowData(drs[0]);

                    txtRoomName.Text = roomData.房间名称;

                    string    strRoomInfo = _DepRoomModel.GetRoomInfo(roomID);
                    JRoomInfo roomInfo    = JsonHelper.DeserializeObject <JRoomInfo>(strRoomInfo);
                    ShowDevice(roomID);

                    if (roomInfo != null)
                    {
                        txtTag.Text      = roomInfo.备注描述;
                        txtPosition.Text = roomInfo.位置;
                        txtLeader.Text   = roomInfo.负责人;
                    }
                }
                dgvDevice.Tag = roomID;
            }
            catch (Exception ex)
            {
                MsgBox.ShowException(ex, this);
            }
        }
        private bool RoomUpdate()
        {
            //按钮点击修改
            try
            {
                if (txtRoomName.Tag == null)
                {
                    MessageBox.Show("请选择需要修改的房间信息。", "提示");
                    return(false);
                }


                DepRoomData roomData = GetSelectRoomData();
                if (roomData == null)
                {
                    MessageBox.Show("未获取到有效的房间信息。", "提示");
                    return(false);
                }

                if (VerifyRoom(true) == false)
                {
                    return(false);
                }

                roomData.房间信息 = new JRoomInfo();

                roomData.房间信息.备注描述 = txtTag.Text;
                roomData.房间信息.位置   = txtPosition.Text;
                roomData.房间信息.负责人  = txtLeader.Text;
                roomData.房间信息.创建日期 = System.DateTime.Now.ToString();

                roomData.房间名称 = txtRoomName.Text;

                roomData.房间信息.CopyBasePro(roomData);

                _DepRoomModel.UpdateRoomInfo(roomData);

                DataRow dr = roomData.GetBindRow();

                dr["房间名称"] = txtRoomName.Text;

                return(true);
            }
            catch (Exception ex)
            {
                MsgBox.ShowException(ex, "设备房间信息保存失败,请参看描述信息:", this);
                return(false);
            }
        }
        private bool RoomAdd()
        {
            //按钮点击添加,列表新增一行,数据显示控件显示缺省信息。
            try
            {
                if (VerifyRoom() == false)
                {
                    return(false);
                }

                DepRoomData roominfo = new DepRoomData();

                roominfo.房间ID = SqlHelper.GetCmpUID();
                roominfo.科室ID = cboDept.SelectedValue.ToString();
                roominfo.房间信息 = new JRoomInfo();

                roominfo.房间信息.备注描述 = txtTag.Text;
                roominfo.房间信息.位置   = txtPosition.Text;
                roominfo.房间信息.负责人  = txtLeader.Text;
                roominfo.房间信息.创建日期 = System.DateTime.Now.ToString();

                roominfo.房间名称 = txtRoomName.Text;

                roominfo.房间信息.CopyBasePro(roominfo);

                _DepRoomModel.NewRoom(roominfo);

                DataTable dtBind = dgvDept.DataSource as DataTable;

                DataRow drNew = dtBind.NewRow();

                drNew["房间ID"] = roominfo.房间ID;
                drNew["房间名称"] = roominfo.房间名称;
                dtBind.Rows.Add(drNew);
                return(true);
            }
            catch (Exception ex)
            {
                MsgBox.ShowException(ex, this);
                return(false);
            }
        }
        private DepRoomData GetSelectRoomData()
        {
            if (dgvDept.SelectedRows.Count <= 0)
            {
                return(null);
            }

            DataGridViewRow dvr = dgvDept.SelectedRows[0];

            string roomID = dvr.Cells["房间ID"].Value.ToString();

            DataRow[] drs = (dgvDept.DataSource as DataTable).Select("房间ID='" + roomID + "'");

            if (drs.Length > 0)
            {
                DepRoomData roomData = new DepRoomData();
                roomData.BindRowData(drs[0]);

                return(roomData);
            }

            return(null);
        }