管道基础大数据平台系统开发-【CS】-ExportMap
1
13693261870
2023-02-21 e608048cf0ca1456e8c21ee54a97c7550eb7c3db
DataLoader/MainWindow.xaml.cs
@@ -6,10 +6,13 @@
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Forms.VisualStyles;
using System.Windows.Threading;
namespace DataLoader
{
@@ -19,9 +22,9 @@
        public event PropertyChangedEventHandler PropertyChanged;
        private string _sourcePath;
        private string _sourcePath = @"D:\LF\data\mdb";
        private string _targetPath;
        private string _targetPath = @"\\LAPTOP-DRTGLTU2\share";
        private LoginWin win;
@@ -59,34 +62,50 @@
        protected virtual void OnPropertyChanged(string propertyName = null)
        {
            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
            //PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
            if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            Tool.Owner = this;
            this.btnLoad.IsEnabled = false;
            this.btnImport.IsEnabled = false;
            lvView.DataContext = viewDatas;
            lvView.SetBinding(ListView.ItemsSourceProperty, new Binding());
        }
            //String file = "E:\\data\\mpt\\A4mpt20131125.mpt";
            //string md5 = MD5Helper.GetMD5Hash(file);
            LogOut.Info("************  应用程序启动成功! ************");
        }
        // 登录
        private void Login_MouseLeftButtonDown(object sender, RoutedEventArgs e)
        {
            win = new LoginWin();
            this.Hide();
            win.Show();
            //win = new LoginWin();
            //this.Hide();
            //win.Show();
            SetLoginInfo();
        }
        public void SetLoginInfo()
        {
            if (win != null) win.Close();
            this.Show();
            //if (win != null) win.Close();
            //this.Show();
            this.tbUid.Text = Tool.UserId.ToString() + "," + Tool.Uname;
            this.tbToken.Text = Tool.Token;
            //this.tbUid.Text = Tool.UserId.ToString();
            //this.tbToken.Text = Tool.Token;
            string uidStr = this.tbUid.Text.Trim();
            string didStr = this.tbDir.Text.Trim();
            int.TryParse(uidStr, out Tool.UserId);
            int.TryParse(didStr, out Tool.DirId);
            this.btnLoad.IsEnabled = true;
            this.btnImport.IsEnabled = true;
        }
@@ -120,17 +139,52 @@
            this.TargetPath = dialog.SelectedPath.Trim();
        }
        // 加载
        private void Load_MouseLeftButtonDown(object sender, RoutedEventArgs e)
        {
            if (string.IsNullOrEmpty(SourcePath) || !Directory.Exists(SourcePath))
            {
                MessageBox.Show("请选择数据目录!", "提示");
                return;
            }
            if (string.IsNullOrEmpty(TargetPath) || !Directory.Exists(TargetPath))
            {
                MessageBox.Show("请选择入库目录!", "提示");
                return;
            }
            string[] files = Directory.GetFiles(SourcePath);
            if (null == files || files.Length == 0)
            {
                MessageBox.Show("数据目录下没有文件!", "提示");
                return;
            }
            this.viewDatas.Clear();
            Importor.GetFiles(viewDatas, SourcePath);
        }
        // 导入
        private void Import_MouseLeftButtonDown(object sender, RoutedEventArgs e)
        {
            viewDatas.Clear();
            if (viewDatas.Count == 0) return;
            Dispatcher.Invoke(new Action(delegate
            string str = this.tbStart.Text.Trim();
            int start = 1;
            int.TryParse(str, out start);
            Thread thread = new Thread(new ThreadStart(() =>
            {
                this.btnImport.IsEnabled = false;
                Importor.Import(viewDatas, SourcePath, TargetPath);
                this.btnImport.IsEnabled = true;
                Importor.ImportFiles(viewDatas, TargetPath, start);
                lvView.Dispatcher.BeginInvoke((ThreadStart)delegate {
                    ICollectionView view = CollectionViewSource.GetDefaultView(viewDatas);
                    view.Refresh();
                });
                MessageBox.Show("数据导入完成!", "提示");
            }));
            thread.Start();
        }
    }
}