From a8ed3d24ba97b9ee93de0f15fb15b46a9850b2fc Mon Sep 17 00:00:00 2001
From: lg <999544862qq.com>
Date: 星期二, 17 九月 2024 16:58:39 +0800
Subject: [PATCH] 基础资料

---
 DevApp/Gs.DevApp/DevFrm/FrmLogin.cs |  128 ++++++++++++++++++++++++++++++++++++++----
 1 files changed, 115 insertions(+), 13 deletions(-)

diff --git a/DevApp/Gs.DevApp/DevFrm/FrmLogin.cs b/DevApp/Gs.DevApp/DevFrm/FrmLogin.cs
index d02f0c4..458575b 100644
--- a/DevApp/Gs.DevApp/DevFrm/FrmLogin.cs
+++ b/DevApp/Gs.DevApp/DevFrm/FrmLogin.cs
@@ -2,9 +2,12 @@
 using Newtonsoft.Json;
 using System;
 using System.Windows.Forms;
-using Gs.DevApp.Models;
+using Gs.DevApp.Entity;
 using Newtonsoft.Json.Linq;
 using System.Data;
+using System.Configuration;
+using AutoUpdaterDotNET;
+using System.Linq;
 
 namespace Gs.DevApp.DevFrm
 {
@@ -13,16 +16,18 @@
         public FrmLogin()
         {
             InitializeComponent();
+            _autoUpdate();
             this.Text = lbVersion.Text = System.Configuration.ConfigurationSettings.AppSettings.Get("ProductName").ToString();
             btnLogin.Click += BtnLogin_Click;
             btnCancel.Click += BtnCancel_Click;
-            UtilityHelper.SetFont(panel1);
-            getTree();
+            _getRemember();
         }
-
+        /// <summary>
+        /// 璇诲彇缁勭粐
+        /// </summary>
         private void getTree()
         {
-            Models.PageQueryModel pgq = new Models.PageQueryModel(1, 999999, "factory", "asc", "", "and upGuid is not null");
+            PageQueryModel pgq = new PageQueryModel(1, 999999, "factory", "asc", "", "and isStatus=1");
             string json = JsonConvert.SerializeObject(pgq);
             string strReturn = "";
             try
@@ -30,18 +35,16 @@
                 strReturn = UtilityHelper.HttpPost("", "Organization/GetListPage", json);
                 ReturnModel<PageListModel> rtn = UtilityHelper.GetTableByJson(strReturn);
                 DataTable dt = rtn.rtnData.list;
-                DataRow newRow = dt.NewRow();
-                newRow["guid"] = "00000000-0000-0000-0000-000000000000";
-                newRow["name"] = "-璇烽�夋嫨-";
-                dt.Rows.Add(newRow);
                 comOrg.DataSource = dt;
                 comOrg.DisplayMember = "name";
                 comOrg.ValueMember = "guid";
-                comOrg.SelectedIndex = dt.Rows.Count - 1;
+                comOrg.SelectedIndex = 0;
             }
             catch (Exception ex)
             {
                 ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+                this.Close();
+                Application.Exit();
             }
         }
         private void BtnCancel_Click(object sender, EventArgs e)
@@ -51,14 +54,31 @@
                 Application.Exit();
             }
         }
