void OnCameraGroupModified(CameraGroupInfo info)
        {
            VideoPictureResource camres = null;

            foreach (VideoPictureResource child in m_RootResources)
            {
                camres = GetResourceByCameraGroup(child, info);
                if (camres != null)
                {
                    break;
                }
            }
            if (camres != null)
            {
                camres.Name    = info.GroupName;
                camres.Subject = info;

                if (/*camres.Expand &&*/ TreeNodeEdited != null)
                {
                    TreeNodeEdited(null, new EventEditNodeArgs {
                        NodeResource = camres
                    });
                }
            }
            else
            {
                OnCameraGroupAdded(info);
            }
        }
        void OnCameraGroupAdded(CameraGroupInfo info)
        {
            foreach (VideoPictureResource item in m_RootResources)
            {
                VideoPictureResource camres = GetResourceByCameraGroup(item, info);
                if (camres != null)
                {
                    return;
                }
            }

            //VideoPictureResource rootres = null;
            foreach (VideoPictureResource child in m_RootResources)
            {
                if (child.Type == ResourceType.CameraPicFolder || child.Type == ResourceType.CameraVideoFolder)
                {
                    VideoPictureResource resource =
                        new VideoPictureResource(ResourceType.CameraGroup, info.GroupName, info);
                    FillupCameraResources(resource, ResourceType.Camera, info);

                    child.AddChild(resource);

                    //    if (child.Expand)
                    //{
                    if (TreeNodeAdded != null)
                    {
                        TreeNodeAdded(null, new EventAddNodeArgs {
                            ParantTreeNode = child.TreeNode, NodeResource = resource
                        });
                    }
                    //}
                }
            }
        }
Пример #3
0
        public List <CameraGroupInfo> GetAllCameraGroup(uint parentGroupId, bool caseMode = false)
        {
            caseMode = false; //3.0.4.X版本暂时不使用case类型接口,强制赋值为false

            List <CameraGroupInfo> list = new List <CameraGroupInfo>();

            int  queryHandle = 0;
            uint count       = 0;

            if (caseMode)
            {
                queryHandle = Framework.Container.Instance.IVXProtocol.QueryCaseCameraGroupList(parentGroupId);
            }
            else
            {
                queryHandle = Framework.Container.Instance.IVXProtocol.QueryCameraGroupList(parentGroupId);
            }

            count = Framework.Container.Instance.IVXProtocol.GetCameraGroupNum(queryHandle);

            CameraGroupInfo ptCameraGroupInfo = null;

            while (true)
            {
                if (caseMode)
                {
                    ptCameraGroupInfo = Framework.Container.Instance.IVXProtocol.QueryNextCaseCameraGroup(queryHandle);
                }
                else
                {
                    ptCameraGroupInfo = Framework.Container.Instance.IVXProtocol.QueryNextCameraGroup(queryHandle);
                }
                if (ptCameraGroupInfo != null)
                {
                    list.Add(ptCameraGroupInfo);
                }
                else
                {
                    break;
                }
            }

            if (caseMode)
            {
                Framework.Container.Instance.IVXProtocol.CloseCaseCameraGroupQuery(queryHandle);
            }
            else
            {
                Framework.Container.Instance.IVXProtocol.CloseCameraGroupQuery(queryHandle);
            }

            if (list != null)
            {
                return(list.ToList());
            }
            else
            {
                return(null);
            }
        }
Пример #4
0
        public bool DelCameraGroup(uint dwCameraGroupID)
        {
            bool bRet = true;

            CameraGroupInfo   cameraGroup = Framework.Container.Instance.IVXProtocol.GetCameraGroupByID(dwCameraGroupID);
            List <CameraInfo> cameras     = GetCameras(dwCameraGroupID, false);

            if (cameraGroup != null)
            {
                bRet = Framework.Container.Instance.IVXProtocol.DelCameraGroup(dwCameraGroupID);

                if (bRet)
                {
                    Framework.Container.Instance.EvtAggregator.GetEvent <CameraGroupDeletedEvent>().Publish(dwCameraGroupID);
                    if (cameras != null && cameras.Count > 0)
                    {
                        foreach (CameraInfo camera in cameras)
                        {
                            // bRet = DelCamera(taskunit.CameraID);
                            Framework.Container.Instance.EvtAggregator.GetEvent <CameraDeletedEvent>().Publish(camera.CameraID);
                            // Debug.Assert(bRet);
                        }
                    }
                }
            }
            return(bRet);
        }
