From 07d414cd2187ff966fe46145f0a72ff405fb4bef Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期五, 14 八月 2026 10:34:04 +0800
Subject: [PATCH] refactor(mes): 重构物料管理状态变更功能
---
src/views/mes/md/item/data.ts | 19 +++++--------------
src/views/mes/md/item/index.vue | 26 +-------------------------
src/api/mes/md/item/index.ts | 7 -------
3 files changed, 6 insertions(+), 46 deletions(-)
diff --git a/src/api/mes/md/item/index.ts b/src/api/mes/md/item/index.ts
index f2a23c0..6ad491e 100644
--- a/src/api/mes/md/item/index.ts
+++ b/src/api/mes/md/item/index.ts
@@ -54,13 +54,6 @@
return requestClient.put('/mes/md/item/update', data);
}
-/** 淇敼鐗╂枡浜у搧鐘舵�� */
-export function updateItemStatus(id: number, status: number) {
- return requestClient.put('/mes/md/item/update-status', undefined, {
- params: { id, status },
- });
-}
-
/** 鍒犻櫎鐗╂枡浜у搧 */
export function deleteItem(id: number) {
return requestClient.delete(`/mes/md/item/delete?id=${id}`);
diff --git a/src/views/mes/md/item/data.ts b/src/views/mes/md/item/data.ts
index 5425bc8..5d74bb2 100644
--- a/src/views/mes/md/item/data.ts
+++ b/src/views/mes/md/item/data.ts
@@ -111,7 +111,7 @@
component: 'RadioGroup',
componentProps: {
buttonStyle: 'solid',
- disabled: false,
+ disabled: true,
optionType: 'button',
options: getDictOptions(DICT_TYPE.COMMON_STATUS, 'number'),
},
@@ -257,12 +257,7 @@
}
/** 鍒楄〃鐨勫瓧娈� */
-export function useGridColumns(
- onStatusChange?: (
- newStatus: number,
- row: MesMdItemApi.Item,
- ) => PromiseLike<boolean | undefined>,
-): VxeTableGridOptions<MesMdItemApi.Item>['columns'] {
+export function useGridColumns(): VxeTableGridOptions<MesMdItemApi.Item>['columns'] {
return [
{
field: 'code',
@@ -315,15 +310,11 @@
{
field: 'status',
title: '鐘舵��',
- width: 120,
+ width: 100,
align: 'center',
cellRender: {
- attrs: { beforeChange: onStatusChange },
- name: 'CellSwitch',
- props: {
- checkedValue: CommonStatusEnum.ENABLE,
- unCheckedValue: CommonStatusEnum.DISABLE,
- },
+ name: 'CellDict',
+ props: { type: DICT_TYPE.COMMON_STATUS },
},
},
{
diff --git a/src/views/mes/md/item/index.vue b/src/views/mes/md/item/index.vue
index f8855f6..a3a86da 100644
--- a/src/views/mes/md/item/index.vue
+++ b/src/views/mes/md/item/index.vue
@@ -6,12 +6,9 @@
import { ref } from "vue";
import {
- confirm,
Page,
useVbenModal,
} from "@vben/common-ui";
- import { DICT_TYPE } from "@vben/constants";
- import { getDictLabel } from "@vben/hooks";
import { downloadFileFromBlobPart } from "@vben/utils";
import { Button, Card, message } from "ant-design-vue";
@@ -21,7 +18,6 @@
deleteItem,
exportItem,
getItemPage,
- updateItemStatus,
} from "#/api/mes/md/item";
import { $t } from "#/locales";
import { MdItemTypeTree } from "#/views/mes/md/item/type/components";
@@ -95,32 +91,12 @@
handleRefresh();
}
- /** 鏇存柊鐗╂枡鐘舵�� */
- async function handleStatusChange(
- newStatus: number,
- row: MesMdItemApi.Item
- ): Promise<boolean | undefined> {
- try {
- await confirm(
- `纭瑕佸皢"${row.name}"鐗╂枡鍒囨崲涓恒��${getDictLabel(
- DICT_TYPE.COMMON_STATUS,
- newStatus
- )}銆戝悧锛焋
- );
- } catch {
- return false;
- }
- await updateItemStatus(row.id!, newStatus);
- message.success($t("ui.actionMessage.operationSuccess"));
- return true;
- }
-
const [Grid, gridApi] = useVbenVxeGrid({
formOptions: {
schema: useGridFormSchema(),
},
gridOptions: {
- columns: useGridColumns(handleStatusChange),
+ columns: useGridColumns(),
height: "auto",
keepSource: true,
proxyConfig: {
--
Gitblit v1.9.3