|
@@ -62,7 +62,7 @@ export default defineComponent({
|
|
|
import { ref } from 'vue'
|
|
|
import { useRoute, useRouter } from 'vue-router'
|
|
|
import { bindIMEI } from '@/service/order'
|
|
|
-import { state } from '@/store'
|
|
|
+import { state, getUserInfo } from '@/store'
|
|
|
import Toast from '@/components/toast'
|
|
|
|
|
|
defineProps<{ action: 'bind' | 'view' }>()
|
|
@@ -71,6 +71,7 @@ const router = useRouter()
|
|
|
const imei = ref('')
|
|
|
const loading = ref(false)
|
|
|
const { id } = useRoute().query as any
|
|
|
+const fromPath = history.state.back || '/'
|
|
|
|
|
|
async function applyBind() {
|
|
|
if (!imei.value) return Toast('Please enter IMEI')
|
|
@@ -78,7 +79,10 @@ async function applyBind() {
|
|
|
try {
|
|
|
const { message } = await bindIMEI({ id, imei: imei.value })
|
|
|
Toast(message)
|
|
|
- router.push(`/order/${id}`)
|
|
|
+ getUserInfo()
|
|
|
+ state.currentOrder.id = -1
|
|
|
+ const matched = fromPath.match(/order\/(\d+)/)
|
|
|
+ matched?.[1] === id ? router.back() : router.push(`/order/${id}`)
|
|
|
} catch {}
|
|
|
loading.value = false
|
|
|
}
|