LangChaoLogin.cs 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. using System.Collections;
  2. using Agora.Rtc.LitJson;
  3. using Newtonsoft.Json.Linq;
  4. using SC.XR.Unity;
  5. using UnityEngine;
  6. using UnityEngine.UI;
  7. namespace GHZLangChao
  8. {
  9. public class LangChaoLogin : AbstractController
  10. {
  11. private SCInputField mAccount_Input;
  12. private SCInputField mPassword_Input;
  13. private Button mLogin_Btn;
  14. private GameObject mLoginError_go;
  15. private string mAccountStr;
  16. private string mPasswordStr;
  17. private void Awake()
  18. {
  19. mAccount_Input = transform.Find("Account/SCInputField").GetComponent<SCInputField>();
  20. mPassword_Input = transform.Find("Password/SCInputField").GetComponent<SCInputField>();
  21. mLogin_Btn = transform.Find("LoginBtn").GetComponent<Button>();
  22. mLoginError_go = transform.Find("LoginError").gameObject;
  23. mAccount_Input.onEndEdit.AddListener(OnAccountEndEdit);
  24. mPassword_Input.onEndEdit.AddListener(OnPasswordEndEdit);
  25. mLogin_Btn.onClick.AddListener(OnClickLogin);
  26. }
  27. /// <summary>
  28. /// 账号输入完成
  29. /// </summary>
  30. private void OnAccountEndEdit(string str)
  31. {
  32. mAccountStr = str;
  33. }
  34. /// <summary>
  35. /// 密码输入完成
  36. /// </summary>
  37. private void OnPasswordEndEdit(string str)
  38. {
  39. mPasswordStr = str;
  40. }
  41. /// <summary>
  42. /// 登录
  43. /// </summary>
  44. private void OnClickLogin()
  45. {
  46. #if UNITY_EDITOR
  47. mAccountStr = "cy1";
  48. mPasswordStr = "1";
  49. mAccount_Input.text = mAccountStr;
  50. mPassword_Input.text = mPasswordStr;
  51. #endif
  52. if (string.IsNullOrWhiteSpace(mAccountStr) || string.IsNullOrWhiteSpace(mPasswordStr)) return;
  53. EndustryLoginUserInfo sendLogin = new EndustryLoginUserInfo()
  54. {
  55. account = mAccountStr,
  56. password = mPasswordStr
  57. };
  58. string jsonLogin = JsonMapper.ToJson(sendLogin);
  59. HttpTool.Instance.PostLogin(HttpActionLang.login, jsonLogin, LoginCallBack);
  60. }
  61. /// <summary>
  62. /// 登录返回数据
  63. /// </summary>
  64. public void LoginCallBack(string mes)
  65. {
  66. JObject obj = JObject.Parse(mes);
  67. if (obj["code"].ToString() != "200")
  68. StartCoroutine(PopUp());
  69. else
  70. {
  71. if (!string.IsNullOrWhiteSpace(obj["data"].ToString()) && !string.IsNullOrWhiteSpace(obj["data"]["token"].ToString()))
  72. {
  73. login.UserInfo.Instance.Token = obj["data"]["token"].ToString();
  74. ScenesManager.Instance.showWindow(ScenesManager.SceneType.ShowChoose);
  75. }
  76. else
  77. StartCoroutine(PopUp());
  78. }
  79. }
  80. private IEnumerator PopUp()
  81. {
  82. mLoginError_go.SetActive(true);
  83. yield return new WaitForSeconds(1);
  84. mLoginError_go.SetActive(false);
  85. }
  86. }
  87. }