管道基础大数据平台系统开发-【CS】-ExportMap
1
13693261870
2024-11-07 5f80de49c4a00416591054180bf809a12a76d686
1
已添加1个文件
已修改5个文件
330 ■■■■■ 文件已修改
ExportMap/ExportMap.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ExportMap/etown.html 270 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
JavaCode/EtownTemplate/Entity.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
JavaCode/EtownTemplate/Mapper.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
JavaCode/FrmEtown.Designer.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
TEWin/FrmWin.cs 55 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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" />
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、json、jsonp、script、text
        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>
JavaCode/EtownTemplate/Entity.java
@@ -13,6 +13,7 @@
/**
 * {bak}实体类
 *
 * @author WWW
 * @date {date}
 */
JavaCode/EtownTemplate/Mapper.java
@@ -7,6 +7,7 @@
/**
 * {bak}映射类
 *
 * @author WWW
 * @date {date}
 */
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
            // 
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