Ejemplo n.º 1
0
        private void AddToGridCamera(Maticsoft.Model.SMT_CAMERA_INFO camera, DataGridViewRow row = null)
        {
            DataGridViewRow dgvr = null;

            if (row == null)
            {
                dgvr = new DataGridViewRow();
                dgvr.CreateCells(dgvCamera);
            }
            else
            {
                dgvr = row;
            }
            dgvr.SetValues(camera.CAMERA_NAME,
                           camera.CAMERA_IP,
                           camera.CAMERA_PORT,
                           camera.CAMERA_USER,
                           "******",
                           camera.CAMERA_CAP_PORT,
                           camera.CAMERA_CAP_TYPE,
                           "修改",
                           "删除");
            dgvr.Tag = camera;
            if (row == null)
            {
                dgvCamera.Rows.Add(dgvr);
            }
        }
Ejemplo n.º 2
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            if (tbIp.Text.Trim() == "")
            {
                WinInfoHelper.ShowInfoWindow(this, "IP不能为空!");
                return;
            }
            if (CAMERA == null)
            {
                CAMERA    = new Maticsoft.Model.SMT_CAMERA_INFO();
                CAMERA.ID = -1;
            }
            CAMERA.CAMERA_NAME     = tbCameraName.Text.Trim();
            CAMERA.CAMERA_IP       = tbIp.Text.Trim();
            CAMERA.CAMERA_PORT     = iiPort.Value;
            CAMERA.CAMERA_USER     = tbUser.Text.Trim();
            CAMERA.CAMERA_PWD      = tbPwd.Text;
            CAMERA.CAMERA_MODEL    = (string)cbModel.SelectedItem;
            CAMERA.CAMERA_CAP_TYPE = (string)cbCapType.SelectedItem;
            CAMERA.CAMERA_CAP_PORT = iiCapPort.Value;

            CtrlWaiting waiting = new CtrlWaiting(() =>
            {
                try
                {
                    Maticsoft.BLL.SMT_CAMERA_INFO cameraBll = new Maticsoft.BLL.SMT_CAMERA_INFO();
                    if (CAMERA.ID == -1)
                    {
                        CAMERA.ID = cameraBll.Add(CAMERA);
                    }
                    else
                    {
                        cameraBll.Update(CAMERA);
                    }

                    SmtLog.Info("配置", "配置摄像头:" + CAMERA.CAMERA_NAME + ",IP=" + CAMERA.CAMERA_IP);
                    this.BeginInvoke(new Action(() =>
                    {
                        this.DialogResult = DialogResult.OK;
                        this.Close();
                    }));
                }
                catch (Exception ex)
                {
                    log.Error("添加摄像头失败:", ex);
                    WinInfoHelper.ShowInfoWindow(this, "添加相机失败!" + ex.Message);
                }
            });

            waiting.Show(this);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(Maticsoft.Model.SMT_CAMERA_INFO model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update SMT_CAMERA_INFO set ");
            strSql.Append("CAMERA_NAME=@CAMERA_NAME,");
            strSql.Append("CAMERA_IP=@CAMERA_IP,");
            strSql.Append("CAMERA_PORT=@CAMERA_PORT,");
            strSql.Append("CAMERA_CAP_PORT=@CAMERA_CAP_PORT,");
            strSql.Append("CAMERA_USER=@CAMERA_USER,");
            strSql.Append("CAMERA_PWD=@CAMERA_PWD,");
            strSql.Append("CAMERA_MODEL=@CAMERA_MODEL,");
            strSql.Append("CAMERA_CAP_TYPE=@CAMERA_CAP_TYPE");
            strSql.Append(" where ID=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@CAMERA_NAME",     SqlDbType.NVarChar, 100),
                new SqlParameter("@CAMERA_IP",       SqlDbType.VarChar,  100),
                new SqlParameter("@CAMERA_PORT",     SqlDbType.Int,        4),
                new SqlParameter("@CAMERA_CAP_PORT", SqlDbType.Int,        4),
                new SqlParameter("@CAMERA_USER",     SqlDbType.NVarChar, 100),
                new SqlParameter("@CAMERA_PWD",      SqlDbType.NVarChar, 100),
                new SqlParameter("@CAMERA_MODEL",    SqlDbType.NVarChar, 100),
                new SqlParameter("@CAMERA_CAP_TYPE", SqlDbType.VarChar,   50),
                new SqlParameter("@ID",              SqlDbType.Decimal, 9)
            };
            parameters[0].Value = model.CAMERA_NAME;
            parameters[1].Value = model.CAMERA_IP;
            parameters[2].Value = model.CAMERA_PORT;
            parameters[3].Value = model.CAMERA_CAP_PORT;
            parameters[4].Value = model.CAMERA_USER;
            parameters[5].Value = model.CAMERA_PWD;
            parameters[6].Value = model.CAMERA_MODEL;
            parameters[7].Value = model.CAMERA_CAP_TYPE;
            parameters[8].Value = model.ID;

            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Ejemplo n.º 4
