From 631f94758c3cb42abcdda8094e77895f376eff16 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 11 一月 2021 14:53:43 +0800
Subject: [PATCH] 2021-1-12-3
---
HDL_ON/UI/MainPage.cs | 281 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 252 insertions(+), 29 deletions(-)
diff --git a/HDL_ON/UI/MainPage.cs b/HDL_ON/UI/MainPage.cs
index 46005fc..3592ab2 100644
--- a/HDL_ON/UI/MainPage.cs
+++ b/HDL_ON/UI/MainPage.cs
@@ -1,5 +1,7 @@
锘縰sing System;
using System.Collections.Generic;
+using HDL_ON.DAL;
+using HDL_ON.UI;
using HDL_ON.UI.CSS;
using Shared;
@@ -7,22 +9,76 @@
{
public static class MainPage
{
+ /// <summary>
+ /// BaseView
+ /// </summary>
public static FrameLayout BaseView { get; internal set; }
-
+ /// <summary>
+ /// BasePageView
+ /// </summary>
+ public static PageLayout BasePageView { get; set; }
+ /// <summary>
+ /// DisplayCompleted
+ /// </summary>
public static bool DisplayCompleted = false;
- public static UserInfo LoginUser;
-
- public static List<string> LocationFiles;
-
- public static string VersionString = "3.01205";
+ //public static UserInfo LoginUser;
+ /// <summary>
+ /// 鐗堟湰鍙�
+ /// </summary>
+ public static string VersionString = "1.0.1225";
+ ///// <summary>
+ ///// 瀹㈡埛绔被鍨�
+ ///// </summary>
+ //public static string ClientType = APIClientType.HDL_ON_PRO.ToString();
/// <summary>
- /// 鍏徃浠g爜
- /// 棰勭暀绗笁鏂瑰畾鍒舵爣璁�
- /// 0:HDL
+ ///
/// </summary>
- public static int Company = 0;
+ public static Entity.CityInfo cityInfo = new Entity.CityInfo();
+ /// <summary>
+ /// 澶╂皵鍒锋柊action
+ /// </summary>
+ public static Action RefreshAir;
+ /// <summary>
+ /// 鏃犵櫥褰曟ā寮�
+ /// </summary>
+ public static bool NoLoginMode = false;
+ /// <summary>
+ /// 缃戠粶杩炴帴鐘舵��
+ /// 0:鏃犵綉缁�
+ /// </summary>
+ public static int InternetStatus = 2;
+ /// <summary>
+ /// 鏄惁杩涘叆鍚庡彴
+ /// </summary>
+ public static bool IsEnterBackground = false;
+
+ ///// <summary>
+ ///// 鍏徃浠g爜
+ ///// 棰勭暀绗笁鏂瑰畾鍒舵爣璁�
+ ///// 0:HDL
+ ///// </summary>
+ //public static int Company = 0;
+
+ /// <summary>
+ /// 鏄惁鍏ㄩ潰灞忔墜鏈�
+ /// </summary>
+ public static bool Increase
+ {
+ get
+ {
+#if __IOS__
+ if (Application.PhoneType>10)
+ {
+ return true;
+ }
+ return false;
+#else
+ return false;
+#endif
+ }
+ }
public static void Show()
@@ -32,38 +88,202 @@
Application.DesignWidth = 375;
Application.DesignHeight = 667;
- //BusSocket.Start(6000);
- //CommonPage.InitHttpListener();
-
BaseView = Application.MainPage;
Application.MainPage.BackgroundColor = CSS_Color.MainBackgroundColor;
- Log("1");
- LoginUser = Newtonsoft.Json.JsonConvert.DeserializeObject<UserInfo>(System.Text.Encoding.UTF8.GetString(MyIO.FileUtils.ReadFile("Register_File")));
- Log("2");
- //鍒ゆ柇闇�涓嶉渶瑕佺櫥褰曪紝鏈夋病鏈夌櫥褰曪紝鎴栬�呯櫥褰曟槸鍚﹁繃鏈燂紝
- if (LoginUser == null || !LoginUser.IsLogin)
+ if (string.IsNullOrEmpty(OnAppConfig.Instance.LastLoginUserId))
{
- var fisrtView = new UI.UI1Login.LoginPage();
- fisrtView.BackgroundColor = CSS_Color.MainBackgroundColor;
- BaseView.AddChidren(fisrtView);
- fisrtView.LoadView();
-
+ GoLoginPage();
}
else
{
- //璺宠浆椤甸潰----
- var ss = new UI.UserPage();
- BaseView.AddChidren(ss);
- ss.LoadPage();
+ //鍒ゆ柇闇�涓嶉渶瑕佺櫥褰曪紝鏈夋病鏈夌櫥褰曪紝鎴栬�呯櫥褰曟槸鍚﹁繃鏈燂紝
+ if (UserInfo.Current == null || !UserInfo.Current.IsLogin)
+ {
+ GoLoginPage(UserInfo.Current);
+ }
+ else
+ {
+ //new System.Threading.Thread(() =>
+ //{
+ // var pm = new DAL.Server.HttpServerRequest();
+ // pm.RefreshToken();//鍒锋柊Token
+ // pm.GetHomePager();//鍒锋柊浣忓畢淇℃伅
+ // pm.GetUserInfo();//鍒锋柊涓汉淇℃伅
+ //})
+ //{ IsBackground = true }.Start();
+ Common.ApiUtlis.Ins.DownloadData();
+
+ GoUserPage(false,true);
+ }
}
}
- catch
+ catch (Exception ex)
{
-
+ Log("root erorr : " + ex.Message);
+ }
+ finally
+ {
+ //Application.RunOnMainThread(() => {
+ // Application.HideSoftInput();
+ //});
}
}
+
+ /// <summary>
+ /// 杩涘叆鐧诲綍鐣岄潰
+ /// </summary>
+ public static void GoLoginPage(UserInfo userInfo = null)
+ {
+ BaseView.RemoveAll();
+ BaseView.BackgroundColor = CSS_Color.BackgroundColor;
+ var fisrtView = new UI.UI1Login.LoginPage();
+ fisrtView.BackgroundColor = CSS_Color.MainBackgroundColor;
+ BaseView.AddChidren(fisrtView);
+ fisrtView.LoadView(userInfo);
+ }
+
+ /// <summary>
+ /// 杩涘叆涓婚〉
+ /// </summary>
+ /// <param name="isFirstOpen">濡傛灉鏄涓�娆″惎鍔� 妫�娴嬫牎楠屽瘑鐮�</param>
+ /// <param name="pageShowEvent">涓婚〉鏄剧ず涔嬪悗瑙﹀彂鐨勪簨浠�(娌℃湁浣忓畢鐨勮瘽,鍒欎笉浼氳Е鍙�)</param>
+ public static void GoUserPage(bool downloadData , bool isFirstOpen = false, Action pageShowEvent = null)
+ {
+ //鍔犺浇Loading鏁堟灉
+ var waitPage = new Loading();
+ BaseView.AddChidren(waitPage);
+ waitPage.Start(Language.StringByID(StringId.PleaseWait));
+
+ //褰撴病鏈変綇瀹呮椂,涓嶈兘璁╁畠寰�涓嬭蛋
+ if (UserInfo.Current.regionList.Count == 0)
+ {
+ waitPage.Hide();
+ var addResidencePage = new BindingResidencePage();
+ BaseView.AddChidren(addResidencePage);
+ addResidencePage.LoadView();
+ return;
+ }
+
+ new System.Threading.Thread(() =>
+ {
+ try
+ {
+ Entity.FunctionList.List.Clear();
+ Entity.SpatialInfo.CurrentSpatial.Clear();
+ ///绛夊緟鑾峰彇浣忓畢淇℃伅
+ Application.RunOnMainThread(() =>
+ {
+ waitPage.Hide();
+ waitPage.RemoveFromParent();
+ BaseView.RemoveAll();
+ BasePageView = new PageLayout();
+ BasePageView.ScrollEnabled = false;
+ BasePageView.IsShowPoint = false;
+ BasePageView.PageChange = (sender, e) =>
+ {
+ if (e < BasePageView.ChildrenCount - 1)
+ {
+ MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent();
+ }
+
+ while (e < BasePageView.ChildrenCount - 1)
+ {
+ BasePageView.GetChildren(BasePageView.ChildrenCount - 1).RemoveFromParent();
+ }
+ };
+ BasePageView.MouseDownEventHandler += (sender, e) =>
+ {
+ BasePageView.ScrollEnabled = true;
+ };
+ BasePageView.MouseUpEventHandler += (sender, e) =>
+ {
+ BasePageView.ScrollEnabled = false;
+ };
+ BaseView.AddChidren(BasePageView);
+
+ //璺宠浆椤甸潰----
+ var UserBasePage = new UserPage();
+ BasePageView.AddChidren(UserBasePage);
+ UserBasePage.LoadPage();
+ BasePageView.PageIndex = 0;
+
+ if (isFirstOpen)
+ {
+ //鍚姩瀵嗙爜楠岃瘉
+ new AppUnlockPage().LoadPage(isFirstOpen);
+ }
+ //涓婚〉鍔犺浇瀹屾垚,鍥炶皟浜嬩欢
+ pageShowEvent?.Invoke();
+ pageShowEvent = null;
+ });
+ }
+ catch (Exception ex)
+ {
+ MainPage.Log($"GoUserPage : {ex.Message}");
+ }finally
+ {
+ Application.RunOnMainThread(() =>
+ {
+ if (downloadData)
+ {
+ ///鍒濆鍖朼pp鏁版嵁
+ Common.ApiUtlis.Ins.DownloadData();
+ };
+ });
+ }
+ }).Start();
+ }
+
+ /// <summary>
+ /// 鍚庨��浜嬩欢
+ /// 0:鍚庨��
+ /// 1:鏈夌瓑寰呯晫闈�
+ /// 2:鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈�
+ /// </summary>
+ public static int LoadEvent_BackAction()
+ {
+ int result = 0;
+ Application.RunOnMainThread(() =>
+ {
+ if (BaseView.ChildrenCount>1)
+ {
+ var view = BaseView.GetChildren(BaseView.ChildrenCount - 1);
+ if(view.GetType() == typeof(Loading))
+ {
+ var loading = view as Loading;
+ if (loading.CurStatus == false)//鏈変竴浜涚瓑寰呯晫闈㈤殣钘忎簡锛屼絾鏄病鏈夌Щ闄ゅ埌锛岄渶瑕佸厛绉婚櫎
+ {
+ loading.RemoveFromParent();
+ result = LoadEvent_BackAction();
+ }
+ else
+ {
+ result = 1;//姝e湪绛夊緟鏌愪簺鎿嶄綔
+ }
+ }
+ }
+ else
+ {
+ if (BasePageView.ChildrenCount > 1)
+ {
+ int index = BasePageView.ChildrenCount - 1;
+ var view = BasePageView.GetChildren(index);
+ if (view != null)
+ {
+ view.RemoveFromParent();
+ }
+ }
+ else
+ {
+ result = 2;//鏃犳硶鍐嶅悗閫�锛屽彲浠ユ墽琛岄��鍒版闈�
+ }
+ }
+ });
+ return result;
+ }
+
/// <summary>
/// 鑷畾涔夋棩蹇楄緭鍑�
@@ -74,5 +294,8 @@
Console.WriteLine(msg);
#endif
}
+
+
}
+
}
--
Gitblit v1.8.0