管道基础大数据平台系统开发-【CS】-ExportMap
1
13693261870
2023-03-17 7601dfc7ed26319174e415b41306339cf534075a
1
已修改2个文件
55 ■■■■■ 文件已修改
ExportMap/Controllers/ConvertController.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ExportMap/cs/SGUtils.cs 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ExportMap/Controllers/ConvertController.cs
@@ -86,10 +86,12 @@
                }
                SGUtils utils = new SGUtils();
                int count = utils.Release(args);
                string err = null;
                int count = utils.Release(args, ref err);
                if (0 == count)
                {
                    return ResponseMsg<int>.fail("失败");
                    return ResponseMsg<int>.fail(null == err ? "失败" : err);
                }
                return ResponseMsg<int>.success("成功", count);
ExportMap/cs/SGUtils.cs
@@ -63,17 +63,19 @@
        /// </summary>
        /// <param name="args">XYZ参数</param>
        /// <returns>行数</returns>
        public int Release(XYZArgs args)
        public int Release(XYZArgs args, ref string err)
        {
            List<SysMeta> list = XYZUtils.selectMetas(args.ids, "and type in ('mpt', '3dml')");
            if (null == list || list.Count == 0) return 0;
            int maxId = GetMaxId();
            int maxId = GetMaxId(); maxId = 411576; //
            RomoveNoneFiles(list);
            if (list.Count == 0) return 0;
            LinkFiles(list);
            err = LinkFiles(list);
            if (!string.IsNullOrEmpty(err)) return 0;
            int count = 0;
            for (int i = 0; i < 25; i++)
            {
                Thread.Sleep(3000);
@@ -81,16 +83,17 @@
                List<SpatialItem> items = SelectItems(maxId);
                if (null == items || items.Count == 0) continue;
                //
                count = items.Count;
                break;
            }
            return 0;
            return count;
        }
        /// <summary>
        /// 获取最大ID值
        /// </summary>
        public static int GetMaxId()
        public int GetMaxId()
        {
            Object obj = SQLiteHelper.ExecuteScalar("select max(id) from SpatialItems");
@@ -102,7 +105,7 @@
        /// </summary>
        /// <param name="maxId">最大ID值</param>
        /// <returns>SG数据项</returns>
        public static List<SpatialItem> SelectItems(int maxId)
        public List<SpatialItem> SelectItems(int maxId)
        {
            string sql = string.Format("select id, Name, RelativePath, LayerName, DataSourceId, Description from SpatialItems where id > {0} order by id desc", maxId);
@@ -165,9 +168,9 @@
            }
            string str = Tool.ExecCmd(list);
            if (0 == list.Count) return "没有需要更新发布的文件";
            return str;
            return Tool.ExecCmd(list);
        }
        /// <summary>
@@ -178,11 +181,16 @@
            string uploadFolder = Tool.GetSetting("uploadFolder");
            string d3mlFolder = Tool.GetSetting("3dmlFolder");
            string d3ml = Path.Combine(uploadFolder, meta.path);
            string targetD3ml = Path.Combine(d3mlFolder, meta.id.ToString(), meta.path);
            string targetFolder = Path.Combine(d3mlFolder, meta.id.ToString());
            if (!Directory.Exists(targetFolder)) Directory.CreateDirectory(targetFolder);
            string link = string.Format("mklink \"{0}\" \"{1}\"", targetD3ml, d3ml); // /H
            list.Add(link);
            string d3ml = Path.Combine(uploadFolder, meta.path);
            string targetD3ml = Path.Combine(d3mlFolder, meta.id.ToString(), meta.name);
            if (!File.Exists(targetD3ml))
            {
                list.Add(string.Format("mklink \"{0}\" \"{1}\"", targetD3ml, d3ml)); // /H
            }
        }
        /// <summary>
@@ -193,18 +201,21 @@
            string uploadFolder = Tool.GetSetting("uploadFolder");
            string mptFolder = Tool.GetSetting("mptFolder");
            string targetFolder = Path.Combine(mptFolder, meta.id.ToString());
            if (!Directory.Exists(targetFolder)) Directory.CreateDirectory(targetFolder);
            string mpt = Path.Combine(uploadFolder, meta.path);
            string targetMpt = Path.Combine(mptFolder, meta.id.ToString(), meta.path);
            string targetMpt = Path.Combine(mptFolder, meta.id.ToString(), meta.name);
            string midx = Path.Combine(uploadFolder, meta.path.Replace(".mpt", ".midx"));
            string targetMidx = Path.Combine(mptFolder, meta.id.ToString(), meta.path.Replace(".mpt", ".midx"));
            string targetMidx = Path.Combine(mptFolder, meta.id.ToString(), meta.name.Replace(".mpt", ".midx"));
            string strmi = Path.Combine(uploadFolder, meta.path.Replace(".mpt", ".strmi"));
            string targetStrmi = Path.Combine(mptFolder, meta.id.ToString(), meta.path.Replace(".mpt", ".strmi"));
            string targetStrmi = Path.Combine(mptFolder, meta.id.ToString(), meta.name.Replace(".mpt", ".strmi"));
            list.Add(string.Format("mklink \"{0}\" \"{1}\"", targetMpt, mpt));
            list.Add(string.Format("mklink \"{0}\" \"{1}\"", targetMidx, midx));
            list.Add(string.Format("mklink \"{0}\" \"{1}\"", targetStrmi, strmi));
            if (!File.Exists(targetMpt)) list.Add(string.Format("mklink \"{0}\" \"{1}\"", targetMpt, mpt));
            if (!File.Exists(targetMidx)) list.Add(string.Format("mklink \"{0}\" \"{1}\"", targetMidx, midx));
            if (!File.Exists(targetStrmi)) list.Add(string.Format("mklink \"{0}\" \"{1}\"", targetStrmi, strmi));
        }
    }
}