From d6bc097e6974c0ba8f7ff74b9f8a86ba5addf036 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期二, 25 七月 2023 10:52:52 +0800 Subject: [PATCH] 1 --- ExportMap/cs/TerraUtils.cs | 39 ++++++++++++++++++++++++++++++++++----- 1 files changed, 34 insertions(+), 5 deletions(-) diff --git a/ExportMap/cs/TerraUtils.cs b/ExportMap/cs/TerraUtils.cs index 1525973..0974dc4 100644 --- a/ExportMap/cs/TerraUtils.cs +++ b/ExportMap/cs/TerraUtils.cs @@ -134,14 +134,34 @@ string txtFile = null; try { - txtFile = Path.Combine(Tools.TempDir, ExportUtil.DateStr + ".txt"); string dirPath = GetTerrainPath(args.dircode); if (!Directory.Exists(dirPath)) Directory.CreateDirectory(dirPath); + txtFile = Path.Combine(Tools.TempDir, ExportUtil.DateStr + ".txt"); string tifFile = Path.Combine(dirPath, args.dircode + ".tif"); - //if (File.Exists(tifFile)) File.Delete(tifFile); - WriteText(txtFile, metas); + int pubid = PubDBHelper.GetPushlishId(args.dircode, "DEM"); + if (pubid > 0 && File.Exists(tifFile)) + { + List<int> ids = PubDBHelper.GetPublishMetaId(pubid); + + List<SysMeta> news = new List<SysMeta>(); + foreach (SysMeta m in metas) + { + if (!ids.Contains(m.id)) news.Add(m); + } + if (0 == news.Count) return tifFile; + + string oldTif = Path.Combine(dirPath, args.dircode + "_old.tif"); + if (File.Exists(oldTif)) File.Delete(oldTif); + File.Move(tifFile, oldTif); + WriteText(txtFile, news, oldTif); + } + else + { + if (File.Exists(tifFile)) File.Delete(tifFile); + WriteText(txtFile, metas, null); + } string cmd = string.Format("python \"{0}\" -qgz {1} -file \"{2}\" -out \"{3}\"", PyFile, Qgz, txtFile, tifFile); err = Tools.ExecCmd(cmd, true, false); @@ -157,24 +177,30 @@ finally { if (!string.IsNullOrEmpty(txtFile) && File.Exists(txtFile)) File.Delete(txtFile); + + string dirPath = GetTerrainPath(args.dircode); + string tifFile = Path.Combine(dirPath, args.dircode + ".tif"); + string oldTif = Path.Combine(dirPath, args.dircode + "_old.tif"); + if (File.Exists(tifFile) && File.Exists(oldTif)) File.Delete(oldTif); } } /// <summary> /// 鍐欐枃鏈枃浠� /// </summary> - private static void WriteText(string txtFile, List<SysMeta> list) + private static void WriteText(string txtFile, List<SysMeta> list, string tif) { string uploadFolder = Tools.GetSetting("uploadFolder"); List<string> files = new List<string>(); + if (!string.IsNullOrEmpty(tif)) files.Add(tif); foreach (SysMeta meta in list) { string filePath = Path.Combine(uploadFolder, meta.path); if (File.Exists(filePath)) files.Add(filePath); } - string str = string.Join("\r\n", files); + string str = string.Join("\r\n", files); File.WriteAllText(txtFile, str); } @@ -235,6 +261,9 @@ { if (!ids.Contains(m.id)) PubDBHelper.InsertMetaPub(m.id, pubid, args.userId); } + string json = GetPointZ(args); + if (!string.IsNullOrEmpty(json)) PubDBHelper.UpdatePublishCoord(pubid, json); + return pubid; } -- Gitblit v1.9.3