From 5f80de49c4a00416591054180bf809a12a76d686 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期四, 07 十一月 2024 16:40:53 +0800
Subject: [PATCH] 1

---
 JavaCode/EtownTemplate/Entity.java |    1 
 JavaCode/EtownTemplate/Mapper.java |    1 
 JavaCode/FrmEtown.Designer.cs      |    2 
 TEWin/FrmWin.cs                    |   55 ++++----
 ExportMap/etown.html               |  270 +++++++++++++++++++++++++++++++++++++++++++++
 ExportMap/ExportMap.csproj         |    1 
 6 files changed, 303 insertions(+), 27 deletions(-)

diff --git a/ExportMap/ExportMap.csproj b/ExportMap/ExportMap.csproj
index a3dad7b..5433b07 100644
--- a/ExportMap/ExportMap.csproj
+++ b/ExportMap/ExportMap.csproj
@@ -139,6 +139,7 @@
     <Content Include="Web.config">
       <SubType>Designer</SubType>
     </Content>
+    <Content Include="etown.html" />
   </ItemGroup>
   <ItemGroup>
     <Compile Include="App_Start\WebApiConfig.cs" />
diff --git a/ExportMap/etown.html b/ExportMap/etown.html
new file mode 100644
index 0000000..7d3b3c1
--- /dev/null
+++ b/ExportMap/etown.html
@@ -0,0 +1,270 @@
+锘�<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+  <title>etown</title>
+  <meta http-equiv="Expires" content="0" />
+  <meta http-equiv="Cache" content="no-cache" />
+  <meta http-equiv="Pragma" content="no-cache" />
+  <meta http-equiv="Cache-control" content="no-cache" />
+  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <script src="js/jquery.1.12.4.js"></script>
+  <script src="js/rsa.min.js"></script>
+  <script src="js/rollups.js"></script>
+  <script src="js/turf.min.6.5.js"></script>
+  <script src="js/insertFiles.js"></script>
+  <script>
+    var app = {};
+    var path = "2024102801";
+    var url = "http://192.168.11.74:8085/"
+
+    $(function () {
+      $("#pathSpan").html(path);
+    });
+
+    // Ajax
+    function ajax(url, type, data, dataType, contentType, fn) {
+      $.ajax({
+        url: url,
+        type: type,
+        data: data,
+        dataType: dataType || "json", // html銆乯son銆乯sonp銆乻cript銆乼ext
+        contentType: contentType || "application/json", // "application/x-www-form-urlencoded"
+        success: function (data) {
+          fn(data);
+        },
+        error: function (e) {
+          console.error(e);
+        }
+      });
+    }
+
+    // 鑾峰彇URL
+    function getUrl(method) {
+      return url + method + "?t=1";
+    }
+  </script>
+  <script>
+    // 鏌ヨ鐩綍
+    function selectPath() {
+      ajax(getUrl("meta/selectPath"), "GET", null, null, null, function (rs) {
+        console.log(rs);
+        alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+        path = rs.data;
+      });
+    }
+
+    // 涓婁紶鏂囦欢
+    function uploadFiles() {
+      var formData = new FormData();
+      var fs = document.getElementById("file1");
+      for (var i = 0, c = fs.files.length; i < c; i++) {
+        formData.append(fs.files[i].name, fs.files[i]); // fs.files[i].name,file
+      }
+
+      $.ajax(getUrl("meta/uploadFiles") + "&path=" + path, {
+        type: "post",
+        data: formData,
+        async: true,
+        cache: false,
+        processData: false,
+        contentType: false,
+        success: function (rs) {
+          document.getElementById("file1").value = "";
+          console.log(rs);
+          alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+        },
+        error: function (e) {
+          document.getElementById("file1").value = "";
+          console.error(e);
+          alert("涓婁紶鏂囦欢澶辫触锛�");
+        }
+      });
+    }
+
+    // 鏌ヨ鏂囦欢
+    function selectFiles() {
+      ajax(getUrl("meta/selectFiles") + "&path=" + path, "GET", null, null, null, function (rs) {
+        console.log(rs);
+        alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+        app.data = rs.data;
+      });
+    }
+
+    // 鍒犻櫎鏂囦欢
+    function deleteFiles() {
+      if (app.data == null) return;
+
+      ajax(getUrl("meta/deleteFiles"), "POST", JSON.stringify([data[0]]), null, null, function (rs) {
+        console.log(rs);
+        alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+        selectFiles();
+      });
+    }
+
+    // 鏌ヨ鏄犲皠
+    function selectMappers() {
+      ajax(getUrl("meta/selectMappers") + "&path=" + path + "&dirid=1", "GET", null, null, null, function (rs) {
+        console.log(rs);
+        alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+        if (rs.code == 200) {
+          app.mappers = rs.data;
+        }
+      });
+    }
+
+    // 鏁版嵁鍏ュ簱
+    function insertFiles() {
+      var data1 = [
+        {
+          "eventid": "fe2845ad-a03d-4037-aeb4-f09d3b704ed4",
+          "dep": null,
+          "dir": "00",
+          "name": "gallery.shp",
+          "type": "shp",
+          "guid": "dcbf69d1e47f577b47c722e65a289703",
+          "path": "2024102801_zip\\gallery.shp",
+          "sizes": 0.019,
+          "createUser": 1,
+          "createTime": null,
+          "extName": ".shp",
+          "tab": "gallery",
+          "entity": "gallery",
+          "rows": 0,
+          "records": 0,
+          "msg": null
+        }
+      ];
+      var data2 = [
+        {
+          "eventid": "bcb30f34-30a2-444f-8bfa-c5615780aa18",
+          "dep": null,
+          "dir": "00",
+          "name": "inter_land.gdb\\land_planning",
+          "type": "gdb",
+          "guid": "8a3d080d26fd1d88e0d25ab9ec50b93b",
+          "path": "2024102801_zip\\inter_land.gdb",
+          "sizes": 0.221,
+          "createUser": 1,
+          "createTime": null,
+          "extName": ".gdb",
+          "tab": "land_planning",
+          "entity": "landPlanning",
+          "rows": 0,
+          "records": 0,
+          "msg": null
+        }
+      ];
+
+      ajax(getUrl("meta/insertFiles"), "POST", JSON.stringify(data2), null, null, function (rs) {
+        console.log(rs);
+        alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+      });
+    }
+    // 涓婁紶闄勪欢
+    function uploadAttach() {
+      var formData = new FormData();
+      var fs = document.getElementById("file3");
+      if (fs.files.length == 0) {
+        alert("璇烽�夋嫨瑕佷笂浼犵殑鏂囦欢锛�");
+        return;
+      }
+      for (var i = 0, c = fs.files.length; i < c; i++) {
+        formData.append("file", fs.files[i]); // fs.files[i].name,file
+      }
+
+      $.ajax(getUrl("dataQuery/uploadFiles") + "&tabName=lf.sys_style&eventid=fa25979a5ef8b43ba82a0be35b3fb0d4", {
+        type: "post",
+        data: formData,
+        async: true,
+        cache: false,
+        processData: false,
+        contentType: false,
+        success: function (rs) {
+          console.log(rs);
+          document.getElementById("file3").value = "";
+          alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+        },
+        error: function (e) {
+          console.error(e);
+          document.getElementById("file3").value = "";
+          alert("涓婁紶鏂囦欢澶辫触锛�");
+        }
+      });
+    }
+  </script>
+  <script>
+    // 鍏冩暟鎹�-璇锋眰涓嬭浇
+    function metaDownloadReq() {
+      var obj = {
+        pwd: encrypt.encrypt("Test!321&456"),
+        ids: [1411, 1412, 8, 2140]
+      };
+
+      ajax(getUrl("meta/downloadReq"), "POST", JSON.stringify(obj), null, null, function (rs) {
+        console.log(rs);
+        alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+      });
+    }
+
+    // 涓嬭浇鏂囦欢
+    function selectDownloadFile() {
+      var guid = $.trim($("#fileId").val()); // var guid = "55269c88c147fb894c27e3de7076877d";
+      if (!guid) return;
+      var pwd = encodeURIComponent(encrypt.encrypt("Test!321&456")); // Admin@123
+
+      ajax(getUrl("meta/selectDownloadFile") + "&guid=" + guid + "&pwd=" + pwd, "GET", null, null, null, function (rs) {
+        console.log(rs);
+        //alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.data);
+        if (rs.code != 200 || !rs.data) {
+          alert(rs.msg);
+          return;
+        }
+
+        downloadFile(guid, pwd);
+      });
+    }
+
+    function downloadFile(guid, pwd) {
+      //var a = document.createElement('a');
+      //a.style.display = 'none';
+      //a.href = getUrl("meta/downloadFile") + "&guid=" + guid + "&pwd=" + encodeURIComponent(encrypt.encrypt("Admin@123"));
+
+      //document.body.appendChild(a);
+      //a.click();
+      //document.body.removeChild(a);
+
+      var url = getUrl("meta/downloadFile") + "&guid=" + guid + "&pwd=" + pwd;
+      $("#downFrame").attr("src", url).click();
+    }
+  </script>
+</head>
+<body>
+  <!--<form id="upForm" name="upForm" method="post" enctype="multipart/form-data" action="http://127.0.0.1:12316/file/upload">-->
+  <form id="upForm" name="upForm" method="post" enctype="multipart/form-data" action="Upload/Post?path=2024102801">
+    涓婁紶璺緞锛�<span id="pathSpan"></span>
+    <hr />
+    <br />
+
+    鏁版嵁鍏ュ簱锛�
+    <input id="file1" type="file" multiple="multiple" accept=".xls,.xlsx,.mdb,.zip" />
+    <input value="鏌ヨ鐩綍 *" type="button" onclick="selectPath();" />
+    <input value="涓婁紶鏂囦欢" type="button" onclick="uploadFiles();" />
+    <input value="鏌ヨ鏂囦欢 *" type="button" onclick="selectFiles();" />
+    <input value="鍒犻櫎鏂囦欢" type="button" onclick="deleteFiles();" />
+    <input value="鏌ヨ鏄犲皠 *" type="button" onclick="selectMappers();" />
+    <input value="鏁版嵁鍏ュ簱 *" type="button" onclick="insertFiles();" />
+    <hr />
+    <br />
+
+    鍏冩暟鎹細
+    <input value="璇锋眰涓嬭浇" type="button" onclick="metaDownloadReq();" />
+    <input value="涓嬭浇鏂囦欢" type="button" onclick="selectDownloadFile();" />
+    <iframe id="downFrame" src="" style="display: none; border: 0; padding: 0; height: 0; width: 0"></iframe>
+    <hr />
+    <br />
+  </form>
+  <br />
+  <br />
+</body>
+</html>
diff --git a/JavaCode/EtownTemplate/Entity.java b/JavaCode/EtownTemplate/Entity.java
index 5f86ccc..7817930 100644
--- a/JavaCode/EtownTemplate/Entity.java
+++ b/JavaCode/EtownTemplate/Entity.java
@@ -13,6 +13,7 @@
 
 /**
  * {bak}瀹炰綋绫�
+ * 
  * @author WWW
  * @date {date}
  */
