diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java index 7bee382..39b84e1 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java @@ -28,7 +28,6 @@ import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.utils.callback.ISelectorListener; import com.casic.dcms.widgets.SignInDialog; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.dialog.AlertInputDialog; diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java index 7bee382..39b84e1 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java @@ -28,7 +28,6 @@ import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.utils.callback.ISelectorListener; import com.casic.dcms.widgets.SignInDialog; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.dialog.AlertInputDialog; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java index dfd357e..cb9c93c 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java @@ -15,12 +15,12 @@ import com.casic.dcms.mvvm.model.CaseStatusBean; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.TimeOrDateUtil; import com.gyf.immersionbar.ImmersionBar; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.widget.dialog.AlertControlDialog; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java index 7bee382..39b84e1 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java @@ -28,7 +28,6 @@ import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.utils.callback.ISelectorListener; import com.casic.dcms.widgets.SignInDialog; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.dialog.AlertInputDialog; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java index dfd357e..cb9c93c 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java @@ -15,12 +15,12 @@ import com.casic.dcms.mvvm.model.CaseStatusBean; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.TimeOrDateUtil; import com.gyf.immersionbar.ImmersionBar; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.widget.dialog.AlertControlDialog; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java index 2910126..9e3c08d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java @@ -19,8 +19,8 @@ import com.casic.dcms.mvvm.view.DataAnalysisActivity; import com.casic.dcms.mvvm.view.DeptHandleActivity; import com.casic.dcms.mvvm.view.HandleCaseActivity; -import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.OvertimeCaseActivity; +import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.PackageCaseUploadActivity; import com.casic.dcms.mvvm.view.PersonActivity; import com.casic.dcms.mvvm.view.PipelineManagerActivity; @@ -33,9 +33,9 @@ import com.casic.dcms.mvvm.vm.HomePageViewModel; import com.casic.dcms.utils.LocaleConstant; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.base.AndroidxBaseFragment; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import java.util.GregorianCalendar; diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java index 7bee382..39b84e1 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java @@ -28,7 +28,6 @@ import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.utils.callback.ISelectorListener; import com.casic.dcms.widgets.SignInDialog; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.dialog.AlertInputDialog; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java index dfd357e..cb9c93c 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java @@ -15,12 +15,12 @@ import com.casic.dcms.mvvm.model.CaseStatusBean; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.TimeOrDateUtil; import com.gyf.immersionbar.ImmersionBar; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.widget.dialog.AlertControlDialog; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java index 2910126..9e3c08d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java @@ -19,8 +19,8 @@ import com.casic.dcms.mvvm.view.DataAnalysisActivity; import com.casic.dcms.mvvm.view.DeptHandleActivity; import com.casic.dcms.mvvm.view.HandleCaseActivity; -import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.OvertimeCaseActivity; +import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.PackageCaseUploadActivity; import com.casic.dcms.mvvm.view.PersonActivity; import com.casic.dcms.mvvm.view.PipelineManagerActivity; @@ -33,9 +33,9 @@ import com.casic.dcms.mvvm.vm.HomePageViewModel; import com.casic.dcms.utils.LocaleConstant; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.base.AndroidxBaseFragment; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import java.util.GregorianCalendar; diff --git a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java index 93bc6cf..0148455 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java +++ b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java @@ -8,7 +8,6 @@ import com.casic.dcms.mvvm.model.ActionResultBean; import com.casic.dcms.utils.ImageHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IWaterMarkAddListener; import com.casic.dcms.utils.retrofit.RetrofitServiceManager; import com.google.gson.Gson; @@ -65,52 +64,49 @@ loadState.setValue(LoadState.Loading); //改为上传带水印的图片 Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath()); - ImageHelper.drawTextToRightBottom(bitmap, StringHelper.getUserBean().getAccount(), - TimeOrDateUtil.timestampToDate(System.currentTimeMillis()), - TimeOrDateUtil.timestampToTime(System.currentTimeMillis()), - new IWaterMarkAddListener() { - @Override - public void onSuccess(File file) { - if (file != null) { - Observable observable = RetrofitServiceManager.uploadImage(file); - ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } + ImageHelper.drawTextToRightBottom(bitmap, new IWaterMarkAddListener() { + @Override + public void onSuccess(File file) { + if (file != null) { + Observable observable = RetrofitServiceManager.uploadImage(file); + ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.separateResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - imageModel.setValue(resultBean); - } else { - loadState.setValue(LoadState.Fail); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } else { + @Override + public void onError(Throwable e) { loadState.setValue(LoadState.Fail); } - } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - }); + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.separateResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + imageModel.setValue(resultBean); + } else { + loadState.setValue(LoadState.Fail); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } else { + loadState.setValue(LoadState.Fail); + } + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + }); } public void uploadAudio(File file) { diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java index 7bee382..39b84e1 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java @@ -28,7 +28,6 @@ import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.utils.callback.ISelectorListener; import com.casic.dcms.widgets.SignInDialog; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.dialog.AlertInputDialog; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java index dfd357e..cb9c93c 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java @@ -15,12 +15,12 @@ import com.casic.dcms.mvvm.model.CaseStatusBean; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.TimeOrDateUtil; import com.gyf.immersionbar.ImmersionBar; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.widget.dialog.AlertControlDialog; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java index 2910126..9e3c08d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java @@ -19,8 +19,8 @@ import com.casic.dcms.mvvm.view.DataAnalysisActivity; import com.casic.dcms.mvvm.view.DeptHandleActivity; import com.casic.dcms.mvvm.view.HandleCaseActivity; -import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.OvertimeCaseActivity; +import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.PackageCaseUploadActivity; import com.casic.dcms.mvvm.view.PersonActivity; import com.casic.dcms.mvvm.view.PipelineManagerActivity; @@ -33,9 +33,9 @@ import com.casic.dcms.mvvm.vm.HomePageViewModel; import com.casic.dcms.utils.LocaleConstant; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.base.AndroidxBaseFragment; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import java.util.GregorianCalendar; diff --git a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java index 93bc6cf..0148455 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java +++ b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java @@ -8,7 +8,6 @@ import com.casic.dcms.mvvm.model.ActionResultBean; import com.casic.dcms.utils.ImageHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IWaterMarkAddListener; import com.casic.dcms.utils.retrofit.RetrofitServiceManager; import com.google.gson.Gson; @@ -65,52 +64,49 @@ loadState.setValue(LoadState.Loading); //改为上传带水印的图片 Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath()); - ImageHelper.drawTextToRightBottom(bitmap, StringHelper.getUserBean().getAccount(), - TimeOrDateUtil.timestampToDate(System.currentTimeMillis()), - TimeOrDateUtil.timestampToTime(System.currentTimeMillis()), - new IWaterMarkAddListener() { - @Override - public void onSuccess(File file) { - if (file != null) { - Observable observable = RetrofitServiceManager.uploadImage(file); - ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } + ImageHelper.drawTextToRightBottom(bitmap, new IWaterMarkAddListener() { + @Override + public void onSuccess(File file) { + if (file != null) { + Observable observable = RetrofitServiceManager.uploadImage(file); + ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.separateResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - imageModel.setValue(resultBean); - } else { - loadState.setValue(LoadState.Fail); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } else { + @Override + public void onError(Throwable e) { loadState.setValue(LoadState.Fail); } - } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - }); + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.separateResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + imageModel.setValue(resultBean); + } else { + loadState.setValue(LoadState.Fail); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } else { + loadState.setValue(LoadState.Fail); + } + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + }); } public void uploadAudio(File file) { diff --git a/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java b/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java deleted file mode 100755 index aa2f97b..0000000 --- a/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.casic.dcms.utils; - -import android.text.TextUtils; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.Locale; - -public class CalendarUtil { - public static String getTwoDay(String sj1, String sj2) { - SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - long day; - try { - Date date = formatter.parse(sj1); - Date mydate = formatter.parse(sj2); - day = (date.getTime() - mydate.getTime()) / (24 * 60 * 60 * 1000); - } catch (Exception e) { - return ""; - } - return day + ""; - } - - - /** - * 判断当前日期是星期几 - * - * @param pTime 设置的需要判断的时间 //格式如2012-09-08 - * @return dayForWeek 判断结果 - * @Exception 发生异常 - */ - public static int getWeekNoFormat(String pTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - } catch (ParseException e) { - e.printStackTrace(); - } - return c.get(Calendar.DAY_OF_WEEK); - } - - public static Calendar toDate(String pTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - return c; - } catch (ParseException e) { - e.printStackTrace(); - } - return null; - } - - - /** - * 参数格式:2012-12-1 - * return 12月1日 - * - * @param date - */ - public static String FormatDateMD(String date) { - if (TextUtils.isEmpty(date)) { - throw new NullPointerException(); - } - String month = date.split("-")[1]; - String day = date.split("-")[2]; - return month + "月" + day + "日"; - } - - /** - * 判断当前日期是星期几 - * - * @param pTime 设置的需要判断的时间 //格式如2012-09-08 - * @return dayForWeek 判断结果 - * @Exception 发生异常 - */ - public static String getWeekByFormat(String pTime) { - String week = ""; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - } catch (ParseException e) { - e.printStackTrace(); - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { - week += "日"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) { - week += "一"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.TUESDAY) { - week += "二"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.WEDNESDAY) { - week += "三"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.THURSDAY) { - week += "四"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY) { - week += "五"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) { - week += "六"; - } - return week; - } - - //获取前两个月的此时 - public static Date obtainLastTwoMonth() { - Calendar calendar = Calendar.getInstance(); - calendar.setTime(new Date()); - calendar.add(Calendar.MONTH, -2); //设置为前2月 - return calendar.getTime();//获取2个月前的时间 - } -} diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java index 7bee382..39b84e1 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java @@ -28,7 +28,6 @@ import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.utils.callback.ISelectorListener; import com.casic.dcms.widgets.SignInDialog; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.dialog.AlertInputDialog; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java index dfd357e..cb9c93c 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java @@ -15,12 +15,12 @@ import com.casic.dcms.mvvm.model.CaseStatusBean; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.TimeOrDateUtil; import com.gyf.immersionbar.ImmersionBar; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.widget.dialog.AlertControlDialog; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java index 2910126..9e3c08d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java @@ -19,8 +19,8 @@ import com.casic.dcms.mvvm.view.DataAnalysisActivity; import com.casic.dcms.mvvm.view.DeptHandleActivity; import com.casic.dcms.mvvm.view.HandleCaseActivity; -import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.OvertimeCaseActivity; +import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.PackageCaseUploadActivity; import com.casic.dcms.mvvm.view.PersonActivity; import com.casic.dcms.mvvm.view.PipelineManagerActivity; @@ -33,9 +33,9 @@ import com.casic.dcms.mvvm.vm.HomePageViewModel; import com.casic.dcms.utils.LocaleConstant; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.base.AndroidxBaseFragment; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import java.util.GregorianCalendar; diff --git a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java index 93bc6cf..0148455 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java +++ b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java @@ -8,7 +8,6 @@ import com.casic.dcms.mvvm.model.ActionResultBean; import com.casic.dcms.utils.ImageHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IWaterMarkAddListener; import com.casic.dcms.utils.retrofit.RetrofitServiceManager; import com.google.gson.Gson; @@ -65,52 +64,49 @@ loadState.setValue(LoadState.Loading); //改为上传带水印的图片 Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath()); - ImageHelper.drawTextToRightBottom(bitmap, StringHelper.getUserBean().getAccount(), - TimeOrDateUtil.timestampToDate(System.currentTimeMillis()), - TimeOrDateUtil.timestampToTime(System.currentTimeMillis()), - new IWaterMarkAddListener() { - @Override - public void onSuccess(File file) { - if (file != null) { - Observable observable = RetrofitServiceManager.uploadImage(file); - ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } + ImageHelper.drawTextToRightBottom(bitmap, new IWaterMarkAddListener() { + @Override + public void onSuccess(File file) { + if (file != null) { + Observable observable = RetrofitServiceManager.uploadImage(file); + ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.separateResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - imageModel.setValue(resultBean); - } else { - loadState.setValue(LoadState.Fail); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } else { + @Override + public void onError(Throwable e) { loadState.setValue(LoadState.Fail); } - } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - }); + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.separateResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + imageModel.setValue(resultBean); + } else { + loadState.setValue(LoadState.Fail); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } else { + loadState.setValue(LoadState.Fail); + } + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + }); } public void uploadAudio(File file) { diff --git a/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java b/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java deleted file mode 100755 index aa2f97b..0000000 --- a/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.casic.dcms.utils; - -import android.text.TextUtils; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.Locale; - -public class CalendarUtil { - public static String getTwoDay(String sj1, String sj2) { - SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - long day; - try { - Date date = formatter.parse(sj1); - Date mydate = formatter.parse(sj2); - day = (date.getTime() - mydate.getTime()) / (24 * 60 * 60 * 1000); - } catch (Exception e) { - return ""; - } - return day + ""; - } - - - /** - * 判断当前日期是星期几 - * - * @param pTime 设置的需要判断的时间 //格式如2012-09-08 - * @return dayForWeek 判断结果 - * @Exception 发生异常 - */ - public static int getWeekNoFormat(String pTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - } catch (ParseException e) { - e.printStackTrace(); - } - return c.get(Calendar.DAY_OF_WEEK); - } - - public static Calendar toDate(String pTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - return c; - } catch (ParseException e) { - e.printStackTrace(); - } - return null; - } - - - /** - * 参数格式:2012-12-1 - * return 12月1日 - * - * @param date - */ - public static String FormatDateMD(String date) { - if (TextUtils.isEmpty(date)) { - throw new NullPointerException(); - } - String month = date.split("-")[1]; - String day = date.split("-")[2]; - return month + "月" + day + "日"; - } - - /** - * 判断当前日期是星期几 - * - * @param pTime 设置的需要判断的时间 //格式如2012-09-08 - * @return dayForWeek 判断结果 - * @Exception 发生异常 - */ - public static String getWeekByFormat(String pTime) { - String week = ""; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - } catch (ParseException e) { - e.printStackTrace(); - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { - week += "日"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) { - week += "一"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.TUESDAY) { - week += "二"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.WEDNESDAY) { - week += "三"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.THURSDAY) { - week += "四"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY) { - week += "五"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) { - week += "六"; - } - return week; - } - - //获取前两个月的此时 - public static Date obtainLastTwoMonth() { - Calendar calendar = Calendar.getInstance(); - calendar.setTime(new Date()); - calendar.add(Calendar.MONTH, -2); //设置为前2月 - return calendar.getTime();//获取2个月前的时间 - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java b/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java index 0bf22c3..7cb867d 100644 --- a/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java @@ -15,9 +15,9 @@ import okhttp3.Response; import okhttp3.ResponseBody; import okhttp3.logging.HttpLoggingInterceptor; +import rx.Emitter; import rx.Observable; import rx.Observer; -import rx.Subscriber; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; @@ -27,37 +27,34 @@ public static void doRequest(String function, String requestValue, IHttpRequestListener listener) { String ip = (String) SaveKeyValues.getValue(LocaleConstant.IP_KEY, "http://111.198.10.15:11409"); // String ip = (String) SaveKeyValues.getValue(Constant.IP_KEY, "http://223.82.47.232:11401"); - Observable.create(new Observable.OnSubscribe() { - @Override - public void call(Subscriber subscriber) { - HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { - @Override - public void log(@NotNull String message) { - Log.d(TAG, "log: " + message); - } - }); - interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); - - OkHttpClient client = new OkHttpClient.Builder() - .addInterceptor(interceptor) - .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .build(); - - Request request = new Request.Builder() - .addHeader("token", AuthenticationHelper.getToken()) - .url(ip + function + requestValue) - .get() - .build();//创建Request 对象 - try { - Response response = client.newCall(request).execute(); - subscriber.onNext(response.body()); - } catch (IOException e) { - subscriber.onError(e); + Observable.create(emitter -> { + HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { + @Override + public void log(@NotNull String message) { + Log.d(TAG, "log: " + message); } + }); + interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); + + OkHttpClient client = new OkHttpClient.Builder() + .addInterceptor(interceptor) + .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .build(); + + Request request = new Request.Builder() + .addHeader("token", AuthenticationHelper.getToken()) + .url(ip + function + requestValue) + .get() + .build();//创建Request 对象 + try { + Response response = client.newCall(request).execute(); + emitter.onNext(response.body()); + } catch (IOException e) { + emitter.onError(e); } - }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { + }, Emitter.BackpressureMode.BUFFER).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { @Override public void onCompleted() { @@ -76,37 +73,34 @@ } public static void doRequest(String url, IHttpRequestListener listener) { - Observable.create(new Observable.OnSubscribe() { - @Override - public void call(Subscriber subscriber) { - HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { - @Override - public void log(@NotNull String message) { - Log.d(TAG, "log: " + message); - } - }); - interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); - - OkHttpClient client = new OkHttpClient.Builder() - .addInterceptor(interceptor) - .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .build(); - - Request request = new Request.Builder() - .addHeader("token", AuthenticationHelper.getToken()) - .url(url) - .get() - .build();//创建Request 对象 - try { - Response response = client.newCall(request).execute(); - subscriber.onNext(response.body()); - } catch (IOException e) { - subscriber.onError(e); + Observable.create(emitter -> { + HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { + @Override + public void log(@NotNull String message) { + Log.d(TAG, "log: " + message); } + }); + interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); + + OkHttpClient client = new OkHttpClient.Builder() + .addInterceptor(interceptor) + .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .build(); + + Request request = new Request.Builder() + .addHeader("token", AuthenticationHelper.getToken()) + .url(url) + .get() + .build();//创建Request 对象 + try { + Response response = client.newCall(request).execute(); + emitter.onNext(response.body()); + } catch (IOException e) { + emitter.onError(e); } - }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { + }, Emitter.BackpressureMode.BUFFER).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { @Override public void onCompleted() { diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java index 7bee382..39b84e1 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java @@ -28,7 +28,6 @@ import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.utils.callback.ISelectorListener; import com.casic.dcms.widgets.SignInDialog; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.dialog.AlertInputDialog; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java index dfd357e..cb9c93c 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java @@ -15,12 +15,12 @@ import com.casic.dcms.mvvm.model.CaseStatusBean; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.TimeOrDateUtil; import com.gyf.immersionbar.ImmersionBar; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.widget.dialog.AlertControlDialog; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java index 2910126..9e3c08d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java @@ -19,8 +19,8 @@ import com.casic.dcms.mvvm.view.DataAnalysisActivity; import com.casic.dcms.mvvm.view.DeptHandleActivity; import com.casic.dcms.mvvm.view.HandleCaseActivity; -import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.OvertimeCaseActivity; +import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.PackageCaseUploadActivity; import com.casic.dcms.mvvm.view.PersonActivity; import com.casic.dcms.mvvm.view.PipelineManagerActivity; @@ -33,9 +33,9 @@ import com.casic.dcms.mvvm.vm.HomePageViewModel; import com.casic.dcms.utils.LocaleConstant; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.base.AndroidxBaseFragment; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import java.util.GregorianCalendar; diff --git a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java index 93bc6cf..0148455 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java +++ b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java @@ -8,7 +8,6 @@ import com.casic.dcms.mvvm.model.ActionResultBean; import com.casic.dcms.utils.ImageHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IWaterMarkAddListener; import com.casic.dcms.utils.retrofit.RetrofitServiceManager; import com.google.gson.Gson; @@ -65,52 +64,49 @@ loadState.setValue(LoadState.Loading); //改为上传带水印的图片 Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath()); - ImageHelper.drawTextToRightBottom(bitmap, StringHelper.getUserBean().getAccount(), - TimeOrDateUtil.timestampToDate(System.currentTimeMillis()), - TimeOrDateUtil.timestampToTime(System.currentTimeMillis()), - new IWaterMarkAddListener() { - @Override - public void onSuccess(File file) { - if (file != null) { - Observable observable = RetrofitServiceManager.uploadImage(file); - ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } + ImageHelper.drawTextToRightBottom(bitmap, new IWaterMarkAddListener() { + @Override + public void onSuccess(File file) { + if (file != null) { + Observable observable = RetrofitServiceManager.uploadImage(file); + ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.separateResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - imageModel.setValue(resultBean); - } else { - loadState.setValue(LoadState.Fail); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } else { + @Override + public void onError(Throwable e) { loadState.setValue(LoadState.Fail); } - } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - }); + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.separateResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + imageModel.setValue(resultBean); + } else { + loadState.setValue(LoadState.Fail); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } else { + loadState.setValue(LoadState.Fail); + } + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + }); } public void uploadAudio(File file) { diff --git a/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java b/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java deleted file mode 100755 index aa2f97b..0000000 --- a/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.casic.dcms.utils; - -import android.text.TextUtils; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.Locale; - -public class CalendarUtil { - public static String getTwoDay(String sj1, String sj2) { - SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - long day; - try { - Date date = formatter.parse(sj1); - Date mydate = formatter.parse(sj2); - day = (date.getTime() - mydate.getTime()) / (24 * 60 * 60 * 1000); - } catch (Exception e) { - return ""; - } - return day + ""; - } - - - /** - * 判断当前日期是星期几 - * - * @param pTime 设置的需要判断的时间 //格式如2012-09-08 - * @return dayForWeek 判断结果 - * @Exception 发生异常 - */ - public static int getWeekNoFormat(String pTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - } catch (ParseException e) { - e.printStackTrace(); - } - return c.get(Calendar.DAY_OF_WEEK); - } - - public static Calendar toDate(String pTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - return c; - } catch (ParseException e) { - e.printStackTrace(); - } - return null; - } - - - /** - * 参数格式:2012-12-1 - * return 12月1日 - * - * @param date - */ - public static String FormatDateMD(String date) { - if (TextUtils.isEmpty(date)) { - throw new NullPointerException(); - } - String month = date.split("-")[1]; - String day = date.split("-")[2]; - return month + "月" + day + "日"; - } - - /** - * 判断当前日期是星期几 - * - * @param pTime 设置的需要判断的时间 //格式如2012-09-08 - * @return dayForWeek 判断结果 - * @Exception 发生异常 - */ - public static String getWeekByFormat(String pTime) { - String week = ""; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - } catch (ParseException e) { - e.printStackTrace(); - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { - week += "日"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) { - week += "一"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.TUESDAY) { - week += "二"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.WEDNESDAY) { - week += "三"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.THURSDAY) { - week += "四"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY) { - week += "五"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) { - week += "六"; - } - return week; - } - - //获取前两个月的此时 - public static Date obtainLastTwoMonth() { - Calendar calendar = Calendar.getInstance(); - calendar.setTime(new Date()); - calendar.add(Calendar.MONTH, -2); //设置为前2月 - return calendar.getTime();//获取2个月前的时间 - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java b/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java index 0bf22c3..7cb867d 100644 --- a/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java @@ -15,9 +15,9 @@ import okhttp3.Response; import okhttp3.ResponseBody; import okhttp3.logging.HttpLoggingInterceptor; +import rx.Emitter; import rx.Observable; import rx.Observer; -import rx.Subscriber; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; @@ -27,37 +27,34 @@ public static void doRequest(String function, String requestValue, IHttpRequestListener listener) { String ip = (String) SaveKeyValues.getValue(LocaleConstant.IP_KEY, "http://111.198.10.15:11409"); // String ip = (String) SaveKeyValues.getValue(Constant.IP_KEY, "http://223.82.47.232:11401"); - Observable.create(new Observable.OnSubscribe() { - @Override - public void call(Subscriber subscriber) { - HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { - @Override - public void log(@NotNull String message) { - Log.d(TAG, "log: " + message); - } - }); - interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); - - OkHttpClient client = new OkHttpClient.Builder() - .addInterceptor(interceptor) - .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .build(); - - Request request = new Request.Builder() - .addHeader("token", AuthenticationHelper.getToken()) - .url(ip + function + requestValue) - .get() - .build();//创建Request 对象 - try { - Response response = client.newCall(request).execute(); - subscriber.onNext(response.body()); - } catch (IOException e) { - subscriber.onError(e); + Observable.create(emitter -> { + HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { + @Override + public void log(@NotNull String message) { + Log.d(TAG, "log: " + message); } + }); + interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); + + OkHttpClient client = new OkHttpClient.Builder() + .addInterceptor(interceptor) + .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .build(); + + Request request = new Request.Builder() + .addHeader("token", AuthenticationHelper.getToken()) + .url(ip + function + requestValue) + .get() + .build();//创建Request 对象 + try { + Response response = client.newCall(request).execute(); + emitter.onNext(response.body()); + } catch (IOException e) { + emitter.onError(e); } - }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { + }, Emitter.BackpressureMode.BUFFER).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { @Override public void onCompleted() { @@ -76,37 +73,34 @@ } public static void doRequest(String url, IHttpRequestListener listener) { - Observable.create(new Observable.OnSubscribe() { - @Override - public void call(Subscriber subscriber) { - HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { - @Override - public void log(@NotNull String message) { - Log.d(TAG, "log: " + message); - } - }); - interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); - - OkHttpClient client = new OkHttpClient.Builder() - .addInterceptor(interceptor) - .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .build(); - - Request request = new Request.Builder() - .addHeader("token", AuthenticationHelper.getToken()) - .url(url) - .get() - .build();//创建Request 对象 - try { - Response response = client.newCall(request).execute(); - subscriber.onNext(response.body()); - } catch (IOException e) { - subscriber.onError(e); + Observable.create(emitter -> { + HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { + @Override + public void log(@NotNull String message) { + Log.d(TAG, "log: " + message); } + }); + interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); + + OkHttpClient client = new OkHttpClient.Builder() + .addInterceptor(interceptor) + .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .build(); + + Request request = new Request.Builder() + .addHeader("token", AuthenticationHelper.getToken()) + .url(url) + .get() + .build();//创建Request 对象 + try { + Response response = client.newCall(request).execute(); + emitter.onNext(response.body()); + } catch (IOException e) { + emitter.onError(e); } - }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { + }, Emitter.BackpressureMode.BUFFER).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { @Override public void onCompleted() { diff --git a/app/src/main/java/com/casic/dcms/utils/ImageHelper.java b/app/src/main/java/com/casic/dcms/utils/ImageHelper.java index 99fc6a1..fc94d4a 100644 --- a/app/src/main/java/com/casic/dcms/utils/ImageHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/ImageHelper.java @@ -1,6 +1,5 @@ package com.casic.dcms.utils; -import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; @@ -10,93 +9,89 @@ import android.graphics.Typeface; import android.text.TextPaint; +import com.casic.dcms.base.BaseApplication; import com.casic.dcms.utils.callback.IWaterMarkAddListener; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.pengxh.androidx.lite.utils.DeviceSizeUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import java.io.File; import java.io.FileOutputStream; +import rx.Emitter; import rx.Observable; import rx.Observer; -import rx.Subscriber; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; public class ImageHelper { - private static final String TAG = "ImageHelper"; - @SuppressLint("StaticFieldLeak") - private static Context context; - private static TextPaint textPaint; - - public static void initPaint(Context context) { - ImageHelper.context = context; - //初始化画笔 - textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); - textPaint.setTypeface(Typeface.DEFAULT);// 采用默认的宽度 - textPaint.setColor(Color.RED); - textPaint.setDither(true); // 防抖动,获取更清晰的图像采样 - textPaint.setFilterBitmap(true);// 滤波 - } /** * 绘制文字到右下角并压缩图片 */ - public static void drawTextToRightBottom(final Bitmap bitmap, String name, String date, String time, - IWaterMarkAddListener markAddListener) { - Observable.create(new Observable.OnSubscribe() { - @Override - public void call(Subscriber subscriber) { - //图片像素不一样,字体也需要设置不一样,像素低的图片,文字要小 - textPaint.setTextSize(QMUIDisplayHelper.dp2px(context, 16)); - Rect nameBounds = new Rect(); - textPaint.getTextBounds(name, 0, name.length(), nameBounds); - Rect dateBounds = new Rect(); - textPaint.getTextBounds(date, 0, date.length(), dateBounds); - Rect timeBounds = new Rect(); - textPaint.getTextBounds(time, 0, time.length(), timeBounds); + public static void drawTextToRightBottom(final Bitmap bitmap, IWaterMarkAddListener markAddListener) { + Context context = BaseApplication.getInstance(); + //初始化画笔 + TextPaint textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); + textPaint.setTypeface(Typeface.DEFAULT);// 采用默认的宽度 + textPaint.setColor(Color.RED); + textPaint.setDither(true); // 防抖动,获取更清晰的图像采样 + textPaint.setFilterBitmap(true);// 滤波 - //添加水印 - Bitmap.Config bitmapConfig = bitmap.getConfig(); - if (bitmapConfig == null) { - bitmapConfig = Bitmap.Config.RGB_565; - } - Bitmap copyBitmap = bitmap.copy(bitmapConfig, true); + String name = StringHelper.getUserBean().getAccount(); + String date = TimeOrDateUtil.timestampToDate(System.currentTimeMillis()); + String time = TimeOrDateUtil.timestampToTime(System.currentTimeMillis()); - Canvas canvas = new Canvas(copyBitmap); - final int bitmapWidth = copyBitmap.getWidth(); - final int bitmapHeight = copyBitmap.getHeight(); + Observable.create(emitter -> { + //图片像素不一样,字体也需要设置不一样,像素低的图片,文字要小 + textPaint.setTextSize(DeviceSizeUtil.dp2px(context, 16)); + Rect nameBounds = new Rect(); + textPaint.getTextBounds(name, 0, name.length(), nameBounds); + Rect dateBounds = new Rect(); + textPaint.getTextBounds(date, 0, date.length(), dateBounds); + Rect timeBounds = new Rect(); + textPaint.getTextBounds(time, 0, time.length(), timeBounds); - //图片像素不一样,间距也需要设置不一样 - int padding, paddingRight, paddingBottom; - padding = QMUIDisplayHelper.dp2px(context, 8);//两行水印间的间距 - paddingRight = QMUIDisplayHelper.dp2px(context, 12); - paddingBottom = QMUIDisplayHelper.dp2px(context, 12); - //有几行就写几行 - canvas.drawText(name, bitmapWidth - nameBounds.width() - paddingRight, - bitmapHeight - (dateBounds.height() + timeBounds.height() + 2 * padding + paddingBottom), textPaint); - canvas.drawText(date, bitmapWidth - dateBounds.width() - paddingRight, - bitmapHeight - (timeBounds.height() + padding + paddingBottom), textPaint); - canvas.drawText(time, bitmapWidth - timeBounds.width() - paddingRight, - bitmapHeight - paddingBottom, textPaint); - - //将带有水印的图片保存 - File file = FileUtils.getWaterImageFile(); - try { - FileOutputStream fos = new FileOutputStream(file); - //以jpeg的编码方式,75%的像素质量保存为png图片 - copyBitmap.compress(Bitmap.CompressFormat.JPEG, 75, fos); - fos.flush(); - fos.close(); - if (!copyBitmap.isRecycled()) { - copyBitmap.recycle(); - } - } catch (Exception e) { - e.printStackTrace(); - } - subscriber.onNext(file); + //添加水印 + Bitmap.Config bitmapConfig = bitmap.getConfig(); + if (bitmapConfig == null) { + bitmapConfig = Bitmap.Config.RGB_565; } - }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { + Bitmap copyBitmap = bitmap.copy(bitmapConfig, true); + + Canvas canvas = new Canvas(copyBitmap); + final int bitmapWidth = copyBitmap.getWidth(); + final int bitmapHeight = copyBitmap.getHeight(); + + //图片像素不一样,间距也需要设置不一样 + int padding, paddingRight, paddingBottom; + padding = DeviceSizeUtil.dp2px(context, 8);//两行水印间的间距 + paddingRight = DeviceSizeUtil.dp2px(context, 12); + paddingBottom = DeviceSizeUtil.dp2px(context, 12); + //有几行就写几行 + canvas.drawText(name, bitmapWidth - nameBounds.width() - paddingRight, + bitmapHeight - (dateBounds.height() + timeBounds.height() + 2 * padding + paddingBottom), textPaint); + canvas.drawText(date, bitmapWidth - dateBounds.width() - paddingRight, + bitmapHeight - (timeBounds.height() + padding + paddingBottom), textPaint); + canvas.drawText(time, bitmapWidth - timeBounds.width() - paddingRight, + bitmapHeight - paddingBottom, textPaint); + + //将带有水印的图片保存 + File file = FileUtils.getWaterImageFile(); + try { + FileOutputStream fos = new FileOutputStream(file); + //以jpeg的编码方式,75%的像素质量保存为png图片 + copyBitmap.compress(Bitmap.CompressFormat.JPEG, 75, fos); + fos.flush(); + fos.close(); + if (!copyBitmap.isRecycled()) { + copyBitmap.recycle(); + } + } catch (Exception e) { + e.printStackTrace(); + } + emitter.onNext(file); + }, Emitter.BackpressureMode.BUFFER).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { @Override public void onCompleted() { diff --git a/app/src/main/java/com/casic/dcms/base/BaseApplication.java b/app/src/main/java/com/casic/dcms/base/BaseApplication.java index 0974767..1f7c1a3 100644 --- a/app/src/main/java/com/casic/dcms/base/BaseApplication.java +++ b/app/src/main/java/com/casic/dcms/base/BaseApplication.java @@ -8,7 +8,6 @@ import com.casic.dcms.greendao.DaoMaster; import com.casic.dcms.greendao.DaoSession; import com.casic.dcms.utils.FileUtils; -import com.casic.dcms.utils.ImageHelper; import com.esri.arcgisruntime.ArcGISRuntimeEnvironment; import com.igexin.sdk.IUserLoggerInterface; import com.igexin.sdk.PushManager; @@ -29,7 +28,6 @@ QMUISwipeBackActivityManager.init(this); SaveKeyValues.initSharedPreferences(this); FileUtils.initFileConfig(this); - ImageHelper.initPaint(this); ArcGISRuntimeEnvironment.setLicense(getString(R.string.arcgis_license));//去掉开发版水印 ArcGISRuntimeEnvironment.setApiKey(getString(R.string.arcgis_key)); //个推初始化 diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java index 7c66493..749d31d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/BridgeMaintainActivity.java @@ -19,7 +19,6 @@ import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IAddressListener; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.widgets.SignInDialog; @@ -28,6 +27,7 @@ import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java index 60351ac..46d6c8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/CommonCaseUploadActivity.java @@ -35,12 +35,11 @@ import com.casic.dcms.mvvm.vm.CaseViewModel; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.mvvm.vm.UploadViewModel; +import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.FileUtils; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.DialogHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.utils.DeviceSizeUtil; import com.pengxh.androidx.lite.utils.FileUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.audio.AudioPopupWindow; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java index 0f5a528..8666b8a 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PackageTodoDetailActivity.java @@ -21,7 +21,6 @@ import com.casic.dcms.utils.MapHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ISelectorListener; import com.gyf.immersionbar.ImmersionBar; import com.luck.picture.lib.entity.LocalMedia; @@ -31,6 +30,7 @@ import com.pengxh.androidx.lite.utils.Constant; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java index 7bee382..39b84e1 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/PublicToiletActivity.java @@ -28,7 +28,6 @@ import com.casic.dcms.utils.LocationHelper; import com.casic.dcms.utils.PictureSelectorHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.ILocationListener; import com.casic.dcms.utils.callback.ISelectorListener; import com.casic.dcms.widgets.SignInDialog; @@ -50,6 +49,7 @@ import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ContextUtil; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.vm.LoadState; import com.pengxh.androidx.lite.widget.EasyToast; import com.pengxh.androidx.lite.widget.dialog.AlertInputDialog; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java index dfd357e..cb9c93c 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/SearchCaseActivity.java @@ -15,12 +15,12 @@ import com.casic.dcms.mvvm.model.CaseStatusBean; import com.casic.dcms.mvvm.vm.CommonDataViewModel; import com.casic.dcms.utils.LocaleConstant; -import com.casic.dcms.utils.TimeOrDateUtil; import com.gyf.immersionbar.ImmersionBar; import com.jzxiang.pickerview.TimePickerDialog; import com.jzxiang.pickerview.data.Type; import com.pengxh.androidx.lite.base.AndroidxBaseActivity; import com.pengxh.androidx.lite.utils.ImmerseStatusBarUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.widget.dialog.AlertControlDialog; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; diff --git a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java index 2910126..9e3c08d 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java +++ b/app/src/main/java/com/casic/dcms/mvvm/view/fragment/HomePageFragment.java @@ -19,8 +19,8 @@ import com.casic.dcms.mvvm.view.DataAnalysisActivity; import com.casic.dcms.mvvm.view.DeptHandleActivity; import com.casic.dcms.mvvm.view.HandleCaseActivity; -import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.OvertimeCaseActivity; +import com.casic.dcms.mvvm.view.PackageCaseActivity; import com.casic.dcms.mvvm.view.PackageCaseUploadActivity; import com.casic.dcms.mvvm.view.PersonActivity; import com.casic.dcms.mvvm.view.PipelineManagerActivity; @@ -33,9 +33,9 @@ import com.casic.dcms.mvvm.vm.HomePageViewModel; import com.casic.dcms.utils.LocaleConstant; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.pengxh.androidx.lite.base.AndroidxBaseFragment; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import java.util.GregorianCalendar; diff --git a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java index 93bc6cf..0148455 100644 --- a/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java +++ b/app/src/main/java/com/casic/dcms/mvvm/vm/UploadViewModel.java @@ -8,7 +8,6 @@ import com.casic.dcms.mvvm.model.ActionResultBean; import com.casic.dcms.utils.ImageHelper; import com.casic.dcms.utils.StringHelper; -import com.casic.dcms.utils.TimeOrDateUtil; import com.casic.dcms.utils.callback.IWaterMarkAddListener; import com.casic.dcms.utils.retrofit.RetrofitServiceManager; import com.google.gson.Gson; @@ -65,52 +64,49 @@ loadState.setValue(LoadState.Loading); //改为上传带水印的图片 Bitmap bitmap = BitmapFactory.decodeFile(file.getAbsolutePath()); - ImageHelper.drawTextToRightBottom(bitmap, StringHelper.getUserBean().getAccount(), - TimeOrDateUtil.timestampToDate(System.currentTimeMillis()), - TimeOrDateUtil.timestampToTime(System.currentTimeMillis()), - new IWaterMarkAddListener() { - @Override - public void onSuccess(File file) { - if (file != null) { - Observable observable = RetrofitServiceManager.uploadImage(file); - ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { - @Override - public void onCompleted() { - loadState.setValue(LoadState.Success); - } + ImageHelper.drawTextToRightBottom(bitmap, new IWaterMarkAddListener() { + @Override + public void onSuccess(File file) { + if (file != null) { + Observable observable = RetrofitServiceManager.uploadImage(file); + ObserverSubscriber.addSubscribe(observable, new OnObserverCallback() { + @Override + public void onCompleted() { + loadState.setValue(LoadState.Success); + } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - - @Override - public void onNext(ResponseBody responseBody) { - try { - String response = responseBody.string(); - int responseCode = StringHelper.separateResponseCode(response); - if (responseCode == 200) { - ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { - }.getType()); - imageModel.setValue(resultBean); - } else { - loadState.setValue(LoadState.Fail); - } - } catch (IOException e) { - e.printStackTrace(); - } - } - }); - } else { + @Override + public void onError(Throwable e) { loadState.setValue(LoadState.Fail); } - } - @Override - public void onError(Throwable e) { - loadState.setValue(LoadState.Fail); - } - }); + @Override + public void onNext(ResponseBody responseBody) { + try { + String response = responseBody.string(); + int responseCode = StringHelper.separateResponseCode(response); + if (responseCode == 200) { + ActionResultBean resultBean = gson.fromJson(response, new TypeToken() { + }.getType()); + imageModel.setValue(resultBean); + } else { + loadState.setValue(LoadState.Fail); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } else { + loadState.setValue(LoadState.Fail); + } + } + + @Override + public void onError(Throwable e) { + loadState.setValue(LoadState.Fail); + } + }); } public void uploadAudio(File file) { diff --git a/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java b/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java deleted file mode 100755 index aa2f97b..0000000 --- a/app/src/main/java/com/casic/dcms/utils/CalendarUtil.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.casic.dcms.utils; - -import android.text.TextUtils; - -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; -import java.util.Locale; - -public class CalendarUtil { - public static String getTwoDay(String sj1, String sj2) { - SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - long day; - try { - Date date = formatter.parse(sj1); - Date mydate = formatter.parse(sj2); - day = (date.getTime() - mydate.getTime()) / (24 * 60 * 60 * 1000); - } catch (Exception e) { - return ""; - } - return day + ""; - } - - - /** - * 判断当前日期是星期几 - * - * @param pTime 设置的需要判断的时间 //格式如2012-09-08 - * @return dayForWeek 判断结果 - * @Exception 发生异常 - */ - public static int getWeekNoFormat(String pTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - } catch (ParseException e) { - e.printStackTrace(); - } - return c.get(Calendar.DAY_OF_WEEK); - } - - public static Calendar toDate(String pTime) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - return c; - } catch (ParseException e) { - e.printStackTrace(); - } - return null; - } - - - /** - * 参数格式:2012-12-1 - * return 12月1日 - * - * @param date - */ - public static String FormatDateMD(String date) { - if (TextUtils.isEmpty(date)) { - throw new NullPointerException(); - } - String month = date.split("-")[1]; - String day = date.split("-")[2]; - return month + "月" + day + "日"; - } - - /** - * 判断当前日期是星期几 - * - * @param pTime 设置的需要判断的时间 //格式如2012-09-08 - * @return dayForWeek 判断结果 - * @Exception 发生异常 - */ - public static String getWeekByFormat(String pTime) { - String week = ""; - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - Calendar c = Calendar.getInstance(); - try { - c.setTime(format.parse(pTime)); - } catch (ParseException e) { - e.printStackTrace(); - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY) { - week += "日"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.MONDAY) { - week += "一"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.TUESDAY) { - week += "二"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.WEDNESDAY) { - week += "三"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.THURSDAY) { - week += "四"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY) { - week += "五"; - } - if (c.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) { - week += "六"; - } - return week; - } - - //获取前两个月的此时 - public static Date obtainLastTwoMonth() { - Calendar calendar = Calendar.getInstance(); - calendar.setTime(new Date()); - calendar.add(Calendar.MONTH, -2); //设置为前2月 - return calendar.getTime();//获取2个月前的时间 - } -} diff --git a/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java b/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java index 0bf22c3..7cb867d 100644 --- a/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/HttpRequestHelper.java @@ -15,9 +15,9 @@ import okhttp3.Response; import okhttp3.ResponseBody; import okhttp3.logging.HttpLoggingInterceptor; +import rx.Emitter; import rx.Observable; import rx.Observer; -import rx.Subscriber; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; @@ -27,37 +27,34 @@ public static void doRequest(String function, String requestValue, IHttpRequestListener listener) { String ip = (String) SaveKeyValues.getValue(LocaleConstant.IP_KEY, "http://111.198.10.15:11409"); // String ip = (String) SaveKeyValues.getValue(Constant.IP_KEY, "http://223.82.47.232:11401"); - Observable.create(new Observable.OnSubscribe() { - @Override - public void call(Subscriber subscriber) { - HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { - @Override - public void log(@NotNull String message) { - Log.d(TAG, "log: " + message); - } - }); - interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); - - OkHttpClient client = new OkHttpClient.Builder() - .addInterceptor(interceptor) - .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .build(); - - Request request = new Request.Builder() - .addHeader("token", AuthenticationHelper.getToken()) - .url(ip + function + requestValue) - .get() - .build();//创建Request 对象 - try { - Response response = client.newCall(request).execute(); - subscriber.onNext(response.body()); - } catch (IOException e) { - subscriber.onError(e); + Observable.create(emitter -> { + HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { + @Override + public void log(@NotNull String message) { + Log.d(TAG, "log: " + message); } + }); + interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); + + OkHttpClient client = new OkHttpClient.Builder() + .addInterceptor(interceptor) + .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .build(); + + Request request = new Request.Builder() + .addHeader("token", AuthenticationHelper.getToken()) + .url(ip + function + requestValue) + .get() + .build();//创建Request 对象 + try { + Response response = client.newCall(request).execute(); + emitter.onNext(response.body()); + } catch (IOException e) { + emitter.onError(e); } - }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { + }, Emitter.BackpressureMode.BUFFER).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { @Override public void onCompleted() { @@ -76,37 +73,34 @@ } public static void doRequest(String url, IHttpRequestListener listener) { - Observable.create(new Observable.OnSubscribe() { - @Override - public void call(Subscriber subscriber) { - HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { - @Override - public void log(@NotNull String message) { - Log.d(TAG, "log: " + message); - } - }); - interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); - - OkHttpClient client = new OkHttpClient.Builder() - .addInterceptor(interceptor) - .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) - .build(); - - Request request = new Request.Builder() - .addHeader("token", AuthenticationHelper.getToken()) - .url(url) - .get() - .build();//创建Request 对象 - try { - Response response = client.newCall(request).execute(); - subscriber.onNext(response.body()); - } catch (IOException e) { - subscriber.onError(e); + Observable.create(emitter -> { + HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(new HttpLoggingInterceptor.Logger() { + @Override + public void log(@NotNull String message) { + Log.d(TAG, "log: " + message); } + }); + interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); + + OkHttpClient client = new OkHttpClient.Builder() + .addInterceptor(interceptor) + .readTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .connectTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .writeTimeout(LocaleConstant.HTTP_TIMEOUT, TimeUnit.SECONDS) + .build(); + + Request request = new Request.Builder() + .addHeader("token", AuthenticationHelper.getToken()) + .url(url) + .get() + .build();//创建Request 对象 + try { + Response response = client.newCall(request).execute(); + emitter.onNext(response.body()); + } catch (IOException e) { + emitter.onError(e); } - }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { + }, Emitter.BackpressureMode.BUFFER).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { @Override public void onCompleted() { diff --git a/app/src/main/java/com/casic/dcms/utils/ImageHelper.java b/app/src/main/java/com/casic/dcms/utils/ImageHelper.java index 99fc6a1..fc94d4a 100644 --- a/app/src/main/java/com/casic/dcms/utils/ImageHelper.java +++ b/app/src/main/java/com/casic/dcms/utils/ImageHelper.java @@ -1,6 +1,5 @@ package com.casic.dcms.utils; -import android.annotation.SuppressLint; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; @@ -10,93 +9,89 @@ import android.graphics.Typeface; import android.text.TextPaint; +import com.casic.dcms.base.BaseApplication; import com.casic.dcms.utils.callback.IWaterMarkAddListener; -import com.qmuiteam.qmui.util.QMUIDisplayHelper; +import com.pengxh.androidx.lite.utils.DeviceSizeUtil; +import com.pengxh.androidx.lite.utils.TimeOrDateUtil; import java.io.File; import java.io.FileOutputStream; +import rx.Emitter; import rx.Observable; import rx.Observer; -import rx.Subscriber; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; public class ImageHelper { - private static final String TAG = "ImageHelper"; - @SuppressLint("StaticFieldLeak") - private static Context context; - private static TextPaint textPaint; - - public static void initPaint(Context context) { - ImageHelper.context = context; - //初始化画笔 - textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); - textPaint.setTypeface(Typeface.DEFAULT);// 采用默认的宽度 - textPaint.setColor(Color.RED); - textPaint.setDither(true); // 防抖动,获取更清晰的图像采样 - textPaint.setFilterBitmap(true);// 滤波 - } /** * 绘制文字到右下角并压缩图片 */ - public static void drawTextToRightBottom(final Bitmap bitmap, String name, String date, String time, - IWaterMarkAddListener markAddListener) { - Observable.create(new Observable.OnSubscribe() { - @Override - public void call(Subscriber subscriber) { - //图片像素不一样,字体也需要设置不一样,像素低的图片,文字要小 - textPaint.setTextSize(QMUIDisplayHelper.dp2px(context, 16)); - Rect nameBounds = new Rect(); - textPaint.getTextBounds(name, 0, name.length(), nameBounds); - Rect dateBounds = new Rect(); - textPaint.getTextBounds(date, 0, date.length(), dateBounds); - Rect timeBounds = new Rect(); - textPaint.getTextBounds(time, 0, time.length(), timeBounds); + public static void drawTextToRightBottom(final Bitmap bitmap, IWaterMarkAddListener markAddListener) { + Context context = BaseApplication.getInstance(); + //初始化画笔 + TextPaint textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG | Paint.DEV_KERN_TEXT_FLAG); + textPaint.setTypeface(Typeface.DEFAULT);// 采用默认的宽度 + textPaint.setColor(Color.RED); + textPaint.setDither(true); // 防抖动,获取更清晰的图像采样 + textPaint.setFilterBitmap(true);// 滤波 - //添加水印 - Bitmap.Config bitmapConfig = bitmap.getConfig(); - if (bitmapConfig == null) { - bitmapConfig = Bitmap.Config.RGB_565; - } - Bitmap copyBitmap = bitmap.copy(bitmapConfig, true); + String name = StringHelper.getUserBean().getAccount(); + String date = TimeOrDateUtil.timestampToDate(System.currentTimeMillis()); + String time = TimeOrDateUtil.timestampToTime(System.currentTimeMillis()); - Canvas canvas = new Canvas(copyBitmap); - final int bitmapWidth = copyBitmap.getWidth(); - final int bitmapHeight = copyBitmap.getHeight(); + Observable.create(emitter -> { + //图片像素不一样,字体也需要设置不一样,像素低的图片,文字要小 + textPaint.setTextSize(DeviceSizeUtil.dp2px(context, 16)); + Rect nameBounds = new Rect(); + textPaint.getTextBounds(name, 0, name.length(), nameBounds); + Rect dateBounds = new Rect(); + textPaint.getTextBounds(date, 0, date.length(), dateBounds); + Rect timeBounds = new Rect(); + textPaint.getTextBounds(time, 0, time.length(), timeBounds); - //图片像素不一样,间距也需要设置不一样 - int padding, paddingRight, paddingBottom; - padding = QMUIDisplayHelper.dp2px(context, 8);//两行水印间的间距 - paddingRight = QMUIDisplayHelper.dp2px(context, 12); - paddingBottom = QMUIDisplayHelper.dp2px(context, 12); - //有几行就写几行 - canvas.drawText(name, bitmapWidth - nameBounds.width() - paddingRight, - bitmapHeight - (dateBounds.height() + timeBounds.height() + 2 * padding + paddingBottom), textPaint); - canvas.drawText(date, bitmapWidth - dateBounds.width() - paddingRight, - bitmapHeight - (timeBounds.height() + padding + paddingBottom), textPaint); - canvas.drawText(time, bitmapWidth - timeBounds.width() - paddingRight, - bitmapHeight - paddingBottom, textPaint); - - //将带有水印的图片保存 - File file = FileUtils.getWaterImageFile(); - try { - FileOutputStream fos = new FileOutputStream(file); - //以jpeg的编码方式,75%的像素质量保存为png图片 - copyBitmap.compress(Bitmap.CompressFormat.JPEG, 75, fos); - fos.flush(); - fos.close(); - if (!copyBitmap.isRecycled()) { - copyBitmap.recycle(); - } - } catch (Exception e) { - e.printStackTrace(); - } - subscriber.onNext(file); + //添加水印 + Bitmap.Config bitmapConfig = bitmap.getConfig(); + if (bitmapConfig == null) { + bitmapConfig = Bitmap.Config.RGB_565; } - }).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { + Bitmap copyBitmap = bitmap.copy(bitmapConfig, true); + + Canvas canvas = new Canvas(copyBitmap); + final int bitmapWidth = copyBitmap.getWidth(); + final int bitmapHeight = copyBitmap.getHeight(); + + //图片像素不一样,间距也需要设置不一样 + int padding, paddingRight, paddingBottom; + padding = DeviceSizeUtil.dp2px(context, 8);//两行水印间的间距 + paddingRight = DeviceSizeUtil.dp2px(context, 12); + paddingBottom = DeviceSizeUtil.dp2px(context, 12); + //有几行就写几行 + canvas.drawText(name, bitmapWidth - nameBounds.width() - paddingRight, + bitmapHeight - (dateBounds.height() + timeBounds.height() + 2 * padding + paddingBottom), textPaint); + canvas.drawText(date, bitmapWidth - dateBounds.width() - paddingRight, + bitmapHeight - (timeBounds.height() + padding + paddingBottom), textPaint); + canvas.drawText(time, bitmapWidth - timeBounds.width() - paddingRight, + bitmapHeight - paddingBottom, textPaint); + + //将带有水印的图片保存 + File file = FileUtils.getWaterImageFile(); + try { + FileOutputStream fos = new FileOutputStream(file); + //以jpeg的编码方式,75%的像素质量保存为png图片 + copyBitmap.compress(Bitmap.CompressFormat.JPEG, 75, fos); + fos.flush(); + fos.close(); + if (!copyBitmap.isRecycled()) { + copyBitmap.recycle(); + } + } catch (Exception e) { + e.printStackTrace(); + } + emitter.onNext(file); + }, Emitter.BackpressureMode.BUFFER).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(new Observer() { @Override public void onCompleted() { diff --git a/app/src/main/java/com/casic/dcms/utils/TimeOrDateUtil.java b/app/src/main/java/com/casic/dcms/utils/TimeOrDateUtil.java index fa1d68e..1f68656 100644 --- a/app/src/main/java/com/casic/dcms/utils/TimeOrDateUtil.java +++ b/app/src/main/java/com/casic/dcms/utils/TimeOrDateUtil.java @@ -69,22 +69,6 @@ } /** - * 时间戳转年月日时分秒 - */ - public static String timestampToCompleteDate(long millSeconds) { - dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); - return dateFormat.format(new Date(millSeconds)); - } - - /** - * 时间戳转年月日 - */ - public static String timestampToDate(long millSeconds) { - dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA); - return dateFormat.format(new Date(millSeconds)); - } - - /** * 时间戳转年月 */ public static String timestampToYearMonth(long millSeconds) { @@ -93,26 +77,10 @@ } /** - * 时间戳转时分秒 - */ - public static String timestampToTime(long millSeconds) { - dateFormat = new SimpleDateFormat("HH:mm:ss", Locale.CHINA); - return dateFormat.format(new Date(millSeconds)); - } - - /** * 时间戳转时分 */ public static String minuteToTime(long millSeconds) { dateFormat = new SimpleDateFormat("HH:mm", Locale.CHINA); return dateFormat.format(new Date(millSeconds)); } - - /** - * 时间戳转分秒 - */ - public static String millsToTime(long millSeconds) { - dateFormat = new SimpleDateFormat("mm:ss", Locale.CHINA); - return dateFormat.format(new Date(millSeconds)); - } }