From 4fd0a0ccf35a239fe8c8f9385db2e8c4a0ad2f04 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期六, 25 四月 2026 15:24:40 +0800
Subject: [PATCH] fix: 添加二维码功能,可以直接扫码下载。
---
src/views/inventoryManagement/stockManagement/New.vue | 93 +++++++++++++++++++++++++++++++++++++++-------
1 files changed, 79 insertions(+), 14 deletions(-)
diff --git a/src/views/inventoryManagement/stockManagement/New.vue b/src/views/inventoryManagement/stockManagement/New.vue
index 8243748..eebe313 100644
--- a/src/views/inventoryManagement/stockManagement/New.vue
+++ b/src/views/inventoryManagement/stockManagement/New.vue
@@ -38,10 +38,42 @@
</el-form-item>
<el-form-item
- label="鏁伴噺"
+ label="搴撳瓨绫诲瀷"
+ prop="type"
+ :rules="[
+ {
+ required: true,
+ message: '璇烽�夋嫨搴撳瓨绫诲瀷',
+ trigger: 'change',
+ }
+ ]"
+ >
+ <el-select v-model="formState.type" placeholder="璇烽�夋嫨搴撳瓨绫诲瀷">
+ <el-option label="鍚堟牸搴撳瓨" value="qualified" />
+ <el-option label="涓嶅悎鏍煎簱瀛�" value="unqualified" />
+ </el-select>
+ </el-form-item>
+
+ <el-form-item
+ label="搴撳瓨鏁伴噺"
prop="qualitity"
>
- <el-input-number v-model="formState.qualitity" :step="1" :min="0" style="width: 100%" />
+ <el-input-number v-model="formState.qualitity" :step="1" :min="1" style="width: 100%" />
+ </el-form-item>
+
+ <el-form-item
+ label="鎵瑰彿"
+ prop="batchNo"
+ >
+ <el-input v-model="formState.batchNo" placeholder="璇疯緭鍏ユ壒鍙�" />
+ </el-form-item>
+
+ <el-form-item
+ v-if="formState.type === 'qualified'"
+ label="搴撳瓨棰勮鏁伴噺"
+ prop="warnNum"
+ >
+ <el-input-number v-model="formState.warnNum" :step="1" :min="0" :max="formState.qualitity" style="width: 100%" />
</el-form-item>
<el-form-item label="澶囨敞" prop="remark">
@@ -53,8 +85,9 @@
<ProductSelectDialog
v-model="showProductSelectDialog"
@confirm="handleProductSelect"
+ :top-product-parent-id="props.topProductParentId"
single
- />
+ />
<template #footer>
<div class="dialog-footer">
<el-button type="primary" @click="handleSubmit">纭</el-button>
@@ -66,15 +99,21 @@
</template>
<script setup>
-import {ref, computed, getCurrentInstance} from "vue";
+import {ref, computed, watch, getCurrentInstance} from "vue";
import ProductSelectDialog from "@/views/basicData/product/ProductSelectDialog.vue";
-import {createStockInventory} from "@/api/inventoryManagement/stockInventory.js";
+import {addStockInRecordOnly} from "@/api/inventoryManagement/stockInventory.js";
+import {createStockUnInventory} from "@/api/inventoryManagement/stockUninventory.js";
const props = defineProps({
visible: {
type: Boolean,
required: true,
},
+ topProductParentId: {
+ type: Number,
+ default: undefined,
+ required: false,
+ }
});
const emit = defineEmits(['update:visible', 'completed']);
@@ -86,7 +125,10 @@
productName: "",
productModelName: "",
unit: "",
+ type: undefined,
qualitity: 0,
+ batchNo: null,
+ warnNum: 0,
remark: '',
});
@@ -101,6 +143,13 @@
const showProductSelectDialog = ref(false);
+// 鎵瑰彿涓虹┖鏃惰浆涓� null
+watch(() => formState.value.batchNo, (val) => {
+ if (val === '') {
+ formState.value.batchNo = null;
+ }
+});
+
let { proxy } = getCurrentInstance()
const closeModal = () => {
@@ -110,7 +159,12 @@
productModelId: undefined,
productName: "",
productModelName: "",
- description: '',
+ unit: "",
+ type: undefined,
+ qualitity: 0,
+ batchNo: null,
+ warnNum: 0,
+ remark: '',
};
isShow.value = false;
};
@@ -119,7 +173,6 @@
const handleProductSelect = async (products) => {
if (products && products.length > 0) {
const product = products[0];
- console.log(product)
formState.value.productId = product.productId;
formState.value.productName = product.productName;
formState.value.productModelName = product.model;
@@ -143,13 +196,25 @@
proxy.$modal.msgError("璇烽�夋嫨瑙勬牸");
return;
}
- createStockInventory(formState.value).then(res => {
- // 鍏抽棴妯℃�佹
- isShow.value = false;
- // 鍛婄煡鐖剁粍浠跺凡瀹屾垚
- emit('completed');
- proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
- })
+ if (formState.value.type === 'qualified') {
+ addStockInRecordOnly(formState.value).then(res => {
+ // 鍏抽棴妯℃�佹
+ isShow.value = false;
+ // 鍛婄煡鐖剁粍浠跺凡瀹屾垚
+ emit('completed');
+ proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
+ })
+ } else {
+ formState.value.warnNum = 0;
+ createStockUnInventory(formState.value).then(res => {
+ // 鍏抽棴妯℃�佹
+ isShow.value = false;
+ // 鍛婄煡鐖剁粍浠跺凡瀹屾垚
+ emit('completed');
+ proxy.$modal.msgSuccess("鎻愪氦鎴愬姛");
+ })
+ }
+
}
})
};
--
Gitblit v1.9.3