Просмотр исходного кода

平台结算后路由跳转问题

@dongkboy 3 месяцев назад
Родитель
Сommit
6e2085a167
1 измененных файлов с 12 добавлено и 6 удалено
  1. 12 6
      src/views/platform/ticket.vue

+ 12 - 6
src/views/platform/ticket.vue

@@ -160,7 +160,7 @@
       </el-form-item>
       <el-form-item prop="actualReceivedAmount" label="实收金额">
         <el-input-number v-model="countForm.actualReceivedAmount" style="width: 100%;" :min="0" :precision="5"
-          controls-position="right" @change="handleChange"/>
+          controls-position="right" @change="handleChange" />
       </el-form-item>
       <el-form-item prop="settlementPaymentDifference" label="回款差额">
         <el-input v-model="countForm.settlementPaymentDifference"></el-input>
@@ -247,6 +247,8 @@ import { ElMessage, FormInstance } from "element-plus";
 
 let route = useRoute()
 let router = useRouter()
+const previousRoute = ref(router.options.history.state.back)
+console.log(previousRoute.value)
 const CountFormRef = ref<FormInstance>()
 const batchShow = ref(false)//数据导入弹窗
 const selectedList = ref([])//选中的应收单据
@@ -507,7 +509,9 @@ const handelDelImage = (item, index) => {
 
 // 开票并结算
 const handleBack = () => {
-  router.back()
+  if (previousRoute.value == '/platform/platformOrder') {
+    router.back()
+  }
 }
 const handleSettlement = () => {
   if (selectedList.value.length < 1) {
@@ -535,7 +539,7 @@ const handelComfirm = (formEl: FormInstance | undefined) => {
     console.log(countForm.value)
     if (valid) {
       let contactPersonObj = {}
-      if(options.value) {
+      if (options.value) {
         contactPersonObj = options.value.find(v => v.contactPersonPhone === contactPersonPhone.value)
       }
       api.financeApi.platformSettlement({
@@ -556,9 +560,11 @@ const handelComfirm = (formEl: FormInstance | undefined) => {
             type: 'success'
           })
           settlementDialog.value = false
-          setTimeout(() => {
-            router.back()
-          }, 1000)
+          if (previousRoute.value == '/platform/platformOrder') {
+            setTimeout(() => {
+              router.back()
+            }, 1000)
+          }
         } else {
         }
       })