diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
index 7b0a864..bc4c9c1 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
index 7b0a864..bc4c9c1 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
index 7baaaf5..c6fee00 100644
--- a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.model.PointFutureBean;
import com.casic.dcms.model.ShopFeatureBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -293,11 +293,11 @@
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
- DialogHelper.showLoadingDialog(context, "查询商户信息中,请稍后");
+ DialogHub.get().showLoading(ArcGISMapActivity.this, "查询商户信息中,请稍后");
HttpRequestHelper.doRequest(LocaleConstant.SHOP_MERCHANT_ID, featureBean.getObjid(), new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
JSONObject jsonObject = new JSONObject(resultBean.string());
JSONObject data = jsonObject.getJSONObject("data");
@@ -477,7 +477,7 @@
} else if (id == R.id.minusMapView) {
viewBinding.mapView.setViewpointScaleAsync(viewBinding.mapView.getMapScale() * 2);
} else if (id == R.id.removeToLocalView) {
- DialogHelper.showLoadingDialog(this, "定位中,请稍后");
+ DialogHub.get().showLoading(this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(this, new ILocationListener() {
@Override
@@ -487,7 +487,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
index 7b0a864..bc4c9c1 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
index 7baaaf5..c6fee00 100644
--- a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.model.PointFutureBean;
import com.casic.dcms.model.ShopFeatureBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -293,11 +293,11 @@
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
- DialogHelper.showLoadingDialog(context, "查询商户信息中,请稍后");
+ DialogHub.get().showLoading(ArcGISMapActivity.this, "查询商户信息中,请稍后");
HttpRequestHelper.doRequest(LocaleConstant.SHOP_MERCHANT_ID, featureBean.getObjid(), new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
JSONObject jsonObject = new JSONObject(resultBean.string());
JSONObject data = jsonObject.getJSONObject("data");
@@ -477,7 +477,7 @@
} else if (id == R.id.minusMapView) {
viewBinding.mapView.setViewpointScaleAsync(viewBinding.mapView.getMapScale() * 2);
} else if (id == R.id.removeToLocalView) {
- DialogHelper.showLoadingDialog(this, "定位中,请稍后");
+ DialogHub.get().showLoading(this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(this, new ILocationListener() {
@Override
@@ -487,7 +487,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
diff --git a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
index 5bd7e85..0d6aac3 100644
--- a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityGisBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -94,7 +94,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(DisplayMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -103,7 +103,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
index 7b0a864..bc4c9c1 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
index 7baaaf5..c6fee00 100644
--- a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.model.PointFutureBean;
import com.casic.dcms.model.ShopFeatureBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -293,11 +293,11 @@
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
- DialogHelper.showLoadingDialog(context, "查询商户信息中,请稍后");
+ DialogHub.get().showLoading(ArcGISMapActivity.this, "查询商户信息中,请稍后");
HttpRequestHelper.doRequest(LocaleConstant.SHOP_MERCHANT_ID, featureBean.getObjid(), new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
JSONObject jsonObject = new JSONObject(resultBean.string());
JSONObject data = jsonObject.getJSONObject("data");
@@ -477,7 +477,7 @@
} else if (id == R.id.minusMapView) {
viewBinding.mapView.setViewpointScaleAsync(viewBinding.mapView.getMapScale() * 2);
} else if (id == R.id.removeToLocalView) {
- DialogHelper.showLoadingDialog(this, "定位中,请稍后");
+ DialogHub.get().showLoading(this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(this, new ILocationListener() {
@Override
@@ -487,7 +487,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
diff --git a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
index 5bd7e85..0d6aac3 100644
--- a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityGisBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -94,7 +94,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(DisplayMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -103,7 +103,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
index ab7d389..58588c5 100644
--- a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityWorkerMapBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -135,7 +135,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(WorkerOnMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -144,7 +144,7 @@
Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
index 7b0a864..bc4c9c1 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
index 7baaaf5..c6fee00 100644
--- a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.model.PointFutureBean;
import com.casic.dcms.model.ShopFeatureBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -293,11 +293,11 @@
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
- DialogHelper.showLoadingDialog(context, "查询商户信息中,请稍后");
+ DialogHub.get().showLoading(ArcGISMapActivity.this, "查询商户信息中,请稍后");
HttpRequestHelper.doRequest(LocaleConstant.SHOP_MERCHANT_ID, featureBean.getObjid(), new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
JSONObject jsonObject = new JSONObject(resultBean.string());
JSONObject data = jsonObject.getJSONObject("data");
@@ -477,7 +477,7 @@
} else if (id == R.id.minusMapView) {
viewBinding.mapView.setViewpointScaleAsync(viewBinding.mapView.getMapScale() * 2);
} else if (id == R.id.removeToLocalView) {
- DialogHelper.showLoadingDialog(this, "定位中,请稍后");
+ DialogHub.get().showLoading(this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(this, new ILocationListener() {
@Override
@@ -487,7 +487,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
diff --git a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
index 5bd7e85..0d6aac3 100644
--- a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityGisBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -94,7 +94,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(DisplayMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -103,7 +103,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
index ab7d389..58588c5 100644
--- a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityWorkerMapBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -135,7 +135,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(WorkerOnMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -144,7 +144,7 @@
Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java b/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
index 1b1c5df..45db716 100644
--- a/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPipeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.AlarmDataBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.view.map.WarningOnMapActivity;
import com.casic.dcms.vm.AlarmViewModel;
@@ -91,9 +91,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(PipelineManagerActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
index 7b0a864..bc4c9c1 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
index 7baaaf5..c6fee00 100644
--- a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.model.PointFutureBean;
import com.casic.dcms.model.ShopFeatureBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -293,11 +293,11 @@
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
- DialogHelper.showLoadingDialog(context, "查询商户信息中,请稍后");
+ DialogHub.get().showLoading(ArcGISMapActivity.this, "查询商户信息中,请稍后");
HttpRequestHelper.doRequest(LocaleConstant.SHOP_MERCHANT_ID, featureBean.getObjid(), new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
JSONObject jsonObject = new JSONObject(resultBean.string());
JSONObject data = jsonObject.getJSONObject("data");
@@ -477,7 +477,7 @@
} else if (id == R.id.minusMapView) {
viewBinding.mapView.setViewpointScaleAsync(viewBinding.mapView.getMapScale() * 2);
} else if (id == R.id.removeToLocalView) {
- DialogHelper.showLoadingDialog(this, "定位中,请稍后");
+ DialogHub.get().showLoading(this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(this, new ILocationListener() {
@Override
@@ -487,7 +487,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
diff --git a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
index 5bd7e85..0d6aac3 100644
--- a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityGisBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -94,7 +94,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(DisplayMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -103,7 +103,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
index ab7d389..58588c5 100644
--- a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityWorkerMapBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -135,7 +135,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(WorkerOnMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -144,7 +144,7 @@
Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java b/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
index 1b1c5df..45db716 100644
--- a/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPipeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.AlarmDataBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.view.map.WarningOnMapActivity;
import com.casic.dcms.vm.AlarmViewModel;
@@ -91,9 +91,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(PipelineManagerActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java b/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
index a4fc663..2eefbb5 100644
--- a/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityWellListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.WellListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.vm.WellViewModel;
@@ -85,9 +85,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(WellListActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
index 7b0a864..bc4c9c1 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
index 7baaaf5..c6fee00 100644
--- a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.model.PointFutureBean;
import com.casic.dcms.model.ShopFeatureBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -293,11 +293,11 @@
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
- DialogHelper.showLoadingDialog(context, "查询商户信息中,请稍后");
+ DialogHub.get().showLoading(ArcGISMapActivity.this, "查询商户信息中,请稍后");
HttpRequestHelper.doRequest(LocaleConstant.SHOP_MERCHANT_ID, featureBean.getObjid(), new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
JSONObject jsonObject = new JSONObject(resultBean.string());
JSONObject data = jsonObject.getJSONObject("data");
@@ -477,7 +477,7 @@
} else if (id == R.id.minusMapView) {
viewBinding.mapView.setViewpointScaleAsync(viewBinding.mapView.getMapScale() * 2);
} else if (id == R.id.removeToLocalView) {
- DialogHelper.showLoadingDialog(this, "定位中,请稍后");
+ DialogHub.get().showLoading(this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(this, new ILocationListener() {
@Override
@@ -487,7 +487,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
diff --git a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
index 5bd7e85..0d6aac3 100644
--- a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityGisBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -94,7 +94,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(DisplayMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -103,7 +103,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
index ab7d389..58588c5 100644
--- a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityWorkerMapBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -135,7 +135,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(WorkerOnMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -144,7 +144,7 @@
Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java b/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
index 1b1c5df..45db716 100644
--- a/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPipeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.AlarmDataBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.view.map.WarningOnMapActivity;
import com.casic.dcms.vm.AlarmViewModel;
@@ -91,9 +91,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(PipelineManagerActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java b/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
index a4fc663..2eefbb5 100644
--- a/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityWellListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.WellListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.vm.WellViewModel;
@@ -85,9 +85,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(WellListActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/statistics/CaseResourceActivity.java b/app/src/main/java/com/casic/dcms/view/statistics/CaseResourceActivity.java
index 9c0cee4..4a4dd3c 100644
--- a/app/src/main/java/com/casic/dcms/view/statistics/CaseResourceActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/statistics/CaseResourceActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.model.CaseResourceBean;
import com.casic.dcms.utils.ChartViewHelper;
import com.casic.dcms.utils.ColorHub;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.TimeOrDateUtil;
import com.casic.dcms.vm.DataAnalysisViewModel;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(CaseResourceActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060504;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -251,24 +298,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (handleImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
- }
- }
- });
- uploadViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
- } else {
- DialogHelper.dismissLoadingDialog();
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(realPaths);
}
}
});
@@ -284,7 +317,7 @@
if (handleResult.equals("处理完成")) {
//选择处理完成时,处理图片必传。至少一张,最多两张
if (handleImageAdapter.getItemCount() < 1) {
- StringHub.show(context, "当前案卷状态必须上传至少一张图片");
+ StringHub.show(context, "至少上传一张照片");
return;
}
}
@@ -301,20 +334,20 @@
);
}
});
- operateViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
- } else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
- finish();
- } else {
- StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
- }
+ }
+
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060504) {
+ handleSelectResult((LocalMedia) msg.obj);
}
- });
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
}
@Override
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
index 7b0a864..bc4c9c1 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
index 7baaaf5..c6fee00 100644
--- a/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/ArcGISMapActivity.java
@@ -18,7 +18,7 @@
import com.casic.dcms.model.PointFutureBean;
import com.casic.dcms.model.ShopFeatureBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -293,11 +293,11 @@
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
- DialogHelper.showLoadingDialog(context, "查询商户信息中,请稍后");
+ DialogHub.get().showLoading(ArcGISMapActivity.this, "查询商户信息中,请稍后");
HttpRequestHelper.doRequest(LocaleConstant.SHOP_MERCHANT_ID, featureBean.getObjid(), new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
JSONObject jsonObject = new JSONObject(resultBean.string());
JSONObject data = jsonObject.getJSONObject("data");
@@ -477,7 +477,7 @@
} else if (id == R.id.minusMapView) {
viewBinding.mapView.setViewpointScaleAsync(viewBinding.mapView.getMapScale() * 2);
} else if (id == R.id.removeToLocalView) {
- DialogHelper.showLoadingDialog(this, "定位中,请稍后");
+ DialogHub.get().showLoading(this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(this, new ILocationListener() {
@Override
@@ -487,7 +487,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
diff --git a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
index 5bd7e85..0d6aac3 100644
--- a/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/DisplayMapActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityGisBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -94,7 +94,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(DisplayMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -103,7 +103,7 @@
Point point = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(point);
viewBinding.mapView.setViewpointCenterAsync(point, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
index ab7d389..58588c5 100644
--- a/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/map/WorkerOnMapActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityWorkerMapBinding;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.callback.ILocationListener;
@@ -135,7 +135,7 @@
viewBinding.removeToLocalView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
- DialogHelper.showLoadingDialog(context, "定位中,请稍后");
+ DialogHub.get().showLoading(WorkerOnMapActivity.this, "定位中,请稍后");
LocationHelper.obtainCurrentLocation(context, new ILocationListener() {
@Override
@@ -144,7 +144,7 @@
Point p = new Point(gcjToWgs[0], gcjToWgs[1], SpatialReferences.getWgs84());
addPictureMarker(p);
viewBinding.mapView.setViewpointCenterAsync(p, 2800.0);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}, true);
}
diff --git a/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java b/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
index 1b1c5df..45db716 100644
--- a/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/pipeline/PipelineManagerActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPipeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.AlarmDataBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.view.map.WarningOnMapActivity;
import com.casic.dcms.vm.AlarmViewModel;
@@ -91,9 +91,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(PipelineManagerActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java b/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
index a4fc663..2eefbb5 100644
--- a/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/pipeline/WellListActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityWellListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.WellListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.vm.WellViewModel;
@@ -85,9 +85,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(WellListActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/statistics/CaseResourceActivity.java b/app/src/main/java/com/casic/dcms/view/statistics/CaseResourceActivity.java
index 9c0cee4..4a4dd3c 100644
--- a/app/src/main/java/com/casic/dcms/view/statistics/CaseResourceActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/statistics/CaseResourceActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.model.CaseResourceBean;
import com.casic.dcms.utils.ChartViewHelper;
import com.casic.dcms.utils.ColorHub;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.TimeOrDateUtil;
import com.casic.dcms.vm.DataAnalysisViewModel;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(CaseResourceActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/statistics/CityBaseDataActivity.java b/app/src/main/java/com/casic/dcms/view/statistics/CityBaseDataActivity.java
index a91ef9c..3a54f3e 100644
--- a/app/src/main/java/com/casic/dcms/view/statistics/CityBaseDataActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/statistics/CityBaseDataActivity.java
@@ -8,7 +8,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCityBaseDataBinding;
import com.casic.dcms.model.CityBaseDataBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.DataAnalysisViewModel;
@@ -46,9 +46,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "数据加载中,请稍后");
+ DialogHub.get().showLoading(CityBaseDataActivity.this, "数据加载中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 56a7b97..d2b5d47 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -317,7 +317,7 @@
-
+
@@ -342,6 +342,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index 7a0922b..b88f2a5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -11,8 +11,8 @@
applicationId "com.casic.dcms"
minSdkVersion 23
targetSdkVersion 31
- versionCode 1
- versionName "1.0.0.0"
+ versionCode 2
+ versionName "1.0.0.1"
manifestPlaceholders = [GETUI_APPID: "rD5OSy72eI8v86VDdfdrO8"]
}
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
index 7c1a6ce..6049359 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnListFragment.java
@@ -13,7 +13,7 @@
import com.casic.dcms.databinding.FragmentLightListBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightListBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.vm.LightViewModel;
import com.casic.dcms.widgets.LightDetailDialog;
@@ -124,9 +124,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
index 945227f..731efca 100644
--- a/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/LightOnMapFragment.java
@@ -24,7 +24,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.LightMapBean;
import com.casic.dcms.utils.ArcGisMapCreator;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.HttpRequestHelper;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.LocationHelper;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "处理中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "处理中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -275,7 +275,7 @@
@Override
public void onClick(View v) {
clearPictureMarker();
- DialogHelper.showLoadingDialog(requireContext(), "定位中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "定位中,请稍后");
LocationHelper.obtainCurrentLocation(requireContext(), new ILocationListener() {
@Override
@@ -294,7 +294,7 @@
}
addPictureMarker(pointList);
viewBinding.mapView.setViewpointCenterAsync(point, 3000);
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}, true);
@@ -351,11 +351,11 @@
TextView lightTimeView = popupView.findViewById(R.id.lightTimeView);
ImageView lightSwitch = popupView.findViewById(R.id.lightSwitch);
- DialogHelper.showLoadingDialog(requireContext(), "路灯详情获取中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "路灯详情获取中,请稍后...");
HttpRequestHelper.doRequest(LocaleConstant.LIGHT_DETAIL, lampId, new IHttpRequestListener() {
@Override
public void onSuccess(ResponseBody resultBean) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
try {
String string = resultBean.string();
JSONObject jsonObject = new JSONObject(string);
@@ -405,7 +405,7 @@
@Override
public void onFailure(Throwable throwable) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "网络连接失败,请重新选点");
}
});
diff --git a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
index 507b1a3..479219b 100644
--- a/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
+++ b/app/src/main/java/com/casic/dcms/fragment/MinePageFragment.java
@@ -23,7 +23,7 @@
import com.casic.dcms.model.NewVersionBean;
import com.casic.dcms.model.UserBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -70,7 +70,7 @@
@Override
public void onChanged(UserBean it) {
if (it.getCode() == 200) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
StringHub.show(requireContext(), "同步完成");
user = it.getData();
updateUserInfo();
@@ -167,7 +167,7 @@
viewBinding.updateUserButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- DialogHelper.showLoadingDialog(requireActivity(), "同步中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "同步中,请稍后...");
userViewModel.getUserData();
}
});
@@ -176,9 +176,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "请求中,请稍后");
+ DialogHub.get().showLoading(requireActivity(), "请求中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -187,9 +187,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(requireContext(), "上传中,请稍后...");
+ DialogHub.get().showLoading(requireActivity(), "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java b/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
deleted file mode 100644
index 0c4fbf3..0000000
--- a/app/src/main/java/com/casic/dcms/utils/DialogHelper.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.casic.dcms.utils;
-
-import android.app.Activity;
-import android.content.Context;
-import android.view.WindowManager;
-
-import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
-
-public class DialogHelper {
- private static QMUITipDialog loadingDialog;
-
- public static void showLoadingDialog(Context context, String message) {
- loadingDialog = new QMUITipDialog.Builder(context)
- .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
- .setTipWord(message)
- .create();
- if (!((Activity) context).isDestroyed()) {
- try {
- loadingDialog.show();
- } catch (WindowManager.BadTokenException e) {
- e.printStackTrace();
- }
- }
- }
-
- public static void dismissLoadingDialog() {
- if (loadingDialog.isShowing()) {
- loadingDialog.dismiss();
- }
- }
-}
diff --git a/app/src/main/java/com/casic/dcms/utils/DialogHub.java b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
new file mode 100644
index 0000000..1ab4578
--- /dev/null
+++ b/app/src/main/java/com/casic/dcms/utils/DialogHub.java
@@ -0,0 +1,43 @@
+package com.casic.dcms.utils;
+
+import android.app.Activity;
+import android.view.WindowManager;
+
+import com.qmuiteam.qmui.widget.dialog.QMUITipDialog;
+
+public class DialogHub {
+
+ private DialogHub() {
+ }
+
+ private static final class DialogHubHolder {
+ private static final DialogHub hub = new DialogHub();
+ }
+
+ /**
+ * 双重锁单例
+ */
+ public static DialogHub get() {
+ return DialogHubHolder.hub;
+ }
+
+ private QMUITipDialog loadingDialog;
+
+ public void showLoading(Activity activity, String message) {
+ loadingDialog = new QMUITipDialog.Builder(activity)
+ .setIconType(QMUITipDialog.Builder.ICON_TYPE_LOADING)
+ .setTipWord(message)
+ .create();
+ if (!activity.isDestroyed()) {
+ try {
+ loadingDialog.show();
+ } catch (WindowManager.BadTokenException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ public void dismissLoading() {
+ loadingDialog.dismiss();
+ }
+}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
index bc5e09a..9faa4ca 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -179,9 +179,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
index 691dfd5..0db5b33 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseProcessActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseProcessBinding;
import com.casic.dcms.model.CaseProcessBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CommonDataViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseProcessActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
index 2202372..939d7e1 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseSearchResultActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseListBinding;
import com.casic.dcms.model.CaseSearchResultBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.CaseViewModel;
import com.gyf.immersionbar.ImmersionBar;
import com.pengxh.androidx.lite.adapter.NormalRecyclerAdapter;
@@ -128,9 +128,9 @@
public void onChanged(LoadState loadState) {
if (!isRefresh && !isLoadMore) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷查询中,请稍后");
+ DialogHub.get().showLoading(CaseSearchResultActivity.this, "案卷查询中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
}
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
index 1340c12..70a28b6 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityCaseTodoDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.ComSentenceBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseOperateViewModel;
@@ -132,9 +132,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -196,13 +196,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷督办中,请稍后...");
+ DialogHub.get().showLoading(CaseTodoDetailActivity.this, "案卷督办中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "督办失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
index c7d281c..3058391 100644
--- a/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/CaseTodoHandledDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCaseTodoHandledDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.CaseViewModel;
@@ -130,9 +130,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CaseTodoHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
index 95db287..1153efb 100644
--- a/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/ChangePasswordActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityPasswordBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.vm.UserViewModel;
@@ -170,9 +170,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "密码修改中,请稍后");
+ DialogHub.get().showLoading(ChangePasswordActivity.this, "密码修改中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/LoginActivity.java b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
index 45a3c30..50ab5a6 100644
--- a/app/src/main/java/com/casic/dcms/view/LoginActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/LoginActivity.java
@@ -10,7 +10,7 @@
import com.casic.dcms.model.LoginResultBean;
import com.casic.dcms.model.PublicKeyBean;
import com.casic.dcms.utils.AuthenticationHelper;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.RSAUtils;
import com.casic.dcms.vm.AuthenticateViewModel;
@@ -45,9 +45,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "登录中,请稍后");
+ DialogHub.get().showLoading(LoginActivity.this, "登录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
index 857866b..cb1302f 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.databinding.ActivityBridgeBinding;
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.BridgeConfigBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocationHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.IAddressListener;
@@ -64,9 +64,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "养护记录签到中,请稍后");
+ DialogHub.get().showLoading(BridgeMaintainActivity.this, "养护记录签到中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
index 55e5936..ada9268 100644
--- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java
@@ -12,7 +12,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityMaintainRecordBinding;
import com.casic.dcms.model.MaintainRecordBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.vm.BridgeViewModel;
import com.casic.dcms.widgets.RangeDateActionSheet;
import com.gyf.immersionbar.ImmersionBar;
@@ -59,9 +59,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "查询记录中,请稍后");
+ DialogHub.get().showLoading(MaintainRecordActivity.this, "查询记录中,请稍后");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
index 21a40be..70d7d4e 100644
--- a/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/ChangeShopInfoActivity.java
@@ -3,6 +3,9 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
@@ -10,6 +13,7 @@
import androidx.activity.result.ActivityResultCallback;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.lifecycle.Observer;
@@ -18,6 +22,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityChangeShopBinding;
import com.casic.dcms.model.ActionResultBean;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.utils.callback.ISelectorListener;
@@ -33,6 +38,8 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
+import com.pengxh.androidx.lite.vm.LoadState;
import java.io.File;
import java.util.ArrayList;
@@ -48,6 +55,7 @@
private String merchantId; //商户id
private String merchantName;
private EditableImageAdapter imageAdapter;
+ private WeakReferenceHandler weakReferenceHandler;
//新版onActivityResult
private final ActivityResultLauncher changeShopInfoLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallback() {
@@ -79,18 +87,55 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(ChangeShopInfoActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ shopViewModel.changeResultModel.observe(this, new Observer() {
+ @Override
+ public void onChanged(ActionResultBean resultBean) {
+ if (resultBean.getCode() == 200) {
+ StringHub.show(context, "提交成功");
+ finish();
+ } else {
+ StringHub.show(context, "提交失败,请重试");
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
uploadViewModel = new ViewModelProvider(this).get(UploadViewModel.class);
shopViewModel = new ViewModelProvider(this).get(ShopViewModel.class);
- imageAdapter = new EditableImageAdapter(this, 3, 3);
+ imageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(imageAdapter);
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060501) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
protected void initEvent() {
viewBinding.shopLayout.setOnClickListener(new View.OnClickListener() {
@@ -105,15 +150,29 @@
imageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060501;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -138,14 +197,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (imageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- imageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ imageAdapter.setupImage(realPaths);
}
}
});
@@ -159,32 +214,24 @@
return;
}
if (StringHub.isPhoneNumber(phoneNumber)) {
- String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopLocation)) {
- StringHub.show(context, "店铺地址还未填写");
- return;
- }
- String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
- if (TextUtils.isEmpty(shopKeeper)) {
- StringHub.show(context, "店主名还未填写");
- return;
- }
- shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList)
- );
- } else {
StringHub.show(context, "电话号码格式不对");
+ return;
}
- }
- });
- shopViewModel.changeResultModel.observe(this, new Observer() {
- @Override
- public void onChanged(ActionResultBean resultBean) {
- if (resultBean.getCode() == 200) {
- StringHub.show(context, "提交成功");
- finish();
- } else {
- StringHub.show(context, "提交失败,请重试");
+ String shopLocation = viewBinding.shopLocationView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopLocation)) {
+ StringHub.show(context, "店铺地址还未填写");
+ return;
}
+ String shopKeeper = viewBinding.shopKeeperView.getText().toString().trim().replace(" ", "");
+ if (TextUtils.isEmpty(shopKeeper)) {
+ StringHub.show(context, "店主名还未填写");
+ return;
+ }
+ if (imageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
+ shopViewModel.changeShopInfo(merchantId, merchantName, shopKeeper, phoneNumber, StringHelper.reformatURL(imageList));
}
});
}
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
index d8439f9..b4a4d43 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageHandledDetailActivity.java
@@ -11,7 +11,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityPackageHandledBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -156,9 +156,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(PackageHandledDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
index d401167..28d7a9d 100644
--- a/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/business/PackageTodoDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.business;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -13,7 +17,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -60,6 +65,7 @@
private String caseReason;
private boolean isAddHandleImage = false;//区分是添加处理图片还是添加处罚图片
private String id;//案卷id
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,33 @@
@Override
protected void observeRequestState() {
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(PackageTodoDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
public void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -86,11 +114,11 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
//案卷处理adapter,默认加载之前的处理图,但是依旧可以处理,然后显示最新的图
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.handleImageRecyclerView.setAdapter(handleImageAdapter);
//处罚adapter
- punishImageAdapter = new EditableImageAdapter(this, 3, 3);
+ punishImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addPunishImageRecyclerView.setAdapter(punishImageAdapter);
}
@@ -174,16 +202,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -279,26 +297,17 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
+ String url = resultBean.getData();
if (isAddHandleImage) {
//处理图片
- if (handleImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- handleImageList.add(url);
- handleRealPaths.add(StringHelper.appendCompleteURL(url));
- handleImageAdapter.setupImage(handleRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ handleImageList.add(url);
+ handleRealPaths.add(StringHelper.appendCompleteURL(url));
+ handleImageAdapter.setupImage(handleRealPaths);
} else {
//处罚图片
- if (punishImageAdapter.getItemCount() <= 2) {
- String url = resultBean.getData();
- punishImageList.add(url);
- punishRealPaths.add(StringHelper.appendCompleteURL(url));
- punishImageAdapter.setupImage(punishRealPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ punishImageList.add(url);
+ punishRealPaths.add(StringHelper.appendCompleteURL(url));
+ punishImageAdapter.setupImage(punishRealPaths);
}
}
}
@@ -323,20 +332,48 @@
}
private void selectPicture() {
- PictureSelectorHelper.selectPicture(this, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(this, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060502;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060502) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
/**
* 案卷提交。先提交普通案卷流程,成功后再自动提交三包处罚
*/
@@ -372,6 +409,8 @@
return;
}
}
+
+ //TODO 未完
// caseViewModel.handleOvertimeCase(data.getProcessId(), id, String.valueOf(data.getCaseState()),
// changeState, caseReason, StringHelper.reformatURL(handleImageList), approvalResult);
}
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
index d11d964..f9b38c9 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.check;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -35,6 +39,7 @@
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.Constant;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
@@ -57,6 +62,7 @@
private String changeState;
private EditableImageAdapter checkImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -73,9 +79,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -84,9 +90,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "上传中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "上传中,请稍后...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -95,13 +101,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷核查中,请稍后...");
+ DialogHub.get().showLoading(CheckDetailActivity.this, "案卷核查中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "核查失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -109,6 +115,8 @@
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra(Constant.INTENT_PARAM);
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -215,14 +223,10 @@
@Override
public void onChanged(ActionResultBean resultBean) {
if (resultBean.getCode() == 200) {
- if (checkImageAdapter.getItemCount() <= 3) {
- String url = resultBean.getData();
- imageList.add(url);
- realPaths.add(StringHelper.appendCompleteURL(url));
- checkImageAdapter.setupImage(realPaths);
- } else {
- StringHub.show(context, "最多只能上传3张图片");
- }
+ String url = resultBean.getData();
+ imageList.add(url);
+ realPaths.add(StringHelper.appendCompleteURL(url));
+ checkImageAdapter.setupImage(realPaths);
}
}
});
@@ -256,7 +260,7 @@
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- checkImageAdapter = new EditableImageAdapter(this, 3, 3);
+ checkImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(checkImageAdapter);
}
@@ -273,15 +277,29 @@
checkImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList result) {
if (result.size() == 1) {
- uploadViewModel.uploadImage(new File(result.get(0).getRealPath()));
+ handleSelectResult(result.get(0));
} else {
- for (LocalMedia localMedia : result) {
- uploadViewModel.uploadImage(new File(localMedia.getRealPath()));
- }
+ int sum = (result.size() * 1500);
+ new CountDownTimer(sum, 1500) {
+
+ @Override
+ public void onTick(long millisUntilFinished) {
+ int i = (int) (millisUntilFinished / 1500);
+ Message message = weakReferenceHandler.obtainMessage();
+ message.obj = result.get(i);
+ message.what = 2023060503;
+ weakReferenceHandler.handleMessage(message);
+ }
+
+ @Override
+ public void onFinish() {
+
+ }
+ }.start();
}
}
});
@@ -324,6 +342,10 @@
StringHub.show(context, "核查情况还未选择");
return;
}
+ if (checkImageAdapter.getItemCount() < 1) {
+ StringHub.show(context, "至少上传一张照片");
+ return;
+ }
operateViewModel.checkCase(data.getProcessId(), id,
String.valueOf(data.getCaseState()), changeState, remarks,
StringHelper.reformatURL(imageList)
@@ -332,6 +354,20 @@
});
}
+ private final Handler.Callback callback = new Handler.Callback() {
+ @Override
+ public boolean handleMessage(@NonNull Message msg) {
+ if (msg.what == 2023060503) {
+ handleSelectResult((LocalMedia) msg.obj);
+ }
+ return true;
+ }
+ };
+
+ private void handleSelectResult(LocalMedia obj) {
+ uploadViewModel.uploadImage(new File(obj.getRealPath()));
+ }
+
@Override
public void onDestroy() {
viewBinding.audioPlayerView.release();
diff --git a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
index 9ad1466..18019ed 100644
--- a/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/check/CheckedDetailActivity.java
@@ -13,7 +13,7 @@
import com.casic.dcms.R;
import com.casic.dcms.databinding.ActivityCheckedDetailBinding;
import com.casic.dcms.model.CaseDetailBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -54,9 +54,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(CheckedDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
index ac02cb4..1765c7a 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAdjustDetailActivity.java
@@ -14,7 +14,7 @@
import com.casic.dcms.databinding.ActivityDeptAdjustBinding;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -167,9 +167,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -265,13 +265,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAdjustDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
index f429e82..e3f4600 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptAuthorizeDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.LocaleConstant;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
@@ -173,9 +173,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -336,13 +336,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptAuthorizeDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
index 4a688e9..92a578b 100644
--- a/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/department/DeptTodoDetailActivity.java
@@ -15,7 +15,7 @@
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
import com.casic.dcms.model.ProcessPersonBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.StringHelper;
import com.casic.dcms.view.BigImageActivity;
@@ -169,9 +169,9 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "获取数据中...");
} else {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
@@ -266,13 +266,13 @@
@Override
public void onChanged(LoadState loadState) {
if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "案卷处理中,请稍后...");
+ DialogHub.get().showLoading(DeptTodoDetailActivity.this, "案卷处理中,请稍后...");
} else if (loadState == LoadState.Success) {
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
finish();
} else {
StringHub.show(context, "处理失败,请重试");
- DialogHelper.dismissLoadingDialog();
+ DialogHub.get().dismissLoading();
}
}
});
diff --git a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
index 95831ec..c1e2dd0 100644
--- a/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
+++ b/app/src/main/java/com/casic/dcms/view/handle/CaseHandleDetailActivity.java
@@ -1,10 +1,14 @@
package com.casic.dcms.view.handle;
import android.content.Context;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.os.Message;
import android.text.TextUtils;
import android.view.View;
import android.widget.AdapterView;
+import androidx.annotation.NonNull;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -15,7 +19,7 @@
import com.casic.dcms.model.ActionResultBean;
import com.casic.dcms.model.CaseDetailBean;
import com.casic.dcms.model.CaseNextNodeBean;
-import com.casic.dcms.utils.DialogHelper;
+import com.casic.dcms.utils.DialogHub;
import com.casic.dcms.utils.MapHelper;
import com.casic.dcms.utils.PictureSelectorHelper;
import com.casic.dcms.utils.StringHelper;
@@ -34,6 +38,7 @@
import com.pengxh.androidx.lite.hub.IntHub;
import com.pengxh.androidx.lite.hub.StringHub;
import com.pengxh.androidx.lite.utils.ImmerseStatusBarManager;
+import com.pengxh.androidx.lite.utils.WeakReferenceHandler;
import com.pengxh.androidx.lite.vm.LoadState;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder;
@@ -59,6 +64,7 @@
private String approvalResult;
private EditableImageAdapter handleImageAdapter;
private CaseDetailBean.DataBean data = new CaseDetailBean.DataBean();
+ private WeakReferenceHandler weakReferenceHandler;
@Override
protected void setupTopBarLayout() {
@@ -72,11 +78,48 @@
@Override
protected void observeRequestState() {
+ caseViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "获取数据中...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+ uploadViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "上传中,请稍后...");
+ } else {
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
+
+ operateViewModel.loadState.observe(this, new Observer() {
+ @Override
+ public void onChanged(LoadState loadState) {
+ if (loadState == LoadState.Loading) {
+ DialogHub.get().showLoading(CaseHandleDetailActivity.this, "案卷处理中,请稍后...");
+ } else if (loadState == LoadState.Success) {
+ DialogHub.get().dismissLoading();
+ finish();
+ } else {
+ StringHub.show(context, "处理失败,请重试");
+ DialogHub.get().dismissLoading();
+ }
+ }
+ });
}
@Override
protected void initData() {
+ weakReferenceHandler = new WeakReferenceHandler(callback);
+
id = getIntent().getStringExtra("id");
caseViewModel = new ViewModelProvider(this).get(CaseViewModel.class);
caseViewModel.obtainCaseDetail(id);
@@ -85,7 +128,7 @@
nodeViewModel = new ViewModelProvider(this).get(NodeViewModel.class);
operateViewModel = new ViewModelProvider(this).get(CaseOperateViewModel.class);
- handleImageAdapter = new EditableImageAdapter(this, 3, 3);
+ handleImageAdapter = new EditableImageAdapter(this, 2, 3);
viewBinding.addImageRecyclerView.setAdapter(handleImageAdapter);
}
@@ -157,16 +200,6 @@
}
}
});
- caseViewModel.loadState.observe(this, new Observer() {
- @Override
- public void onChanged(LoadState loadState) {
- if (loadState == LoadState.Loading) {
- DialogHelper.showLoadingDialog(context, "获取数据中...");
- } else {
- DialogHelper.dismissLoadingDialog();
- }
- }
- });
viewBinding.locationMapView.setOnClickListener(new View.OnClickListener() {
@Override
@@ -218,15 +251,29 @@
handleImageAdapter.setOnItemClickListener(new EditableImageAdapter.OnItemClickListener() {
@Override
public void onAddImageClick() {
- PictureSelectorHelper.selectPicture(context, 3, new ISelectorListener() {
+ PictureSelectorHelper.selectPicture(context, 2, new ISelectorListener() {
@Override
public void onSuccess(ArrayList