|
|
@@ -86,108 +86,40 @@ class ExceptionJobFragment : BaseFragment<FragmentExceptionJobBinding>() {
|
|
|
})
|
|
|
}
|
|
|
binding.handleException.setDebouncedClickListener {
|
|
|
- viewModel.checkJobNeedLockOrUnlock().observe(this) {
|
|
|
- when (it) {
|
|
|
- NextJobPrompt.NO_NEW_JOB -> {
|
|
|
- TipDialog.showInfo(
|
|
|
- getString(R.string.confirm_handle_exception),
|
|
|
- onConfirmClick = {
|
|
|
- viewModel.handleException().observe(this) {
|
|
|
- if (it.first) {
|
|
|
- TipDialog.showSuccess(
|
|
|
- getString(R.string.handle_exception_success),
|
|
|
- onConfirmClick = {
|
|
|
- navController.popBackStack()
|
|
|
- },
|
|
|
- onCancelClick = {
|
|
|
- navController.popBackStack()
|
|
|
- })
|
|
|
- } else {
|
|
|
- TipDialog.showError(it.second)
|
|
|
- }
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- NextJobPrompt.CREATE_LOCK_JOB -> {
|
|
|
- TipDialog.showInfo(
|
|
|
- getString(R.string.confirm_handle_exception),
|
|
|
+ if (viewModel.jobApplicationUseMasterKey()) {
|
|
|
+ handleExceptionCheck()
|
|
|
+ } else {
|
|
|
+ viewModel.checkJobHasCoLockAndCrossJob().observe(this) {
|
|
|
+ if (it.first) {
|
|
|
+ TipDialog.show(
|
|
|
+ title = getString(R.string.warn),
|
|
|
+ msg = getString(R.string.handle_exception_will_release_all_colock),
|
|
|
+ dialogType = TipDialog.DialogType.ERROR,
|
|
|
onConfirmClick = {
|
|
|
- viewModel.handleException().observe(this) {
|
|
|
- if (it.first) {
|
|
|
- TipDialog.showInfo(
|
|
|
- getString(R.string.confirm_create_lock_job),
|
|
|
- onConfirmClick = {
|
|
|
- viewModel.createLockJob().observe(this) {
|
|
|
- if (it) {
|
|
|
- TipDialog.showSuccess(
|
|
|
- getString(R.string.handle_exception_success),
|
|
|
- onConfirmClick = {
|
|
|
- navController.popBackStack()
|
|
|
- },
|
|
|
- onCancelClick = {
|
|
|
- navController.popBackStack()
|
|
|
- })
|
|
|
- } else {
|
|
|
- TipDialog.showError(getString(R.string.create_job_failed))
|
|
|
- }
|
|
|
- }
|
|
|
- }, onCancelClick = {
|
|
|
- TipDialog.showSuccess(
|
|
|
- getString(R.string.handle_exception_success),
|
|
|
- onConfirmClick = {
|
|
|
- navController.popBackStack()
|
|
|
- },
|
|
|
- onCancelClick = {
|
|
|
- navController.popBackStack()
|
|
|
- })
|
|
|
- })
|
|
|
- } else {
|
|
|
- TipDialog.showError(it.second)
|
|
|
- }
|
|
|
+ if (it.second) {
|
|
|
+ TipDialog.show(
|
|
|
+ title = getString(R.string.warn),
|
|
|
+ msg = getString(R.string.current_job_has_cross_job),
|
|
|
+ dialogType = TipDialog.DialogType.ERROR,
|
|
|
+ onConfirmClick = {
|
|
|
+ handleExceptionCheck()
|
|
|
+ })
|
|
|
}
|
|
|
})
|
|
|
+ } else {
|
|
|
+ if (it.second) {
|
|
|
+ TipDialog.show(
|
|
|
+ title = getString(R.string.warn),
|
|
|
+ msg = getString(R.string.current_job_has_cross_job),
|
|
|
+ dialogType = TipDialog.DialogType.ERROR,
|
|
|
+ onConfirmClick = {
|
|
|
+ handleExceptionCheck()
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ handleExceptionCheck()
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- NextJobPrompt.CREATE_UNLOCK_JOB -> {
|
|
|
- TipDialog.showInfo(
|
|
|
- getString(R.string.confirm_handle_exception),
|
|
|
- onConfirmClick = {
|
|
|
- viewModel.handleException().observe(this) {
|
|
|
- if (it.first) {
|
|
|
- TipDialog.showInfo(
|
|
|
- getString(R.string.confirm_create_unlock_job),
|
|
|
- onConfirmClick = {
|
|
|
- viewModel.createUnlockJob().observe(this) {
|
|
|
- if (it) {
|
|
|
- TipDialog.showSuccess(
|
|
|
- getString(R.string.handle_exception_success),
|
|
|
- onConfirmClick = {
|
|
|
- navController.popBackStack()
|
|
|
- },
|
|
|
- onCancelClick = {
|
|
|
- navController.popBackStack()
|
|
|
- })
|
|
|
- } else {
|
|
|
- TipDialog.showError(getString(R.string.create_job_failed))
|
|
|
- }
|
|
|
- }
|
|
|
- }, onCancelClick = {
|
|
|
- TipDialog.showSuccess(
|
|
|
- getString(R.string.handle_exception_success),
|
|
|
- onConfirmClick = {
|
|
|
- navController.popBackStack()
|
|
|
- },
|
|
|
- onCancelClick = {
|
|
|
- navController.popBackStack()
|
|
|
- })
|
|
|
- })
|
|
|
- } else {
|
|
|
- TipDialog.showError(it.second)
|
|
|
- }
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -227,6 +159,113 @@ class ExceptionJobFragment : BaseFragment<FragmentExceptionJobBinding>() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private fun handleExceptionCheck() {
|
|
|
+ viewModel.checkJobNeedLockOrUnlock().observe(this) {
|
|
|
+ when (it) {
|
|
|
+ NextJobPrompt.NO_NEW_JOB -> {
|
|
|
+ TipDialog.showInfo(
|
|
|
+ getString(R.string.confirm_handle_exception),
|
|
|
+ onConfirmClick = {
|
|
|
+ viewModel.handleException().observe(this) {
|
|
|
+ if (it.first) {
|
|
|
+ TipDialog.showSuccess(
|
|
|
+ getString(R.string.handle_exception_success),
|
|
|
+ onConfirmClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ },
|
|
|
+ onCancelClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ TipDialog.showError(it.second)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ NextJobPrompt.CREATE_LOCK_JOB -> {
|
|
|
+ TipDialog.showInfo(
|
|
|
+ getString(R.string.confirm_handle_exception),
|
|
|
+ onConfirmClick = {
|
|
|
+ viewModel.handleException().observe(this) {
|
|
|
+ if (it.first) {
|
|
|
+ TipDialog.showInfo(
|
|
|
+ getString(R.string.confirm_create_lock_job),
|
|
|
+ onConfirmClick = {
|
|
|
+ viewModel.createLockJob().observe(this) {
|
|
|
+ if (it) {
|
|
|
+ TipDialog.showSuccess(
|
|
|
+ getString(R.string.handle_exception_success),
|
|
|
+ onConfirmClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ },
|
|
|
+ onCancelClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ TipDialog.showError(getString(R.string.create_job_failed))
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }, onCancelClick = {
|
|
|
+ TipDialog.showSuccess(
|
|
|
+ getString(R.string.handle_exception_success),
|
|
|
+ onConfirmClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ },
|
|
|
+ onCancelClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ })
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ TipDialog.showError(it.second)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ NextJobPrompt.CREATE_UNLOCK_JOB -> {
|
|
|
+ TipDialog.showInfo(
|
|
|
+ getString(R.string.confirm_handle_exception),
|
|
|
+ onConfirmClick = {
|
|
|
+ viewModel.handleException().observe(this) {
|
|
|
+ if (it.first) {
|
|
|
+ TipDialog.showInfo(
|
|
|
+ getString(R.string.confirm_create_unlock_job),
|
|
|
+ onConfirmClick = {
|
|
|
+ viewModel.createUnlockJob().observe(this) {
|
|
|
+ if (it) {
|
|
|
+ TipDialog.showSuccess(
|
|
|
+ getString(R.string.handle_exception_success),
|
|
|
+ onConfirmClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ },
|
|
|
+ onCancelClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ TipDialog.showError(getString(R.string.create_job_failed))
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }, onCancelClick = {
|
|
|
+ TipDialog.showSuccess(
|
|
|
+ getString(R.string.handle_exception_success),
|
|
|
+ onConfirmClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ },
|
|
|
+ onCancelClick = {
|
|
|
+ navController.popBackStack()
|
|
|
+ })
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ TipDialog.showError(it.second)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 检查界面
|
|
|
*/
|