Browse Source

查看电签报表接口调用

duy 7 months ago
parent
commit
d5175fb283

+ 28 - 0
src/views/debit-pay/admin/certificate.vue

@@ -29,6 +29,7 @@
             >
                 <template #action="{ row }">
                     <el-link
+                        v-loading="rowViewLoading"
                         type="primary"
                         :disabled="!row.rawUrl"
                         @click="rowViewRawPdf(row)"
@@ -108,6 +109,7 @@ import HcAddModal from './components/certificate/addModal.vue'
 import HcEditModal from './components/certificate/editModal.vue'
 import HcTaskModal from '~src/components/task-modal/task-modal.vue'
 import mainApi from '~api/debit-pay/admin/certificate'
+import taskApi from '~api/tasks/hc-data'
 import { toPdfPage } from '~uti/btn-auth'
 import { useRoute } from 'vue-router'
 
@@ -287,8 +289,34 @@ const rowViewPdf = (row) => {
     }
 }
 const rowViewRawPdf = (row) => {
+const { status } = row
+if (status === 1) {
+    viewPdf(row)
+} else {
     toPdfPage(row?.rawUrl)
 }
+   
+}
+
+//查看报表
+const rowViewLoading = ref(false)
+const viewPdf = async (row) => {
+    const { id, taskId } = row
+    rowViewLoading.value = true
+    const { code, msg, data } = await taskApi.taskMeterPdfInfo({
+        reportId: id,
+        type: 0,
+        taskType: 10,
+        taskId: taskId,
+    })
+    rowViewLoading.value = false
+    if (code === 200 && !isNullES(data)) {
+        window.$message.success('操作成功')
+        toPdfPage(data)
+    } else {
+        window.$message.error(msg ?? '操作失败')
+    }
+}
 
 //查看电签流程
 const isTaskModal = ref(false)

+ 28 - 3
src/views/debit-pay/material/book.vue

@@ -14,7 +14,7 @@
             is-check :check-style="{ width: 29 }" @selection-change="tableSelectionChange"
         >
             <template #action="{ row }">
-                <el-link type="primary" :disabled="!row.rawUrl" @click="rowViewRawPdf(row)">查看电签报表</el-link>
+                <el-link v-loading="rowViewLoading" type="primary" :disabled="!row.rawUrl" @click="rowViewRawPdf(row)">查看电签报表</el-link>
                 <el-link type="primary" @click="viewPdf(row)">查看报表</el-link>
                 <el-link type="primary" :disabled="row.approveStatus === 0" @click="eVisaRowClick(row)">查看电签流程</el-link>
                 <el-link type="success" @click="editRow(row)">修改</el-link>
@@ -62,6 +62,7 @@ import periodApi from '~api/debit-pay/material/periods.js'
 import { useAppStore } from '~src/store'
 import { formValidate, getArrValue, isNullES } from 'js-fast-way'
 import { toPdfPage } from '~uti/btn-auth'
+import taskApi from '~api/tasks/hc-data'
 const useAppState = useAppStore()
 const contractId = ref(useAppState.getContractId)
 const projectId = ref(useAppState.getProjectId)
@@ -296,9 +297,33 @@ const formModalClose = () => {
 }
 
 const rowViewRawPdf = (row)=>{
-    toPdfPage(row?.rawUrl)
+    // toPdfPage(row?.rawUrl)
+    const { status } = row
+        if (status === 1) {
+            handleViewPdf(row)
+        } else {
+            toPdfPage(row?.rawUrl)
+        }
+}
+//查看报表
+const rowViewLoading = ref(false)
+const handleViewPdf = async (row) => {
+    const { id, taskId } = row
+    rowViewLoading.value = true
+    const { code, msg, data } = await taskApi.taskMeterPdfInfo({
+        reportId: id,
+        type: 1,
+        taskType: 10,
+        taskId: taskId,
+    })
+    rowViewLoading.value = false
+    if (code === 200 && !isNullES(data)) {
+        window.$message.success('操作成功')
+        toPdfPage(data)
+    } else {
+        window.$message.error(msg ?? '操作失败')
+    }
 }
-
 //查看电签流程
 const isTaskModal = ref(false)
 const taskDataId = ref('')

+ 28 - 3
src/views/debit-pay/start-work/book.vue

@@ -14,7 +14,7 @@
             is-check :check-style="{ width: 29 }" @selection-change="tableSelectionChange"
         >
             <template #action="{ row }">
-                <el-link type="primary" :disabled="!row.rawUrl" @click="rowViewRawPdf(row)">查看电签报表</el-link>
+                <el-link v-loading="rowViewLoading" type="primary" :disabled="!row.rawUrl" @click="rowViewRawPdf(row)">查看电签报表</el-link>
                 <el-link type="primary" @click="viewPdf(row)">查看报表</el-link>
                 <el-link type="primary" :disabled="row.approveStatus === 0" @click="eVisaRowClick(row)">查看电签流程</el-link>
                 <el-link type="success" @click="editRow(row)">修改</el-link>
@@ -59,6 +59,7 @@
 import { onActivated, ref } from 'vue'
 import bookApi from '~api/debit-pay/material/book.js'
 import periodApi from '~api/debit-pay/material/periods.js'
+import taskApi from '~api/tasks/hc-data'
 import { useAppStore } from '~src/store'
 import { formValidate, getArrValue, isNullES } from 'js-fast-way'
 const useAppState = useAppStore()
@@ -293,9 +294,33 @@ const formModalClose = () => {
 }
 
 const rowViewRawPdf = (row)=>{
-    toPdfPage(row?.rawUrl)
+    // toPdfPage(row?.rawUrl)
+    const { status } = row
+        if (status === 1) {
+            handleViewPdf(row)
+        } else {
+            toPdfPage(row?.rawUrl)
+        }
+}
+//查看报表
+const rowViewLoading = ref(false)
+const handleViewPdf = async (row) => {
+    const { id, taskId } = row
+    rowViewLoading.value = true
+    const { code, msg, data } = await taskApi.taskMeterPdfInfo({
+        reportId: id,
+        type: 2,
+        taskType: 10,
+        taskId: taskId,
+    })
+    rowViewLoading.value = false
+    if (code === 200 && !isNullES(data)) {
+        window.$message.success('操作成功')
+        toPdfPage(data)
+    } else {
+        window.$message.error(msg ?? '操作失败')
+    }
 }
-
 //查看电签流程
 const isTaskModal = ref(false)
 const taskDataId = ref('')