-
         private void BtnLogin_Click(object sender, EventArgs e)
         {
+            if (string.IsNullOrEmpty(txtUser.Text.Trim()))
+            {
+                Gs.DevApp.ToolBox.MsgHelper.Warning("鐧诲綍璐﹀彿涓嶈兘涓虹┖锛�");
+                txtUser.Focus();
+                return;
+            }
+            if (string.IsNullOrEmpty(txtPwd.Text.Trim()))
+            {
+                Gs.DevApp.ToolBox.MsgHelper.Warning("瀵嗙爜涓嶈兘涓虹┖锛�");
+                txtUser.Focus();
+                return;
+            }
+            if (comOrg.SelectedValue == null || string.IsNullOrEmpty(comOrg.SelectedValue.ToString().Trim()))
+            {
+                Gs.DevApp.ToolBox.MsgHelper.Warning("缁勭粐鏈烘瀯涓嶈兘涓虹┖锛�");
+                txtUser.Focus();
+                return;
+            }
             var _obj = new
             {
                 accountPwd = txtPwd.Text.Trim(),
                 accountNo = txtUser.Text.Trim(),
-                orgGuid = comOrg.SelectedValue
+                orgGuid = comOrg.SelectedValue.ToString().Trim()
             };
             try
             {
@@ -67,6 +87,11 @@
                 JObject _login = _rtn.rtnData;
                 if (_rtn.rtnCode > 0)
                 {
+                    Properties.Settings.Default.userName = (ckRemember.Checked ? txtUser.Text.Trim() : "");
+                    Properties.Settings.Default.userPwd = (ckRemember.Checked ? txtPwd.Text.Trim() : "");
+                    Properties.Settings.Default.orgGuid = (ckRemember.Checked ? comOrg.SelectedValue.ToString() : "");
+                    Properties.Settings.Default.remember = ckRemember.Checked;
+                    Properties.Settings.Default.Save();
                     LoginInfoModel.CurrentUser.LoginUserGuid = _login["loginGuid"].ToString();
                     LoginInfoModel.CurrentUser.LoginOrgGuid = _login["loginOrgGuid"].ToString();
                     LoginInfoModel.CurrentUser.LoginTime = DateTime.Now.ToString("yyyy-MM-dd hh:mm");
@@ -81,10 +106,87 @@
             }
             catch (Exception ex)
             {
+                this.DialogResult = DialogResult.Cancel;
                 ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+            }
+        }
+        /// <summary>
+        /// 璇诲彇璁颁綇瀵嗙爜
+        /// </summary>
+        private void _getRemember()
+        {
+            if (Properties.Settings.Default.remember)
+            {
+                txtUser.Text = Properties.Settings.Default.userName;
+                txtPwd.Text = Properties.Settings.Default.userPwd;
+                comOrg.SelectedValue = Properties.Settings.Default.orgGuid;
+                ckRemember.Checked = true;
+            }
+        }
+        private void _autoUpdate()
+        {
+            string _version = ConfigurationManager.AppSettings["Version"];
+            AutoUpdater.InstalledVersion = new Version(_version);
+            AutoUpdater.Start(System.Configuration.ConfigurationSettings.AppSettings.Get("AutoUpdaterXml").ToString());
+            AutoUpdater.CheckForUpdateEvent += AutoUpdater_CheckForUpdateEvent;
+        }
+        private void AutoUpdater_CheckForUpdateEvent(UpdateInfoEventArgs args)
+        {
+            if (args == null || string.IsNullOrEmpty(args.DownloadURL))
+            {
+                MsgHelper.ShowError("璇诲彇鑷姩鏇存柊澶辫触锛屾棤娉曠櫥褰曪紝璇疯仈绯荤鐞嗗憳锛�");
+                this.Close();
+                Application.Exit();
                 return;
             }
-
+            if (!args.IsUpdateAvailable)
+            {
+                getTree();
+                return;
+            }
+            string _strMsg = string.Format($@"鏈夋柊鐗堟湰 {args.CurrentVersion} 鍙敤锛屾偍浣跨敤鐨勬槸 {args.InstalledVersion}鐗堟湰锛岃繖鏄繀闇�鐨勬洿鏂帮紝鎸夆�滄槸锛圷锛夆�濆紑濮嬫洿鏂板簲鐢ㄧ▼搴忋��");
+            if (!MsgHelper.AskQuestion(_strMsg))
+            {
+                this.Close();
+                Application.Exit();
+                return;
+            }
+            try
+            {
+                if (AutoUpdater.DownloadUpdate(args))
+                {
+                    Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
+                    if (config != null)
+                    {
+                        AppSettingsSection appSettings = (AppSettingsSection)config.GetSection("appSettings");
+                        if (appSettings.Settings.AllKeys.Contains("Version"))
+                        {
+                            appSettings.Settings["Version"].Value = args.CurrentVersion;
+                        }
+                        else
+                        {
+                            appSettings.Settings.Add("Version", args.CurrentVersion);
+                        }
+                        config.Save(ConfigurationSaveMode.Modified);
+                        ConfigurationManager.RefreshSection("appSettings");
+                    }
+                    Application.Exit();
+                }
+                else
+                {
+                    MsgHelper.ShowError("璇诲彇鑷姩鏇存柊澶辫触锛屾棤娉曠櫥褰曪紝璇疯仈绯荤鐞嗗憳锛�");
+                    this.Close();
+                    Application.Exit();
+                    return;
+                }
+            }
+            catch (Exception exception)
+            {
+                MsgHelper.ShowError(exception.Message + "锛�" + exception.GetType().ToString());
+                this.Close();
+                Application.Exit();
+                return;
+            }
         }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3