配置随工单、作业状态字典

This commit is contained in:
tao
2025-12-29 17:21:47 +08:00
parent d0357d88b4
commit bc0fe2ce24
2 changed files with 24 additions and 19 deletions

View File

@@ -1,11 +1,14 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, onMounted, watch } from 'vue'; import { ref, onMounted, watch, getCurrentInstance } from 'vue';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import type { ColumnsType } from 'ant-design-vue/es/table/interface'; import type { ColumnsType } from 'ant-design-vue/es/table/interface';
import { listStation } from '@/api/pwoManage/station'; import { listStation } from '@/api/pwoManage/station';
import { usePwoStore, useJobStore } from '@/store'; import { usePwoStore, useJobStore } from '@/store';
const { proxy } = getCurrentInstance() as any
const { mes_station_status } = proxy.useDict("mes_station_status", "lot_trace_order_status")
interface TableItem { interface TableItem {
key: string; key: string;
index: number; index: number;
@@ -93,6 +96,9 @@ function rowClick(record: TableItem) {
:customRow="rowClick" :customRow="rowClick"
> >
<template #bodyCell="{ column, record }"> <template #bodyCell="{ column, record }">
<template v-if="column.key === 'status'">
<DictTag :options="mes_station_status" :value="record.status" size="large" />
</template>
<template v-if="column.key === 'action'"> <template v-if="column.key === 'action'">
<a-space> <a-space>
<a-button size="large" type="primary" @click="handleInfeed(record)">进站</a-button> <a-button size="large" type="primary" @click="handleInfeed(record)">进站</a-button>

View File

@@ -1,5 +1,5 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, reactive, nextTick, onUnmounted } from 'vue'; import { ref, reactive, nextTick, onUnmounted, getCurrentInstance } from 'vue';
import { useRoute, useRouter } from 'vue-router'; import { useRoute, useRouter } from 'vue-router';
import { message } from 'ant-design-vue'; import { message } from 'ant-design-vue';
import { debounce } from 'lodash'; import { debounce } from 'lodash';
@@ -7,6 +7,9 @@ import { usePwoStore, useJobStore } from '@/store';
import { listLotTraceOrder, getLotTraceOrder, addQualityAbnormalContact } from '@/api/pwoManage'; import { listLotTraceOrder, getLotTraceOrder, addQualityAbnormalContact } from '@/api/pwoManage';
import type { LotTraceOrderData } from '@/api/pwoManage/model'; import type { LotTraceOrderData } from '@/api/pwoManage/model';
const { proxy } = getCurrentInstance() as any
const { mes_station_status, lot_trace_order_status } = proxy.useDict("mes_station_status", "lot_trace_order_status")
const route = useRoute(); const route = useRoute();
const router = useRouter(); const router = useRouter();
@@ -158,25 +161,23 @@ onUnmounted(() => {
<a-form-item label="工单批次"> <a-form-item label="工单批次">
<a-input v-model:value="workOrderInfo.batchNo" readonly> <a-input v-model:value="workOrderInfo.batchNo" readonly>
<template #suffix> <template #suffix>
<a-button @click="handleCopy(workOrderInfo.batchNo)"> <a-button @click="handleCopy(workOrderInfo.batchNo)" size="small">
<template #icon><i-lucide-copy /></template> <template #icon><i-lucide-copy /></template>
</a-button> </a-button>
</template> </template>
</a-input> </a-input>
</a-form-item> </a-form-item>
<a-form-item label="工单状态"> <a-form-item label="工单状态">
<a-input v-model:value="workOrderInfo.status" readonly> <a-input readonly>
<template #suffix> <template #prefix>
<a-button @click="handleCopy(workOrderInfo.status)"> <DictTag :options="lot_trace_order_status" :value="workOrderInfo.status" size="medium" />
<template #icon><i-lucide-copy /></template>
</a-button>
</template> </template>
</a-input> </a-input>
</a-form-item> </a-form-item>
<a-form-item label="总计数量"> <a-form-item label="总计数量">
<a-input v-model:value="workOrderInfo.planQty" readonly> <a-input v-model:value="workOrderInfo.planQty" readonly>
<template #suffix> <template #suffix>
<a-button @click="handleCopy(workOrderInfo.planQty)"> <a-button @click="handleCopy(workOrderInfo.planQty)" size="small">
<template #icon><i-lucide-copy /></template> <template #icon><i-lucide-copy /></template>
</a-button> </a-button>
</template> </template>
@@ -187,7 +188,7 @@ onUnmounted(() => {
<a-form-item label="产品编码"> <a-form-item label="产品编码">
<a-input v-model:value="workOrderInfo.tarMaterialCode" readonly> <a-input v-model:value="workOrderInfo.tarMaterialCode" readonly>
<template #suffix> <template #suffix>
<a-button @click="handleCopy(workOrderInfo.tarMaterialCode)"> <a-button @click="handleCopy(workOrderInfo.tarMaterialCode)" size="small">
<template #icon><i-lucide-copy /></template> <template #icon><i-lucide-copy /></template>
</a-button> </a-button>
</template> </template>
@@ -196,7 +197,7 @@ onUnmounted(() => {
<a-form-item label="产品名称"> <a-form-item label="产品名称">
<a-input v-model:value="workOrderInfo.tarMaterialName" readonly> <a-input v-model:value="workOrderInfo.tarMaterialName" readonly>
<template #suffix> <template #suffix>
<a-button @click="handleCopy(workOrderInfo.tarMaterialName)"> <a-button @click="handleCopy(workOrderInfo.tarMaterialName)" size="small">
<template #icon><i-lucide-copy /></template> <template #icon><i-lucide-copy /></template>
</a-button> </a-button>
</template> </template>
@@ -205,7 +206,7 @@ onUnmounted(() => {
<!-- <a-form-item label="产品规格"> <!-- <a-form-item label="产品规格">
<a-input readonly> <a-input readonly>
<template #suffix> <template #suffix>
<a-button @click="handleCopy('')"> <a-button @click="handleCopy('')" size="small">
<template #icon><i-lucide-copy /></template> <template #icon><i-lucide-copy /></template>
</a-button> </a-button>
</template> </template>
@@ -234,25 +235,23 @@ onUnmounted(() => {
<a-form-item label="工序名称"> <a-form-item label="工序名称">
<a-input v-model:value="processInfo.operationTitle" readonly> <a-input v-model:value="processInfo.operationTitle" readonly>
<template #suffix> <template #suffix>
<a-button @click="handleCopy(processInfo.operationTitle)"> <a-button @click="handleCopy(processInfo.operationTitle)" size="small">
<template #icon><i-lucide-copy /></template> <template #icon><i-lucide-copy /></template>
</a-button> </a-button>
</template> </template>
</a-input> </a-input>
</a-form-item> </a-form-item>
<a-form-item label="工序状态"> <a-form-item label="工序状态">
<a-input v-model:value="processInfo.status" readonly> <a-input readonly>
<template #suffix> <template #prefix>
<a-button @click="handleCopy(processInfo.status)"> <DictTag :options="mes_station_status" :value="processInfo.status" size="medium" />
<template #icon><i-lucide-copy /></template>
</a-button>
</template> </template>
</a-input> </a-input>
</a-form-item> </a-form-item>
<a-form-item label="作业编码"> <a-form-item label="作业编码">
<a-input v-model:value="processInfo.code" readonly> <a-input v-model:value="processInfo.code" readonly>
<template #suffix> <template #suffix>
<a-button @click="handleCopy(processInfo.code)"> <a-button @click="handleCopy(processInfo.code)" size="small">
<template #icon><i-lucide-copy /></template> <template #icon><i-lucide-copy /></template>
</a-button> </a-button>
</template> </template>