LangChaoLogin.cs 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. using System.Collections;
  2. using Agora.Rtc.LitJson;
  3. using Blue;
  4. using Newtonsoft.Json.Linq;
  5. using SC.XR.Unity;
  6. using TMPro;
  7. using UnityEngine;
  8. using UnityEngine.UI;
  9. namespace GHZLangChao
  10. {
  11. public class LangChaoLogin : AbstractController
  12. {
  13. public TMP_Text deviceId;
  14. private SCInputField mAccount_Input;
  15. private SCInputField mPassword_Input;
  16. private Button mLogin_Btn;
  17. private GameObject mLoginError_go;
  18. private Button emptyAcc;
  19. private Button emptypas;
  20. private string mAccountStr;
  21. private string mPasswordStr;
  22. private void Awake()
  23. {
  24. mAccount_Input = transform.Find("Account/SCInputField").GetComponent<SCInputField>();
  25. mPassword_Input = transform.Find("Password/SCInputField").GetComponent<SCInputField>();
  26. mLogin_Btn = transform.Find("LoginBtn").GetComponent<Button>();
  27. mLoginError_go = transform.Find("LoginError").gameObject;
  28. emptyAcc = transform.Find("Account/EmptyAccount").GetComponent<Button>();
  29. emptypas = transform.Find("Password/EmptyAccount").GetComponent<Button>();
  30. mAccount_Input.onEndEdit.AddListener(OnAccountEndEdit);
  31. mPassword_Input.onEndEdit.AddListener(OnPasswordEndEdit);
  32. mLogin_Btn.onClick.AddListener(OnClickLogin);
  33. emptyAcc.onClick.AddListener(() => { mAccount_Input.text = string.Empty; });
  34. emptypas.onClick.AddListener(() => { mPassword_Input.text = string.Empty; });
  35. //mAccountStr = "13910723157";
  36. //mPasswordStr = "1";
  37. mAccountStr = "lisongnan";
  38. //mAccountStr = "guohaipeng";
  39. mPasswordStr = "13579Wp!#%&(";
  40. if (PlayerPrefs.HasKey("mAccountStr"))
  41. {
  42. mAccountStr = PlayerPrefs.GetString("mAccountStr");
  43. mPasswordStr = PlayerPrefs.GetString("mPasswordStr");
  44. }
  45. #if UNITY_EDITOR
  46. // OnClickLogin();
  47. // mAccountStr = "18767144539";
  48. #endif
  49. mAccount_Input.text = mAccountStr;
  50. mPassword_Input.text = mPasswordStr;
  51. deviceId.text = GetAndroidSNIEMI.GetDeviceUniqueIdMD5();
  52. }
  53. /// <summary>
  54. /// 账号输入完成
  55. /// </summary>
  56. private void OnAccountEndEdit(string str)
  57. {
  58. mAccountStr = str;
  59. }
  60. /// <summary>
  61. /// 密码输入完成
  62. /// </summary>
  63. private void OnPasswordEndEdit(string str)
  64. {
  65. mPasswordStr = str;
  66. }
  67. /// <summary>
  68. /// 登录
  69. /// </summary>
  70. private void OnClickLogin()
  71. {
  72. #if UNITY_EDITOR
  73. //mAccountStr = "13910723157";
  74. //mPasswordStr = "1";
  75. #endif
  76. mAccount_Input.text = mAccountStr;
  77. mPassword_Input.text = mPasswordStr;
  78. if (string.IsNullOrWhiteSpace(mAccountStr) || string.IsNullOrWhiteSpace(mPasswordStr)) return;
  79. EndustryLoginUserInfo sendLogin = new EndustryLoginUserInfo()
  80. {
  81. account = mAccountStr,
  82. password = mPasswordStr
  83. };
  84. string jsonLogin = JsonMapper.ToJson(sendLogin);
  85. // HttpTool.Instance.PostLogin(HttpActionLang.login, jsonLogin, LoginCallBack);
  86. LangChaoJiekou.Instance.GotToLogin(mAccountStr, mPasswordStr, LoginCallBack);
  87. }
  88. /// <summary>
  89. /// 登录返回数据
  90. /// </summary>
  91. public void LoginCallBack(bool b)
  92. {
  93. if (!b)
  94. StartCoroutine(PopUp());
  95. else
  96. {
  97. PlayerPrefs.SetString("mAccountStr", mAccountStr);
  98. PlayerPrefs.SetString("mPasswordStr", mPasswordStr);
  99. ScenesManager.Instance.showWindow(ScenesManager.SceneType.ShowChoose);
  100. MQTTManager.Instance.SetAccoutInfo(mAccountStr);
  101. GameStart.Instance.StartCoroutine(HttpTool.Instance.SendHttp(HttpActionLang.userinfo, "", UserInfoCallBack));
  102. JsonData data = new JsonData();
  103. data["id"] = 1;
  104. // HttpTool.Instance.Post(HttpActionLang.sceneInit, data.ToJson(), MachineRoomManager.Instance.SceneInitCallBack);
  105. }
  106. }
  107. private IEnumerator PopUp()
  108. {
  109. mLoginError_go.SetActive(true);
  110. yield return new WaitForSeconds(1);
  111. mLoginError_go.SetActive(false);
  112. }
  113. private void UserInfoCallBack(string msg)
  114. {
  115. Debug.Log(msg);
  116. JObject obj = JObject.Parse(msg);
  117. if (obj["code"].ToString() == "200")
  118. {
  119. MQTTManager.Instance._username = obj["data"]["name"].ToString();
  120. MQTTManager.Instance.roleId = obj["data"]["roleId"].ToString();
  121. // MQTTManager.Instance.email = obj["data"]["email"].ToString();
  122. MQTTManager.Instance.phone = obj["data"]["phone"].ToString();
  123. // MQTTManager.Instance.resourcePool = obj["data"]["resourcePool"].ToString();
  124. MQTTManager.Instance.resourcePoolId = obj["data"]["resourcePoolId"].ToString();
  125. // MQTTManager.Instance.expertType = obj["data"]["expertType"].ToString();
  126. // MQTTManager.Instance.room = obj["data"]["room"].ToString();
  127. MQTTManager.Instance.id = obj["data"]["id"].ToString();
  128. MQTTManager.Instance.Signal();
  129. }
  130. else
  131. {
  132. Debug.LogError("获取用户信息失败 !!!" + obj["code"].ToString());
  133. }
  134. }
  135. }
  136. }