コード例 #1
0
        public bool Submit()
        {
            if (!Validate())
            {
                return(false);
            }

            List <TaskInfoV3_1> tasklist = new List <TaskInfoV3_1>();

            foreach (DataRow item in m_TaskList.Rows)
            {
                string channelID  = "";
                string deviceIP   = "";
                string deviceName = "";
                uint   devicePort = 0;
                DataModel.E_VDA_NET_STORE_DEV_PROTOCOL_TYPE deviceType   = E_VDA_NET_STORE_DEV_PROTOCOL_TYPE.E_DEV_PROTOCOL_CONTYPE_NONE;
                DataModel.E_VDA_NET_STORE_DEV_PROTOCOL_TYPE protocolType = E_VDA_NET_STORE_DEV_PROTOCOL_TYPE.E_DEV_PROTOCOL_CONTYPE_NONE;
                string loginUser = "";
                string loginPwd  = "";
                uint   type      = (UInt32)item["FileType"];
                if (type == (uint)TaskFileType.PlateFile)
                {
                    string[] platitems = item["OriFilePath"].ToString().Split('`');
                    deviceName   = item["OriFilePath"].ToString();
                    deviceIP     = platitems[0];
                    devicePort   = Convert.ToUInt32(platitems[1]);
                    deviceType   = (E_VDA_NET_STORE_DEV_PROTOCOL_TYPE)Convert.ToInt32(platitems[2]);
                    protocolType = (E_VDA_NET_STORE_DEV_PROTOCOL_TYPE)Convert.ToInt32(platitems[2]);
                    loginUser    = platitems[3];
                    loginPwd     = platitems[4];
                    channelID    = platitems[5];
                }
                string param = item["AlgthmParam"].ToString();
                if (string.IsNullOrEmpty(param))
                {
                    param = GetDefaultAnalyseParam((E_VIDEO_ANALYZE_TYPE)Convert.ToInt32(item["AlgthmType"]));
                }
                var task = new TaskInfoV3_1()
                {
                    TaskId       = 0,
                    TaskType     = TaskType.History,
                    TaskName     = item["TaskName"].ToString(),
                    StorePort    = 0,
                    StoreIP      = "",
                    ProtocolType = protocolType,
                    OriFilePath  = item["OriFilePath"].ToString(),
                    LoginUser    = loginUser,
                    CameraID     = item["TaskName"].ToString(),
                    ChannelID    = channelID,
                    DeviceIP     = deviceIP,
                    DeviceName   = deviceName,
                    DevicePort   = devicePort,
                    DeviceType   = deviceType,
                    EndTime      = (DateTime)item["EndTime"],
                    FileSize     = (UInt64)item["FileSize"],
                    FileType     = (TaskFileType)Convert.ToInt32(item["FileType"]),
                    LoginPwd     = loginPwd,
                    StartTime    = (DateTime)item["StartTime"],
                    StatusList   = new List <StatusInfoV3_1>(),
                    UserHandle   = 0,
                    Priority     = 0,
                    Order        = 0,
                };
                task.StatusList.Add(new StatusInfoV3_1()
                {
                    AlgthmType   = (E_VIDEO_ANALYZE_TYPE)Convert.ToInt32(item["AlgthmType"]),
                    AnalyseParam = param,
                    Progress     = 0,
                    Status       = 0,
                    LeftTime     = 0,
                });
                tasklist.Add(task);
            }
            var retlist = Framework.Container.Instance.CommService.ADD_TASK(tasklist);

            foreach (DataRow item in m_TaskList.Rows)
            {
                try
                {
                    var key = retlist.Single(it => it.Value == item["TaskName"].ToString());
                    Framework.Container.Instance.CommService.TASK_REANALYSE(key.Key, (E_VIDEO_ANALYZE_TYPE)Convert.ToInt32(item["AlgthmType"]), "", Convert.ToUInt32(item["SplitTime"].ToString()));
                }
                catch (Exception)
                {
                    continue;
                }
            }

            return(true);
        }
コード例 #2
0
        public bool Submit()
        {
            if (!Validate())
            {
                return(false);
            }

            List <TaskInfoV3_1> tasklist = new List <TaskInfoV3_1>();

            foreach (DataRow item in m_TaskList.Rows)
            {
                string channelID  = "";
                string deviceIP   = "";
                string deviceName = "";
                uint   devicePort = 0;
                DataModel.E_VDA_NET_STORE_DEV_PROTOCOL_TYPE deviceType   = E_VDA_NET_STORE_DEV_PROTOCOL_TYPE.E_DEV_PROTOCOL_CONTYPE_NONE;
                DataModel.E_VDA_NET_STORE_DEV_PROTOCOL_TYPE protocolType = E_VDA_NET_STORE_DEV_PROTOCOL_TYPE.E_DEV_PROTOCOL_CONTYPE_NONE;
                string loginUser = "";
                string loginPwd  = "";
                uint   type      = (UInt32)item["FileType"];
                if (type == 3)
                {
                    string[] platitems = item["OriFilePath"].ToString().Split('`');
                    deviceName   = item["OriFilePath"].ToString();
                    deviceIP     = platitems[0];
                    devicePort   = Convert.ToUInt32(platitems[1]);
                    deviceType   = (E_VDA_NET_STORE_DEV_PROTOCOL_TYPE)Convert.ToInt32(platitems[2]);
                    protocolType = (E_VDA_NET_STORE_DEV_PROTOCOL_TYPE)Convert.ToInt32(platitems[2]);
                    loginUser    = platitems[3];
                    loginPwd     = platitems[4];
                    channelID    = platitems[5];
                }
                tasklist.Add(new TaskInfoV3_1()
                {
                    TaskId       = 0,
                    TaskType     = TaskType.History,
                    TaskName     = item["TaskName"].ToString(),
                    StorePort    = 0,
                    StoreIP      = "",
                    Status       = 0,
                    ProtocolType = protocolType,
                    OriFilePath  = item["OriFilePath"].ToString(),
                    LoginUser    = loginUser,
                    AlgthmType   = (E_VIDEO_ANALYZE_TYPE)Convert.ToInt32(item["AlgthmType"]),
                    AnalyseParam = "",
                    CameraID     = item["TaskName"].ToString(),
                    ChannelID    = channelID,
                    DeviceIP     = deviceIP,
                    DeviceName   = deviceName,
                    DevicePort   = devicePort,
                    DeviceType   = deviceType,
                    EndTime      = (DateTime)item["EndTime"],
                    FileSize     = (UInt64)item["FileSize"],
                    FileType     = (TaskFileType)Convert.ToInt32(item["FileType"]),
                    LoginPwd     = loginPwd,
                    StartTime    = (DateTime)item["StartTime"],
                });
            }
            IVX.Live.MainForm.Framework.Container.Instance.CommService.ADD_TASK(tasklist);


            return(true);
        }