From dbed0354a00fde9db87862b9f03db0fbf0d3aabc Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期三, 04 九月 2024 16:38:50 +0800
Subject: [PATCH] 1

---
 DataLoader/MainWindow.xaml.cs |  218 +++++++++++++++++++++++++++++++-----------------------
 1 files changed, 126 insertions(+), 92 deletions(-)

diff --git a/DataLoader/MainWindow.xaml.cs b/DataLoader/MainWindow.xaml.cs
index d2265d2..3b7ddd5 100644
--- a/DataLoader/MainWindow.xaml.cs
+++ b/DataLoader/MainWindow.xaml.cs
@@ -7,52 +7,21 @@
 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
 {
-    public partial class MainWindow : Window, INotifyPropertyChanged
+    public partial class MainWindow : Window
     {
+        private bool isBusy;
+
+        public ResWin resWin;
+
+        private LoginWin loginWin;
+
         private ObservableCollection<ViewData> viewDatas = new ObservableCollection<ViewData>();
-
-        public event PropertyChangedEventHandler PropertyChanged;
-
-        private string _sourcePath = @"D:\LF\data\mdb";
-
-        private string _targetPath = @"\\LAPTOP-DRTGLTU2\share";
-
-        private LoginWin win;
-
-        public string SourcePath
-        {
-            get { return _sourcePath; }
-            set
-            {
-                if (!String.IsNullOrEmpty(value) && Directory.Exists(value))
-                {
-                    _sourcePath = value;
-                    PropertyChanged(this, new PropertyChangedEventArgs("SourcePath"));
-                }
-            }
-        }
-
-        public string TargetPath
-        {
-            get { return _targetPath; }
-            set
-            {
-                if (!String.IsNullOrEmpty(value) && Directory.Exists(value))
-                {
-                    _targetPath = value;
-                    PropertyChanged(this, new PropertyChangedEventArgs("TargetPath"));
-                }
-            }
-        }
 
         public MainWindow()
         {
@@ -60,126 +29,191 @@
             this.DataContext = this;
         }
 
-        protected virtual void OnPropertyChanged(string propertyName = null)
-        {
-            //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;
+            CommonProp.Owner = this;
+            CommonProp.Init();
 
             this.btnLoad.IsEnabled = false;
+            this.btnDel.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);
+            // string md5 = MD5Helper.GetMD5Hash("E:\\data\\mpt\\A4mpt20131125.mpt");
             LogOut.Info("************  搴旂敤绋嬪簭鍚姩鎴愬姛锛� ************");
+        }
+
+        // 鑾峰彇鍏冩暟鎹被鍨�
+        private List<MetaType> GetMetaTypes()
+        {
+            List<MetaType> list = new List<MetaType>();
+            list.Add(new MetaType("榛樿"));
+            list.Add(new MetaType("鏁板瓧姝e皠褰卞儚鍥�"));
+            list.Add(new MetaType("鏁板瓧楂樼▼妯″瀷"));
+            list.Add(new MetaType("鍗曟尝娈垫爡鏍兼暟鎹�"));
+            list.Add(new MetaType("澶氬厜璋辨爡鏍兼暟鎹�"));
+            list.Add(new MetaType("楂樺厜璋辨爡鏍兼暟鎹�"));
+            list.Add(new MetaType("鐭㈤噺鍥惧眰"));
+            list.Add(new MetaType("涓夌淮妯″瀷"));
+
+            return list;
         }
 
         // 鐧诲綍
         private void Login_MouseLeftButtonDown(object sender, RoutedEventArgs e)
         {
-            //win = new LoginWin();
-            //this.Hide();
-            //win.Show();
-
-            SetLoginInfo();
+            loginWin = new LoginWin();
+            this.Hide();
+            loginWin.Show();
         }
 
+        // 璁剧疆鐧诲綍淇℃伅
         public void SetLoginInfo()
         {
-            //if (win != null) win.Close();
-            //this.Show();
+            if (loginWin != null) loginWin.Close();
+            this.Show();
 
-            //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.tbUid.Text = CommonProp.UserId.ToString();
+            this.tbUname.Text = CommonProp.Uname;
+            this.tbToken.Text = CommonProp.Token;
 
             this.btnLoad.IsEnabled = true;
             this.btnImport.IsEnabled = true;
         }
 
-        // 婧愮洰褰�
+        // 璧勬簮鐩綍
+        private void Dir_MouseLeftButtonDown(object sender, RoutedEventArgs e)
+        {
+            if (null == resWin) resWin = new ResWin();
+            this.Hide();
+            this.resWin.Show();
+        }
+
+        // 璁剧疆璧勬簮淇℃伅
+        public void SetRes(string dircode, string fullName)
+        {
+            this.Show();
+
+            if (!string.IsNullOrEmpty(dircode))
+            {
+                CommonProp.Dircode = dircode;
+                this.tbDir.Text = fullName;
+            }
+        }
+
+        // 鏁版嵁鐩綍
         private void Source_MouseLeftButtonDown(object sender, RoutedEventArgs e)
         {
             System.Windows.Forms.FolderBrowserDialog dialog = new System.Windows.Forms.FolderBrowserDialog();
-            if (!String.IsNullOrEmpty(SourcePath) && Directory.Exists(SourcePath)) dialog.SelectedPath = SourcePath;
+            if (!String.IsNullOrEmpty(CommonProp.SourcePath) && Directory.Exists(CommonProp.SourcePath)) dialog.SelectedPath = CommonProp.SourcePath;
 
             System.Windows.Forms.DialogResult result = dialog.ShowDialog();
-            if (result == System.Windows.Forms.DialogResult.Cancel)
-            {
-                return;
-            }
+            if (result == System.Windows.Forms.DialogResult.Cancel) return;
 
-            this.SourcePath = dialog.SelectedPath.Trim();
+            this.tbSource.Text = CommonProp.SourcePath = dialog.SelectedPath.Trim();
         }
 
         // 鐩爣鐩綍
         private void Target_MouseLeftButtonDown(object sender, RoutedEventArgs e)
         {
             System.Windows.Forms.FolderBrowserDialog dialog = new System.Windows.Forms.FolderBrowserDialog();
-            if (!String.IsNullOrEmpty(TargetPath) && Directory.Exists(TargetPath)) dialog.SelectedPath = TargetPath;
+            if (!String.IsNullOrEmpty(CommonProp.TargetPath) && Directory.Exists(CommonProp.TargetPath)) dialog.SelectedPath = CommonProp.TargetPath;
 
             System.Windows.Forms.DialogResult result = dialog.ShowDialog();
-            if (result == System.Windows.Forms.DialogResult.Cancel)
-            {
-                return;
-            }
+            if (result == System.Windows.Forms.DialogResult.Cancel) return;
 
-            this.TargetPath = dialog.SelectedPath.Trim();
+            this.tbTarget.Text = CommonProp.TargetPath = dialog.SelectedPath.Trim();
         }
 
         // 鍔犺浇
         private void Load_MouseLeftButtonDown(object sender, RoutedEventArgs e)
         {
-            if (string.IsNullOrEmpty(SourcePath) || !Directory.Exists(SourcePath))
+            if (isBusy) return;
+            if (string.IsNullOrEmpty(CommonProp.Dircode))
             {
-                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("鏁版嵁鐩綍涓嬫病鏈夋枃浠讹紒", "鎻愮ず");
+                MessageBox.Show("璇烽�夋嫨璧勬簮鐩綍锛�", "鎻愮ず");
                 return;
             }
 
+            CommonProp.SourcePath = this.tbSource.Text.Trim();
+            if (string.IsNullOrEmpty(CommonProp.SourcePath) || !Directory.Exists(CommonProp.SourcePath))
+            {
+                MessageBox.Show("璇烽�夋嫨鏁版嵁鐩綍鎴栨暟鎹洰褰曚笉瀛樺湪锛�", "鎻愮ず");
+                return;
+            }
+
+            CommonProp.TargetPath = this.tbTarget.Text.Trim();
+            if (string.IsNullOrEmpty(CommonProp.TargetPath) || !Directory.Exists(CommonProp.TargetPath))
+            {
+                MessageBox.Show("璇烽�夋嫨鍏ュ簱鐩綍鎴栧叆搴撶洰褰曚笉瀛樺湪锛�", "鎻愮ず");
+                return;
+            }
+
+            ContentControl ccSensor = this.tbSensorType.SelectedItem as ContentControl;
+            int.TryParse(ccSensor.Tag.ToString(), out CommonProp.SensorType);
+
+            ContentControl ccMeta = this.cbMetaType.SelectedItem as ContentControl;
+            int.TryParse(ccMeta.Tag.ToString(), out CommonProp.MetaType);
+
+            CommonProp.AcqTime = this.dpAcqTime.SelectedDate;
+
+            this.isBusy = true;
             this.viewDatas.Clear();
-            Importor.GetFiles(viewDatas, SourcePath);
+            Importor.Loading(viewDatas);
+            this.isBusy = false;
+        }
+
+        // 鍒犻櫎
+        private void Del_MouseLeftButtonDown(object sender, RoutedEventArgs e)
+        {
+            if (null == this.viewDatas || this.viewDatas.Count == 0) return;
+
+            int i = 0;
+            while (i < this.viewDatas.Count)
+            {
+                if (this.viewDatas[i] != null && this.viewDatas[i].Checked)
+                {
+                    this.viewDatas.RemoveAt(i);
+                    continue;
+                }
+                i++;
+            }
         }
 
         // 瀵煎叆
         private void Import_MouseLeftButtonDown(object sender, RoutedEventArgs e)
         {
-            if (viewDatas.Count == 0) return;
+            if (isBusy || viewDatas.Count == 0) return;
 
+            this.isBusy = true;
             Thread thread = new Thread(new ThreadStart(() =>
             {
-                Importor.ImportFiles(viewDatas, TargetPath);
+                Importor.ImportFiles(viewDatas);
 
-                lvView.Dispatcher.BeginInvoke((ThreadStart)delegate {
+                lvView.Dispatcher.BeginInvoke((ThreadStart)delegate
+                {
                     ICollectionView view = CollectionViewSource.GetDefaultView(viewDatas);
                     view.Refresh();
                 });
 
+                isBusy = false;
                 MessageBox.Show("鏁版嵁瀵煎叆瀹屾垚锛�", "鎻愮ず");
             }));
             thread.Start();
         }
+
+        // 绐楀彛鍏抽棴涓簨浠�
+        private void Window_Closing(object sender, CancelEventArgs e)
+        {
+            if (isBusy)
+            {
+                MessageBox.Show("姝e湪瀵煎叆鏁版嵁锛岃绋嶅悗~", "鎻愮ず");
+                e.Cancel = true;
+                return;
+            }
+        }
     }
 }

--
Gitblit v1.9.3