diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java index a700740..6a7e551 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java @@ -36,10 +36,14 @@ import com.casic.dcms.ui.PublicToiletActivity; import com.casic.dcms.ui.StreetlightManagerActivity; import com.casic.dcms.ui.UrgentCaseActivity; +import com.casic.dcms.utils.SaveKeyValues; import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; import com.google.gson.Gson; +import java.util.GregorianCalendar; + /** * 此页面后期可能需要添加滑动吸顶效果 */ @@ -56,6 +60,15 @@ @Override protected void initData() { + String lastTime = (String) SaveKeyValues.getValue("lastTime", ""); + String timeValue; + if ("".equals(lastTime)) { + timeValue = "上次登录时间:无法确定"; + } else { + timeValue = "上次登录时间:" + lastTime; + } + viewBinding.lastTimeView.setText(timeValue); + homePagePresenter = new HomePagePresenterImpl(this); userDataPresenter = new UserDataPresenterImpl(this); @@ -76,7 +89,18 @@ if (userBean.getCode() == 200) { UserBean.DataBean dataBean = userBean.getData(); StringHelper.saveUserBean(new Gson().toJson(dataBean)); - viewBinding.userNameView.setText(dataBean.getName()); + //获取用户信息之后保存登录时间 + SaveKeyValues.putValue("lastTime", TimeOrDateUtil.timestampToCompleteDate(System.currentTimeMillis())); + + GregorianCalendar calendar = new GregorianCalendar(); + int x = calendar.get(GregorianCalendar.AM_PM); + String timezone; + if (x == 0) { + timezone = "上午"; + } else { + timezone = "下午"; + } + viewBinding.userNameView.setText(timezone + "好!" + dataBean.getName()); viewBinding.userDeptView.setText(dataBean.getDeptName() + dataBean.getRoleNames()); } } diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java index a700740..6a7e551 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java @@ -36,10 +36,14 @@ import com.casic.dcms.ui.PublicToiletActivity; import com.casic.dcms.ui.StreetlightManagerActivity; import com.casic.dcms.ui.UrgentCaseActivity; +import com.casic.dcms.utils.SaveKeyValues; import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; import com.google.gson.Gson; +import java.util.GregorianCalendar; + /** * 此页面后期可能需要添加滑动吸顶效果 */ @@ -56,6 +60,15 @@ @Override protected void initData() { + String lastTime = (String) SaveKeyValues.getValue("lastTime", ""); + String timeValue; + if ("".equals(lastTime)) { + timeValue = "上次登录时间:无法确定"; + } else { + timeValue = "上次登录时间:" + lastTime; + } + viewBinding.lastTimeView.setText(timeValue); + homePagePresenter = new HomePagePresenterImpl(this); userDataPresenter = new UserDataPresenterImpl(this); @@ -76,7 +89,18 @@ if (userBean.getCode() == 200) { UserBean.DataBean dataBean = userBean.getData(); StringHelper.saveUserBean(new Gson().toJson(dataBean)); - viewBinding.userNameView.setText(dataBean.getName()); + //获取用户信息之后保存登录时间 + SaveKeyValues.putValue("lastTime", TimeOrDateUtil.timestampToCompleteDate(System.currentTimeMillis())); + + GregorianCalendar calendar = new GregorianCalendar(); + int x = calendar.get(GregorianCalendar.AM_PM); + String timezone; + if (x == 0) { + timezone = "上午"; + } else { + timezone = "下午"; + } + viewBinding.userNameView.setText(timezone + "好!" + dataBean.getName()); viewBinding.userDeptView.setText(dataBean.getDeptName() + dataBean.getRoleNames()); } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java index 6a4a952..ffff858 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java @@ -34,9 +34,6 @@ import com.casic.dcms.utils.ToastHelper; import com.casic.dcms.utils.callback.IDownloadListener; import com.casic.dcms.widgets.AlertControlDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.io.File; @@ -142,20 +139,15 @@ } else { String downloadUrl = StringHelper.appendDownloadUrl(data.getDownloadUrl()); //http://111.198.10.15:11409/static/app/v1.1.0.0.apk - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("版本更新") .setMessage("确定下载新版本吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { //下载新版本 progressDialog.setMessage("下载新版本中..."); progressDialog.show(); @@ -165,7 +157,12 @@ } downloadApk(downloadUrl); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } } diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java index a700740..6a7e551 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java @@ -36,10 +36,14 @@ import com.casic.dcms.ui.PublicToiletActivity; import com.casic.dcms.ui.StreetlightManagerActivity; import com.casic.dcms.ui.UrgentCaseActivity; +import com.casic.dcms.utils.SaveKeyValues; import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; import com.google.gson.Gson; +import java.util.GregorianCalendar; + /** * 此页面后期可能需要添加滑动吸顶效果 */ @@ -56,6 +60,15 @@ @Override protected void initData() { + String lastTime = (String) SaveKeyValues.getValue("lastTime", ""); + String timeValue; + if ("".equals(lastTime)) { + timeValue = "上次登录时间:无法确定"; + } else { + timeValue = "上次登录时间:" + lastTime; + } + viewBinding.lastTimeView.setText(timeValue); + homePagePresenter = new HomePagePresenterImpl(this); userDataPresenter = new UserDataPresenterImpl(this); @@ -76,7 +89,18 @@ if (userBean.getCode() == 200) { UserBean.DataBean dataBean = userBean.getData(); StringHelper.saveUserBean(new Gson().toJson(dataBean)); - viewBinding.userNameView.setText(dataBean.getName()); + //获取用户信息之后保存登录时间 + SaveKeyValues.putValue("lastTime", TimeOrDateUtil.timestampToCompleteDate(System.currentTimeMillis())); + + GregorianCalendar calendar = new GregorianCalendar(); + int x = calendar.get(GregorianCalendar.AM_PM); + String timezone; + if (x == 0) { + timezone = "上午"; + } else { + timezone = "下午"; + } + viewBinding.userNameView.setText(timezone + "好!" + dataBean.getName()); viewBinding.userDeptView.setText(dataBean.getDeptName() + dataBean.getRoleNames()); } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java index 6a4a952..ffff858 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java @@ -34,9 +34,6 @@ import com.casic.dcms.utils.ToastHelper; import com.casic.dcms.utils.callback.IDownloadListener; import com.casic.dcms.widgets.AlertControlDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.io.File; @@ -142,20 +139,15 @@ } else { String downloadUrl = StringHelper.appendDownloadUrl(data.getDownloadUrl()); //http://111.198.10.15:11409/static/app/v1.1.0.0.apk - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("版本更新") .setMessage("确定下载新版本吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { //下载新版本 progressDialog.setMessage("下载新版本中..."); progressDialog.show(); @@ -165,7 +157,12 @@ } downloadApk(downloadUrl); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java index 98f1134..251b601 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java @@ -19,9 +19,7 @@ import com.casic.dcms.mvp.view.IPhoneBookView; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertControlDialog; import java.util.ArrayList; import java.util.List; @@ -112,27 +110,26 @@ ToastHelper.showToast("手机号为空,无法拨号", ToastHelper.ERROR); return; } - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("提示") - .setMessage("是否确定拨打[" + personName + "]的电话?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setMessage("是否确定拨打【" + personName + "】的电话?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(); intent.setAction(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:" + personPhone)); startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java index a700740..6a7e551 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java @@ -36,10 +36,14 @@ import com.casic.dcms.ui.PublicToiletActivity; import com.casic.dcms.ui.StreetlightManagerActivity; import com.casic.dcms.ui.UrgentCaseActivity; +import com.casic.dcms.utils.SaveKeyValues; import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; import com.google.gson.Gson; +import java.util.GregorianCalendar; + /** * 此页面后期可能需要添加滑动吸顶效果 */ @@ -56,6 +60,15 @@ @Override protected void initData() { + String lastTime = (String) SaveKeyValues.getValue("lastTime", ""); + String timeValue; + if ("".equals(lastTime)) { + timeValue = "上次登录时间:无法确定"; + } else { + timeValue = "上次登录时间:" + lastTime; + } + viewBinding.lastTimeView.setText(timeValue); + homePagePresenter = new HomePagePresenterImpl(this); userDataPresenter = new UserDataPresenterImpl(this); @@ -76,7 +89,18 @@ if (userBean.getCode() == 200) { UserBean.DataBean dataBean = userBean.getData(); StringHelper.saveUserBean(new Gson().toJson(dataBean)); - viewBinding.userNameView.setText(dataBean.getName()); + //获取用户信息之后保存登录时间 + SaveKeyValues.putValue("lastTime", TimeOrDateUtil.timestampToCompleteDate(System.currentTimeMillis())); + + GregorianCalendar calendar = new GregorianCalendar(); + int x = calendar.get(GregorianCalendar.AM_PM); + String timezone; + if (x == 0) { + timezone = "上午"; + } else { + timezone = "下午"; + } + viewBinding.userNameView.setText(timezone + "好!" + dataBean.getName()); viewBinding.userDeptView.setText(dataBean.getDeptName() + dataBean.getRoleNames()); } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java index 6a4a952..ffff858 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java @@ -34,9 +34,6 @@ import com.casic.dcms.utils.ToastHelper; import com.casic.dcms.utils.callback.IDownloadListener; import com.casic.dcms.widgets.AlertControlDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.io.File; @@ -142,20 +139,15 @@ } else { String downloadUrl = StringHelper.appendDownloadUrl(data.getDownloadUrl()); //http://111.198.10.15:11409/static/app/v1.1.0.0.apk - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("版本更新") .setMessage("确定下载新版本吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { //下载新版本 progressDialog.setMessage("下载新版本中..."); progressDialog.show(); @@ -165,7 +157,12 @@ } downloadApk(downloadUrl); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java index 98f1134..251b601 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java @@ -19,9 +19,7 @@ import com.casic.dcms.mvp.view.IPhoneBookView; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertControlDialog; import java.util.ArrayList; import java.util.List; @@ -112,27 +110,26 @@ ToastHelper.showToast("手机号为空,无法拨号", ToastHelper.ERROR); return; } - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("提示") - .setMessage("是否确定拨打[" + personName + "]的电话?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setMessage("是否确定拨打【" + personName + "】的电话?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(); intent.setAction(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:" + personPhone)); startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java new file mode 100644 index 0000000..a74cf7d --- /dev/null +++ b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java @@ -0,0 +1,131 @@ +package com.casic.dcms.widgets; + +import android.app.Dialog; +import android.content.Context; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.os.Bundle; +import android.text.TextUtils; +import android.view.View; +import android.view.Window; +import android.view.WindowManager; +import android.widget.Button; +import android.widget.TextView; + +import com.casic.dcms.R; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; + + +/** + * @author: Pengxh + * @email: 290677893@qq.com + * @date: 2021-09-05 19:25:42 + * @description: 普通提示对话框对话框 + */ +public class AlertMessageDialog extends Dialog { + + private final Context ctx; + private final String title; + private final String message; + private final String positiveBtn; + private final OnDialogButtonClickListener listener; + + public static class Builder { + private Context context; + private String title; + private String message; + private String positiveBtn; + private OnDialogButtonClickListener listener; + + public Builder setContext(Context context) { + this.context = context; + return this; + } + + public Builder setTitle(String title) { + this.title = title; + return this; + } + + public Builder setMessage(String message) { + this.message = message; + return this; + } + + public Builder setPositiveButton(String name) { + this.positiveBtn = name; + return this; + } + + public Builder setOnDialogButtonClickListener(OnDialogButtonClickListener listener) { + this.listener = listener; + return this; + } + + public AlertMessageDialog build() { + return new AlertMessageDialog(this); + } + } + + private AlertMessageDialog(Builder builder) { + super(builder.context, R.style.AlertDialogStyle); + this.ctx = builder.context; + this.title = builder.title; + this.message = builder.message; + this.positiveBtn = builder.positiveBtn; + this.listener = builder.listener; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + configDialogLayout(); + setContentView(R.layout.dialog_message); + setCanceledOnTouchOutside(false); + initView(); + } + + private void initView() { + TextView dialogTitleView = findViewById(R.id.dialogTitleView); + TextView dialogMessageView = findViewById(R.id.dialogMessageView); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + + if (!TextUtils.isEmpty(title)) { + dialogTitleView.setText(title); + } + + if (!TextUtils.isEmpty(message)) { + dialogMessageView.setText(message); + } + + if (!TextUtils.isEmpty(positiveBtn)) { + dialogConfirmButton.setText(positiveBtn); + dialogConfirmButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (listener != null) { + listener.onConfirmClick(); + dismiss(); + } + } + }); + } + } + + private void configDialogLayout() { + Window window = getWindow(); + if (window == null) { + return; + } + window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + window.getDecorView().setBackgroundColor(Color.TRANSPARENT); + WindowManager.LayoutParams params = window.getAttributes(); + params.width = (int) (QMUIDisplayHelper.getScreenWidth(ctx) * 0.8); + params.height = WindowManager.LayoutParams.WRAP_CONTENT; + window.setAttributes(params); + } + + public interface OnDialogButtonClickListener { + void onConfirmClick(); + } +} diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java index a700740..6a7e551 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java @@ -36,10 +36,14 @@ import com.casic.dcms.ui.PublicToiletActivity; import com.casic.dcms.ui.StreetlightManagerActivity; import com.casic.dcms.ui.UrgentCaseActivity; +import com.casic.dcms.utils.SaveKeyValues; import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; import com.google.gson.Gson; +import java.util.GregorianCalendar; + /** * 此页面后期可能需要添加滑动吸顶效果 */ @@ -56,6 +60,15 @@ @Override protected void initData() { + String lastTime = (String) SaveKeyValues.getValue("lastTime", ""); + String timeValue; + if ("".equals(lastTime)) { + timeValue = "上次登录时间:无法确定"; + } else { + timeValue = "上次登录时间:" + lastTime; + } + viewBinding.lastTimeView.setText(timeValue); + homePagePresenter = new HomePagePresenterImpl(this); userDataPresenter = new UserDataPresenterImpl(this); @@ -76,7 +89,18 @@ if (userBean.getCode() == 200) { UserBean.DataBean dataBean = userBean.getData(); StringHelper.saveUserBean(new Gson().toJson(dataBean)); - viewBinding.userNameView.setText(dataBean.getName()); + //获取用户信息之后保存登录时间 + SaveKeyValues.putValue("lastTime", TimeOrDateUtil.timestampToCompleteDate(System.currentTimeMillis())); + + GregorianCalendar calendar = new GregorianCalendar(); + int x = calendar.get(GregorianCalendar.AM_PM); + String timezone; + if (x == 0) { + timezone = "上午"; + } else { + timezone = "下午"; + } + viewBinding.userNameView.setText(timezone + "好!" + dataBean.getName()); viewBinding.userDeptView.setText(dataBean.getDeptName() + dataBean.getRoleNames()); } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java index 6a4a952..ffff858 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java @@ -34,9 +34,6 @@ import com.casic.dcms.utils.ToastHelper; import com.casic.dcms.utils.callback.IDownloadListener; import com.casic.dcms.widgets.AlertControlDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.io.File; @@ -142,20 +139,15 @@ } else { String downloadUrl = StringHelper.appendDownloadUrl(data.getDownloadUrl()); //http://111.198.10.15:11409/static/app/v1.1.0.0.apk - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("版本更新") .setMessage("确定下载新版本吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { //下载新版本 progressDialog.setMessage("下载新版本中..."); progressDialog.show(); @@ -165,7 +157,12 @@ } downloadApk(downloadUrl); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java index 98f1134..251b601 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java @@ -19,9 +19,7 @@ import com.casic.dcms.mvp.view.IPhoneBookView; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertControlDialog; import java.util.ArrayList; import java.util.List; @@ -112,27 +110,26 @@ ToastHelper.showToast("手机号为空,无法拨号", ToastHelper.ERROR); return; } - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("提示") - .setMessage("是否确定拨打[" + personName + "]的电话?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setMessage("是否确定拨打【" + personName + "】的电话?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(); intent.setAction(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:" + personPhone)); startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java new file mode 100644 index 0000000..a74cf7d --- /dev/null +++ b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java @@ -0,0 +1,131 @@ +package com.casic.dcms.widgets; + +import android.app.Dialog; +import android.content.Context; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.os.Bundle; +import android.text.TextUtils; +import android.view.View; +import android.view.Window; +import android.view.WindowManager; +import android.widget.Button; +import android.widget.TextView; + +import com.casic.dcms.R; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; + + +/** + * @author: Pengxh + * @email: 290677893@qq.com + * @date: 2021-09-05 19:25:42 + * @description: 普通提示对话框对话框 + */ +public class AlertMessageDialog extends Dialog { + + private final Context ctx; + private final String title; + private final String message; + private final String positiveBtn; + private final OnDialogButtonClickListener listener; + + public static class Builder { + private Context context; + private String title; + private String message; + private String positiveBtn; + private OnDialogButtonClickListener listener; + + public Builder setContext(Context context) { + this.context = context; + return this; + } + + public Builder setTitle(String title) { + this.title = title; + return this; + } + + public Builder setMessage(String message) { + this.message = message; + return this; + } + + public Builder setPositiveButton(String name) { + this.positiveBtn = name; + return this; + } + + public Builder setOnDialogButtonClickListener(OnDialogButtonClickListener listener) { + this.listener = listener; + return this; + } + + public AlertMessageDialog build() { + return new AlertMessageDialog(this); + } + } + + private AlertMessageDialog(Builder builder) { + super(builder.context, R.style.AlertDialogStyle); + this.ctx = builder.context; + this.title = builder.title; + this.message = builder.message; + this.positiveBtn = builder.positiveBtn; + this.listener = builder.listener; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + configDialogLayout(); + setContentView(R.layout.dialog_message); + setCanceledOnTouchOutside(false); + initView(); + } + + private void initView() { + TextView dialogTitleView = findViewById(R.id.dialogTitleView); + TextView dialogMessageView = findViewById(R.id.dialogMessageView); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + + if (!TextUtils.isEmpty(title)) { + dialogTitleView.setText(title); + } + + if (!TextUtils.isEmpty(message)) { + dialogMessageView.setText(message); + } + + if (!TextUtils.isEmpty(positiveBtn)) { + dialogConfirmButton.setText(positiveBtn); + dialogConfirmButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (listener != null) { + listener.onConfirmClick(); + dismiss(); + } + } + }); + } + } + + private void configDialogLayout() { + Window window = getWindow(); + if (window == null) { + return; + } + window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + window.getDecorView().setBackgroundColor(Color.TRANSPARENT); + WindowManager.LayoutParams params = window.getAttributes(); + params.width = (int) (QMUIDisplayHelper.getScreenWidth(ctx) * 0.8); + params.height = WindowManager.LayoutParams.WRAP_CONTENT; + window.setAttributes(params); + } + + public interface OnDialogButtonClickListener { + void onConfirmClick(); + } +} diff --git a/app/src/main/java/com/casic/dcms/widgets/InputDialog.java b/app/src/main/java/com/casic/dcms/widgets/InputDialog.java index b3bae8a..9f0c5b4 100644 --- a/app/src/main/java/com/casic/dcms/widgets/InputDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/InputDialog.java @@ -8,13 +8,13 @@ import android.view.View; import android.view.Window; import android.view.WindowManager; +import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import com.casic.dcms.R; import com.casic.dcms.utils.ToastHelper; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; /** * @Author: Pengxh @@ -52,8 +52,8 @@ TextView dialogTitleView = findViewById(R.id.dialogTitleView); EditText dialogInputView = findViewById(R.id.dialogInputView); - QMUIRoundButton dialogCancelButton = findViewById(R.id.dialogCancelButton); - QMUIRoundButton dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + Button dialogCancelButton = findViewById(R.id.dialogCancelButton); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); dialogTitleView.setText(title); if (!value.equals("")) { @@ -63,7 +63,6 @@ } dialogCancelButton.setText(negativeBtn); - dialogCancelButton.setChangeAlphaWhenPress(true); dialogCancelButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -73,7 +72,6 @@ }); dialogConfirmButton.setText(positiveBtn); - dialogConfirmButton.setChangeAlphaWhenPress(true); dialogConfirmButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java index a700740..6a7e551 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java @@ -36,10 +36,14 @@ import com.casic.dcms.ui.PublicToiletActivity; import com.casic.dcms.ui.StreetlightManagerActivity; import com.casic.dcms.ui.UrgentCaseActivity; +import com.casic.dcms.utils.SaveKeyValues; import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; import com.google.gson.Gson; +import java.util.GregorianCalendar; + /** * 此页面后期可能需要添加滑动吸顶效果 */ @@ -56,6 +60,15 @@ @Override protected void initData() { + String lastTime = (String) SaveKeyValues.getValue("lastTime", ""); + String timeValue; + if ("".equals(lastTime)) { + timeValue = "上次登录时间:无法确定"; + } else { + timeValue = "上次登录时间:" + lastTime; + } + viewBinding.lastTimeView.setText(timeValue); + homePagePresenter = new HomePagePresenterImpl(this); userDataPresenter = new UserDataPresenterImpl(this); @@ -76,7 +89,18 @@ if (userBean.getCode() == 200) { UserBean.DataBean dataBean = userBean.getData(); StringHelper.saveUserBean(new Gson().toJson(dataBean)); - viewBinding.userNameView.setText(dataBean.getName()); + //获取用户信息之后保存登录时间 + SaveKeyValues.putValue("lastTime", TimeOrDateUtil.timestampToCompleteDate(System.currentTimeMillis())); + + GregorianCalendar calendar = new GregorianCalendar(); + int x = calendar.get(GregorianCalendar.AM_PM); + String timezone; + if (x == 0) { + timezone = "上午"; + } else { + timezone = "下午"; + } + viewBinding.userNameView.setText(timezone + "好!" + dataBean.getName()); viewBinding.userDeptView.setText(dataBean.getDeptName() + dataBean.getRoleNames()); } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java index 6a4a952..ffff858 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java @@ -34,9 +34,6 @@ import com.casic.dcms.utils.ToastHelper; import com.casic.dcms.utils.callback.IDownloadListener; import com.casic.dcms.widgets.AlertControlDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.io.File; @@ -142,20 +139,15 @@ } else { String downloadUrl = StringHelper.appendDownloadUrl(data.getDownloadUrl()); //http://111.198.10.15:11409/static/app/v1.1.0.0.apk - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("版本更新") .setMessage("确定下载新版本吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { //下载新版本 progressDialog.setMessage("下载新版本中..."); progressDialog.show(); @@ -165,7 +157,12 @@ } downloadApk(downloadUrl); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java index 98f1134..251b601 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java @@ -19,9 +19,7 @@ import com.casic.dcms.mvp.view.IPhoneBookView; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertControlDialog; import java.util.ArrayList; import java.util.List; @@ -112,27 +110,26 @@ ToastHelper.showToast("手机号为空,无法拨号", ToastHelper.ERROR); return; } - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("提示") - .setMessage("是否确定拨打[" + personName + "]的电话?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setMessage("是否确定拨打【" + personName + "】的电话?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(); intent.setAction(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:" + personPhone)); startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java new file mode 100644 index 0000000..a74cf7d --- /dev/null +++ b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java @@ -0,0 +1,131 @@ +package com.casic.dcms.widgets; + +import android.app.Dialog; +import android.content.Context; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.os.Bundle; +import android.text.TextUtils; +import android.view.View; +import android.view.Window; +import android.view.WindowManager; +import android.widget.Button; +import android.widget.TextView; + +import com.casic.dcms.R; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; + + +/** + * @author: Pengxh + * @email: 290677893@qq.com + * @date: 2021-09-05 19:25:42 + * @description: 普通提示对话框对话框 + */ +public class AlertMessageDialog extends Dialog { + + private final Context ctx; + private final String title; + private final String message; + private final String positiveBtn; + private final OnDialogButtonClickListener listener; + + public static class Builder { + private Context context; + private String title; + private String message; + private String positiveBtn; + private OnDialogButtonClickListener listener; + + public Builder setContext(Context context) { + this.context = context; + return this; + } + + public Builder setTitle(String title) { + this.title = title; + return this; + } + + public Builder setMessage(String message) { + this.message = message; + return this; + } + + public Builder setPositiveButton(String name) { + this.positiveBtn = name; + return this; + } + + public Builder setOnDialogButtonClickListener(OnDialogButtonClickListener listener) { + this.listener = listener; + return this; + } + + public AlertMessageDialog build() { + return new AlertMessageDialog(this); + } + } + + private AlertMessageDialog(Builder builder) { + super(builder.context, R.style.AlertDialogStyle); + this.ctx = builder.context; + this.title = builder.title; + this.message = builder.message; + this.positiveBtn = builder.positiveBtn; + this.listener = builder.listener; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + configDialogLayout(); + setContentView(R.layout.dialog_message); + setCanceledOnTouchOutside(false); + initView(); + } + + private void initView() { + TextView dialogTitleView = findViewById(R.id.dialogTitleView); + TextView dialogMessageView = findViewById(R.id.dialogMessageView); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + + if (!TextUtils.isEmpty(title)) { + dialogTitleView.setText(title); + } + + if (!TextUtils.isEmpty(message)) { + dialogMessageView.setText(message); + } + + if (!TextUtils.isEmpty(positiveBtn)) { + dialogConfirmButton.setText(positiveBtn); + dialogConfirmButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (listener != null) { + listener.onConfirmClick(); + dismiss(); + } + } + }); + } + } + + private void configDialogLayout() { + Window window = getWindow(); + if (window == null) { + return; + } + window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + window.getDecorView().setBackgroundColor(Color.TRANSPARENT); + WindowManager.LayoutParams params = window.getAttributes(); + params.width = (int) (QMUIDisplayHelper.getScreenWidth(ctx) * 0.8); + params.height = WindowManager.LayoutParams.WRAP_CONTENT; + window.setAttributes(params); + } + + public interface OnDialogButtonClickListener { + void onConfirmClick(); + } +} diff --git a/app/src/main/java/com/casic/dcms/widgets/InputDialog.java b/app/src/main/java/com/casic/dcms/widgets/InputDialog.java index b3bae8a..9f0c5b4 100644 --- a/app/src/main/java/com/casic/dcms/widgets/InputDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/InputDialog.java @@ -8,13 +8,13 @@ import android.view.View; import android.view.Window; import android.view.WindowManager; +import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import com.casic.dcms.R; import com.casic.dcms.utils.ToastHelper; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; /** * @Author: Pengxh @@ -52,8 +52,8 @@ TextView dialogTitleView = findViewById(R.id.dialogTitleView); EditText dialogInputView = findViewById(R.id.dialogInputView); - QMUIRoundButton dialogCancelButton = findViewById(R.id.dialogCancelButton); - QMUIRoundButton dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + Button dialogCancelButton = findViewById(R.id.dialogCancelButton); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); dialogTitleView.setText(title); if (!value.equals("")) { @@ -63,7 +63,6 @@ } dialogCancelButton.setText(negativeBtn); - dialogCancelButton.setChangeAlphaWhenPress(true); dialogCancelButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -73,7 +72,6 @@ }); dialogConfirmButton.setText(positiveBtn); - dialogConfirmButton.setChangeAlphaWhenPress(true); dialogConfirmButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 2875d23..5381c45 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -85,7 +85,7 @@ style="@style/roundButtonStyle" android:layout_below="@id/anchorLayout" android:layout_marginHorizontal="50dp" - android:layout_marginVertical="30dp" + android:layout_marginVertical="20dp" android:text="登录" /> diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java index a700740..6a7e551 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java @@ -36,10 +36,14 @@ import com.casic.dcms.ui.PublicToiletActivity; import com.casic.dcms.ui.StreetlightManagerActivity; import com.casic.dcms.ui.UrgentCaseActivity; +import com.casic.dcms.utils.SaveKeyValues; import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; import com.google.gson.Gson; +import java.util.GregorianCalendar; + /** * 此页面后期可能需要添加滑动吸顶效果 */ @@ -56,6 +60,15 @@ @Override protected void initData() { + String lastTime = (String) SaveKeyValues.getValue("lastTime", ""); + String timeValue; + if ("".equals(lastTime)) { + timeValue = "上次登录时间:无法确定"; + } else { + timeValue = "上次登录时间:" + lastTime; + } + viewBinding.lastTimeView.setText(timeValue); + homePagePresenter = new HomePagePresenterImpl(this); userDataPresenter = new UserDataPresenterImpl(this); @@ -76,7 +89,18 @@ if (userBean.getCode() == 200) { UserBean.DataBean dataBean = userBean.getData(); StringHelper.saveUserBean(new Gson().toJson(dataBean)); - viewBinding.userNameView.setText(dataBean.getName()); + //获取用户信息之后保存登录时间 + SaveKeyValues.putValue("lastTime", TimeOrDateUtil.timestampToCompleteDate(System.currentTimeMillis())); + + GregorianCalendar calendar = new GregorianCalendar(); + int x = calendar.get(GregorianCalendar.AM_PM); + String timezone; + if (x == 0) { + timezone = "上午"; + } else { + timezone = "下午"; + } + viewBinding.userNameView.setText(timezone + "好!" + dataBean.getName()); viewBinding.userDeptView.setText(dataBean.getDeptName() + dataBean.getRoleNames()); } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java index 6a4a952..ffff858 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java @@ -34,9 +34,6 @@ import com.casic.dcms.utils.ToastHelper; import com.casic.dcms.utils.callback.IDownloadListener; import com.casic.dcms.widgets.AlertControlDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.io.File; @@ -142,20 +139,15 @@ } else { String downloadUrl = StringHelper.appendDownloadUrl(data.getDownloadUrl()); //http://111.198.10.15:11409/static/app/v1.1.0.0.apk - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("版本更新") .setMessage("确定下载新版本吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { //下载新版本 progressDialog.setMessage("下载新版本中..."); progressDialog.show(); @@ -165,7 +157,12 @@ } downloadApk(downloadUrl); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java index 98f1134..251b601 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java @@ -19,9 +19,7 @@ import com.casic.dcms.mvp.view.IPhoneBookView; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertControlDialog; import java.util.ArrayList; import java.util.List; @@ -112,27 +110,26 @@ ToastHelper.showToast("手机号为空,无法拨号", ToastHelper.ERROR); return; } - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("提示") - .setMessage("是否确定拨打[" + personName + "]的电话?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setMessage("是否确定拨打【" + personName + "】的电话?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(); intent.setAction(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:" + personPhone)); startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java new file mode 100644 index 0000000..a74cf7d --- /dev/null +++ b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java @@ -0,0 +1,131 @@ +package com.casic.dcms.widgets; + +import android.app.Dialog; +import android.content.Context; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.os.Bundle; +import android.text.TextUtils; +import android.view.View; +import android.view.Window; +import android.view.WindowManager; +import android.widget.Button; +import android.widget.TextView; + +import com.casic.dcms.R; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; + + +/** + * @author: Pengxh + * @email: 290677893@qq.com + * @date: 2021-09-05 19:25:42 + * @description: 普通提示对话框对话框 + */ +public class AlertMessageDialog extends Dialog { + + private final Context ctx; + private final String title; + private final String message; + private final String positiveBtn; + private final OnDialogButtonClickListener listener; + + public static class Builder { + private Context context; + private String title; + private String message; + private String positiveBtn; + private OnDialogButtonClickListener listener; + + public Builder setContext(Context context) { + this.context = context; + return this; + } + + public Builder setTitle(String title) { + this.title = title; + return this; + } + + public Builder setMessage(String message) { + this.message = message; + return this; + } + + public Builder setPositiveButton(String name) { + this.positiveBtn = name; + return this; + } + + public Builder setOnDialogButtonClickListener(OnDialogButtonClickListener listener) { + this.listener = listener; + return this; + } + + public AlertMessageDialog build() { + return new AlertMessageDialog(this); + } + } + + private AlertMessageDialog(Builder builder) { + super(builder.context, R.style.AlertDialogStyle); + this.ctx = builder.context; + this.title = builder.title; + this.message = builder.message; + this.positiveBtn = builder.positiveBtn; + this.listener = builder.listener; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + configDialogLayout(); + setContentView(R.layout.dialog_message); + setCanceledOnTouchOutside(false); + initView(); + } + + private void initView() { + TextView dialogTitleView = findViewById(R.id.dialogTitleView); + TextView dialogMessageView = findViewById(R.id.dialogMessageView); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + + if (!TextUtils.isEmpty(title)) { + dialogTitleView.setText(title); + } + + if (!TextUtils.isEmpty(message)) { + dialogMessageView.setText(message); + } + + if (!TextUtils.isEmpty(positiveBtn)) { + dialogConfirmButton.setText(positiveBtn); + dialogConfirmButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (listener != null) { + listener.onConfirmClick(); + dismiss(); + } + } + }); + } + } + + private void configDialogLayout() { + Window window = getWindow(); + if (window == null) { + return; + } + window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + window.getDecorView().setBackgroundColor(Color.TRANSPARENT); + WindowManager.LayoutParams params = window.getAttributes(); + params.width = (int) (QMUIDisplayHelper.getScreenWidth(ctx) * 0.8); + params.height = WindowManager.LayoutParams.WRAP_CONTENT; + window.setAttributes(params); + } + + public interface OnDialogButtonClickListener { + void onConfirmClick(); + } +} diff --git a/app/src/main/java/com/casic/dcms/widgets/InputDialog.java b/app/src/main/java/com/casic/dcms/widgets/InputDialog.java index b3bae8a..9f0c5b4 100644 --- a/app/src/main/java/com/casic/dcms/widgets/InputDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/InputDialog.java @@ -8,13 +8,13 @@ import android.view.View; import android.view.Window; import android.view.WindowManager; +import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import com.casic.dcms.R; import com.casic.dcms.utils.ToastHelper; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; /** * @Author: Pengxh @@ -52,8 +52,8 @@ TextView dialogTitleView = findViewById(R.id.dialogTitleView); EditText dialogInputView = findViewById(R.id.dialogInputView); - QMUIRoundButton dialogCancelButton = findViewById(R.id.dialogCancelButton); - QMUIRoundButton dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + Button dialogCancelButton = findViewById(R.id.dialogCancelButton); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); dialogTitleView.setText(title); if (!value.equals("")) { @@ -63,7 +63,6 @@ } dialogCancelButton.setText(negativeBtn); - dialogCancelButton.setChangeAlphaWhenPress(true); dialogCancelButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -73,7 +72,6 @@ }); dialogConfirmButton.setText(positiveBtn); - dialogConfirmButton.setChangeAlphaWhenPress(true); dialogConfirmButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 2875d23..5381c45 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -85,7 +85,7 @@ style="@style/roundButtonStyle" android:layout_below="@id/anchorLayout" android:layout_marginHorizontal="50dp" - android:layout_marginVertical="30dp" + android:layout_marginVertical="20dp" android:text="登录" /> + android:background="@color/hintColor" /> - + android:textColor="@color/red" + android:textSize="@dimen/titleFontSize" /> + android:background="@color/hintColor" /> - + android:textSize="@dimen/titleFontSize" /> \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index cb89680..984eb9b 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -3,22 +3,16 @@ diff --git a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java index 43c3a19..5965a2a 100644 --- a/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ArcGISMapActivity.java @@ -60,6 +60,9 @@ import okhttp3.ResponseBody; +/** + * TODO 后期需要将 QMUIDialog.MessageDialogBuilder(this) 改为{@link com.casic.dcms.widgets.AlertControlDialog} + */ public class ArcGISMapActivity extends AndroidxBaseActivity implements View.OnClickListener { private static final String TAG = "ArcGISMapActivity"; diff --git a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java index 788a528..6bb4f71 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseOnMapActivity.java @@ -31,6 +31,7 @@ import com.casic.dcms.utils.ArcGisMapCreator; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.esri.arcgisruntime.concurrent.ListenableFuture; import com.esri.arcgisruntime.data.ServiceFeatureTable; import com.esri.arcgisruntime.geometry.Point; @@ -45,8 +46,6 @@ import com.esri.arcgisruntime.mapping.view.IdentifyGraphicsOverlayResult; import com.esri.arcgisruntime.symbology.PictureMarkerSymbol; import com.esri.arcgisruntime.util.ListenableList; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.lang.ref.WeakReference; import java.util.ArrayList; @@ -164,21 +163,25 @@ switch (msg.what) { case 2021051401: String caseId = (String) msg.obj; - new QMUIDialog.MessageDialogBuilder(onMapActivity) - .setTitle("提示") - .setMessage("已选择案卷:" + caseId + "\r\n确认查看详情?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + new AlertControlDialog.Builder() + .setContext(onMapActivity) + .setTitle("查看案卷详情") + .setMessage("ID:" + caseId) + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(onMapActivity, CaseDetailActivity.class); intent.putExtra("id", caseId); onMapActivity.startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); break; case 2021051402: ToastHelper.showToast("此附近无案卷,请重新选点", ToastHelper.WARING); diff --git a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java index f6a2cbf..b4a3fd4 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseSearchActivity.java @@ -20,11 +20,10 @@ import com.casic.dcms.mvp.view.ICaseStatusView; import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.TimeOrDateUtil; +import com.casic.dcms.widgets.AlertControlDialog; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.util.List; @@ -177,16 +176,15 @@ intent.putExtra("endTime", viewBinding.endTimeView.getText().toString()); startActivity(intent); } else if (id == R.id.resetButton) { - new QMUIDialog.MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("重置") .setMessage("确定要重置填写的资料吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - + public void onConfirmClick() { //将搜索条件置空 eorc = ""; typeCode = ""; @@ -201,7 +199,12 @@ viewBinding.startTimeView.setText(""); viewBinding.endTimeView.setText(""); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java index a1e71e9..84daf29 100644 --- a/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/CaseUploadActivity.java @@ -47,13 +47,13 @@ import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.entity.LocalMedia; import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUITipDialog; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; @@ -291,20 +291,24 @@ OtherUtils.takeVideo(this); } else if (id == R.id.deleteView) { if (viewBinding.videoPlayerView.isShown()) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("提示") .setMessage("确定重新拍摄视频材料?") - .setCanceledOnTouchOutside(false) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { viewBinding.videoPlayerView.setVisibility(View.GONE); viewBinding.addVideoView.setVisibility(View.VISIBLE); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } else if (id == R.id.submitButton) { submitCase(); diff --git a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java index a5b2ffa..8533f4d 100644 --- a/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/ChangePasswordActivity.java @@ -16,9 +16,7 @@ import com.casic.dcms.utils.RSAUtils; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertMessageDialog; import java.nio.charset.StandardCharsets; import java.security.PublicKey; @@ -134,19 +132,18 @@ @Override public void obtainChangePassResult(ActionResultBean resultBean) { if (resultBean.getCode() == 200) { - new MessageDialogBuilder(this) + new AlertMessageDialog.Builder() + .setContext(this) .setTitle("温馨提示") .setMessage("密码已修改成功,请重新登录") - .setCancelable(false) - .setCanceledOnTouchOutside(false) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertMessageDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { MainActivity.sendEmptyMessage(Constant.LOGIN_OUT); } }) - .create().show(); + .build().show(); } } diff --git a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java index 9a92acd..5199a39 100644 --- a/app/src/main/java/com/casic/dcms/ui/WellListActivity.java +++ b/app/src/main/java/com/casic/dcms/ui/WellListActivity.java @@ -23,9 +23,8 @@ import com.casic.dcms.utils.Constant; import com.casic.dcms.utils.OtherUtils; import com.casic.dcms.utils.ToastHelper; +import com.casic.dcms.widgets.AlertControlDialog; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.scwang.smartrefresh.layout.api.RefreshLayout; @@ -163,36 +162,44 @@ //单个撤防/布防 private void showSingleOptionDialog(String bfztName, String id, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") .setMessage("确定要对该井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(id, bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } //一键撤防/布防 private void showBatchOptionDialog(String bfztName, String bfzt) { - new QMUIDialog.MessageDialogBuilder(this) + new AlertControlDialog.Builder() + .setContext(this) .setTitle("确认操作") - .setMessage("确定要对列表中的全部井进行" + bfztName + "吗?") - .setCanceledOnTouchOutside(true) - .addAction("取消", (dialog, index) -> dialog.dismiss()) - .addAction("确定", new QMUIDialogAction.ActionListener() { + .setMessage("确定对全部井进行" + bfztName + "吗?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { optionWellPresenter.onReadyRetrofitRequest(bfzt); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java index a700740..6a7e551 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/HomePageFragment.java @@ -36,10 +36,14 @@ import com.casic.dcms.ui.PublicToiletActivity; import com.casic.dcms.ui.StreetlightManagerActivity; import com.casic.dcms.ui.UrgentCaseActivity; +import com.casic.dcms.utils.SaveKeyValues; import com.casic.dcms.utils.StringHelper; +import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.ToastHelper; import com.google.gson.Gson; +import java.util.GregorianCalendar; + /** * 此页面后期可能需要添加滑动吸顶效果 */ @@ -56,6 +60,15 @@ @Override protected void initData() { + String lastTime = (String) SaveKeyValues.getValue("lastTime", ""); + String timeValue; + if ("".equals(lastTime)) { + timeValue = "上次登录时间:无法确定"; + } else { + timeValue = "上次登录时间:" + lastTime; + } + viewBinding.lastTimeView.setText(timeValue); + homePagePresenter = new HomePagePresenterImpl(this); userDataPresenter = new UserDataPresenterImpl(this); @@ -76,7 +89,18 @@ if (userBean.getCode() == 200) { UserBean.DataBean dataBean = userBean.getData(); StringHelper.saveUserBean(new Gson().toJson(dataBean)); - viewBinding.userNameView.setText(dataBean.getName()); + //获取用户信息之后保存登录时间 + SaveKeyValues.putValue("lastTime", TimeOrDateUtil.timestampToCompleteDate(System.currentTimeMillis())); + + GregorianCalendar calendar = new GregorianCalendar(); + int x = calendar.get(GregorianCalendar.AM_PM); + String timezone; + if (x == 0) { + timezone = "上午"; + } else { + timezone = "下午"; + } + viewBinding.userNameView.setText(timezone + "好!" + dataBean.getName()); viewBinding.userDeptView.setText(dataBean.getDeptName() + dataBean.getRoleNames()); } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java index 6a4a952..ffff858 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/MinePageFragment.java @@ -34,9 +34,6 @@ import com.casic.dcms.utils.ToastHelper; import com.casic.dcms.utils.callback.IDownloadListener; import com.casic.dcms.widgets.AlertControlDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import java.io.File; @@ -142,20 +139,15 @@ } else { String downloadUrl = StringHelper.appendDownloadUrl(data.getDownloadUrl()); //http://111.198.10.15:11409/static/app/v1.1.0.0.apk - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("版本更新") .setMessage("确定下载新版本吗?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { //下载新版本 progressDialog.setMessage("下载新版本中..."); progressDialog.show(); @@ -165,7 +157,12 @@ } downloadApk(downloadUrl); } - }).create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } } } diff --git a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java index 98f1134..251b601 100644 --- a/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java +++ b/app/src/main/java/com/casic/dcms/ui/fragment/PhonePageFragment.java @@ -19,9 +19,7 @@ import com.casic.dcms.mvp.view.IPhoneBookView; import com.casic.dcms.utils.StringHelper; import com.casic.dcms.utils.ToastHelper; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog; -import com.qmuiteam.qmui.widget.dialog.QMUIDialog.MessageDialogBuilder; -import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; +import com.casic.dcms.widgets.AlertControlDialog; import java.util.ArrayList; import java.util.List; @@ -112,27 +110,26 @@ ToastHelper.showToast("手机号为空,无法拨号", ToastHelper.ERROR); return; } - new MessageDialogBuilder(context) + new AlertControlDialog.Builder() + .setContext(context) .setTitle("提示") - .setMessage("是否确定拨打[" + personName + "]的电话?") - .setCanceledOnTouchOutside(false) - .addAction("取消", new QMUIDialogAction.ActionListener() { + .setMessage("是否确定拨打【" + personName + "】的电话?") + .setNegativeButton("取消") + .setPositiveButton("确定") + .setOnDialogButtonClickListener(new AlertControlDialog.OnDialogButtonClickListener() { @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); - } - }) - .addAction("确定", new QMUIDialogAction.ActionListener() { - @Override - public void onClick(QMUIDialog dialog, int index) { - dialog.dismiss(); + public void onConfirmClick() { Intent intent = new Intent(); intent.setAction(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:" + personPhone)); startActivity(intent); } - }) - .create().show(); + + @Override + public void onCancelClick() { + + } + }).build().show(); } @Override diff --git a/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java new file mode 100644 index 0000000..a74cf7d --- /dev/null +++ b/app/src/main/java/com/casic/dcms/widgets/AlertMessageDialog.java @@ -0,0 +1,131 @@ +package com.casic.dcms.widgets; + +import android.app.Dialog; +import android.content.Context; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.os.Bundle; +import android.text.TextUtils; +import android.view.View; +import android.view.Window; +import android.view.WindowManager; +import android.widget.Button; +import android.widget.TextView; + +import com.casic.dcms.R; +import com.qmuiteam.qmui.util.QMUIDisplayHelper; + + +/** + * @author: Pengxh + * @email: 290677893@qq.com + * @date: 2021-09-05 19:25:42 + * @description: 普通提示对话框对话框 + */ +public class AlertMessageDialog extends Dialog { + + private final Context ctx; + private final String title; + private final String message; + private final String positiveBtn; + private final OnDialogButtonClickListener listener; + + public static class Builder { + private Context context; + private String title; + private String message; + private String positiveBtn; + private OnDialogButtonClickListener listener; + + public Builder setContext(Context context) { + this.context = context; + return this; + } + + public Builder setTitle(String title) { + this.title = title; + return this; + } + + public Builder setMessage(String message) { + this.message = message; + return this; + } + + public Builder setPositiveButton(String name) { + this.positiveBtn = name; + return this; + } + + public Builder setOnDialogButtonClickListener(OnDialogButtonClickListener listener) { + this.listener = listener; + return this; + } + + public AlertMessageDialog build() { + return new AlertMessageDialog(this); + } + } + + private AlertMessageDialog(Builder builder) { + super(builder.context, R.style.AlertDialogStyle); + this.ctx = builder.context; + this.title = builder.title; + this.message = builder.message; + this.positiveBtn = builder.positiveBtn; + this.listener = builder.listener; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + configDialogLayout(); + setContentView(R.layout.dialog_message); + setCanceledOnTouchOutside(false); + initView(); + } + + private void initView() { + TextView dialogTitleView = findViewById(R.id.dialogTitleView); + TextView dialogMessageView = findViewById(R.id.dialogMessageView); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + + if (!TextUtils.isEmpty(title)) { + dialogTitleView.setText(title); + } + + if (!TextUtils.isEmpty(message)) { + dialogMessageView.setText(message); + } + + if (!TextUtils.isEmpty(positiveBtn)) { + dialogConfirmButton.setText(positiveBtn); + dialogConfirmButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (listener != null) { + listener.onConfirmClick(); + dismiss(); + } + } + }); + } + } + + private void configDialogLayout() { + Window window = getWindow(); + if (window == null) { + return; + } + window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); + window.getDecorView().setBackgroundColor(Color.TRANSPARENT); + WindowManager.LayoutParams params = window.getAttributes(); + params.width = (int) (QMUIDisplayHelper.getScreenWidth(ctx) * 0.8); + params.height = WindowManager.LayoutParams.WRAP_CONTENT; + window.setAttributes(params); + } + + public interface OnDialogButtonClickListener { + void onConfirmClick(); + } +} diff --git a/app/src/main/java/com/casic/dcms/widgets/InputDialog.java b/app/src/main/java/com/casic/dcms/widgets/InputDialog.java index b3bae8a..9f0c5b4 100644 --- a/app/src/main/java/com/casic/dcms/widgets/InputDialog.java +++ b/app/src/main/java/com/casic/dcms/widgets/InputDialog.java @@ -8,13 +8,13 @@ import android.view.View; import android.view.Window; import android.view.WindowManager; +import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import com.casic.dcms.R; import com.casic.dcms.utils.ToastHelper; import com.qmuiteam.qmui.util.QMUIDisplayHelper; -import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButton; /** * @Author: Pengxh @@ -52,8 +52,8 @@ TextView dialogTitleView = findViewById(R.id.dialogTitleView); EditText dialogInputView = findViewById(R.id.dialogInputView); - QMUIRoundButton dialogCancelButton = findViewById(R.id.dialogCancelButton); - QMUIRoundButton dialogConfirmButton = findViewById(R.id.dialogConfirmButton); + Button dialogCancelButton = findViewById(R.id.dialogCancelButton); + Button dialogConfirmButton = findViewById(R.id.dialogConfirmButton); dialogTitleView.setText(title); if (!value.equals("")) { @@ -63,7 +63,6 @@ } dialogCancelButton.setText(negativeBtn); - dialogCancelButton.setChangeAlphaWhenPress(true); dialogCancelButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { @@ -73,7 +72,6 @@ }); dialogConfirmButton.setText(positiveBtn); - dialogConfirmButton.setChangeAlphaWhenPress(true); dialogConfirmButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 2875d23..5381c45 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -85,7 +85,7 @@ style="@style/roundButtonStyle" android:layout_below="@id/anchorLayout" android:layout_marginHorizontal="50dp" - android:layout_marginVertical="30dp" + android:layout_marginVertical="20dp" android:text="登录" /> + android:background="@color/hintColor" /> - + android:textColor="@color/red" + android:textSize="@dimen/titleFontSize" /> + android:background="@color/hintColor" /> - + android:textSize="@dimen/titleFontSize" /> \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_message.xml b/app/src/main/res/layout/dialog_message.xml new file mode 100644 index 0000000..0ece114 --- /dev/null +++ b/app/src/main/res/layout/dialog_message.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + +