From 3df96cc4dade2aa2cf58a611647339f1b636a9a4 Mon Sep 17 00:00:00 2001
From: hsy <1029150275@qq.com>
Date: 星期三, 26 八月 2026 11:27:23 +0800
Subject: [PATCH] feat(wls): 限制产品入库选择未开工的生产订单
---
src/views/wls/productreceipt/data.ts | 3 ++-
src/views/mes/pro/workorder/components/select-dialog.vue | 6 +++++-
src/views/mes/pro/workorder/components/select.vue | 5 ++++-
3 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/src/views/mes/pro/workorder/components/select-dialog.vue b/src/views/mes/pro/workorder/components/select-dialog.vue
index 2f000dc..250ddd8 100644
--- a/src/views/mes/pro/workorder/components/select-dialog.vue
+++ b/src/views/mes/pro/workorder/components/select-dialog.vue
@@ -1,4 +1,4 @@
-锘�<script lang="ts" setup>
+<script lang="ts" setup>
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import type { MesProWorkOrderApi } from '#/api/mes/pro/workorder';
@@ -21,10 +21,12 @@
defineProps<{
status?: number;
type?: number;
+ checkMethod?: (row: MesProWorkOrderApi.WorkOrder) => boolean;
}>(),
{
status: undefined,
type: undefined,
+ checkMethod: undefined,
},
);
const emit = defineEmits<{
@@ -133,10 +135,12 @@
highlight: true,
range: true,
reserve: true,
+ checkMethod: props.checkMethod ? ({ row }) => props.checkMethod!(row) : undefined,
},
radioConfig: {
highlight: true,
trigger: 'row',
+ checkMethod: props.checkMethod ? ({ row }) => props.checkMethod!(row) : undefined,
},
proxyConfig: {
ajax: {
diff --git a/src/views/mes/pro/workorder/components/select.vue b/src/views/mes/pro/workorder/components/select.vue
index 6788174..39dd494 100644
--- a/src/views/mes/pro/workorder/components/select.vue
+++ b/src/views/mes/pro/workorder/components/select.vue
@@ -1,4 +1,4 @@
-锘�<script lang="ts" setup>
+<script lang="ts" setup>
import type { MesProWorkOrderApi } from '#/api/mes/pro/workorder';
import { computed, ref, useAttrs, watch } from 'vue';
@@ -21,6 +21,7 @@
placeholder?: string;
status?: number;
type?: number;
+ checkMethod?: (row: MesProWorkOrderApi.WorkOrder) => boolean;
}>(),
{
allowClear: true,
@@ -29,6 +30,7 @@
placeholder: '璇烽�夋嫨璁㈠崟',
status: undefined,
type: undefined,
+ checkMethod: undefined,
},
);
@@ -140,6 +142,7 @@
ref="dialogRef"
:status="status"
:type="type"
+ :check-method="checkMethod"
@selected="handleSelected"
/>
</template>
diff --git a/src/views/wls/productreceipt/data.ts b/src/views/wls/productreceipt/data.ts
index 07cc1bf..f249a84 100644
--- a/src/views/wls/productreceipt/data.ts
+++ b/src/views/wls/productreceipt/data.ts
@@ -1,4 +1,4 @@
-锘縤mport type { VbenFormApi, VbenFormSchema } from '#/adapter/form';
+import type { VbenFormApi, VbenFormSchema } from '#/adapter/form';
import type { VxeTableGridOptions } from '#/adapter/vxe-table';
import type { MesWmMaterialStockApi } from '#/api/mes/wm/materialstock';
import type { MesWmProductReceiptApi } from '#/api/mes/wm/productreceipt';
@@ -108,6 +108,7 @@
component: markRaw(ProWorkOrderSelect),
componentProps: {
status: MesProWorkOrderStatusEnum.CONFIRMED,
+ checkMethod: (row: any) => row.productionStatus !== 0,
},
},
{
--
Gitblit v1.9.3