From 79314d765074927e218a060dc7ae4e3b6dd657ec Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期六, 18 七月 2026 15:54:07 +0800
Subject: [PATCH] 银川 1.销售订单页面展示字段修改 2.客户选择弹框复用调整 3.未使用菜单整理 4.发货通知、销售退货展示字段和操作权限判断修改 5.物料选择弹框展示字段修改
---
src/views/basicData/mdm/components/select-dialog.vue | 37 +++++++++++++++++++++++++++++++++++--
1 files changed, 35 insertions(+), 2 deletions(-)
diff --git a/src/views/basicData/mdm/components/select-dialog.vue b/src/views/basicData/mdm/components/select-dialog.vue
index 9c7a48a..f42875f 100644
--- a/src/views/basicData/mdm/components/select-dialog.vue
+++ b/src/views/basicData/mdm/components/select-dialog.vue
@@ -1,13 +1,15 @@
<script lang="ts" setup>
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import type { MdmItemApi } from '#/api/mdm/item';
+import type { MesMdItemTypeApi } from '#/api/mes/md/item/type';
import { nextTick, ref } from 'vue';
-import { message, Modal } from 'ant-design-vue';
+import { message, Modal, Tag } from 'ant-design-vue';
import { useVbenVxeGrid } from '#/adapter/vxe-table';
import { getItemPage } from '#/api/mdm/item';
+import { getItemTypeSimpleList } from '#/api/mes/md/item/type';
import {
useMdmItemSelectGridColumns,
@@ -24,6 +26,21 @@
const multiple = ref(true); // 鏄惁澶氶��
const selectedRows = ref<MdmItemApi.Item[]>([]); // 宸查�夌墿鏂欏垪琛�
const preSelectedIds = ref<number[]>([]); // 棰勯�夌墿鏂欑紪鍙峰垪琛�
+const categoryList = ref<MesMdItemTypeApi.ItemType[]>([]); // 鍒嗙被鍒楄〃缂撳瓨
+
+const TAG_COLORS = ['green', 'orange', 'blue', 'purple', 'cyan', 'magenta', 'geekblue', 'volcano', 'gold', 'lime'] as const;
+
+function getCategoryName(categoryId?: number) {
+ if (!categoryId || !categoryList.value.length) return '';
+ const category = categoryList.value.find((item) => item.id === categoryId);
+ return category?.name || '';
+}
+
+function getCategoryColor(categoryId?: number): string {
+ if (!categoryId) return '';
+ const index = categoryList.value.findIndex((item) => item.id === categoryId);
+ return index >= 0 ? TAG_COLORS[index % TAG_COLORS.length]! : '';
+}
/** 鑾峰彇褰撳墠琛ㄦ牸鏁版嵁 */
function getTableRows() {
@@ -121,6 +138,13 @@
proxyConfig: {
ajax: {
query: async ({ page }, formValues) => {
+ if (!categoryList.value.length) {
+ try {
+ categoryList.value = await getItemTypeSimpleList();
+ } catch {
+ categoryList.value = [];
+ }
+ }
return await getItemPage({
pageNo: page.currentPage,
pageSize: page.pageSize,
@@ -204,6 +228,15 @@
@ok="handleConfirm"
@cancel="closeModal"
>
- <Grid table-title="鐗╂枡鍒楄〃" />
+ <Grid table-title="鐗╂枡鍒楄〃">
+ <template #categoryId="{ row }">
+ <Tag v-if="getCategoryColor(row.categoryId)" :color="getCategoryColor(row.categoryId)">{{ getCategoryName(row.categoryId) }}</Tag>
+ <span v-else>{{ getCategoryName(row.categoryId) || '-' }}</span>
+ </template>
+ <template #isBatchManaged="{ row }">
+ <Tag v-if="row.isBatchManaged" color="success">鏄�</Tag>
+ <Tag v-else>鍚�</Tag>
+ </template>
+ </Grid>
</Modal>
</template>
--
Gitblit v1.9.3