14d736571bbe33c53ac146eef306ec2a38843e47.svn-base 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. package eVVM.apk.ui.vaccination;
  2. import android.widget.ImageView;
  3. import com.hjq.permissions.OnPermission;
  4. import com.hjq.permissions.Permission;
  5. import com.hjq.permissions.XXPermissions;
  6. import java.util.List;
  7. import butterknife.BindView;
  8. import butterknife.OnClick;
  9. import eVVM.apk.R;
  10. import eVVM.apk.helper.SPUtils;
  11. import eVVM.apk.mvp.MvpLazyFragment;
  12. import eVVM.apk.ui.bean.CategoryTimesBean;
  13. import eVVM.apk.ui.vaccination.categoryTimes.CategoryTimesContract;
  14. import eVVM.apk.ui.vaccination.categoryTimes.CategoryTimesPresenter;
  15. public class FirstFragment extends MvpLazyFragment<CategoryTimesPresenter> implements CategoryTimesContract.View {
  16. @BindView(R.id.first_iv_scanning)
  17. ImageView firstIvScanning;
  18. public static FirstFragment newInstance() {
  19. return new FirstFragment();
  20. }
  21. @Override
  22. protected int getLayoutId() {
  23. return R.layout.first_fragment;
  24. }
  25. @Override
  26. protected int getTitleId() {
  27. return 0;
  28. }
  29. @Override
  30. protected void initView() {
  31. }
  32. @Override
  33. public void setUserVisibleHint(boolean isVisibleToUser) {
  34. super.setUserVisibleHint(isVisibleToUser);
  35. if (isVisibleToUser) {
  36. //相当于Fragment的onResume,为true时,Fragment已经可见
  37. SPUtils.remove("INOCULATOR_LIST");
  38. } else {
  39. //相当于Fragment的onPause,为false时,Fragment不可见
  40. }
  41. }
  42. @Override
  43. protected void initData() {
  44. getPresenter().categoryTimesList();
  45. }
  46. @Override
  47. public void categoryTimesListError(String msg) {
  48. }
  49. @Override
  50. public void categoryTimesListSuccess(List<CategoryTimesBean.DataBean> data) {
  51. for(CategoryTimesBean.DataBean bean : data){
  52. SPUtils.put( "categorytimes_" + bean.getCode2(), bean.getOvertimes());
  53. }
  54. }
  55. @Override
  56. public boolean isStatusBarEnabled() {
  57. // 使用沉浸式状态栏
  58. return !super.isStatusBarEnabled();
  59. }
  60. @OnClick(R.id.first_iv_scanning)
  61. public void onViewClicked() {
  62. getCameraPermission();
  63. }
  64. private void getCameraPermission() {
  65. XXPermissions.with(getBindingActivity())
  66. //.constantRequest() //可设置被拒绝后继续申请,直到用户授权或者永久拒绝
  67. //.permission(Permission.SYSTEM_ALERT_WINDOW, Permission.REQUEST_INSTALL_PACKAGES) //支持请求6.0悬浮窗权限8.0请求安装权限
  68. .permission(Permission.CAMERA) //不指定权限则自动获取清单中的危险权限
  69. .request(new OnPermission() {
  70. @Override
  71. public void hasPermission(List<String> granted, boolean isAll) {
  72. if (isAll) {
  73. //toast("获取权限成功");
  74. startActivity(QrCodeActivity.class);
  75. }else {
  76. toast("获取权限成功,部分权限未正常授予");
  77. }
  78. }
  79. @Override
  80. public void noPermission(List<String> denied, boolean quick) {
  81. if(quick) {
  82. toast("未获取到照相机权限,请手动授予");
  83. //如果是被永久拒绝就跳转到应用权限系统设置页面
  84. XXPermissions.gotoPermissionSettings(getBindingActivity());
  85. }else {
  86. toast("获取照相机权限失败,无法使用扫一扫");
  87. }
  88. }
  89. });
  90. }
  91. @Override
  92. public void onLoading() {
  93. }
  94. @Override
  95. public void onComplete() {
  96. }
  97. @Override
  98. public void onEmpty() {
  99. }
  100. @Override
  101. public void onError() {
  102. }
  103. @Override
  104. protected CategoryTimesPresenter createPresenter() {
  105. return new CategoryTimesPresenter();
  106. }
  107. }