Exemplo n.º 1
0
 public void OnLoad()
 {
     if (!hasLoad)
     {
         dateEdit1.DateTime = DateTime.Now;
         var cameraTable = new CameraSystem().GetCameraInfo();
         if (cameraTable.Rows.Count > 0)
         {
             foreach (DataRow item in cameraTable.Rows)
             {
                 IPCameraManager.Instance.Add(new CameraAddress
                 {
                     Line = item["cameraName"].ToString().Replace("线路", string.Empty),
                     MachineAddr = item["machineName"].ToString().Replace("号门口机", string.Empty),
                     StreamAddr = item["cameraAddr"].ToString()
                 });
             }
             gridControl1.DataSource = cameraTable;
             hasLoad = true;
             IPCameraManager.Instance.PlayAll(new Panel[] { panel1, panel2, panel3, panel4 });
         }
     }
 }
Exemplo n.º 2
0
        private void simpleButton1_Click(object sender, EventArgs e)
        {
            DataTable dt = null;
            var key = comboBoxEdit1.EditValue as string;
            var time = (DateTime)dateEdit1.EditValue;
            var beginTime = time.Date.ToString("yyyy-MM-dd HH:mm:ss");
            var endTime = time.Date.AddSeconds(86399).ToString("yyyy-MM-dd HH:mm:ss");
            int val = 0;

            var videoMap = new Dictionary<long, IList<IPCamera>>();
            if (!key.Equals("所有##"))
            {
                if (int.TryParse(key, out val))
                    dt = new CameraSystem().GetCheckInfo(val, string.Empty, beginTime, endTime, comboBoxEdit2.SelectedIndex);
                else
                    dt = new CameraSystem().GetCheckInfo(0, key, beginTime, endTime, comboBoxEdit2.SelectedIndex);

                var machineCol = comboBoxEdit2.SelectedIndex == 0 ? "flow_stuEnterFromMachine" : "flow_stuBackFromMachine";
                var dateCol = comboBoxEdit2.SelectedIndex == 0 ? "flow_stuFlowEnterDate" : "flow_stuFlowBackDate";
                foreach (DataRow dr in dt.Rows)
                {
                    var machineAddr = dr[machineCol].ToString();
                    var checkInTime =  Convert.ToDateTime(dr[dateCol]);
                    var checkInTimestamp = TimeUtil.ToTimestamp(checkInTime);
                    if (!videoMap.ContainsKey(checkInTimestamp))
                    {
                        videoMap.Add(checkInTimestamp, IPCameraManager.Instance.ListCamerasToReplay(machineAddr, checkInTime));
                    }
                }
            }
            else
            {
                var checkInTime = time.AddHours(6);
                videoMap.Add(TimeUtil.ToTimestamp(checkInTime), IPCameraManager.Instance.ListCamerasToReplay(checkInTime));
            }

            var lookupBinding = new List<LookupBinding>();
            foreach (var kvp in videoMap)
            {
                foreach (var camera in kvp.Value)
                {
                    lookupBinding.Add(new LookupBinding
                    {
                        machineName = string.Format("{0}号门口机", camera.Address.MachineAddr),
                        cameraName = string.Format("线路{0}", camera.Address.Line),
                        videoTimestamp = TimeUtil.FromTimestamp(Convert.ToInt64(Path.GetFileNameWithoutExtension(camera.RecordPath))),
                        op = "1",
                        Camera = camera,
                        checkInTimestamp = TimeUtil.FromTimestamp(kvp.Key)
                    });
                }
            }

            gridControl2.DataSource = lookupBinding;
            label7.Text = string.Format("总共发现{0}个相关视频", lookupBinding.Count);
        }