From a85adf40d5e30d3b9e2a848cf8fd073998ff5c8b Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期三, 29 五月 2024 15:26:07 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override

---
 north-glass-erp/northglass-erp/src/views/pp/report/WorkInProgress.vue |   69 ++++++++++++++++++++++++++++++++--
 1 files changed, 64 insertions(+), 5 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/views/pp/report/WorkInProgress.vue b/north-glass-erp/northglass-erp/src/views/pp/report/WorkInProgress.vue
index 5e0fda1..a5140e8 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/report/WorkInProgress.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/report/WorkInProgress.vue
@@ -269,9 +269,12 @@
     // buttons: [{
     //
     // }],
-    import: false,
-    export: true,
-    print: true,
+    slots: {
+      tools: 'toolbar_buttons'
+    },
+    // import: false,
+    // export: true,
+    // print: true,
     zoom: true,
     custom: true
   },
@@ -294,7 +297,57 @@
 
 })
 
+function exportExcel(url, fileName,date) {
+  let processes = value.value
+  let inputVal = form.orderId
+  if (inputVal == '') {
+    inputVal = null
+  }
+  let inputProject = form.project
+  if (inputProject == '') {
+    inputProject = null
+  }
+  if(date===null){
+    ElMessage.warning("璇峰厛閫夋嫨鏃ユ湡")
+    return
+  }
 
+  if(processes===null){
+    ElMessage.warning("璇峰厛閫夋嫨宸ュ簭")
+    return
+  }
+
+  const date1 = new Date(date[0]);
+  const date2 = new Date(date[1]);
+  const timeDiff = Math.abs(date2.getTime() - date1.getTime());
+  const daysDiff = timeDiff / (1000 * 3600 * 24);
+  if(Math.floor(daysDiff)>180){
+    ElMessage.warning("瀵煎嚭鐨勭瓫閫夋椂闂翠笉鑳借秴杩�180澶�")
+    return
+  }
+  let dataMp = ref({
+    date: date,
+    processes: processes,
+    orderId: inputVal,
+    project: inputProject
+  })
+  request.post(url,dataMp.value,{responseType :'blob'}).then(res => {
+    const blob = new Blob([res])
+    if ('download' in document.createElement('a')) { // 闈濱E涓嬭浇
+      const elink = document.createElement('a')
+      elink.download = `${fileName}.xlsx`
+      elink.style.display = 'none'
+      elink.href = URL.createObjectURL(blob)
+      document.body.appendChild(elink)
+      elink.click()
+      URL.revokeObjectURL(elink.href) // 閲婃斁URL 瀵硅薄
+      document.body.removeChild(elink)
+    } else { // IE10+涓嬭浇
+      navigator.msSaveBlob(blob, fileName)
+    }
+
+  })
+}
 </script>
 
 <template>
@@ -358,11 +411,17 @@
       <template #num1_filter="{ column, $panel }">
         <div>
           <div v-for="(option, index) in column.filters" :key="index">
-            <input v-model="option.data" type="type" @input="changeFilterEvent($event, option, $panel)"/>
+            <input v-model="option.data" type="text" @input="changeFilterEvent($event, option, $panel)"/>
           </div>
         </div>
       </template>
-
+      <template #toolbar_buttons>
+        <vxe-button style="margin-right: 0.5rem"
+                    @click="exportExcel('/report/exportWorkInProgress',
+                                          '鍦ㄥ埗鍝佹姤琛�',
+                                          form.date1)">
+          瀵煎嚭</vxe-button>
+      </template>
 
     </vxe-grid>
   </div>

--
Gitblit v1.8.0