Пример #5
0
 private void AddRow(CameraGroupInfo cameraGroupInfo)
 {
     m_allCameraGroupList.Rows.Add(
         cameraGroupInfo.CameraGroupID,
         cameraGroupInfo.ParentGroupID,
         cameraGroupInfo.GroupName,
         cameraGroupInfo.GroupDescription,
         cameraGroupInfo);
 }
Пример #6
0
        void OnCameraGroupModified(CameraGroupInfo info)
        {
            DataRow row = m_allCameraGroupList.Rows.Find(info.CameraGroupID);

            if (row != null)
            {
                row["GroupName"]    = info.GroupName;
                row["CameraGroup"]  = info;
                CurrEditCameraGroup = info;
            }
        }
Пример #7
0
        public bool EditCameraGroup(CameraGroupInfo tCameraGroupBase)
        {
            bool bRet = Framework.Container.Instance.IVXProtocol.MdfCameraGroup(tCameraGroupBase);

            if (bRet)
            {
                Framework.Container.Instance.EvtAggregator.GetEvent <CameraGroupModifiedEvent>().Publish(tCameraGroupBase);
            }

            return(bRet);
        }
Пример #8
0
        public uint AddCameraGroup(CameraGroupInfo tCameraGroupBase)
        {
            uint cameraGroupId = Framework.Container.Instance.IVXProtocol.AddCameraGroup(tCameraGroupBase);

            if (cameraGroupId > 0)
            {
                CameraGroupInfo cameraGroup = Framework.Container.Instance.IVXProtocol.GetCameraGroupByID(cameraGroupId);
                Framework.Container.Instance.EvtAggregator.GetEvent <CameraGroupAddedEvent>().Publish(cameraGroup);
            }

            return(cameraGroupId);
        }
Пример #9
0
        void OnCameraGroupAdded(CameraGroupInfo info)
        {
            DataRow row = m_allCameraGroupList.Rows.Find(info.CameraGroupID);

            if (row == null)
            {
                AddRow(info);
                if (CameraGroupAdded != null)
                {
                    CameraGroupAdded(info.CameraGroupID, null);
                }
            }
        }
 private VideoPictureResource GetResourceByCameraGroup(VideoPictureResource parantres, CameraGroupInfo cameragroupInfo)
 {
     if (parantres.Subject is CameraGroupInfo)
     {
         CameraGroupInfo info = parantres.Subject as CameraGroupInfo;
         if (info.CameraGroupID == cameragroupInfo.CameraGroupID)
         {
             return(parantres);
         }
     }
     else
     {
         foreach (VideoPictureResource item in parantres.Children)
         {
             VideoPictureResource ret = GetResourceByCameraGroup(item, cameragroupInfo);
             if (ret != null)
             {
                 return(ret);
             }
         }
     }
     return(null);
 }
        public List <CameraGroupInfo> GetAllCameraGroup()
        {
            using (MySql.Data.MySqlClient.MySqlConnection conn
                       = new MySql.Data.MySqlClient.MySqlConnection(string.Format(m_connString, m_serverIP, "vdm_server_db")))
            {
                try
                {
                    List <CameraGroupInfo> list = new List <CameraGroupInfo>();

                    string sql = "SELECT * FROM `camera_group_info`";
                    MyLog4Net.Container.Instance.Log.Debug("GetAllCameraGroup sql:" + sql);
                    conn.Open();
                    MySql.Data.MySqlClient.MySqlCommand    cmd    = new MySql.Data.MySqlClient.MySqlCommand(sql, conn);
                    MySql.Data.MySqlClient.MySqlDataReader reader = cmd.ExecuteReader();
                    DataTable table = new DataTable();
                    table.Load(reader);
                    foreach (DataRow item in table.Rows)
                    {
                        CameraGroupInfo cameraGroupInfo = new CameraGroupInfo();
                        cameraGroupInfo.CameraGroupID    = Convert.ToUInt32(item["ID"].ToString());
                        cameraGroupInfo.ParentGroupID    = Convert.ToUInt32(item["PARENT_GROUP"].ToString());
                        cameraGroupInfo.GroupDescription = item["OTHER"].ToString();
                        cameraGroupInfo.GroupName        = item["NAME"].ToString();
                        list.Add(cameraGroupInfo);
                    }
                    conn.Close();
                    return(list);
                }
                catch (Exception ex)
                {
                    MyLog4Net.Container.Instance.Log.DebugWithDebugView("GetAllCameraGroup sql error:" + ex.ToString());

                    //Framework.Container.Instance.InteractionService.ShowMessageBox("数据库失败",Framework.Environment.PROGRAM_NAME);
                    return(new List <CameraGroupInfo>());
                }
            }
        }
