From 77e29e8e84a8a44c924b304fcb06f81dec594b07 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 06 六月 2025 14:57:06 +0800
Subject: [PATCH] 1.库存管理页面表头修改 2.销售出库表单字段添加
---
src/views/procureMent/components/ProductionDialog.vue | 132 ++++++++++++++++++++++++++++++--------------
1 files changed, 90 insertions(+), 42 deletions(-)
diff --git a/src/views/procureMent/components/ProductionDialog.vue b/src/views/procureMent/components/ProductionDialog.vue
index 547129c..3e6d937 100644
--- a/src/views/procureMent/components/ProductionDialog.vue
+++ b/src/views/procureMent/components/ProductionDialog.vue
@@ -19,29 +19,52 @@
<el-form-item label="渚涘簲鍟嗗悕绉�" prop="supplierName">
<el-input v-model="form.supplierName" placeholder="璇疯緭鍏�" />
</el-form-item>
- <el-form-item label="鐓ょ" prop="category">
- <el-input v-model="form.category" placeholder="璇疯緭鍏�" />
+ <el-form-item label="鐓ょ" prop="coal">
+ <el-input v-model="form.coal" placeholder="璇疯緭鍏�" />
</el-form-item>
<el-form-item label="鍗曚綅" prop="unit">
<el-input v-model="form.unit" placeholder="璇疯緭鍏�" />
</el-form-item>
- <el-form-item label="閲囪喘鏁伴噺" prop="purchaseAmount">
- <el-input v-model="form.purchaseAmount" placeholder="璇疯緭鍏�" />
+ <el-form-item label="閲囪喘鏁伴噺" prop="purchaseQuantity">
+ <el-input v-model="form.purchaseQuantity" placeholder="璇疯緭鍏�" />
</el-form-item>
- <el-form-item label="鍗曚环(绋庡墠)" prop="priceBeforeTax">
- <el-input v-model="form.priceBeforeTax" placeholder="璇疯緭鍏�" />
+ <el-form-item label="鍗曚环(涓嶅惈绋�)" prop="priceExcludingTax">
+ <el-input v-model="form.priceExcludingTax" placeholder="璇疯緭鍏�" >
+ <template v-slot:suffix>
+ <i style="font-style:normal;">鍏�</i>
+ </template>
+ </el-input>
</el-form-item>
- <el-form-item label="鎬讳环(绋庡墠)" prop="totalBeforeTax">
- <el-input v-model="form.totalBeforeTax" placeholder="璇疯緭鍏�" />
+ <el-form-item label="鎬讳环(涓嶅惈绋�)" prop="totalPriceExcludingTax">
+ <el-input v-model="form.totalPriceExcludingTax" placeholder="璇疯緭鍏�" >
+ <template v-slot:suffix>
+ <i style="font-style:normal;">鍏�</i>
+ </template>
+ </el-input>
</el-form-item>
- <el-form-item label="鐑��" prop="calorificValue">
- <el-input v-model="form.calorificValue" placeholder="璇疯緭鍏�" />
+ <el-form-item label="鍗曚环(鍚◣)" prop="priceIncludingTax">
+ <el-input v-model="form.priceIncludingTax" placeholder="璇疯緭鍏�" >
+ <template v-slot:suffix>
+ <i style="font-style:normal;">鍏�</i>
+ </template>
+ </el-input>
</el-form-item>
- <el-form-item label="鐧昏浜�" prop="registrant">
- <el-input v-model="form.registrant" placeholder="璇疯緭鍏�" />
+ <el-form-item label="鎬讳环(鍚◣)" prop="totalPriceIncludingTax">
+ <el-input v-model="form.totalPriceIncludingTax" placeholder="璇疯緭鍏�" >
+ <template v-slot:suffix>
+ <i style="font-style:normal;">鍏�</i>
+ </template>
+ </el-input>
+ </el-form-item>
+ <el-form-item label="绋庣巼" prop="taxRate">
+ <el-input v-model="form.taxRate" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="鐧昏浜�" prop="registrantId">
+ <el-input v-model="form.registrantId" disabled placeholder="璇疯緭鍏�" />
</el-form-item>
<el-form-item label="鐧昏鏃ユ湡" prop="registrationDate">
<el-date-picker
+ disabled
v-model="form.registrationDate"
type="date"
placeholder="YYYY-MM-DD"
@@ -52,20 +75,18 @@
</el-form>
<template #footer>
<div class="dialog-footer">
- <el-button type="primary" @click="handleSubmit">淇濆瓨</el-button>
<!-- 閲嶇疆鍜屽彇娑� -->
<el-button
- type="primary"
@click="handleClose"
v-if="title.includes('鏂板')"
>鍙栨秷</el-button
>
<el-button
- type="primary"
@click="handleReset"
v-if="title.includes('缂栬緫')"
>閲嶇疆</el-button
>
+ <el-button type="primary" @click="handleSubmit">纭</el-button>
</div>
</template>
</el-dialog>
@@ -73,8 +94,10 @@
</template>
<script setup name="ProductionDialog">
-import { ref, defineProps, watch } from "vue";
+import { ref, defineProps, watch, onMounted, nextTick } from "vue";
import { ElMessage } from "element-plus";
+import useUserStore from '@/store/modules/user'
+import {addOrEditPR} from "@/api/procureMent";
const props = defineProps({
title: {
type: String,
@@ -90,19 +113,31 @@
required: true,
type: Object,
});
+const copyForm = defineModel("copyForm", {
+ required: true,
+ type: Object,
+});
+const userStore = useUserStore()
+const userInfo = ref({});
+onMounted(async () => {
+ let res = await userStore.getInfo()
+ userInfo.value = res;
+})
const rules = {
supplierName: [
{ required: true, message: "璇疯緭鍏ヤ緵搴斿晢鍚嶇О", trigger: "blur" },
],
- category: [{ required: true, message: "璇疯緭鍏ョ叅绉�", trigger: "blur" }],
+ coal: [{ required: true, message: "璇疯緭鍏ョ叅绉�", trigger: "blur" }],
unit: [{ required: true, message: "璇疯緭鍏ュ崟浣�", trigger: "blur" }],
- purchaseAmount: [
+ purchaseQuantity: [
{ required: true, message: "璇疯緭鍏ラ噰璐暟閲�", trigger: "blur" },
],
- priceBeforeTax: [{ required: true, message: "璇疯緭鍏ュ崟浠�", trigger: "blur" }],
- totalBeforeTax: [{ required: true, message: "璇疯緭鍏ユ�讳环", trigger: "blur" }],
- calorificValue: [{ required: true, message: "璇疯緭鍏ョ儹鍊�", trigger: "blur" }],
- registrant: [{ required: true, message: "璇疯緭鍏ョ櫥璁颁汉", trigger: "blur" }],
+ priceExcludingTax: [{ required: true, message: "璇疯緭鍏ュ崟浠�", trigger: "blur" }],
+ totalPriceExcludingTax: [{ required: true, message: "璇疯緭鍏ユ�讳环", trigger: "blur" }],
+ priceIncludingTax: [{ required: true, message: "璇疯緭鍏ュ惈绋庡崟浠�", trigger: "blur" }],
+ totalPriceIncludingTax: [{ required: true, message: "璇疯緭鍏ュ惈绋庢�讳环", trigger: "blur" }],
+ taxRate: [{ required: true, message: "璇疯緭鍏ョ◣鐜�", trigger: "blur" }],
+ registrantId: [{ required: true, message: "璇疯緭鍏ョ櫥璁颁汉", trigger: "blur" }],
registrationDate: [
{ required: true, message: "璇烽�夋嫨鐧昏鏃ユ湡", trigger: "change" },
],
@@ -110,34 +145,47 @@
// 鍏抽棴寮圭獥
const handleClose = () => {
dialogFormVisible.value = false;
+};
+const handleReset = async () => {
+ // 閲嶇疆琛ㄥ崟鏁版嵁
+ form.value = JSON.parse(JSON.stringify(copyForm.value));
+ // 绛夊緟DOM鏇存柊瀹屾垚鍚庢竻闄よ〃鍗曢獙璇佺姸鎬�
+ await nextTick();
+ if (formRef.value) {
+ formRef.value.clearValidate();
+ }
console.log(form.value);
};
-const handleReset = () => {
- if (!formRef.value) return;
- formRef.value.resetFields();
- ElMessage.success("琛ㄥ崟宸查噸缃�");
-};
-// 鎸佺画鐩戝惉form.value鐨勫彉鍖�
-watch(
- () => form.value,
- (val) => {
- console.log(val);
- }
-);
const formRef = ref(null);
// 鎻愪氦琛ㄥ崟
const handleSubmit = async () => {
if (!formRef.value) return;
- await formRef.value.validate((valid) => {
+ await formRef.value.validate(async (valid) => {
if (valid) {
- try {
- emit("success", { ...form.value });
- handleClose();
- ElMessage.success("淇濆瓨鎴愬姛");
- } catch (error) {
- console.error("淇濆瓨澶辫触:", error);
- ElMessage.error("淇濆瓨澶辫触");
+ console.log("琛ㄥ崟楠岃瘉閫氳繃", form.value);
+ const obj = ref({});
+ if (props.title.includes('鏂板')) {
+ let result = await addOrEditPR({
+ ...form.value,
+ })
+ obj.value = {
+ title: "鏂板",
+ ...form.value,
+ result
+ };
+ } else {
+ delete form.value.updateTime
+ delete form.value.createTime
+ let result = await addOrEditPR({
+ ...form.value,
+ })
+ obj.value = {
+ title: "缂栬緫",
+ ...form.value,
+ result
+ };
}
+ emit("submit", obj.value);
}
});
};
--
Gitblit v1.9.3