diff --git a/JavaCode/EtownTemplate/Mapper.java b/JavaCode/EtownTemplate/Mapper.java
index b41e1c4..b11b025 100644
--- a/JavaCode/EtownTemplate/Mapper.java
+++ b/JavaCode/EtownTemplate/Mapper.java
@@ -7,6 +7,7 @@
 
 /**
  * {bak}鏄犲皠绫�
+ * 
  * @author WWW
  * @date {date}
  */
diff --git a/JavaCode/FrmEtown.Designer.cs b/JavaCode/FrmEtown.Designer.cs
index 889e8a5..c6e7e11 100644
--- a/JavaCode/FrmEtown.Designer.cs
+++ b/JavaCode/FrmEtown.Designer.cs
@@ -55,7 +55,7 @@
             this.txtTabNS.Name = "txtTabNS";
             this.txtTabNS.Size = new System.Drawing.Size(104, 26);
             this.txtTabNS.TabIndex = 25;
-            this.txtTabNS.Text = "11860504";
+            this.txtTabNS.Text = "11891777";
             // 
             // txtTabPre
             // 
diff --git a/TEWin/FrmWin.cs b/TEWin/FrmWin.cs
index 49a0a95..87c9072 100644
--- a/TEWin/FrmWin.cs
+++ b/TEWin/FrmWin.cs
@@ -577,16 +577,7 @@
 
                 if (angleCount % 3 == 2)
                 {
-                    IPoint p1 = (IPoint)line.Points[0];
-                    IPoint p2 = (IPoint)line.Points[1];
-                    IPoint p3 = (IPoint)line.Points[2];
-                    var pos1 = SG.Creator.CreatePosition(p1.X, p1.Y);
-                    var pos2 = SG.Creator.CreatePosition(p2.X, p2.Y);
-                    var pos3 = SG.Creator.CreatePosition(p3.X, p3.Y);
-
-                    var first = SG.CoordServices.GetAimingAngles(pos1, pos2);
-                    var sencod = SG.CoordServices.GetAimingAngles(pos2, pos3);
-                    angleSize = getAngle(first, sencod);
+                    angleSize = getAngle(line);
                     angleLabel.Text = angleSize.ToString() + "掳";
                 }
             }
