From 626ddc27a5e489fc457db736108259d9206d3e8c Mon Sep 17 00:00:00 2001
From: hayu <1604366271@qq.com>
Date: Sat, 1 Nov 2025 14:36:28 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9D=90=E6=96=99=E7=AB=99=E5=87=BA=E5=BA=93--?=
=?UTF-8?q?=E4=BA=8C=E7=BB=B4=E7=A0=81=E4=B8=8B=E8=BD=BD=E4=B8=8E=E7=94=9F?=
=?UTF-8?q?=E6=88=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../outBound/component/addToolsApply.vue | 59 +++++++++++++++----
1 file changed, 49 insertions(+), 10 deletions(-)
diff --git a/src/views/materialsStation/toolsLease/outBound/component/addToolsApply.vue b/src/views/materialsStation/toolsLease/outBound/component/addToolsApply.vue
index 90b6d921..33899605 100644
--- a/src/views/materialsStation/toolsLease/outBound/component/addToolsApply.vue
+++ b/src/views/materialsStation/toolsLease/outBound/component/addToolsApply.vue
@@ -172,6 +172,9 @@
暂 存
+
+ 二维码下载
+
@@ -252,6 +255,7 @@ import {
import Treeselect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import OutCodeDlg from './OutCodeDlg.vue'
+import {downloadQrCodesApi} from "@/api/code/code";
export default {
dicts: ['purchase_task_status'],
@@ -454,6 +458,7 @@ export default {
}
},
methods: {
+ downloadQrCodesApi,
// 单号查询
async handleQuery() {
if (!this.code || String(this.code).trim() === '') {
@@ -463,11 +468,8 @@ export default {
const loading = this.$loading({ text: '加载中...' })
try {
- // 调后台接口按单号查询,注意替换 api 名称为你真实的接口函数
- // 假设 API 返回结构类似:{ code: 200, data: { leaseApplyInfo: {...}, leaseApplyDetailsList: [...] } }
- // 示例用 getLeaseDataByCode,若你的接口名不同请替换
const params = { code: this.code }
- const res = await getLeaseDataByCode(params) // <-- 若你的 API 名称不是这个,请替换
+ const res = await getLeaseDataByCode(params)
// 处理接口返回
if (!res || (!res.data && res.code !== 200)) {
this.$message.error(res.msg || '未查询到该单号信息')
@@ -483,12 +485,6 @@ export default {
return
}
- // // 若用户已在下拉选中一个工程,需要校验是否一致(若不一致则提示该领料单号不属于负责的工程并终止)
- // if (this.maForm.proId && String(this.maForm.proId) !== String(leaseApplyInfo.proId)) {
- // this.$message.warning('该领料单号不属于当前负责的工程')
- // return
- // }
-
const isProIdValid = this.projectList.some(item => String(item.proId) == String(leaseApplyInfo.proId))
if (!isProIdValid) {
@@ -1034,6 +1030,49 @@ export default {
})
.catch(() => {})
},
+ // 二维码下载
+ async downloadQrCodes() {
+ try {
+ // 1. 获取所有“编码管理”的数据行
+ const codeManagedRows = this.equipmentList.filter(row => row.manageType == '0')
+
+ if (codeManagedRows.length === 0) {
+ this.$message.warning('当前列表中没有编码管理的数据')
+ return
+ }
+
+ // 2. 汇总所有的 maCodeList
+ const maCodeList = []
+ codeManagedRows.forEach(row => {
+ if (Array.isArray(row.maCodeList) && row.maCodeList.length > 0) {
+ row.maCodeList.forEach(codeItem => {
+ maCodeList.push({
+ ...codeItem,
+ typeName: row.typeName,
+ model: row.model,
+ })
+ })
+ }
+ })
+
+ if (maCodeList.length === 0) {
+ this.$message.warning('没有可下载的二维码数据(未选择编码或编码为空)')
+ return
+ }
+ console.log("编码列表",maCodeList)
+ const payload = {
+ maCodeList: maCodeList,
+ }
+ this.downloadZip(
+ '/material/material_lease_apply_info/downloadQrCode',
+ JSON.stringify(payload),
+ `QrCode_${new Date().toISOString().slice(0, 10)}.zip`
+ )
+ } catch (err) {
+ console.error('downloadQrCodes error:', err)
+ this.$message.error('二维码下载失败,请稍后重试')
+ }
+ },
// 打开出库编码弹窗
handleOutCode(row) {
this.rowData = row