diff --git a/src/views/plan/EnamellingMachineStatus.vue b/src/views/plan/EnamellingMachineStatus.vue
index 963aa58..e0c7cd9 100644
--- a/src/views/plan/EnamellingMachineStatus.vue
+++ b/src/views/plan/EnamellingMachineStatus.vue
@@ -197,12 +197,41 @@
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 提交修改
+
+
+
时间范围:
@@ -282,6 +311,8 @@ const salesChartLoading = ref(false)
const historyChartLoading = ref(false)
const wmsData = ref([])
const wmsDataLoading = ref(false)
+const wmsModifiedFlags = ref({})
+const wmsOriginalData = ref({})
const salesData = ref([])
const historyData = ref([])
const hasSalesData = ref(false)
@@ -671,6 +702,7 @@ const fetchWmsData = (model, specification) => {
console.log('WMS API Response:', data);
if (data.code === 200 && data.data && data.data.records) {
wmsData.value = data.data.records;
+ recordWmsOriginalData();
console.log('WMS Data:', wmsData.value);
} else {
wmsData.value = [];
@@ -686,6 +718,83 @@ const fetchWmsData = (model, specification) => {
});
};
+// 记录WMS原始数据
+const recordWmsOriginalData = () => {
+ wmsOriginalData.value = {};
+ wmsModifiedFlags.value = {};
+ wmsData.value.forEach((item, index) => {
+ const key = `${item.model}_${item.specification}_${item.wire_disc || 'null'}`;
+ wmsOriginalData.value[key] = {
+ warning_number_min: item.warning_number_min,
+ warning_number_max: item.warning_number_max
+ };
+ wmsModifiedFlags.value[index] = false;
+ });
+};
+
+// WMS值变化处理
+const onWmsValueChange = (index) => {
+ const item = wmsData.value[index];
+ if (!item) return;
+
+ const key = `${item.model}_${item.specification}_${item.wire_disc || 'null'}`;
+ const original = wmsOriginalData.value[key];
+
+ if (original) {
+ const isModified = item.warning_number_min !== original.warning_number_min ||
+ item.warning_number_max !== original.warning_number_max;
+ wmsModifiedFlags.value[index] = isModified;
+ }
+};
+
+// 提交WMS修改
+const submitWmsModification = async (index) => {
+ const item = wmsData.value[index];
+ if (!item) return;
+
+ const params = new URLSearchParams({
+ model: item.model,
+ specification: item.specification,
+ warning_number_min: item.warning_number_min || 0,
+ warning_number_max: item.warning_number_max || 300
+ });
+
+ if (item.wire_disc) {
+ params.append('wire_disc', item.wire_disc);
+ }
+
+ const apiUrl = `${API_CONFIG.BASE_URL}/api/wms/warning/upsert?${params.toString()}`;
+ console.log('Upsert API URL:', apiUrl);
+
+ try {
+ const response = await fetch(apiUrl, {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json'
+ }
+ });
+
+ const data = await response.json();
+ console.log('Upsert Response:', data);
+
+ if (data.code === 200) {
+ const key = `${item.model}_${item.specification}_${item.wire_disc || 'null'}`;
+ wmsOriginalData.value[key] = {
+ warning_number_min: item.warning_number_min,
+ warning_number_max: item.warning_number_max
+ };
+ wmsModifiedFlags.value[index] = false;
+ console.log('WMS修改成功');
+ } else {
+ console.error('WMS修改失败:', data.message);
+ item.warning_number_min = wmsOriginalData.value[key]?.warning_number_min;
+ item.warning_number_max = wmsOriginalData.value[key]?.warning_number_max;
+ }
+ } catch (error) {
+ console.error('WMS修改API调用失败:', error);
+ }
+};
+
// 初始化销售图表
const initSalesChart = (retryCount = 0) => {
if (!hasSalesData.value && !hasHistoryData.value) {