0
 /// <summary>
 /// 得到一个对象实体
 /// </summary>
 public Maticsoft.Model.SMT_CAMERA_INFO DataRowToModel(DataRow row)
 {
     Maticsoft.Model.SMT_CAMERA_INFO model = new Maticsoft.Model.SMT_CAMERA_INFO();
     if (row != null)
     {
         if (row["ID"] != null && row["ID"].ToString() != "")
         {
             model.ID = decimal.Parse(row["ID"].ToString());
         }
         if (row["CAMERA_NAME"] != null)
         {
             model.CAMERA_NAME = row["CAMERA_NAME"].ToString();
         }
         if (row["CAMERA_IP"] != null)
         {
             model.CAMERA_IP = row["CAMERA_IP"].ToString();
         }
         if (row["CAMERA_PORT"] != null && row["CAMERA_PORT"].ToString() != "")
         {
             model.CAMERA_PORT = int.Parse(row["CAMERA_PORT"].ToString());
         }
         if (row["CAMERA_CAP_PORT"] != null && row["CAMERA_CAP_PORT"].ToString() != "")
         {
             model.CAMERA_CAP_PORT = int.Parse(row["CAMERA_CAP_PORT"].ToString());
         }
         if (row["CAMERA_USER"] != null)
         {
             model.CAMERA_USER = row["CAMERA_USER"].ToString();
         }
         if (row["CAMERA_PWD"] != null)
         {
             model.CAMERA_PWD = row["CAMERA_PWD"].ToString();
         }
         if (row["CAMERA_MODEL"] != null)
         {
             model.CAMERA_MODEL = row["CAMERA_MODEL"].ToString();
         }
         if (row["CAMERA_CAP_TYPE"] != null)
         {
             model.CAMERA_CAP_TYPE = row["CAMERA_CAP_TYPE"].ToString();
         }
     }
     return(model);
 }
Ejemplo n.º 5
0
        private void AddToGridDoorCamera(Maticsoft.Model.SMT_DOOR_INFO door, Maticsoft.Model.SMT_CAMERA_INFO camera, bool enable)
        {
            DataGridViewRow dgvr = new DataGridViewRow();

            dgvr.CreateCells(dgvDoorCamera,
                             door.DOOR_NAME,
                             camera.CAMERA_NAME + "[" + camera.CAMERA_IP + "]",
                             enable,
                             "删除"
                             );
            DoorCamera dc = new DoorCamera()
            {
                DOOR_ID   = door.ID,
                CAMERA_ID = camera.ID
            };

            dgvr.Tag = dc;
            dgvDoorCamera.Rows.Add(dgvr);
        }
