From 110bac1162d9841138c39257e5eecdd6c45e78b4 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期二, 25 七月 2023 09:05:10 +0800
Subject: [PATCH] 1

---
 ExportMap/cs/TerraUtils.cs |   56 +++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 33 insertions(+), 23 deletions(-)

diff --git a/ExportMap/cs/TerraUtils.cs b/ExportMap/cs/TerraUtils.cs
index 990fd6e..1525973 100644
--- a/ExportMap/cs/TerraUtils.cs
+++ b/ExportMap/cs/TerraUtils.cs
@@ -120,10 +120,10 @@
                 err = ex.Message;
                 return null;
             }
-            finally
+            /*finally
             {
                 if (!string.IsNullOrEmpty(tifFile) && File.Exists(tifFile)) File.Delete(tifFile);
-            }
+            }*/
         }
 
         /// <summary>
@@ -139,7 +139,7 @@
                 if (!Directory.Exists(dirPath)) Directory.CreateDirectory(dirPath);
 
                 string tifFile = Path.Combine(dirPath, args.dircode + ".tif");
-                if (File.Exists(tifFile)) File.Delete(tifFile);
+                //if (File.Exists(tifFile)) File.Delete(tifFile);
 
                 WriteText(txtFile, metas);
 
@@ -176,24 +176,6 @@
             string str = string.Join("\r\n", files);
 
             File.WriteAllText(txtFile, str);
-        }
-
-        /// <summary>
-        /// 鐢熸垚楂樼▼鍒囩墖 *
-        /// </summary>
-        private static void Generate(XYZArgs args, string tifFile, ref string err)
-        {
-            string dirPath = GetTerrainPath(args.dircode).Replace("\\", "/");
-            string name = "ctb_" + ExportUtil.DateStr;
-
-            string runDocker = string.Format("docker run -id --name {0} -v \"{1}\":\"/data\" tumgis/ctb-quantized-mesh", name, dirPath);
-            string createMesh = string.Format("docker exec {0} ctb-tile -f Mesh -C -N -s {1} -e {2} -o /data /data/{3}.tif", name, args.max, args.min, args.dircode); // Mesh, Terrain
-            string createLayer = string.Format("docker exec {0} ctb-tile -f Mesh -C -N -s {1} -e {2} -l -o /data /data/{3}.tif", name, args.max, args.min, args.dircode); // Mesh, Terrain
-            string stop = string.Format("docker stop {0}", name);
-            string rm = string.Format("docker rm {0}", name);
-
-            List<string> list = new List<string> { runDocker, createMesh, createLayer, stop, rm };
-            err = Tools.ExecCmd(list);
         }
 
         /// <summary>
@@ -244,7 +226,17 @@
         /// </summary>
         private static int InsertToDB(List<SysMeta> metas, XYZArgs args)
         {
-            if (PubDBHelper.IsPublish(args.dircode, "DEM")) return 1;
+            //if (PubDBHelper.IsPublish(args.dircode, "DEM")) return 1;
+            int pubid = PubDBHelper.GetPushlishId(args.dircode, "DEM");
+            if (pubid > 0) // 鏇存柊鍙戝竷
+            {
+                List<int> ids = PubDBHelper.GetPublishMetaId(pubid);
+                foreach (SysMeta m in metas)
+                {
+                    if (!ids.Contains(m.id)) PubDBHelper.InsertMetaPub(m.id, pubid, args.userId);
+                }
+                return pubid;
+            }
 
             SysMeta meta = metas[0];
             meta.type = "DEM";
@@ -253,7 +245,7 @@
             SysPublish sys = Tools.NewPublish(meta, args, GetReleaseUrl(args.dircode), "3d\\terrain\\" + args.dircode);
             sys.geom = GetPointZ(args);
 
-            int pubid = PubDBHelper.InsertPublish(sys);
+            pubid = PubDBHelper.InsertPublish(sys);
             if (pubid > 0)
             {
                 sys.id = pubid;
@@ -299,5 +291,23 @@
 
             return string.Format("ST_GeomFromText('POINT Z ({0} {1} {2})')", str[1], str[0], i);
         }
+
+        /*/// <summary>
+        /// 鐢熸垚楂樼▼鍒囩墖 *
+        /// </summary>
+        private static void Generate(XYZArgs args, string tifFile, ref string err)
+        {
+            string dirPath = GetTerrainPath(args.dircode).Replace("\\", "/");
+            string name = "ctb_" + ExportUtil.DateStr;
+
+            string runDocker = string.Format("docker run -id --name {0} -v \"{1}\":\"/data\" tumgis/ctb-quantized-mesh", name, dirPath);
+            string createMesh = string.Format("docker exec {0} ctb-tile -f Mesh -C -N -s {1} -e {2} -o /data /data/{3}.tif", name, args.max, args.min, args.dircode); // Mesh, Terrain
+            string createLayer = string.Format("docker exec {0} ctb-tile -f Mesh -C -N -s {1} -e {2} -l -o /data /data/{3}.tif", name, args.max, args.min, args.dircode); // Mesh, Terrain
+            string stop = string.Format("docker stop {0}", name);
+            string rm = string.Format("docker rm {0}", name);
+
+            List<string> list = new List<string> { runDocker, createMesh, createLayer, stop, rm };
+            err = Tools.ExecCmd(list);
+        }*/
     }
 }

--
Gitblit v1.9.3