From 5d36d4c48e0f92bbd10ff9eafa0cc519d8458d71 Mon Sep 17 00:00:00 2001
From: liangzhou <594755172@qq.com>
Date: Mon, 17 Mar 2025 19:31:38 +0800
Subject: [PATCH] =?UTF-8?q?1.=20=E5=89=8D=E7=AB=AF=E5=A2=9E=E5=8A=A0?=
=?UTF-8?q?=E4=B8=AD=E6=96=87=E6=96=99=E7=9B=92=E5=8F=B7=E7=9A=84=E5=85=BC?=
=?UTF-8?q?=E5=AE=B9=E6=80=A7=202.=20=E5=89=8D=E7=AB=AF=E5=A2=9E=E5=8A=A0?=
=?UTF-8?q?=E7=9C=8B=E6=9D=BF=E9=9C=80=E6=B1=82=E5=AF=BC=E5=87=BA=E5=8A=9F?=
=?UTF-8?q?=E8=83=BD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
dev_wms_client/src/api/excel.js | 11 +
dev_wms_client/src/layout/clcKanban.vue | 58 +-
dev_wms_client/src/layout/kitting.vue | 3 +-
dev_wms_client/src/layout/scanForImage.vue | 28 +-
.../src/layout/stockUpdateRecord.vue | 720 +++++++++++++-----
5 files changed, 590 insertions(+), 230 deletions(-)
diff --git a/dev_wms_client/src/api/excel.js b/dev_wms_client/src/api/excel.js
index 159ce2a..e8d53f8 100644
--- a/dev_wms_client/src/api/excel.js
+++ b/dev_wms_client/src/api/excel.js
@@ -113,6 +113,17 @@ export const exportWorkSummaryExcel = (data) => {
})
}
+export const exportKanbanExcel = (data) => {
+ return request({
+ url: '/excel/exportKanbanExcel',
+ method: 'post',
+ responseType: 'blob',
+ data: data,
+ timeout: 600000
+ })
+}
+
+// 以下待废弃
export const downloadInRecordExcel = (data) => {
return request({
url: '/excel/downloadInRecordExcel',
diff --git a/dev_wms_client/src/layout/clcKanban.vue b/dev_wms_client/src/layout/clcKanban.vue
index 8a81aec..33646c2 100644
--- a/dev_wms_client/src/layout/clcKanban.vue
+++ b/dev_wms_client/src/layout/clcKanban.vue
@@ -19,12 +19,12 @@
@change="search()">
-
+
-
+
@@ -90,9 +90,12 @@ import { labelPosition, shortcuts } from '@/constant/form'
import { kanbanStatusOptions } from '@/constant/options'
import { loading } from '@/utils/loading.js'
import { dateFormatter } from '@/utils/formatter.js'
+import { exportKanbanExcel } from '@/api/excel.js'
/**
* 常量定义
*/
+const STAND_ID = store.getters.getStandId
+const USER_NAME = store.getters.getUserName
/**
* 变量定义
*/
@@ -104,8 +107,8 @@ let baseTableQuery = reactive({
pageSize: 10,
total: 0,
sortBy: new Map([['goodsId', true]]),
- standId: store.getters.getStandId,
- userName: store.getters.getUserName
+ standId: STAND_ID,
+ userName: USER_NAME
})
let kanbanQuery = reactive({
goodsId: '',
@@ -119,7 +122,7 @@ let recordId = ''
/**
* 系统方法
*/
- onMounted(() => {
+onMounted(() => {
nextTick(() => {
window.addEventListener('resize', resizeHeight)
search()
@@ -197,11 +200,9 @@ const genKanban = () => {
const request = {
planStartDateFrom: dateFormatter(kanbanQuery.planStartDateFrom),
planStartDateTo: dateFormatter(kanbanQuery.planStartDateTo),
- standId: store.getters.getStandId,
- userName: store.getters.getUserName
+ standId: STAND_ID,
+ userName: USER_NAME
}
- console.log(request)
- console.log(kanbanQuery)
loading.open('生成中...')
genClcKanbanRequirement(request).then(res => {
loading.close()
@@ -218,6 +219,41 @@ const genKanban = () => {
ElMessage.error('生成看板需求异常。')
})
}
+// 导出看板
+const exportExcel = () => {
+ const params = {
+ goodsId: kanbanQuery.goodsId,
+ kanbanId: kanbanQuery.kanbanId,
+ kanbanStatus: kanbanQuery.kanbanStatus == -99 ? null : kanbanQuery.kanbanStatus,
+ standId: STAND_ID,
+ userName: USER_NAME
+ }
+ exportKanbanExcel(params).then(res => {
+ const link = document.createElement('a');//创建a标签
+ try {
+ // let blob = new Blob([res.data],{type: 'application/vnd.ms-excel'}); //如果后台返回的不是blob对象类型,先定义成blob对象格式,该type导出为xls格式,
+ let blob = res.data //如果后台返回的直接是blob对象类型,直接获取数据
+ // let _fileName = res.headers['content-disposition'].split(';')[1].split('=')[1]; //拆解获取文件名,如果后端有给返回文件名的话
+ let _fileName = '看板需求' + dateFormatter(new Date) + '.xlsx'
+ link.style.display = 'none'//隐藏
+
+ // 兼容不同浏览器的URL对象
+ const url = window.URL || window.webkitURL || window.moxURL
+ link.href = url.createObjectURL(blob)
+ link.setAttribute('download', _fileName.substring(_fileName.lastIndexOf('_') + 1))
+ document.body.appendChild(link)
+ link.click()
+ document.body.removeChild(link)
+ url.revokeObjectURL(link.href)//移除url对象
+ } catch (e) {
+ console.log(e)
+ ElMessage.error('下载文件失败')
+ }
+ }).catch(err => {
+ console.log(err)
+ ElMessage.error('导出失败')
+ })
+}
\ No newline at end of file