private void button1_Click(object sender, EventArgs e) { int iMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MIN, "0")); int iMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.IMAGE_MAX, "0")); int iGrayMinVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MIN, "0")); int iGrayMaxVal = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.GRAY_MAX, "0")); int iEXPORT_IMAGE = StringEx.getInt(INIConfig.ReadString("Config", AppConfig.EXPORT_IMAGE, "0")); String cDFS_PATH = INIConfig.ReadString("UPLOAD", "DFS_PATH", "0"); String cAppDir = Application.StartupPath; Boolean isUpload = false; JActiveTable aMaster = new JActiveTable(); JActiveTable aSlave = new JActiveTable(); aSlave.TableName = "XT_IMG_LIST"; aMaster.TableName = "XT_IMG_REC"; }
public Boolean CheckTask(String cTaskID) { Boolean AllowTask = INIConfig.ReadInt("TASK", cTaskID + "_FLAG") > 0; String cDayHour = DateTime.Now.ToString("HHmm"); String cDay = DateTime.Now.ToString("yyyyMMdd"); String cORG_ID = INIConfig.ReadString("Config", AppConfig.ORG_ID); if (AllowTask) { String cTASK = INIConfig.ReadString("TASK", cTaskID); if (cTASK.Equals(cDayHour)) { String cTASK_DAY = INIConfig.ReadString("TASK", cTaskID + "_DAY"); if (!cTASK_DAY.Equals(cDay)) { JActiveTable aTable = new JActiveTable(); aTable.TableName = "XT_TASK"; aTable.AddField("TASK_ID", cTaskID); aTable.AddField("TASK_TIME", cTASK); aTable.AddField("TASK_DAY", cDay); aTable.AddField("ORG_ID", cORG_ID); String sql = aTable.getUpdateSQL(" ORG_ID='" + cORG_ID + "' AND TASK_ID='" + cTaskID + "'"); int iCode = WebSQL.ExecSQL(sql); if (iCode == 0) { sql = aTable.getInsertSQL(); iCode = WebSQL.ExecSQL(sql); } INIConfig.Write("TASK", cTaskID + "_DAY", cDay); return(iCode > 0); } } return(false); } else { return(false); } }
public void save() { ActiveResult vret = ActiveResult.Valid(AppConfig.SUCCESS); String cKeyID = StringEx.getString(request["ID"]); String cREC_ID = StringEx.getString(request["REC_ID"]); if (String.IsNullOrWhiteSpace(cREC_ID)) { vret = ActiveResult.Valid("参数传递错误!"); } else { String cDeviceID = DbManager.GetStrValue("SELECT CAMERA_ID FROM XT_IMG_REC WHERE REC_ID='" + cREC_ID + "'"); XT_CAMERA_Dao dao = new XT_CAMERA_Dao(); XT_CAMERA mv = dao.FindItem(cDeviceID); String cAddress = mv.addr; String CX = StringEx.getString(mv.x); String CY = StringEx.getString(mv.y); String ID = AutoID.getAutoID(); List <String> sqls = new List <string>(); sqls.Add(" update XT_IMG_REC SET ALARM_CHECKED =1 WHERE REC_ID = '" + cREC_ID + "' "); JActiveTable aTable = new JActiveTable(); aTable.TableName = "XT_JB"; aTable.AddField("ID", ID); aTable.AddField("ADRESS", cAddress); aTable.AddField("X", CX); aTable.AddField("Y", CY); sqls.Add(aTable.getInsertSQL()); int iCode = DbManager.ExecSQL(sqls); vret = ActiveResult.Valid(iCode); } response.Write(vret.toJSONString()); }
private bool UpdateAlarmFile(String cFileName) { JActiveTable aMaster = new JActiveTable(); aMaster.TableName = "XT_IMG_REC"; String cFileExt = Path.GetExtension(cFileName); String cREC_ID = Path.GetFileName(cFileName).Replace(cFileExt, ""); String cWebUrl = INIConfig.ReadString("Config", AppConfig.WEB_URL); String cUrl = "http://" + cWebUrl + "/api/dfs.ashx?UPLOAD_FIELD=UPLOAD_FLAG"; Boolean UploadFlag = CopyUnit.PostFile(cFileName, cWebUrl); if (UploadFlag) { log4net.WriteLogFile("REC_ID为:" + cREC_ID + "的图片,已上传!"); aMaster.ClearField(); aMaster.AddField("UPLOAD_FLAG", 1); aMaster.AddField("UPDATE_TIME", DateUtils.getDayTimeNum()); int iCode = WebSQL.ExecSQL(aMaster.getUpdateSQL(" REC_ID='" + cREC_ID + "' ")); try { File.Delete(cFileName); } catch (Exception ex) { log4net.WriteLogFile("UploadTask.Execute." + ex.Message); } log4net.WriteLogFile("REC_ID为:" + cREC_ID + "的图片,本删除成功!"); return(true); } else { return(false); } }
private void timPreset_Tick(object sender, EventArgs e) { timPreset.Enabled = false; int iCode = 0; try { Boolean AllowWait = false; int idx = -1; if (YWZ_VAL_LIST.Count > 0) { idx = YWZ_VAL_LIST.Count - 1; IVS_PTZ_PRESET vPreset = (IVS_PTZ_PRESET)YWZ_VAL_LIST[idx]; YWZ_VAL_LIST.RemoveAt(idx); YWZ_TXT_LIST.Items.RemoveAt(idx); int pLockStatus = 0; iCode = IVS_API.IVS_SDK_PtzControl(ApplicationEvent.iSession, ActiveCameraCode, 11, vPreset.cPresetName, "3", ref pLockStatus); if (iCode > 0) { log4net.WriteLogFile("调用预置位失败"); return; } else { AllowWait = true; } } if (AllowWait) { Boolean isAbort = false; int iORD = 0; while (!isAbort) { Application.DoEvents(); Thread.Sleep(200); iORD++; if (iORD > 15) { isAbort = true; } } } isPlay = true; String cAppDir = INIConfig.ReadString("ALARM", "FILE_PATH", ""); if (Directory.Exists(cAppDir)) { Directory.CreateDirectory(cAppDir); } int iPRESET_ID = 9999; String cKeyID = ""; string cKeyGuid = ""; if (idx != -1) { cKeyID = AutoID.getAutoID() + "_" + String.Format("{0:0#00}", idx); cKeyGuid = ActiveCameraCode + "X" + String.Format("{0:0#00}", idx); iPRESET_ID = idx; } else { cKeyID = AutoID.getAutoID() + "_0000"; cKeyGuid = ActiveCameraCode + "X" + "0000"; iPRESET_ID = 9999; } cAppDir = cAppDir + cKeyID.Substring(0, 8); if (Directory.Exists(cAppDir)) { Directory.CreateDirectory(cAppDir); } String cFileName = cAppDir + "\\" + cKeyID + ".jpg"; Application.DoEvents(); iCode = IVS_API.IVS_SDK_LocalSnapshot(ApplicationEvent.iSession, (UInt32)ulRealPlayHandle, 1, cFileName); if (iCode == 0) { cAppDir = INIConfig.ReadString("ANALYSE", "FILE_PATH", ""); String cAnalyseFile = cAppDir + cKeyID + ".jpg"; try { String cFilePath = Path.GetDirectoryName(cAnalyseFile); if (!Directory.Exists(cFilePath)) { Directory.CreateDirectory(cFilePath); } File.Copy(cFileName, cAnalyseFile); } catch (Exception ex) { log4net.WriteLogFile(ex.Message); } log4net.WriteLogFile("IVS_SDK_LocalSnapshot成功!" + cFileName); String cKeyText = IMGAI.getImageText(cFileName); List <String> sqls = new List <string>(); String cDayTime = DateTime.Now.ToString("yyyyMMddHHmmss"); JActiveTable aMaster = new JActiveTable(); aMaster.TableName = "XT_IMG_REC"; aMaster.AddField("REC_ID", cKeyID); aMaster.AddField("CAMERA_ID", ActiveCameraCode); aMaster.AddField("PRESET_ID", iPRESET_ID); aMaster.AddField("AI_FLAG", 0); aMaster.AddField("ALARM_FLAG", 0); aMaster.AddField("ALARM_CHECKED", 0); aMaster.AddField("IMAGE_REDRAW", 0); if (!String.IsNullOrEmpty(cKeyText)) { aMaster.AddField("P", IMGAI.getP(cKeyText)); aMaster.AddField("T", IMGAI.getT(cKeyText)); aMaster.AddField("X", IMGAI.getX(cKeyText)); } aMaster.AddField("FILE_URL", "/dfs/" + cKeyID.Substring(0, 8) + "/" + cKeyID + ".jpg"); aMaster.AddField("CREATE_TIME", cDayTime); aMaster.AddField("UPLOAD_FLAG", 1); String cMasterSQL = aMaster.getInsertSQL(); JActiveTable aSlave = new JActiveTable(); aSlave.TableName = "XT_CAMERA_STATUS"; aSlave.AddField("UPDATE_TIME", cDayTime); String cSlaveSQL = aSlave.getUpdateSQL("CAMERA_ID = '" + ActiveCameraCode + "' "); sqls.Add(cMasterSQL); sqls.Add(cSlaveSQL); iCode = WebSQL.ExecSQL(sqls); if (iCode > 0) { log4net.WriteLogFile(cKeyID + "插入数据库成功"); } } Application.DoEvents(); } catch (Exception ex) { log4net.WriteLogFile("Camera_YZW_List失败!" + ex.Message); } finally { if (YWZ_VAL_LIST.Count > 0) { timPreset.Enabled = true; } else if (YWZ_VAL_LIST.Count == 0) { timAfter.Enabled = true; } } }
public bool UpdateAnalyseFile(String cFileName) { Boolean isUpload = false; JActiveTable aMaster = new JActiveTable(); JActiveTable aSlave = new JActiveTable(); aSlave.TableName = "XT_IMG_LIST"; aMaster.TableName = "XT_IMG_REC"; log4net.WriteLogFile("分析线程正在运行中......"); if (String.IsNullOrWhiteSpace(cFileName)) { return(false); } String cFileExt = Path.GetExtension(cFileName); String cREC_ID = Path.GetFileName(cFileName).Replace(cFileExt, ""); List <KeyValue> ImageList = IMGAI.getImageList(cFileName, iMinVal, iMaxVal, iGrayMinVal, iGrayMaxVal); String cExportFileName = Application.StartupPath + "\\" + cREC_ID + ".zip"; int iCode = 0; Boolean MustRemoveFile = false; if ((ImageList != null) && (ImageList.Count > 0)) { List <String> sqls = new List <string>(); for (int k = 0; (ImageList != null) && (k < ImageList.Count); k++) { Application.DoEvents(); KeyValue rowKey = ImageList[k]; aSlave.ClearField(); String cKeyID = StringEx.getString(k + 1000); aSlave.AddField("ID", AutoID.getAutoID() + "_" + cKeyID); aSlave.AddField("ALARM_FLAG", 0); aSlave.AddField("REC_ID", cREC_ID); aSlave.AddField("CREATE_TIME", DateUtils.getDayTimeNum()); aSlave.AddField("POINT_LIST", rowKey.Val); sqls.Add(aSlave.getInsertSQL()); } sqls.Insert(0, "DELETE FROM XT_IMG_REC WHERE REC_ID='" + cREC_ID + "'"); iCode = WebSQL.ExecSQL(sqls); if (iCode > 0) { if (File.Exists(cExportFileName)) { SftpClient ftp = getAnalyseClient(); isUpload = CopyUnit.SSH_Upload(ftp, cExportFileName, "ANALYSE"); } } if (isUpload) { MustRemoveFile = true; log4net.WriteLogFile("UploadTask.文件上传成功!"); } else { log4net.WriteLogFile("UploadTask." + cREC_ID + ":文件上传失败!"); } } else { log4net.WriteLogFile("UploadTask." + cREC_ID + ":图片拆分失败!"); MustRemoveFile = true; } if (MustRemoveFile) { try { File.Delete(cFileName); } catch (Exception ex) { log4net.WriteLogFile(ex.Message); } try { File.Delete(cExportFileName); } catch (Exception ex) { log4net.WriteLogFile(ex.Message); } } aMaster.ClearField(); if (iCode > 0) { aMaster.AddField("AI_FLAG", 1); } else { aMaster.AddField("AI_FLAG", 2); } iCode = WebSQL.ExecSQL(aMaster.getUpdateSQL(" REC_ID='" + cREC_ID + "' ")); if (iCode > 0) { log4net.WriteLogFile("REC_ID为:" + cREC_ID + "的图片抠图成功!"); } return(true); }