From 9acf8624e7a051a00e32e825116a5e6f459d2bc6 Mon Sep 17 00:00:00 2001 From: kkk-ops <1050738955@qq.com> Date: Tue, 30 Dec 2025 17:45:06 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BE=E5=B7=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/mes/plan/index.ts | 4 ++ src/layout/components/Footer/src/Footer.vue | 2 +- src/utils/dict.ts | 2 + src/views/erp/mold/MoldBrandForm.vue | 7 +-- src/views/erp/mold/components/MoldForm.vue | 2 +- src/views/erp/mold/index.vue | 2 +- .../mes/feedingrecord/FeedingRecordForm.vue | 49 ++++++++++++----- .../components/FeedingRecordDetailList.vue | 2 +- src/views/mes/feedingrecord/index.vue | 55 ++++++++++--------- .../components/ItemRequisitionDetailList.vue | 9 +-- src/views/mes/itemrequisition/index.vue | 10 +--- .../mes/machine/MachineComponentForm.vue | 2 +- src/views/mes/moldget/index.vue | 44 ++++----------- src/views/mes/organization/index.vue | 4 +- src/views/mes/plan/components/Paigong.vue | 42 ++------------ src/views/mes/plan/index.vue | 37 +++++++++++-- src/views/mes/stockout/StockOutForm.vue | 2 +- .../stockout/components/StockOutItemForm.vue | 2 +- src/views/mes/stockout/index.vue | 4 +- 19 files changed, 135 insertions(+), 146 deletions(-) diff --git a/src/api/mes/plan/index.ts b/src/api/mes/plan/index.ts index 2af6a4ee..7ddf759a 100644 --- a/src/api/mes/plan/index.ts +++ b/src/api/mes/plan/index.ts @@ -64,6 +64,10 @@ export const PlanApi = { arrangePlan: async (data: ItemRequisitionVO) => { return await request.put({ url: `/mes/plan/paigong`, data }) }, + // 派工生产计划 + arrangePlanNum: async (data: ItemRequisitionVO) => { + return await request.put({ url: `/mes/plan/typePaigong`, data }) + }, // 更新状态生产计划 updatePlanStatus: async (data: PlanVO) => { return await request.put({ url: `/mes/plan/updateStatus`, data }) diff --git a/src/layout/components/Footer/src/Footer.vue b/src/layout/components/Footer/src/Footer.vue index 3d6186c5..dc6cb124 100644 --- a/src/layout/components/Footer/src/Footer.vue +++ b/src/layout/components/Footer/src/Footer.vue @@ -20,7 +20,7 @@ const title = computed(() => appStore.getTitle) :class="prefixCls" class="h-[var(--app-footer-height)] bg-[var(--app-content-bg-color)] text-center leading-[var(--app-footer-height)] text-[var(--el-text-color-placeholder)] dark:bg-[var(--el-bg-color)] overflow-hidden" > - Copyright ©2024-BESURE-{{ title }}   + Copyright ©2026-BESURE-{{ title }}   操作手册 diff --git a/src/utils/dict.ts b/src/utils/dict.ts index 3522a338..84b2bbe9 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -253,6 +253,8 @@ export enum DICT_TYPE { MES_MOLD_RECORD_TYPE = "mes_mold_record_type", MES_PASS_OR_NOPASS = "mes_pass_or_nopass", MES_MANTAIN_LEVEL = "mes_mantain_level", + MOLD_GET_STATUS = "mold_get_status", + MES_PRE_PRODUCTION = "mes_pre_production", //====iot IOT_SIEMENS_TYPE = "iot_siemens_type", IOT_MODBUS_TYPE = "iot_modbus_type", diff --git a/src/views/erp/mold/MoldBrandForm.vue b/src/views/erp/mold/MoldBrandForm.vue index f9170cd5..2bd5f252 100644 --- a/src/views/erp/mold/MoldBrandForm.vue +++ b/src/views/erp/mold/MoldBrandForm.vue @@ -35,16 +35,15 @@ - - + + - + - - - {{ dict.label }} - - + - + + ([]) // 产品列表 @@ -98,7 +109,6 @@ const formData = ref({ feedingRecordCode: undefined, productId: undefined, planId: undefined, - productId: undefined, itemId: undefined, feedingPipeline: undefined, feedingType: undefined, @@ -109,7 +119,8 @@ const formData = ref({ recordStatus: undefined, }) const formRules = reactive({ - feedingType: [{ required: true, message: '投料类型不能为空', trigger: 'blur' }] + feedingType: [{ required: true, message: '投料类型不能为空', trigger: 'blur' }], + feedingPipeline: [{ required: true, message: '制浆线不能为空', trigger: 'blur' }] }) const formRef = ref() // 表单 Ref @@ -122,10 +133,8 @@ const open = async (type: string, id?: number) => { dialogVisible.value = true dialogTitle.value = t('action.' + type) formType.value = type - resetForm() formData.value.feedingType = 'org' - formData.value.feedingPipeline = 'zhijiang2' // 修改时,设置数据 if (id) { formLoading.value = true @@ -137,6 +146,8 @@ const open = async (type: string, id?: number) => { } // 加载产品、 productList.value = await ProductApi.getMesProductSimpleList() + // 加载组织 + await getOrganizationTree() } defineExpose({ open }) // 提供 open 方法,用于打开弹窗 @@ -195,4 +206,14 @@ const resetForm = () => { } formRef.value?.resetFields() } + +/** 获得产线工位树 */ +const getOrganizationTree = async () => { + organizationTree.value = [] + const req = {orgClass:'pipeline'} + const data = await OrganizationApi.getOrganizationList(req) + const root: Tree = { id: 0, name: '顶级产线工位', children: [] } + root.children = handleTree(data, 'id', 'parentId') + organizationTree.value.push(root) +} diff --git a/src/views/mes/feedingrecord/components/FeedingRecordDetailList.vue b/src/views/mes/feedingrecord/components/FeedingRecordDetailList.vue index d4d8ab8f..0339206d 100644 --- a/src/views/mes/feedingrecord/components/FeedingRecordDetailList.vue +++ b/src/views/mes/feedingrecord/components/FeedingRecordDetailList.vue @@ -6,7 +6,7 @@ - + diff --git a/src/views/mes/feedingrecord/index.vue b/src/views/mes/feedingrecord/index.vue index 173556ff..bf608ac6 100644 --- a/src/views/mes/feedingrecord/index.vue +++ b/src/views/mes/feedingrecord/index.vue @@ -17,24 +17,17 @@ class="!w-240px" /> - - - - + - - - - + - + @@ -135,7 +124,7 @@ width="180px" /> - + @@ -187,13 +176,14 @@ import download from '@/utils/download' import { FeedingRecordApi, FeedingRecordVO } from '@/api/mes/feedingrecord' import FeedingRecordForm from './FeedingRecordForm.vue' import FeedingRecordDetailList from './components/FeedingRecordDetailList.vue' - +import { OrganizationApi, OrganizationVO } from '@/api/mes/organization' +import { defaultProps, handleTree } from '@/utils/tree' /** 投料记录 列表 */ defineOptions({ name: 'FeedingRecord' }) const message = useMessage() // 消息弹窗 const { t } = useI18n() // 国际化 - +const organizationTree = ref() // 树形结构 const loading = ref(true) // 列表的加载中 const list = ref([]) // 列表的数据 const total = ref(0) // 列表的总页数 @@ -276,6 +266,8 @@ const handleExport = async () => { /** 初始化 **/ onMounted(() => { + // 加载组织 + getOrganizationTree() getList() }) /** 提交记录操作 */ @@ -283,7 +275,6 @@ const handleUpdateStatus = async (id: number, status:string) => { try { // 二次确认 await message.confirm("确认提交投料记录?", "一旦提交成功无法撤回!") - // 发起删除 await FeedingRecordApi.updateFeedingRecordStatus(id,status) message.success("提交成功!") // 刷新列表 @@ -297,4 +288,14 @@ const handleTabClick = (tab: TabsPaneContext) => { queryParams.feedingType = tab.paneName handleQuery() } + +/** 获得产线工位树 */ +const getOrganizationTree = async () => { + organizationTree.value = [] + const req = {orgClass:'pipeline'} + const data = await OrganizationApi.getOrganizationList(req) + const root: Tree = { id: 0, name: '顶级产线工位', children: [] } + root.children = handleTree(data, 'id', 'parentId') + organizationTree.value.push(root) +} diff --git a/src/views/mes/itemrequisition/components/ItemRequisitionDetailList.vue b/src/views/mes/itemrequisition/components/ItemRequisitionDetailList.vue index 82e3a499..7ddd99cc 100644 --- a/src/views/mes/itemrequisition/components/ItemRequisitionDetailList.vue +++ b/src/views/mes/itemrequisition/components/ItemRequisitionDetailList.vue @@ -2,7 +2,7 @@ - + @@ -11,7 +11,7 @@ - + @@ -39,11 +39,6 @@ const getList = async () => { } } -/** 搜索按钮操作 */ -const handleQuery = () => { - queryParams.pageNo = 1 - getList() -} /** 初始化 **/ onMounted(() => { diff --git a/src/views/mes/itemrequisition/index.vue b/src/views/mes/itemrequisition/index.vue index 7d881490..d593abdd 100644 --- a/src/views/mes/itemrequisition/index.vue +++ b/src/views/mes/itemrequisition/index.vue @@ -96,11 +96,7 @@ - - - + - + /> --> - + diff --git a/src/views/mes/moldget/index.vue b/src/views/mes/moldget/index.vue index 973a9b18..20f5c80a 100644 --- a/src/views/mes/moldget/index.vue +++ b/src/views/mes/moldget/index.vue @@ -36,13 +36,19 @@ /> - + > + + - - - - - - - - - - - - + - - - + @@ -48,34 +46,6 @@ - - - - - - - - - - - - {{ dict.label }} - - - - -