@@ -596,21 +587,33 @@
             }
         }
 
-        private double getAngle(IPosition71 first, IPosition71 sencod)
+        private double getAngle(ILineString line, bool getB = false)
         {
-            /*double angle = 0;
-            if (sencod.Yaw > first.Yaw)
+            IPoint p1 = (IPoint)line.Points[0];
+            IPoint p2 = (IPoint)line.Points[1];
+            IPoint p3 = (IPoint)line.Points[2];
+            var pos1 = SG.Creator.CreatePosition(p1.X, p1.Y);
+            var pos2 = SG.Creator.CreatePosition(p2.X, p2.Y);
+            var pos3 = SG.Creator.CreatePosition(p3.X, p3.Y);
+
+            //var first = SG.CoordServices.GetAimingAngles(pos1, pos2);
+            var first = SG.CoordServices.GetAimingAngles(pos1, pos2);
+            var sencod = SG.CoordServices.GetAimingAngles(pos2, pos3);
+            if (getB) return Math.Round(sencod.Yaw, 2);
+
+            double angle = 0;
+            if (first.Yaw >= 0 && first.Yaw < 180)
             {
-                angle = sencod.Yaw - first.Yaw;
-                if (angle > 180) angle = 360 - sencod.Yaw + first.Yaw;
+                angle = first.Yaw + 180 - sencod.Yaw;
+                if (angle > 180) angle = 360 - angle;
+                if (angle < 0) angle = -angle;
             }
             else
             {
-                angle = first.Yaw - sencod.Yaw;
-                if (angle > 180) angle = 360 + sencod.Yaw - first.Yaw;
-            }*/
-
-            double angle = sencod.Yaw > first.Yaw ? sencod.Yaw - first.Yaw : first.Yaw - sencod.Yaw;
+                angle = sencod.Yaw - (first.Yaw - 180);
+                if (angle > 180) angle = 360 - angle;
+                if (angle < 0) angle = -angle;
+            }
 
             return Math.Round(angle, 2);
         }
