using Assets.Scripts; using Assets.Scripts.Apis; using Assets.Scripts.Apis.Models; using Assets.Scripts.UI.Control; using DG.Tweening; using System; using System.Collections; using System.Collections.Generic; using System.Threading.Tasks; using UnityEngine; using UnityEngine.Events; using UnityEngine.EventSystems; using UnityEngine.SceneManagement; using UnityEngine.UI; public class HomeController : PFUIPanel { //[SerializeField] Text Ftp; //[SerializeField] RawImage Avatar; //[SerializeField] Text Weight; //[SerializeField] Text WKG; //[SerializeField] Text Calories; //[SerializeField] Text KM; //[SerializeField] Text Climb; //[SerializeField] Text NickName; //[SerializeField] Button More; [SerializeField] Button BtnRide; [SerializeField] Transform userInfo; private MainNav mainNav; // Start is called before the first frame update protected override void Start() { base.Start(); mainNav = this.transform.Find("MainNav").GetComponent(); mainNav.ShowExit(); UIManager.AddEvent(BtnRide.gameObject, EventTriggerType.PointerClick, GoRide); UIManager.AddEvent(BtnRide.gameObject, EventTriggerType.PointerEnter, OnHover); UIManager.AddEvent(BtnRide.gameObject, EventTriggerType.PointerExit, OnExit); var avatar = userInfo.Find("Avatar").GetComponent(); var rect = ((RectTransform)avatar.transform).rect; SetRounded(avatar.transform, rect.height); UIManager.AddEvent(avatar.gameObject, EventTriggerType.PointerClick, x => { UIManager.ShowUserInfoPanel(); }); UIManager.AddEvent(userInfo.Find("BtnMore").gameObject, EventTriggerType.PointerClick, x => { UIManager.ShowUserInfoPanel(); //UIManager.ShowConfirm("Quit", "Do you want to quit PowerFun?", null); }); //GetSummary(); } private void GoRide(BaseEventData e) { UIManager.ShowMapListPanel(); OnExit(e); } private void OnHover(BaseEventData e) { var pe = (PointerEventData)e; var parent = pe.pointerEnter.transform.parent; //parent.Find("Image").GetComponent().sprite = Resources.Load("Images/home/Entrance - ROUTES_hover"); //parent.Find("Text").GetComponent().color = Utils.HexToColorHtml("#ffffff"); parent.DOScale(new Vector3(1.05f, 1.05f, 0), 0.3f); //parent.GetComponent().localScale = ; } private void OnExit(BaseEventData e) { var pe = (PointerEventData)e; var parent = pe.pointerEnter.transform.parent; //parent.Find("Image").GetComponent().sprite = Resources.Load("Images/home/Entrance - ROUTES_nomal"); //parent.Find("Text").GetComponent().color = Utils.HexToColorHtml("#5C5C6E"); parent.DOScale(new Vector3(1f, 1f, 0), 0.3f); //parent.GetComponent().localScale = new Vector3(1f, 1f, 0); } void MoreFunc() { //Utils.showToast(gameObject, "更多信息", 1); //DOTween.ToAlpha(() => ) } void SetCurrentUser(SummaryResultModel summary) { userInfo.Find("NickName").GetComponent().text = App.CurrentUser.Nickname; userInfo.Find("GroupTop").Find("FtpContainer").Find("FtpValue").GetComponent().text = App.CurrentUser.FTP.ToString(); userInfo.Find("GroupTop").Find("WeightContainer").Find("WeightValue").GetComponent().text = App.CurrentUser.Weight.ToString(); userInfo.Find("GroupTop").Find("WKGContainer").Find("WKGValue").GetComponent().text = $"{ (App.CurrentUser.FTP/ App.CurrentUser.Weight).ToString("0.0") }"; userInfo.Find("IDText").GetComponent().text = "ID:" + App.CurrentUser.Id.ToString("000000"); if (!string.IsNullOrWhiteSpace(App.CurrentUser.Unionid)) { userInfo.Find("Wx").GetComponent().sprite = Resources.Load("Images/Wechat_person_1"); } if (App.CurrentUser.Sex == 2) { userInfo.Find("SexIcon").GetComponent().sprite = Resources.Load("Images/woman"); } else { userInfo.Find("SexIcon").GetComponent().sprite = Resources.Load("Images/man"); } if (!string.IsNullOrEmpty(App.CurrentUser.WxHeadImg)) { Utils.DisplayImage(StartCoroutine, userInfo.Find("Avatar").GetComponent(), App.CurrentUser.WxHeadImg); } else { userInfo.Find("Avatar").GetComponent().texture = Resources.Load("Images/icon-1024"); } userInfo.Find("Country").GetComponent().texture = UIManager.Instance.loginRegOptions.GetCountryImageByName(App.CurrentUser.Country); userInfo.Find("CaloriesContainer").Find("CaloriesValue").GetComponent().text = double.Parse(summary.Kcal).ToString("0") +" KCAL"; userInfo.Find("KMContainer").Find("KMValue").GetComponent().text = summary.TotalDistance.ToString("0") +" KM"; userInfo.Find("ClimbContainer").Find("ClimbValue").GetComponent().text = summary.TotalClimb +" M"; userInfo.Find("GroupTop").Find("FtpContainer").Find("FtpTime").GetComponent().text = App.CurrentUser.LastUpdateFtpTime.ToString("yyyy.MM.dd"); userInfo.Find("GroupTop").Find("WeightContainer").Find("WeightTime").GetComponent().text = App.CurrentUser.LastUpdateWeightTime.ToString("yyyy.MM.dd"); userInfo.Find("GroupTop").Find("WKGContainer").Find("WKGTime").GetComponent().text = DateTime.Compare(App.CurrentUser.LastUpdateFtpTime, App.CurrentUser.LastUpdateWeightTime)>0 ? App.CurrentUser.LastUpdateFtpTime.ToString("yyyy.MM.dd") : App.CurrentUser.LastUpdateWeightTime.ToString("yyyy.MM.dd"); } void GetSummary() { var res = ConfigHelper.userApi.GetSummary(); if (res.result) { //App.CurrentUser.Distance = res.data.TotalDistance; //App.CurrentUser.Climb = res.data.TotalClimb; //App.CurrentUser.Carlories = res.data.Kcal; SetCurrentUser(res.data); //Climb.text = $"{res.data.TotalClimb.ToString()}M"; //Calories.text = $"{res.data.Kcal.ToString()}KCAL"; //Calories.text = res.data. } else { Utils.showToast(gameObject, res.errMsg); } //var res = await NoAuthApi.GetCurrentUser(); //if (res.result) //{ // Global.CurrentUser = res.data; // SetCurrentUser(); //} //else //{ // Utils.showToast(gameObject, res.errMsg); //} } // Update is called once per frame void Update() { } public override void Show() { var cg = this.GetComponent(); cg.alpha = 0; base.Show(); cg.DOFade(1f, 0.3f); GetSummary(); } }