Пример #12
0
        public CameraGroupInfo GetCameraGroupByID(uint camgroupId)
        {
            CameraGroupInfo camgroup = Framework.Container.Instance.IVXProtocol.GetCameraGroupByID(camgroupId);

            return(camgroup);
        }
Пример #13
0
        void IVXProtocol_ResourceChanged(ResourceUpdateInfo obj)
        {
            switch (obj.ResourceType)
            {
            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_NOUSE:
                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_SERVER:
                if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_ADD)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        ServerInfo info = GetServerById(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <ServerAddedEvent>().Publish(info);
                        }
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_DEL)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        Framework.Container.Instance.EvtAggregator.GetEvent <ServerDeletedEvent>().Publish(item);
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_MDF)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        ServerInfo info = GetServerById(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <ServerModifiedEvent>().Publish(info);
                        }
                    }
                                               );
                }

                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_NET_STORE:
                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_CAMERA_GROUP:
                if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_ADD)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        CameraGroupInfo info = GetCameraGroupByID(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <CameraGroupAddedEvent>().Publish(info);
                        }
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_DEL)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        Framework.Container.Instance.EvtAggregator.GetEvent <CameraGroupDeletedEvent>().Publish(item);
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_MDF)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        CameraGroupInfo info = GetCameraGroupByID(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <CameraGroupModifiedEvent>().Publish(info);
                        }
                    }
                                               );
                }


                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_CAMERA:
                if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_ADD)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        CameraInfo info = GetCameraByID(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <CameraAddedEvent>().Publish(info);
                        }
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_DEL)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        Framework.Container.Instance.EvtAggregator.GetEvent <CameraDeletedEvent>().Publish(item);
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_MDF)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        CameraInfo info = GetCameraByID(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <CameraModifiedEvent>().Publish(info);
                        }
                    }
                                               );
                }


                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_USER_GROUP:
                if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_ADD)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        UserGroupInfo info = Framework.Container.Instance.IVXProtocol.GetUserGroupByID(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <AddUserGroupEvent>().Publish(item);
                        }
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_DEL)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        Framework.Container.Instance.EvtAggregator.GetEvent <DelUserGroupEvent>().Publish(item);
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_MDF)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        UserGroupInfo info = Framework.Container.Instance.IVXProtocol.GetUserGroupByID(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <EditUserGroupEvent>().Publish(item);
                        }
                    }
                                               );
                }

                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_USER:
                if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_ADD)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        UserInfo info = Framework.Container.Instance.IVXProtocol.GetUserByID(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <AddUserEvent>().Publish(item);
                        }
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_DEL)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        Framework.Container.Instance.EvtAggregator.GetEvent <DelUserEvent>().Publish(item);
                    }
                                               );
                }
                else if (obj.OperateType == E_VDA_RESOURCE_OPERATE_TYPE.E_RESOURCE_OPERATE_TYPE_MDF)
                {
                    obj.ResourceIDList.ForEach(item =>
                    {
                        UserInfo info = Framework.Container.Instance.IVXProtocol.GetUserByID(item);
                        if (info != null)
                        {
                            Framework.Container.Instance.EvtAggregator.GetEvent <EditUserEvent>().Publish(item);
                        }
                    }
                                               );
                }
                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_CASE:
                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_TASK:
                break;

            case E_VDA_RESOURCE_TYPE.E_RESOURCE_TYPE_TASKUNIT:
                break;

            default:
                break;
            }
        }