@@ -648,14 +651,14 @@
 
                 if (angleCount % 3 == 2)
                 {
-                    IPoint secondPoint = (IPoint)line.Points[line.Points.Count - 2];
+                    //IPoint secondPoint = (IPoint)line.Points[line.Points.Count - 2];
+                    //var secondPos = SG.Creator.CreatePosition(secondPoint.X, secondPoint.Y);
                     IPoint nowPoint = (IPoint)line.Points[line.Points.Count - 1];
-                    var secondPos = SG.Creator.CreatePosition(secondPoint.X, secondPoint.Y);
                     var newPos = SG.Creator.CreatePosition(nowPoint.X, nowPoint.Y);
-
                     bLabel = CreateLabel(newPos, GetGroupId(angleGroupName), "#00FFFF");
-                    bLabel.Text = Math.Round(SG.CoordServices.GetAimingAngles(secondPos, newPos).Yaw, 2) + "掳";
+                    bLabel.Text = getAngle(line, true) + "掳";
 
+                    angleSize = getAngle(line);
                     angleLabel.Text = angleSize.ToString() + "掳";
                 }
                 angleCount++;
@@ -870,7 +873,7 @@
         private void Save()
         {
             string emptyFly = Path.Combine(Application.StartupPath, "Resources", "empty.fly");
-            if (emptyFly.Equals(this.fly))
+            if (emptyFly.Contains("empty.fly")) //if (emptyFly.Equals(this.fly))
             {
                 SaveAs();
                 return;
@@ -951,7 +954,7 @@
         {
             try
             {
-                if (String.IsNullOrEmpty(fileName)) fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".fly";
+                if (String.IsNullOrEmpty(fileName) || "empty.fly".Equals(fileName)) fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".fly";
 
                 SaveLocation();
                 this.SG.Command.Execute(1019, 0); // Capture Tree State

--
Gitblit v1.9.3