Ejemplo n.º 6
0
 private void dgvCamera_CellContentClick(object sender, DataGridViewCellEventArgs e)
 {
     if (e.RowIndex >= 0 && e.ColumnIndex >= 0)
     {
         if (dgvCamera.Columns[e.ColumnIndex].Name == "Col_Delete")
         {
             if (MessageBox.Show("确定删除该摄像头?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK)
             {
                 Maticsoft.Model.SMT_CAMERA_INFO camera = (Maticsoft.Model.SMT_CAMERA_INFO)dgvCamera.Rows[e.RowIndex].Tag;
                 CtrlWaiting waiting = new CtrlWaiting(() =>
                 {
                     try
                     {
                         Maticsoft.BLL.SMT_CAMERA_INFO cameraBll = new Maticsoft.BLL.SMT_CAMERA_INFO();
                         cameraBll.Delete(camera.ID);
                         Maticsoft.DBUtility.DbHelperSQL.ExecuteSql("delete from smt_door_camera where camera_id=" + camera.ID);
                         this.Invoke(new Action(() =>
                         {
                             dgvCamera.Rows.Remove(dgvCamera.Rows[e.RowIndex]);
                         }));
                     }
                     catch (Exception ex)
                     {
                         log.Error("删除摄像头异常:", ex);
                         WinInfoHelper.ShowInfoWindow(this, "删除摄像头异常!" + ex.Message);
                     }
                 });
                 waiting.Show(this);
             }
         }
         else if (dgvCamera.Columns[e.ColumnIndex].Name == "Col_Modify")
         {
             Maticsoft.Model.SMT_CAMERA_INFO camera = (Maticsoft.Model.SMT_CAMERA_INFO)dgvCamera.Rows[e.RowIndex].Tag;
             FrmAddCamera frmAddCamera = new FrmAddCamera();
             frmAddCamera.CAMERA = camera;
             if (frmAddCamera.ShowDialog(this) == DialogResult.OK)
             {
                 AddToGridCamera(frmAddCamera.CAMERA, dgvCamera.Rows[e.RowIndex]);
             }
         }
     }
 }
Ejemplo n.º 7
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public decimal Add(Maticsoft.Model.SMT_CAMERA_INFO model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into SMT_CAMERA_INFO(");
            strSql.Append("CAMERA_NAME,CAMERA_IP,CAMERA_PORT,CAMERA_CAP_PORT,CAMERA_USER,CAMERA_PWD,CAMERA_MODEL,CAMERA_CAP_TYPE)");
            strSql.Append(" values (");
            strSql.Append("@CAMERA_NAME,@CAMERA_IP,@CAMERA_PORT,@CAMERA_CAP_PORT,@CAMERA_USER,@CAMERA_PWD,@CAMERA_MODEL,@CAMERA_CAP_TYPE)");
            strSql.Append(";select @@IDENTITY");
            SqlParameter[] parameters =
            {
                new SqlParameter("@CAMERA_NAME",     SqlDbType.NVarChar, 100),
                new SqlParameter("@CAMERA_IP",       SqlDbType.VarChar,  100),
                new SqlParameter("@CAMERA_PORT",     SqlDbType.Int,        4),
                new SqlParameter("@CAMERA_CAP_PORT", SqlDbType.Int,        4),
                new SqlParameter("@CAMERA_USER",     SqlDbType.NVarChar, 100),
                new SqlParameter("@CAMERA_PWD",      SqlDbType.NVarChar, 100),
                new SqlParameter("@CAMERA_MODEL",    SqlDbType.NVarChar, 100),
                new SqlParameter("@CAMERA_CAP_TYPE", SqlDbType.VarChar, 50)
            };
            parameters[0].Value = model.CAMERA_NAME;
            parameters[1].Value = model.CAMERA_IP;
            parameters[2].Value = model.CAMERA_PORT;
            parameters[3].Value = model.CAMERA_CAP_PORT;
            parameters[4].Value = model.CAMERA_USER;
            parameters[5].Value = model.CAMERA_PWD;
            parameters[6].Value = model.CAMERA_MODEL;
            parameters[7].Value = model.CAMERA_CAP_TYPE;

            object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);

            if (obj == null)
            {
                return(0);
            }
            else
            {
                return(Convert.ToDecimal(obj));
            }
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public Maticsoft.Model.SMT_CAMERA_INFO GetModel(decimal ID)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select  top 1 ID,CAMERA_NAME,CAMERA_IP,CAMERA_PORT,CAMERA_CAP_PORT,CAMERA_USER,CAMERA_PWD,CAMERA_MODEL,CAMERA_CAP_TYPE from SMT_CAMERA_INFO ");
            strSql.Append(" where ID=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@ID", SqlDbType.Decimal)
            };
            parameters[0].Value = ID;

            Maticsoft.Model.SMT_CAMERA_INFO model = new Maticsoft.Model.SMT_CAMERA_INFO();
            DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                return(DataRowToModel(ds.Tables[0].Rows[0]));
            }
            else
            {
                return(null);
            }
        }
