Пример #1
0
        public static ConvertResult CoordinateConvert(IEnumerable <ConvertFileList> files, IList <string> errorInfo, IDataConvertAppService dataConvertAppService)
        {
            List <ConvertFileList> CCFileList = new List <ConvertFileList>();

            foreach (var f in files)
            {
                if (f.ConvertResult == 0)
                {
                    errorInfo.Add("格式转换失败: " + f.ConvertMsg + "  文件:" + f.LogicFileName);
                    return(null);
                }

                FileInfo fi = new FileInfo(f.PhysicsFilePath);

                ConvertFileList cf = new ConvertFileList();
                cf.ID              = Guid.NewGuid().ToString();
                cf.LogicFileName   = fi.Name;
                cf.PhysicsFilePath = f.ConvertFilePath + ".shp";
                cf.ConvertResult   = 0;
                cf.ConvertFilePath = fi.DirectoryName;
                cf.ConvertMsg      = "";
                cf.SrcCoordName    = "";
                cf.FileType        = (int)DataFileType.CoordinateConvert;

                CCFileList.Add(cf);
            }
            return(dataConvertAppService.DataConvert(CCFileList, "", "Xian 1980", false));
        }
 private void DeleteFile_OnClick()
 {
     foreach (string item in SelectedListViewItems)
     {
         ConvertFileList.Remove(item);
     }
 }
        /// <summary>
        /// UploadFiles Button Click
        /// </summary>
        private void UploadFiles_OnClick()
        {
            CommonOpenFileDialog dlg = new CommonOpenFileDialog();

            dlg.Title            = "Select the HEIC Files";
            dlg.InitialDirectory = "C:\\";
            dlg.Filters.Add(new CommonFileDialogFilter("HEIC Files", "*.heic"));
            // 다중 파일 선택 기능.m
            dlg.Multiselect = true;

            if (dlg.ShowDialog() == CommonFileDialogResult.Ok)
            {
                foreach (string file in dlg.FileNames)
                {
                    if (!ConvertFileList.Contains(file))
                    {
                        ConvertFileList.Add(file);
                    }
                    else
                    {
                        MessageBox.Show("이미 리스트에 포함되어있습니다.");
                    }
                }
            }
        }
Пример #4
0
        /// <summary>
        /// 格式转换
        /// </summary>
        /// <param name="Files">文件列表</param>
        /// <param name="UserID">用户ID</param>
        /// <param name="type">转换类型</param>
        /// <param name="IsZip">是否压缩</param>
        /// <returns>转换结果</returns>
        public ConvertResult DataConvert1(List <string> Files, string UserID, int type, string OutputCoordName, bool IsZip, string ConvertKey)
        {
            if (Files == null || Files.Count <= 0)
            {
                return(new ConvertResult());
            }

            //DataFileType dfType;

            //if (type == 1)
            //{
            //    dfType = DataFileType.FormatConvert;
            //}
            //else if (type == 2)
            //{
            //    dfType = DataFileType.CoordinateConvert;
            //}
            //else
            //{
            //    dfType = DataFileType.Projection;
            //}
            List <ConvertFileList> fileList = new List <ConvertFileList>();

            foreach (string f in Files)
            {
                string[] ss = f.Split(',');
                if (ss.Length <= 0)
                {
                    return(null);
                }

                FileInfo        fi = new FileInfo(ss[0]);
                ConvertFileList cf = new ConvertFileList();
                cf.ID              = Guid.NewGuid().ToString();
                cf.LogicFileName   = fi.Name;
                cf.PhysicsFilePath = f;
                cf.FileType        = type;
                cf.ConvertFilePath = "";
                cf.ConvertResult   = 0;
                cf.ConvertMsg      = "";
                cf.ConvertKey      = ConvertKey;
                if (ss.Length >= 2)
                {
                    cf.SrcCoordName = "";
                }
                else
                {
                    cf.SrcCoordName = "";
                }
                fileList.Add(cf);
            }

            return(DataConvert(fileList, UserID, OutputCoordName, IsZip));
        }
Пример #5
0
        public static ConvertResult ProjectionConvert(IEnumerable <ConvertFileList> files, IList <string> errorInfo, IDataConvertAppService dataConvertAppService, string OutputCoordName = "")
        {
            List <ConvertFileList> PFileList = new List <ConvertFileList>();

            foreach (var f in files)
            {
                FileInfo fi = new FileInfo(f.ConvertFilePath);

                ConvertFileList cf = new ConvertFileList();
                cf.ID              = Guid.NewGuid().ToString();
                cf.LogicFileName   = fi.Name;
                cf.PhysicsFilePath = f.ConvertFilePath;
                cf.ConvertResult   = 0;
                cf.ConvertFilePath = fi.DirectoryName;
                cf.ConvertMsg      = "";
                cf.FileType        = (int)DataFileType.Projection;

                PFileList.Add(cf);
            }
            return(dataConvertAppService.DataConvert(PFileList, "", OutputCoordName, false));
        }
 private void OnListViewDrop(DragEventArgs e)
 {
     if (e.Data.GetDataPresent(DataFormats.FileDrop))
     {
         string[] files = (string[])e.Data.GetData(DataFormats.FileDrop);
         foreach (string file in files)
         {
             if (file.ToLower().Contains("heic"))
             {
                 if (!ConvertFileList.Contains(file))
                 {
                     ConvertFileList.Add(file);
                 }
                 else
                 {
                     MessageBox.Show("이미 리스트에 포함되어있습니다.");
                 }
             }
         }
         ListViewBorderColor = (Brush)(new BrushConverter().ConvertFromString("LightGray"));
     }
 }
Пример #7
0
        public static ConvertResult FormatConvert(IEnumerable <ConvertFileList> files, IList <string> errorInfo, IDataConvertAppService dataConvertAppService)
        {
            //TODO:这里后面可能要考虑shp文件。如果是的话直接返回一个结果
            List <ConvertFileList> FCFileList = new List <ConvertFileList>();

            foreach (var s in files)
            {
                FileInfo fi = new FileInfo(s.PhysicsFilePath);
                if (fi.Extension.ToUpper() == ".WP" || fi.Extension.ToUpper() == ".WL" || fi.Extension.ToUpper() == ".WT")
                {
                    ConvertFileList cf = new ConvertFileList();
                    cf.ID              = Guid.NewGuid().ToString();
                    cf.LogicFileName   = fi.Name;
                    cf.PhysicsFilePath = s.PhysicsFilePath;
                    cf.ConvertResult   = 0;
                    cf.ConvertFilePath = "";
                    cf.ConvertMsg      = "";
                    cf.SrcCoordName    = "";
                    cf.FileType        = (int)DataFileType.FormatConvert;

                    FCFileList.Add(cf);
                }
            }
            if (FCFileList.Count <= 0)
            {
                if (!files.Any(p => p.PhysicsFilePath.ToLower().Contains(".shp")))
                {
                    errorInfo.Add("格式转换:未找到图层文件");
                    return(null);
                }

                return(new ConvertResult
                {
                    fileList = files.Where(p => !p.PhysicsFilePath.ToLower().Contains(".zip") && !p.PhysicsFilePath.ToLower().Contains(".rar")).ToList()
                });
            }
            return(dataConvertAppService.DataConvert(FCFileList, "", "", false));
        }