From bbdd646b82cb8c84079598b7200b1102fd247b28 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 29 十二月 2025 16:08:48 +0800
Subject: [PATCH] 昭德-巡检上传开发调整
---
src/pages/management/index.vue | 382 +++++++++++++++++++++++++++--------------------------
1 files changed, 194 insertions(+), 188 deletions(-)
diff --git a/src/pages/management/index.vue b/src/pages/management/index.vue
index 3adfbd2..f08b67c 100644
--- a/src/pages/management/index.vue
+++ b/src/pages/management/index.vue
@@ -22,7 +22,7 @@
</view>
<!-- 鏍囩椤� -->
- <view class="tabs-section">
+ <!-- <view class="tabs-section">
<u-tabs
:list="tabs"
:current="activeTabIndex"
@@ -35,7 +35,7 @@
fontWeight: 'bold'
}"
/>
- </view>
+ </view> -->
<!-- 鍒楄〃鍖哄煙 -->
<scroll-view
@@ -66,7 +66,7 @@
<view class="item-details">
<!-- 璁惧鍒楄〃椤甸潰 -->
- <template v-if="activeTab === 'management'">
+ <!-- <template v-if="activeTab === 'management'"> -->
<view class="detail-row">
<text class="detail-label">璁惧鍚嶇О</text>
<text class="detail-value">{{ item.equipmentName || '-' }}</text>
@@ -95,10 +95,10 @@
<text class="detail-label">閲囪喘浠锋牸</text>
<text class="detail-value">{{ item.purchasePrice ? `楼${item.purchasePrice}` : '-' }}</text>
</view>
- </template>
+ <!-- </template> -->
<!-- 璁惧棰嗙敤椤甸潰 -->
- <template v-else-if="activeTab === 'equipmentRequisition'">
+ <!-- <template v-else-if="activeTab === 'equipmentRequisition'">
<view class="detail-row">
<text class="detail-label">棰嗙敤浜�</text>
<text class="detail-value">{{ item.userName || '-' }}</text>
@@ -133,11 +133,11 @@
<text class="detail-label">澶囨敞</text>
<text class="detail-value">{{ item.remarks }}</text>
</view>
- </template>
+ </template> -->
</view>
<!-- 鎿嶄綔鎸夐挳 - 鍙湪璁惧棰嗙敤椤甸潰鏄剧ず -->
- <template v-if="activeTab === 'equipmentRequisition'">
+ <!-- <template v-if="activeTab === 'equipmentRequisition'">
<up-divider></up-divider>
<view class="action-buttons">
<u-button
@@ -159,7 +159,7 @@
褰掕繕
</u-button>
</view>
- </template>
+ </template> -->
</view>
</view>
</view>
@@ -171,34 +171,34 @@
</scroll-view>
<!-- 娴姩鎿嶄綔鎸夐挳 - 璁惧棰嗙敤椤甸潰鏄剧ず棰嗙敤鎸夐挳 -->
- <view
+ <!-- <view
v-if="activeTab === 'equipmentRequisition'"
class="fab-button"
@tap="handleAdd"
>
<up-icon name="plus" size="24" color="#ffffff"></up-icon>
- </view>
+ </view> -->
<!-- 寮圭獥缁勪欢 -->
- <managementDialog
+ <!-- <managementDialog
v-if="activeTab == 'management'"
v-model:copyForm="copyForm"
v-model:managementFormDialog="manaDialog"
:addOrEdit="addOrEdit"
:form="form"
@submit="getList"
- />
- <EquipmentRequisition
+ /> -->
+ <!-- <EquipmentRequisition
v-model="equipmentRequisitionDialog"
:formData="form"
:maxQuantity="getMaxQuantity()"
:addOrEdit="addOrEdit"
:equipmentStatus="form.equipmentStatus"
@submit="onEquipmentRequisitionSubmit"
- />
+ /> -->
<!-- 鏌ョ湅璇︽儏寮圭獥 -->
- <u-popup
+ <!-- <u-popup
v-model="dialogTableVisible"
:title="dialogTableTitle"
mode="center"
@@ -211,7 +211,7 @@
height="400px"
/>
</view>
- </u-popup>
+ </u-popup> -->
</view>
</template>
@@ -224,14 +224,14 @@
// 缁勪欢瀵煎叆
import PageHeader from "@/components/PageHeader.vue";
-import managementDialog from "./mould/managementDialog.vue";
-import EquipmentRequisition from "./mould/equipmentRequisitionDialog.vue";
+// import managementDialog from "./mould/managementDialog.vue";
+// import EquipmentRequisition from "./mould/equipmentRequisitionDialog.vue";
// API 鏈嶅姟瀵煎叆
import {
getManagementList,
} from "@/api/equipment/management/index.js";
-import { getUsageRecordList, getUsageDetailList } from "@/api/equipment/requisition/index.js";
+// import { getUsageRecordList, getUsageDetailList } from "@/api/equipment/requisition/index.js";
// 璁惧鐘舵�佹灇涓�
const EQUIPMENT_STATUS = {
@@ -330,40 +330,46 @@
{ prop: "purchasePrice", label: "閲囪喘浠锋牸", minWidth: 100 },
],
},
- equipmentRequisition: {
- label: "璁惧棰嗙敤",
- searchPlaceholder: "璁惧缂栧彿/璁惧鍚嶇О/瑙勬牸鍨嬪彿",
- showSearch: true,
- api: getUsageRecordList,
- columns: [
- { prop: "userName", label: "棰嗙敤浜�", minWidth: 100 },
- { prop: "equipmentNo", label: "璁惧缂栧彿", minWidth: 100 },
- { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
- { prop: "usageQuantity", label: "棰嗙敤鏁伴噺", minWidth: 100 },
- {prop: "returnQuantity" , label: "褰掕繕鏁伴噺", minWidth: 100,
- formatter: (row) => row.returnQuantity || 0
- },
- {
- prop: "equipmentStatus",
- label: "浣跨敤鐘舵��",
- minWidth: 100,
- formatter: (row) => getStatusText(row.equipmentStatus),
- cellStyle: (row) => ({ color: getStatusColor(row.equipmentStatus) }),
- },
- { prop: "usageStartTime", label: "浣跨敤寮�濮嬫椂闂�", minWidth: 100 },
- { prop: "usageEndTime", label: "浣跨敤缁撴潫鏃堕棿", minWidth: 100 },
- { prop: "remarks", label: "澶囨敞", minWidth: 100 },
- ],
- },
+ // equipmentRequisition: {
+ // label: "璁惧棰嗙敤",
+ // searchPlaceholder: "璁惧缂栧彿/璁惧鍚嶇О/瑙勬牸鍨嬪彿",
+ // showSearch: true,
+ // api: getUsageRecordList,
+ // columns: [
+ // { prop: "userName", label: "棰嗙敤浜�", minWidth: 100 },
+ // { prop: "equipmentNo", label: "璁惧缂栧彿", minWidth: 100 },
+ // { prop: "equipmentName", label: "璁惧鍚嶇О", minWidth: 100 },
+ // { prop: "usageQuantity", label: "棰嗙敤鏁伴噺", minWidth: 100 },
+ // {prop: "returnQuantity" , label: "褰掕繕鏁伴噺", minWidth: 100,
+ // formatter: (row) => row.returnQuantity || 0
+ // },
+ // {
+ // prop: "equipmentStatus",
+ // label: "浣跨敤鐘舵��",
+ // minWidth: 100,
+ // formatter: (row) => getStatusText(row.equipmentStatus),
+ // cellStyle: (row) => ({ color: getStatusColor(row.equipmentStatus) }),
+ // },
+ // { prop: "usageStartTime", label: "浣跨敤寮�濮嬫椂闂�", minWidth: 100 },
+ // { prop: "usageEndTime", label: "浣跨敤缁撴潫鏃堕棿", minWidth: 100 },
+ // { prop: "remarks", label: "澶囨敞", minWidth: 100 },
+ // ],
+ // },
};
// 鏍囩椤垫暟鎹� - u-tabs闇�瑕乶ame浣滀负鏄剧ず鏂囨湰
-const tabs = computed(() =>
- Object.entries(tabsConfig).map(([name, config]) => ({
- name: config.label, // 浣跨敤label浣滀负鏄剧ず鏂囨湰
- value: name, // 淇濆瓨鍘熷name鍊�
- }))
-);
+// const tabs = computed(() =>
+// Object.entries(tabsConfig).map(([name, config]) => ({
+// name: config.label, // 浣跨敤label浣滀负鏄剧ず鏂囨湰
+// value: name, // 淇濆瓨鍘熷name鍊�
+// }))
+// );
+const tabs = computed(() => [
+ {
+ name: tabsConfig.management.label,
+ value: 'management'
+ }
+]);
// 褰撳墠鏍囩椤电储寮� - 浣跨敤ref鑰屼笉鏄痗omputed锛岀‘淇濆搷搴斿紡鏇存柊
const activeTabIndex = ref(0);
@@ -380,68 +386,68 @@
);
// 鍒ゆ柇鏄惁鏄剧ず褰掕繕鎸夐挳
-const shouldShowReturnButton = (item) => {
- if (activeTab.value !== 'equipmentRequisition') {
- return false;
- }
- // 濡傛灉璁惧鐘舵�佹槸宸插綊杩橈紝涓嶆樉绀哄綊杩樻寜閽�
- if (item.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
- return false;
- }
- // 鍏朵粬鐘舵�侀兘鏄剧ず褰掕繕鎸夐挳锛堜娇鐢ㄤ腑銆侀儴鍒嗗綊杩樸�佹垨鑰呮病鏈夌姸鎬侊級
- return true;
-};
+// const shouldShowReturnButton = (item) => {
+// if (activeTab.value !== 'equipmentRequisition') {
+// return false;
+// }
+// // 濡傛灉璁惧鐘舵�佹槸宸插綊杩橈紝涓嶆樉绀哄綊杩樻寜閽�
+// if (item.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
+// return false;
+// }
+// // 鍏朵粬鐘舵�侀兘鏄剧ず褰掕繕鎸夐挳锛堜娇鐢ㄤ腑銆侀儴鍒嗗綊杩樸�佹垨鑰呮病鏈夌姸鎬侊級
+// return true;
+// };
// 鍔ㄦ�佽幏鍙栬嚜瀹氫箟鎸夐挳閰嶇疆锛堜繚鐣欑敤浜庡叾浠栫敤閫旓級
-const getCustomButtons = () => {
- const buttons = [];
-
- // 鍦ㄨ澶囬鐢ㄩ〉闈㈡坊鍔犲綊杩樻寜閽�
- if (activeTab.value === 'equipmentRequisition') {
- buttons.push({
- name: 'return',
- label: '褰掕繕',
- type: 'success',
- size: 'small',
- link: true,
- show: (row) => shouldShowReturnButton(row),
- disabled: (row) => row.equipmentStatus === EQUIPMENT_STATUS.RETURNED,
- });
- }
-
- return buttons;
-};
+// const getCustomButtons = () => {
+// const buttons = [];
+//
+// // 鍦ㄨ澶囬鐢ㄩ〉闈㈡坊鍔犲綊杩樻寜閽�
+// if (activeTab.value === 'equipmentRequisition') {
+// buttons.push({
+// name: 'return',
+// label: '褰掕繕',
+// type: 'success',
+// size: 'small',
+// link: true,
+// show: (row) => shouldShowReturnButton(row),
+// disabled: (row) => row.equipmentStatus === EQUIPMENT_STATUS.RETURNED,
+// });
+// }
+//
+// return buttons;
+// };
// 澶勭悊鑷畾涔夋寜閽偣鍑讳簨浠�
-const handleCustomButtonClick = ({ buttonName, row }) => {
- switch (buttonName) {
- case 'return':
- handleReturn(row);
- break;
- // 鍙互鍦ㄨ繖閲屾坊鍔犳洿澶氳嚜瀹氫箟鎸夐挳鐨勫鐞嗛�昏緫
- default:
- console.warn(`鏈鐞嗙殑鑷畾涔夋寜閽�: ${buttonName}`);
- }
-};
-const handleReturn = (row) => {
- // 妫�鏌ヨ澶囩姸鎬�
- if (row.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
- showToast('璇ヨ澶囧凡褰掕繕瀹屾垚锛屾棤闇�鍐嶆褰掕繕', 'warning');
- return;
- }
-
- if (row.equipmentStatus !== EQUIPMENT_STATUS.USING && row.equipmentStatus !== EQUIPMENT_STATUS.PARTIAL_RETURN) {
- showToast('璇ヨ澶囧綋鍓嶇姸鎬佷笉鏀寔褰掕繕鎿嶄綔', 'warning');
- return;
- }
-
- form.value = { ...row };
- addOrEdit.value = "return"; // 璁剧疆涓哄綊杩樻ā寮�
- title.value = `褰掕繕璁惧 - ${row.equipmentName || ''}`;
- copyForm.value = { ...row };
- equipmentRequisitionDialog.value = true;
- console.log("褰掕繕璁惧锛�", row);
-};
+// const handleCustomButtonClick = ({ buttonName, row }) => {
+// switch (buttonName) {
+// case 'return':
+// handleReturn(row);
+// break;
+// // 鍙互鍦ㄨ繖閲屾坊鍔犳洿澶氳嚜瀹氫箟鎸夐挳鐨勫鐞嗛�昏緫
+// default:
+// console.warn(`鏈鐞嗙殑鑷畾涔夋寜閽�: ${buttonName}`);
+// }
+// };
+// const handleReturn = (row) => {
+// // 妫�鏌ヨ澶囩姸鎬�
+// if (row.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
+// showToast('璇ヨ澶囧凡褰掕繕瀹屾垚锛屾棤闇�鍐嶆褰掕繕', 'warning');
+// return;
+// }
+//
+// if (row.equipmentStatus !== EQUIPMENT_STATUS.USING && row.equipmentStatus !== EQUIPMENT_STATUS.PARTIAL_RETURN) {
+// showToast('璇ヨ澶囧綋鍓嶇姸鎬佷笉鏀寔褰掕繕鎿嶄綔', 'warning');
+// return;
+// }
+//
+// form.value = { ...row };
+// addOrEdit.value = "return"; // 璁剧疆涓哄綊杩樻ā寮�
+// title.value = `褰掕繕璁惧 - ${row.equipmentName || ''}`;
+// copyForm.value = { ...row };
+// equipmentRequisitionDialog.value = true;
+// console.log("褰掕繕璁惧锛�", row);
+// };
// 鏍囩椤靛垏鎹㈠鐞� - u-tabs鐨凘change浜嬩欢浼犻�掔殑鏄璞� { index: number }
const handleTabChange = (e) => {
const index = typeof e === 'object' && e.index !== undefined ? e.index : e;
@@ -482,63 +488,63 @@
};
// 澶勭悊鏂板棰嗙敤
-const handleAdd = () => {
- console.log('handleAdd 琚皟鐢�', 'activeTab:', activeTab.value, 'activeTabIndex:', activeTabIndex.value);
- addOrEdit.value = "add";
- form.value = {};
- title.value = `鏂板${currentTabConfig.value?.label || '璁惧棰嗙敤'}`;
- copyForm.value = {};
- console.log('鍑嗗鎵撳紑寮圭獥锛宔quipmentRequisitionDialog褰撳墠鍊�:', equipmentRequisitionDialog.value);
- equipmentRequisitionDialog.value = true;
- console.log('寮圭獥宸叉墦寮�锛宔quipmentRequisitionDialog鏂板��:', equipmentRequisitionDialog.value);
-};
+// const handleAdd = () => {
+// console.log('handleAdd 琚皟鐢�', 'activeTab:', activeTab.value, 'activeTabIndex:', activeTabIndex.value);
+// addOrEdit.value = "add";
+// form.value = {};
+// title.value = `鏂板${currentTabConfig.value?.label || '璁惧棰嗙敤'}`;
+// copyForm.value = {};
+// console.log('鍑嗗鎵撳紑寮圭獥锛宔quipmentRequisitionDialog褰撳墠鍊�:', equipmentRequisitionDialog.value);
+// equipmentRequisitionDialog.value = true;
+// console.log('寮圭獥宸叉墦寮�锛宔quipmentRequisitionDialog鏂板��:', equipmentRequisitionDialog.value);
+// };
-const handleView = async (row) => {
- // 鍙鐞嗚澶囬鐢ㄩ〉闈㈢殑鏌ョ湅鍔熻兘
- if (activeTab.value === 'equipmentRequisition') {
- try {
- dialogTableTitle.value = `${row.equipmentName || '璁惧'} - 鎿嶄綔璁板綍璇︽儏`;
-
- // 鏄剧ず鍔犺浇鐘舵��
- dialogTableVisible.value = true;
- dialogTableData.value = [];
-
- // 璋冪敤璇︽儏鎺ュ彛鑾峰彇鏁版嵁
- const { data, code } = await getUsageDetailList(row.id);
- if (code === 200 && data) {
- // 澶勭悊鏁扮粍鏁版嵁锛岀洿鎺ユ樉绀烘搷浣滆褰曞垪琛�
- if (Array.isArray(data)) {
- dialogTableData.value = data;
- dialogTableColumns.value = [
- { prop: 'equipmentNo', label: '璁惧缂栧彿', minWidth: 100 },
- { prop: 'equipmentName', label: '璁惧鍚嶇О', minWidth: 120 },
- { prop: 'specification', label: '瑙勬牸鍨嬪彿', minWidth: 100 },
- {
- prop: 'operationType',
- label: '鎿嶄綔绫诲瀷',
- minWidth: 80,
- formatter: (row) => row.operationType === 1 ? '棰嗙敤' : '褰掕繕'
- },
- { prop: 'quantity', label: '鎿嶄綔鏁伴噺', minWidth: 80 },
- { prop: 'operator', label: '鎿嶄綔浜�', minWidth: 80 },
- { prop: 'remark', label: '澶囨敞', minWidth: 150, showOverflowTooltip: true },
- { prop: 'createTime', label: '鎿嶄綔鏃堕棿', minWidth: 150 }
- ];
- } else {
- showToast('鏆傛棤鎿嶄綔璁板綍', 'warning');
- }
- } else {
- showToast('鑾峰彇璇︽儏鏁版嵁澶辫触', 'error');
- dialogTableVisible.value = false;
- }
-
- } catch (error) {
- console.error('鑾峰彇璇︽儏澶辫触:', error);
- showToast('鑾峰彇璇︽儏鏁版嵁澶辫触', 'error');
- dialogTableVisible.value = false;
- }
- }
-};
+// const handleView = async (row) => {
+// // 鍙鐞嗚澶囬鐢ㄩ〉闈㈢殑鏌ョ湅鍔熻兘
+// if (activeTab.value === 'equipmentRequisition') {
+// try {
+// dialogTableTitle.value = `${row.equipmentName || '璁惧'} - 鎿嶄綔璁板綍璇︽儏`;
+//
+// // 鏄剧ず鍔犺浇鐘舵��
+// dialogTableVisible.value = true;
+// dialogTableData.value = [];
+//
+// // 璋冪敤璇︽儏鎺ュ彛鑾峰彇鏁版嵁
+// const { data, code } = await getUsageDetailList(row.id);
+// if (code === 200 && data) {
+// // 澶勭悊鏁扮粍鏁版嵁锛岀洿鎺ユ樉绀烘搷浣滆褰曞垪琛�
+// if (Array.isArray(data)) {
+// dialogTableData.value = data;
+// dialogTableColumns.value = [
+// { prop: 'equipmentNo', label: '璁惧缂栧彿', minWidth: 100 },
+// { prop: 'equipmentName', label: '璁惧鍚嶇О', minWidth: 120 },
+// { prop: 'specification', label: '瑙勬牸鍨嬪彿', minWidth: 100 },
+// {
+// prop: 'operationType',
+// label: '鎿嶄綔绫诲瀷',
+// minWidth: 80,
+// formatter: (row) => row.operationType === 1 ? '棰嗙敤' : '褰掕繕'
+// },
+// { prop: 'quantity', label: '鎿嶄綔鏁伴噺', minWidth: 80 },
+// { prop: 'operator', label: '鎿嶄綔浜�', minWidth: 80 },
+// { prop: 'remark', label: '澶囨敞', minWidth: 150, showOverflowTooltip: true },
+// { prop: 'createTime', label: '鎿嶄綔鏃堕棿', minWidth: 150 }
+// ];
+// } else {
+// showToast('鏆傛棤鎿嶄綔璁板綍', 'warning');
+// }
+// } else {
+// showToast('鑾峰彇璇︽儏鏁版嵁澶辫触', 'error');
+// dialogTableVisible.value = false;
+// }
+//
+// } catch (error) {
+// console.error('鑾峰彇璇︽儏澶辫触:', error);
+// showToast('鑾峰彇璇︽儏鏁版嵁澶辫触', 'error');
+// dialogTableVisible.value = false;
+// }
+// }
+// };
// 涓嬫媺鍒锋柊
const onRefresh = async () => {
@@ -549,32 +555,32 @@
};
// 鑾峰彇璁惧鏈�澶у彲棰嗙敤鏁伴噺
-const getMaxQuantity = () => {
- if (form.value.equipmentId) {
- const equipment = tableData.value.find(
- (item) => item.equipmentId === form.value.equipmentId
- );
- return equipment ? equipment.quantity : null;
- }
- return null;
-};
+// const getMaxQuantity = () => {
+// if (form.value.equipmentId) {
+// const equipment = tableData.value.find(
+// (item) => item.equipmentId === form.value.equipmentId
+// );
+// return equipment ? equipment.quantity : null;
+// }
+// return null;
+// };
// 璁惧棰嗙敤寮圭獥鎻愪氦澶勭悊
-const onEquipmentRequisitionSubmit = (formData) => {
- if (formData.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
- showToast("璁惧宸插畬鍏ㄥ綊杩�", 'success');
- } else if (formData.equipmentStatus === EQUIPMENT_STATUS.PARTIAL_RETURN) {
- } else if (formData.equipmentStatus === EQUIPMENT_STATUS.USING) {
- showToast("璁惧棰嗙敤鎴愬姛", 'success');
- } else {
- showToast("鎿嶄綔鎴愬姛", 'success');
- }
- equipmentRequisitionDialog.value = false;
- nextTick(() => {
- form.value = {};
- getList();
- });
-};
+// const onEquipmentRequisitionSubmit = (formData) => {
+// if (formData.equipmentStatus === EQUIPMENT_STATUS.RETURNED) {
+// showToast("璁惧宸插畬鍏ㄥ綊杩�", 'success');
+// } else if (formData.equipmentStatus === EQUIPMENT_STATUS.PARTIAL_RETURN) {
+// } else if (formData.equipmentStatus === EQUIPMENT_STATUS.USING) {
+// showToast("璁惧棰嗙敤鎴愬姛", 'success');
+// } else {
+// showToast("鎿嶄綔鎴愬姛", 'success');
+// }
+// equipmentRequisitionDialog.value = false;
+// nextTick(() => {
+// form.value = {};
+// getList();
+// });
+// };
// 鏁版嵁鑾峰彇
const getList = async () => {
--
Gitblit v1.9.3