管道基础大数据平台系统开发-【CS】-ExportMap
13693261870
2023-06-30 b81c466cd32be4307e3df35312a492d882d46b29
解决CPT数据重复发布失败
已修改2个文件
43 ■■■■ 文件已修改
ExportMap/cs/SGUtils.cs 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ExportMap/export.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ExportMap/cs/SGUtils.cs
@@ -73,12 +73,14 @@
            Tools.SetIsModel(args, list);
            MoveFiles(list);
            string names = GetNames(list);
            //string names = GetNames(list);
            string sql = getSql(list);
            for (int i = 0; i < 61; i++)
            {
                Thread.Sleep(3000);
                List<SpatialItem> items = SelectItems(names);
                //List<SpatialItem> items = SelectItems(names);
                List<SpatialItem> items = SelectItemsBySql(sql);
                if (null == items || items.Count == 0) continue;
                return InsertInto(list, items, args);
@@ -87,6 +89,35 @@
            return null;
        }
        /// <summary>
        /// 获取查询SQL
        /// </summary>
        private string getSql(List<SysMeta> metas)
        {
            List<string> list = new List<string>();
            foreach (SysMeta meta in metas)
            {
                list.Add("Name like '%_" + meta.name + "'");
            }
            string filters = string.Join(" or ", list);
            return string.Format("select id, Name, RelativePath, LayerName, DataSourceId, Description from SpatialItems where {0} order by id desc", filters);
        }
        /// <summary>
        /// 查询SG数据项
        /// </summary>
        private List<SpatialItem> SelectItemsBySql(string sql)
        {
            DataTable dt = SQLiteHelper.GetDataTable(sql);
            List<SpatialItem> list = ModelHandler.FillModel<SpatialItem>(dt);
            return list;
        }
        #region 废弃 *
        /// <summary>
        /// 查询SG数据项
        /// </summary>
@@ -113,6 +144,7 @@
            return string.Join(",", list);
        }
        #endregion
        /// <summary>
        /// 移除空文件
@@ -155,8 +187,9 @@
            List<int> ids = new List<int>();
            foreach (SysMeta meta in list)
            {
                IEnumerable<SpatialItem> iterator = from item in items where item.Name.Equals(meta.id + "_" + meta.name) select item;
                if (null == iterator) return ids;
                //IEnumerable<SpatialItem> iterator = from item in items where item.Name.Equals(meta.id + "_" + meta.name) select item;
                IEnumerable<SpatialItem> iterator = from item in items where item.Name.Contains("_" + meta.name) select item;
                if (null == iterator || 0 == iterator.Count()) return ids;
                meta.verid = iterator.First().id;
                int pubid = InsertToDB(meta, args);
ExportMap/export.html
@@ -118,7 +118,7 @@
    // 测试SG
    function toSG() {
      var data = { token: token, ids: [1523, 1525], depcode: "000305", dircode: "0102", userId: 1 };
      var data = { token: token, ids: [10516], depcode: "000305", dircode: "0102", userId: 1 }; // [1523, 1525]
      ajax("Convert/ToSG", "POST", JSON.stringify(data), null, null, function (rs) {
        alert("code = " + rs.code + ", msg = " + rs.msg + ", result = " + rs.result);
        console.log(rs);