SendMainFragment.java 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. package com.emato.ich.fragment;
  2. import android.os.Bundle;
  3. import android.os.CountDownTimer;
  4. import com.emato.ich.device.DeviceControl;
  5. import com.emato.ich.local.LocalStorage;
  6. import com.emato.ich.message.ICHPublishClient;
  7. import com.emato.ich.utils.Log;
  8. import android.view.LayoutInflater;
  9. import android.view.View;
  10. import android.view.ViewGroup;
  11. import androidx.annotation.NonNull;
  12. import androidx.annotation.Nullable;
  13. import androidx.fragment.app.Fragment;
  14. import androidx.navigation.fragment.NavHostFragment;
  15. import com.emato.ich.MainActivity;
  16. import com.emato.ich.R;
  17. import com.emato.ich.databinding.FragmentSendMainBinding;
  18. import com.emato.ich.utils.ButtonUtils;
  19. import com.emato.ich.utils.LoggingUtils;
  20. import com.emato.ich.utils.NavUtils;
  21. import com.emato.ich.utils.TimeOutUtils;
  22. import org.jetbrains.annotations.NotNull;
  23. import java.util.concurrent.CountDownLatch;
  24. /**
  25. * 投递员主页
  26. */
  27. public class SendMainFragment extends Fragment {
  28. private FragmentSendMainBinding binding;
  29. private static final String TAG = SendMainFragment.class.getName();
  30. private CountDownTimer timer;
  31. private long start;
  32. @Nullable
  33. @org.jetbrains.annotations.Nullable
  34. @Override
  35. public View onCreateView(@NonNull @NotNull LayoutInflater inflater, @Nullable @org.jetbrains.annotations.Nullable ViewGroup container, @Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) {
  36. start = System.currentTimeMillis();
  37. binding = FragmentSendMainBinding.inflate(inflater, container, false);
  38. return binding.getRoot();
  39. }
  40. public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
  41. long end = System.currentTimeMillis();
  42. Log.i(TAG, TAG + "页面渲染速度为" + (end - start) + "ms。");
  43. // 获取登录人员信息
  44. String loginPhone = LocalStorage.getInstance().getSession().getPhone();
  45. // 根据登录账号判断是否为管理员
  46. if(!"18888888881".equals(loginPhone)){
  47. // 如果不是 则设置为隐藏
  48. view.findViewById(R.id.upload_cab_info_btn).setVisibility(View.GONE);
  49. view.findViewById(R.id.query_upload_cab_info_btn).setVisibility(View.GONE);
  50. }
  51. // ColorConstant.setButtonColor(binding.returnBtn, ColorConstant.RETURN_BUTTON_BG_COLOR);
  52. // 去除异常页数据
  53. try {
  54. MainActivity activity = ((MainActivity) getActivity());
  55. activity.getBundleMap().remove(ExceptionFragment.class.getName());
  56. } catch (Exception e) {
  57. Log.e(TAG, "onViewCreated: 去除异常页数据异常! ", e);
  58. LoggingUtils.sendErrorLog("业务异常: 投递员主页去除异常页数据异常! ", e);
  59. }
  60. try {
  61. MainActivity activity = ((MainActivity) getActivity());
  62. timer = TimeOutUtils.timeout(activity, SendMainFragment.this, binding.timeout, 120);
  63. timer.start();
  64. } catch (Exception e) {
  65. Log.e(TAG, "onViewCreated: 倒计时出现异常! ", e);
  66. LoggingUtils.sendErrorLog("业务异常: 投递员主页倒计时出现异常! ", e);
  67. }
  68. // 输入快件信息
  69. binding.sendConfirmBtn.setOnClickListener(view1 -> {
  70. if (ButtonUtils.isFastClick()) {
  71. return;
  72. }
  73. if (null != timer) {
  74. timer.cancel();
  75. }
  76. NavUtils.navigate(this, R.id.action_sendMainFragment_to_chooseCabinetFragment);
  77. });
  78. // 异常处理
  79. binding.exceptionHandleBtn.setOnClickListener(view1 -> {
  80. if (ButtonUtils.isFastClick()) {
  81. return;
  82. }
  83. if (null != timer) {
  84. timer.cancel();
  85. }
  86. NavUtils.navigate(this, R.id.action_sendMainFragment_to_exceptionFragment);
  87. });
  88. binding.returnBtn.setOnClickListener(view1 -> {
  89. if (ButtonUtils.isFastClick()) {
  90. return;
  91. }
  92. if (null != timer) {
  93. timer.cancel();
  94. }
  95. NavUtils.navigate(this, R.id.action_sendMainFragment_to_sendFragment);
  96. });
  97. // 全开柜门
  98. binding.uploadCabInfoBtn.setOnClickListener(view1 -> {
  99. if (ButtonUtils.isFastClick()) {
  100. return;
  101. }
  102. try {
  103. MainActivity activity = ((MainActivity) getActivity());
  104. ICHPublishClient ichPublishClient = ICHPublishClient.getInstance();
  105. if (activity != null) {
  106. CountDownLatch countDownLatch = new CountDownLatch(10);
  107. for (int i = 1; i <= 10; i++) {
  108. // 先全开柜门
  109. DeviceControl.queryLockListInfo(i,null,countDownLatch);
  110. }
  111. //activity.cabinetInfoReport(ichPublishClient);
  112. }else {
  113. Log.e(TAG, "未获取到页面!! ");
  114. LoggingUtils.sendErrorLog("上报数据时未获取到页面! ",new Throwable("上报数据时未获取到页面"));
  115. }
  116. }catch (Exception e){
  117. Log.e(TAG, "上报数据失败!!,系统异常:",e);
  118. LoggingUtils.sendErrorLog("上报数据失败!!,系统异常:",e);
  119. }
  120. if (null != timer) {
  121. timer.cancel();
  122. }
  123. });
  124. // 上传数据
  125. binding.queryUploadCabInfoBtn.setOnClickListener(view1 -> {
  126. if (ButtonUtils.isFastClick()) {
  127. return;
  128. }
  129. try {
  130. MainActivity activity = ((MainActivity) getActivity());
  131. ICHPublishClient ichPublishClient = ICHPublishClient.getInstance();
  132. if (activity != null) {
  133. activity.cabinetInfoReport(ichPublishClient);
  134. }else {
  135. Log.e(TAG, "未获取到页面!! ");
  136. LoggingUtils.sendErrorLog("上报数据时未获取到页面! ",new Throwable("上报数据时未获取到页面"));
  137. }
  138. }catch (Exception e){
  139. Log.e(TAG, "上报数据失败!!,系统异常:",e);
  140. LoggingUtils.sendErrorLog("上报数据失败!!,系统异常:",e);
  141. }
  142. if (null != timer) {
  143. timer.cancel();
  144. }
  145. });
  146. }
  147. @Override
  148. public void onDestroy() {
  149. if (timer != null) {
  150. timer.cancel();
  151. timer = null;
  152. }
  153. super.onDestroy();
  154. binding = null;
  155. Log.i(TAG, TAG + "被销毁。。。");
  156. }
  157. }