From 6a415a072a98d64d2f95d16eef73b6d7270b8d56 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期六, 30 五月 2026 15:14:25 +0800
Subject: [PATCH] 新疆马铃薯 1.首页问题:挪新系统ui,需要确认一下页面数据完整。 2.协同办公:挪新系统 3.营销管理:客户往来取消回款金额字段,改为点击左侧客户时显示与该客户的所有订单信息,以及发货情况。销售可以选好对应的采购订单方便质量追溯。 4.采购管理:供应商往来同上逻辑,显示是否收货,也加上采购退货和采购报表功能。 5.采购加上设备备件选项,设备备件入库到备件库存。设备,仓储不足时做采购提醒。 6.仓储物流:得区分成品库和原料库(不存在半成品,成品只有一个产品,很好确认),原材料需要有批号,采集原料库需要做好仓库字段,让他们可以区分哪个仓库,然后把数采设备信息做一个实时的显示。总库存显示好当前存在的批次信息。 7.质量:只有不通过才需要填写对应的数据信息。在外侧做好选择通过不通过。过程,出厂检验无法对应到生产订单,那就对应到销售订单。 8.决策分析:基础数据分析和进销存分析,质量数据分析需要重新设计

---
 src/views/equipmentManagement/spareParts/index.vue |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 54 insertions(+), 2 deletions(-)

diff --git a/src/views/equipmentManagement/spareParts/index.vue b/src/views/equipmentManagement/spareParts/index.vue
index 45e0157..c297b63 100644
--- a/src/views/equipmentManagement/spareParts/index.vue
+++ b/src/views/equipmentManagement/spareParts/index.vue
@@ -75,6 +75,32 @@
             <el-form-item label="鎻忚堪" prop="description">
               <el-input v-model="form.description"></el-input>
             </el-form-item>
+            <el-form-item label="搴撳瓨棰勮鏁伴噺" prop="warnNum">
+              <el-input-number
+                v-model="form.warnNum"
+                placeholder="璇疯緭鍏ュ簱瀛橀璀︽暟閲�"
+                :min="0"
+                :step="0.1"
+                :precision="2"
+                style="width: 100%"
+              ></el-input-number>
+            </el-form-item>
+            <el-form-item label="棰勮閫氱煡浜�" prop="notifyPersonId">
+              <el-select
+                v-model="form.notifyPersonId"
+                placeholder="璇烽�夋嫨棰勮閫氱煡浜�"
+                filterable
+                clearable
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="user in userOptions"
+                  :key="user.userId"
+                  :label="user.nickName || user.userName"
+                  :value="user.userId"
+                />
+              </el-select>
+            </el-form-item>
             <el-form-item label="浠锋牸" prop="price">
               <el-input-number
                 v-model="form.price"
@@ -88,8 +114,8 @@
           </el-form>
           <template #footer>
             <span class="dialog-footer">
-              <el-button @click="dialogVisible = false" :disabled="formLoading">鍙栨秷</el-button>
               <el-button type="primary" @click="submitForm" :loading="formLoading">纭畾</el-button>
+              <el-button @click="dialogVisible = false" :disabled="formLoading">鍙栨秷</el-button>
             </span>
           </template>
         </el-dialog>
@@ -134,6 +160,7 @@
 import { ElMessage, ElMessageBox } from 'element-plus';
 import { getSparePartsList, addSparePart, editSparePart, delSparePart } from "@/api/equipmentManagement/spareParts";
 import { getDeviceLedger } from "@/api/equipmentManagement/ledger";
+import { userListNoPage } from "@/api/system/user.js";
 import PIMTable from "@/components/PIMTable/PIMTable.vue";
 import { getSparePartsUsagePage } from "@/api/equipmentManagement/sparePartsUsage";
 
@@ -153,6 +180,7 @@
 const operationType = ref('add')
 // 璁惧閫夐」
 const deviceOptions = ref([]);
+const userOptions = ref([]);
 // 琛ㄥ崟寮曠敤
 const formRef = ref(null);
 // 鏌ヨ鍙傛暟
@@ -222,6 +250,14 @@
     prop: "quantity",
   },
   {
+    label: "搴撳瓨棰勮鏁伴噺",
+    prop: "warnNum",
+  },
+  {
+    label: "棰勮閫氱煡浜�",
+    prop: "notifyPersonName",
+  },
+  {
     label: "鎻忚堪",
     prop: "description",
   },
@@ -256,7 +292,9 @@
   status: '',
   description: '',
   deviceLedgerIds: [],
-  price: null
+  price: null,
+  warnNum: null,
+  notifyPersonId: null
 });
 
 // 琛ㄥ崟楠岃瘉瑙勫垯
@@ -414,9 +452,20 @@
   }
 };
 
+// 鍔犺浇鐢ㄦ埛鍒楄〃
+const loadUserOptions = async () => {
+  try {
+    const res = await userListNoPage();
+    userOptions.value = res.data || [];
+  } catch (error) {
+    ElMessage.error('鑾峰彇鐢ㄦ埛鍒楄〃澶辫触');
+  }
+};
+
 // 鏂板鍒嗙被
 const addCategory = async () => {
   await loadDeviceName();
+  await loadUserOptions();
   form.id = '';
   form.name = '';
   form.sparePartsNo = '';
@@ -425,6 +474,8 @@
   form.deviceLedgerIds = [];
   form.quantity = undefined;
   form.price = null;
+  form.warnNum = null;
+  form.notifyPersonId = null;
   operationType.value = 'add'
   dialogVisible.value = true;
 };
@@ -432,6 +483,7 @@
 // 缂栬緫鍒嗙被
 const editCategory = async (row) => {
   await loadDeviceName();
+  await loadUserOptions();
   Object.assign(form, row);
   // 濡傛灉鍚庣杩斿洖鐨勬槸 deviceIds 瀛楃涓诧紝闇�瑕佽浆鎹负鏁扮粍
   if (row.deviceIds && typeof row.deviceIds === 'string') {

--
Gitblit v1.9.3