Ejemplo n.º 9
0
        private void biAddDoorCamera_Click(object sender, EventArgs e)
        {
            var node = this.doorTree.Tree.SelectedNode;

            if (node == null)
            {
                WinInfoHelper.ShowInfoWindow(this, "请选择门禁!");
                return;
            }
            if (node.Tag is Maticsoft.Model.SMT_DOOR_INFO)
            {
                Maticsoft.Model.SMT_DOOR_INFO door = (Maticsoft.Model.SMT_DOOR_INFO)node.Tag;
                var rows = dgvCamera.SelectedRows;
                if (rows.Count == 0)
                {
                    WinInfoHelper.ShowInfoWindow(this, "请选择摄像头!");
                    return;
                }
                List <Maticsoft.Model.SMT_CAMERA_INFO> cameras = new List <Maticsoft.Model.SMT_CAMERA_INFO>();
                foreach (DataGridViewRow row in rows)
                {
                    Maticsoft.Model.SMT_CAMERA_INFO cameraInfo = (Maticsoft.Model.SMT_CAMERA_INFO)row.Tag;
                    cameras.Add(cameraInfo);
                }
                CtrlWaiting waiting = new CtrlWaiting(() =>
                {
                    try
                    {
                        foreach (var camera in cameras)
                        {
                            Maticsoft.BLL.SMT_DOOR_CAMERA dcBll = new Maticsoft.BLL.SMT_DOOR_CAMERA();
                            var dcModel = dcBll.GetModel(door.ID, camera.ID);
                            if (dcModel == null)
                            {
                                dcModel            = new Maticsoft.Model.SMT_DOOR_CAMERA();
                                dcModel.DOOR_ID    = door.ID;
                                dcModel.CAMERA_ID  = camera.ID;
                                dcModel.ENABLE_CAP = cbEnableCap.Checked;
                                dcBll.Add(dcModel);
                                this.Invoke(new Action(() =>
                                {
                                    AddToGridDoorCamera(door, camera, dcModel.ENABLE_CAP);
                                }));
                            }
                            else
                            {
                                if (dcModel.ENABLE_CAP != cbEnableCap.Checked)
                                {
                                    dcModel.ENABLE_CAP = cbEnableCap.Checked;
                                    dcBll.Update(dcModel);
                                    this.Invoke(new Action(() =>
                                    {
                                        foreach (DataGridViewRow row in this.dgvDoorCamera.Rows)
                                        {
                                            DoorCamera dc = (DoorCamera)row.Tag;
                                            if (dc.DOOR_ID == door.ID && dc.CAMERA_ID == camera.ID)
                                            {
                                                row.Cells[2].Value = dcModel.ENABLE_CAP;
                                                break;
                                            }
                                        }
                                    }));
                                }
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        log.Error("添加关系异常:", ex);
                        WinInfoHelper.ShowInfoWindow(this, "添加门禁相机关系异常:" + ex.Message);
                    }
                });
                waiting.Show(this);
            }
            else
            {
                WinInfoHelper.ShowInfoWindow(this, "请选择门禁节点!");
            }
        }