xuzhancheng преди 19 часа
родител
ревизия
f5234a88fb

+ 2 - 1
yudao-ui-admin-vue3/src/api/pressure2/boilertaskorder/index.ts

@@ -561,7 +561,8 @@ export const BoilerTaskOrderApi = {
 
   // 出具pdf
   generateReportPdf: async (params) => {
-    return await request.download({ url: '/pressure2/boiler-task-order/generateReportPdf', params })
+    const timeout = 1000 * 60 * 5 // 5分钟
+    return await request.download({ url: '/pressure2/boiler-task-order/generateReportPdf', params ,timeout })
   },
 
   // 同步报表数据

+ 10 - 0
yudao-ui-admin-vue3/src/api/pressure2/orderreport/index.ts

@@ -52,6 +52,16 @@ export const OrderReportApi = {
     return await request.get({ url: `/pressure2/order-report/generatePipeOrderReport/` + id })
   },
 
+  // 根据任务单ID生成锅炉报告
+  generateBoilerOrderReportByTaskOrder: async (taskOrderId) => {
+    return await request.get({ url: `/pressure2/order-report/generateBoilerOrderReportByTaskOrder/` + taskOrderId })
+  },
+
+  // 根据任务单ID生成管道报告
+  generatePipeOrderReportByTaskOrder: async (taskOrderId) => {
+    return await request.get({ url: `/pressure2/order-report/generatePipeOrderReportByTaskOrder/` + taskOrderId })
+  },
+
   // 更新检验情况报告
   updateNotificationReport: async (id) => {
     return await request.get({ url: `/pressure2/notificationform-report/updateNotificationReport/` + id })

+ 11 - 4
yudao-ui-admin-vue3/src/views/pressure2/boilertaskorder/components/OrderDialog.vue

@@ -55,7 +55,7 @@ const reloadCurrentReport = async () => {
   if (!current.templateId) return
   initData.value = {
     templateId: current.templateId,
-    refId: current.acceptOrderId,
+    refId: current.acceptOrderId || props.orderId,
     refName: '',
     insId: '',
     opType: 1,
@@ -153,14 +153,21 @@ const loadData = async () => {
     return
   }
   for (const report of orderList.value) {
-    if (props.type === 'pipe') await OrderReportApi.generatePipeOrderReport(report.acceptOrderId)
-    else await OrderReportApi.generateBoilerOrderReport(report.acceptOrderId)
+    if (report.acceptOrderId) {
+      // 有受理单ID时按受理单生成
+      if (props.type === 'pipe') await OrderReportApi.generatePipeOrderReport(report.acceptOrderId)
+      else await OrderReportApi.generateBoilerOrderReport(report.acceptOrderId)
+    } else {
+      // 没有受理单ID时按任务单ID生成
+      if (props.type === 'pipe') await OrderReportApi.generatePipeOrderReportByTaskOrder(props.orderId)
+      else await OrderReportApi.generateBoilerOrderReportByTaskOrder(props.orderId)
+    }
   }
   const refreshed = await OrderReportApi.getOrderReportPage({taskOrderId: props.orderId})
   if (refreshed.total > 0) orderList.value = refreshed.list
 
   initData.value.templateId = currentOrder.value.templateId
-  initData.value.refId = currentOrder.value.acceptOrderId
+  initData.value.refId = currentOrder.value.acceptOrderId || props.orderId
   initData.value.opType = 1
   spreadRef.value?.reloadView()