Пример #14
0
 public AddEditCameraGroupViewModel(CameraGroupInfo cameraGroupInfo, bool isEditMode)
 {
     OldCameraGroup = cameraGroupInfo;
     NewCameraGroup = cameraGroupInfo.Clone() as CameraGroupInfo;
     IsEditMode     = isEditMode;
 }
Пример #15
0
 private int CheckCameraGroup(CameraGroupInfo newinfo, CameraGroupInfo oldinfo)
 {
     return(0);
 }
        private void FillupCameraResources(VideoPictureResource folder, ResourceType resourceType, CameraGroupInfo cameragroup)
        {
            List <CameraInfo> Cameras = new List <CameraInfo>();

            try
            {
                Framework.Container.Instance.VDAConfigService.GetAllCameras(cameragroup.CameraGroupID, Cameras);
            }
            catch (SDKCallException ex)
            {
                Cameras = null;
                Common.SDKCallExceptionHandler.Handle(ex, "获取组监控点集合");
            }

            if (Cameras != null /*&& taskunits.Count > 0*/)
            {
                foreach (CameraInfo camera in Cameras)
                {
                    VideoPictureResource resource = new VideoPictureResource(resourceType, camera.CameraName, camera);
                    folder.AddChild(resource);
                }
                //folder.Expand = true;
            }
        }
        void OnCameraAdded(CameraInfo info)
        {
            foreach (VideoPictureResource item in m_RootResources)
            {
                VideoPictureResource camres = GetResourceByCamera(item, info);
                if (camres != null)
                {
                    return;
                }
            }

            VideoPictureResource groupres = null;

            foreach (VideoPictureResource child in m_RootResources)
            {
                groupres = GetResourceByCameraGroup(child, new CameraGroupInfo {
                    CameraGroupID = info.GroupID
                });
                if (groupres != null)
                {
                    break;
                }
            }

            if (groupres != null)
            {
                VideoPictureResource resource =
                    new VideoPictureResource(ResourceType.Camera, info.CameraName, info);
                groupres.AddChild(resource);

                //if (groupres.Expand)
                //{
                if (TreeNodeAdded != null)
                {
                    TreeNodeAdded(null, new EventAddNodeArgs {
                        ParantTreeNode = groupres.TreeNode, NodeResource = resource
                    });
                }
                //}
            }
            else
            {
                foreach (VideoPictureResource child in m_RootResources)
                {
                    if (child.Type == ResourceType.CameraVideoFolder || child.Type == ResourceType.CameraPicFolder)
                    {
                        CameraGroupInfo      group    = Framework.Container.Instance.VDAConfigService.GetCameraGroupByID(info.GroupID);
                        VideoPictureResource resource =
                            new VideoPictureResource(ResourceType.CameraGroup, group.GroupName, group);
                        FillupCameraResources(resource, ResourceType.Camera, group);

                        child.AddChild(resource);
                        //if (child.Expand)
                        //{
                        if (TreeNodeAdded != null)
                        {
                            TreeNodeAdded(null, new EventAddNodeArgs {
                                ParantTreeNode = child.TreeNode, NodeResource = resource
                            });
                        }
                        //}
                    }
                }
            }
        }