MainWindow.xaml.cs 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. using CsuWebApiLib;
  2. using Newtonsoft.Json;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. using System.Windows;
  9. using System.Windows.Controls;
  10. using System.Windows.Data;
  11. using System.Windows.Documents;
  12. using System.Windows.Input;
  13. using System.Windows.Media;
  14. using System.Windows.Media.Imaging;
  15. using System.Windows.Navigation;
  16. using System.Windows.Shapes;
  17. namespace ApiTest
  18. {
  19. /// <summary>
  20. /// MainWindow.xaml 的互動邏輯
  21. /// </summary>
  22. public partial class MainWindow : Window
  23. {
  24. public MainWindow()
  25. {
  26. InitializeComponent();
  27. uxIp.Text = "192.168.100.1";
  28. uxAccount.Text = "account";
  29. uxPass.Text = "password";
  30. #if DEBUG
  31. uxIp.Text = "192.168.80.129";
  32. uxAccount.Text = "zerova";
  33. uxPass.Text = "t6sji4j83";
  34. #endif
  35. }
  36. private async void GetVersion_Click(object sender, RoutedEventArgs e)
  37. {
  38. TryUpdateConfig();
  39. var result = await EvApi.GetVersion();
  40. //var result = await EvApi.GetTelcomModemFwRev();
  41. uxResult.Text = result.Response;
  42. }
  43. private async void GetSystem_Click(object sender, RoutedEventArgs e)
  44. {
  45. TryUpdateConfig();
  46. var result = await EvHttpClient.GetQueryActionOpt1String();
  47. uxResult.Text = result.Msg;
  48. }
  49. private async void GetCharging_Click(object sender, RoutedEventArgs e)
  50. {
  51. TryUpdateConfig();
  52. var result = await EvHttpClient.GetQueryActionOpt2String();
  53. uxResult.Text = result.Msg;
  54. }
  55. private async void GetNetwrok_Click(object sender, RoutedEventArgs e)
  56. {
  57. TryUpdateConfig();
  58. var result = await EvHttpClient.GetQueryActionOpt3String();
  59. uxResult.Text = result.Msg;
  60. }
  61. private async void GetBackend_Click(object sender, RoutedEventArgs e)
  62. {
  63. TryUpdateConfig();
  64. var result = await EvHttpClient.GetQueryActionOpt4String();
  65. uxResult.Text = result.Msg;
  66. }
  67. private async void EnableAuth_Click(object sender, RoutedEventArgs e)
  68. {
  69. TryUpdateConfig();
  70. var result = await EvApi.SetAuthorisationMode(isAuthRequired: true);
  71. uxResult.Text = result.Response;
  72. }
  73. private async void DisableAuth_Click(object sender, RoutedEventArgs e)
  74. {
  75. TryUpdateConfig();
  76. var result = await EvApi.SetAuthorisationMode(isAuthRequired: false);
  77. uxResult.Text = result.Response;
  78. }
  79. private async void SetSystem_Click(object sender, RoutedEventArgs e)
  80. {
  81. TryUpdateConfig();
  82. var dlg = new SetConfigDlg() { Owner = this };
  83. dlg.ShowDialog();
  84. if (dlg.DialogResult != true)
  85. return;
  86. var result = await EvHttpClient.SetSystemAction(dlg.Key, dlg.Val);
  87. uxResult.Text = result.Msg;
  88. }
  89. private async void GetTelcom_Click(object sender, RoutedEventArgs e)
  90. {
  91. TryUpdateConfig();
  92. var result = await EvApi.GetTelcomSubSimStatus();
  93. uxResult.Text = JsonConvert.SerializeObject(result.Result);
  94. }
  95. private async void UploadFirmware_Click(object sender, RoutedEventArgs e)
  96. {
  97. TryUpdateConfig();
  98. var result = await EvHttpClient.GetUploadfirmwareResultString(new List<string>() {
  99. //System.IO.Path.GetFullPath("fake.txt"),
  100. //System.IO.Path.GetFullPath("fake.txt")
  101. System.IO.Path.GetFullPath("DOWU362000D4OL_DO360_V2.10_0_CRC=C5CD06B4.gz"),
  102. //System.IO.Path.GetFullPath("CSU_V3.06_CRC=54D4A562.gz")
  103. });
  104. //var result = await EvApi.SignalUpdateFirmware(); ;
  105. uxResult.Text = JsonConvert.SerializeObject(result);
  106. }
  107. private void TryUpdateConfig()
  108. {
  109. if (!string.IsNullOrEmpty(uxAccount.Text))
  110. {
  111. EvHttpClient.Account = uxAccount.Text;
  112. }
  113. if (!string.IsNullOrEmpty(uxPass.Text))
  114. {
  115. EvHttpClient.Pass = uxPass.Text;
  116. }
  117. EvHttpClient.ResetServerIpAddress(uxIp.Text);
  118. }
  119. private async void ReStart_Click(object sender, RoutedEventArgs e)
  120. {
  121. TryUpdateConfig();
  122. var result = await EvApi.Restart();
  123. uxResult.Text = JsonConvert.SerializeObject(result.Result);
  124. }
  125. private async void BtnStatus_Click(object sender, RoutedEventArgs e)
  126. {
  127. TryUpdateConfig();
  128. var result = await EvApi.GetButtonStatus();
  129. uxResult.Text = JsonConvert.SerializeObject(result.Result);
  130. }
  131. private async void SetWifiStation_Click(object sender, RoutedEventArgs e)
  132. {
  133. TryUpdateConfig();
  134. var result = await EvApi.SetWifiStationMode(uxP0.Text, uxP1.Text);
  135. uxResult.Text = JsonConvert.SerializeObject(result.Response);
  136. }
  137. private async void SetTelcom_Click(object sender, RoutedEventArgs e)
  138. {
  139. TryUpdateConfig();
  140. var result = await EvApi.SetTelcomEnabled(true);
  141. uxResult.Text = JsonConvert.SerializeObject(result.Response);
  142. }
  143. }
  144. }