From c183142e88596c6f7856c8d3fd9034ad7a26ff36 Mon Sep 17 00:00:00 2001 From: zxy Date: Mon, 8 Jun 2026 14:10:08 +0800 Subject: [PATCH] =?UTF-8?q?feat(machine):=20=E6=B7=BB=E5=8A=A0=E6=9C=BA?= =?UTF-8?q?=E5=8F=B0=E9=A1=B5=E9=9D=A2=E4=BA=A7=E7=BA=BF=E5=B7=A5=E5=BA=8F?= =?UTF-8?q?=E7=AD=9B=E9=80=89=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在机台页面搜索表单中新增所属产线和所属工序筛选项 - 调整搜索表单标签宽度从68px到80px - 优化产线和工序数据获取方式,使用下拉选项替代映射表 - 在用户机台页面表格中新增机台编码列 - 更新机台查询接口支持按产线ID和工序ID筛选 - 完善用户机台表单中的机台选择功能,支持按工序关联机台 - 重构部分VO类的注解导入顺序以符合规范 --- .../admin/machine/vo/MachinePageReqVO.java | 19 ++-- .../usermachine/vo/UserMachinePageReqVO.java | 13 ++- .../usermachine/UserMachineDetailDO.java | 1 + .../biz/dal/mysql/machine/MachineMapper.java | 2 + .../src/types/auto-imports.d.ts | 2 - .../src/views/biz/machine/index.vue | 90 ++++++++++++------- .../views/biz/usermachine/UserMachineForm.vue | 88 ++++++++++++++++-- .../src/views/biz/usermachine/index.vue | 1 + 8 files changed, 162 insertions(+), 54 deletions(-) diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/machine/vo/MachinePageReqVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/machine/vo/MachinePageReqVO.java index c757aa2..9f51351 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/machine/vo/MachinePageReqVO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/machine/vo/MachinePageReqVO.java @@ -1,13 +1,10 @@ package com.ningxia.yunxi.chemmes.module.biz.controller.admin.machine.vo; -import lombok.*; -import java.util.*; -import io.swagger.v3.oas.annotations.media.Schema; import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; -import org.springframework.format.annotation.DateTimeFormat; -import java.time.LocalDateTime; - -import static com.ningxia.yunxi.chemmes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; @Schema(description = "管理后台 - 机台主数据分页 Request VO") @Data @@ -18,4 +15,10 @@ public class MachinePageReqVO extends PageParam { @Schema(description = "状态(1启用 2 未启用)", example = "1") private Integer enabledStatus; -} \ No newline at end of file + + //产线,工序 + @Schema(description = "产线", example = "1") + private String belgLineId; + @Schema(description = "工序", example = "1") + private String belgProcId; +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/usermachine/vo/UserMachinePageReqVO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/usermachine/vo/UserMachinePageReqVO.java index a8a1dc8..c891059 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/usermachine/vo/UserMachinePageReqVO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/controller/admin/usermachine/vo/UserMachinePageReqVO.java @@ -1,13 +1,10 @@ package com.ningxia.yunxi.chemmes.module.biz.controller.admin.usermachine.vo; -import lombok.*; -import java.util.*; -import io.swagger.v3.oas.annotations.media.Schema; import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam; -import org.springframework.format.annotation.DateTimeFormat; -import java.time.LocalDateTime; - -import static com.ningxia.yunxi.chemmes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; @Schema(description = "管理后台 - 人员所属机台、班组配置分页 Request VO") @Data @@ -24,4 +21,4 @@ public class UserMachinePageReqVO extends PageParam { @Schema(description = "班组(甲 乙 丙 丁)") private String classGroup; -} \ No newline at end of file +} diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/usermachine/UserMachineDetailDO.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/usermachine/UserMachineDetailDO.java index 240ddbc..1d3afd6 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/usermachine/UserMachineDetailDO.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/dataobject/usermachine/UserMachineDetailDO.java @@ -58,4 +58,5 @@ public class UserMachineDetailDO extends BaseDO { private String procName; private String procCd; private Integer procId; + } diff --git a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/machine/MachineMapper.java b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/machine/MachineMapper.java index 160e1d9..de0c61b 100644 --- a/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/machine/MachineMapper.java +++ b/mes-module-chemmes/mes-module-chemmes-biz/src/main/java/com/ningxia/yunxi/chemmes/module/biz/dal/mysql/machine/MachineMapper.java @@ -21,6 +21,8 @@ public interface MachineMapper extends BaseMapperX { default PageResult selectPage(MachinePageReqVO reqVO) { return selectPage(reqVO, new LambdaQueryWrapperX() .eqIfPresent(MachineDO::getEnabledStatus, reqVO.getEnabledStatus()) + .eqIfPresent(MachineDO::getBelgProcId, reqVO.getBelgProcId()) + .eqIfPresent(MachineDO::getBelgLineId, reqVO.getBelgLineId()) .and(reqVO.getKeyWord() != null, wrapper -> wrapper .like(MachineDO::getMachineName, reqVO.getKeyWord()) .or() diff --git a/mes-ui/mes-ui-admin-vue3/src/types/auto-imports.d.ts b/mes-ui/mes-ui-admin-vue3/src/types/auto-imports.d.ts index 66aeaec..f525c74 100644 --- a/mes-ui/mes-ui-admin-vue3/src/types/auto-imports.d.ts +++ b/mes-ui/mes-ui-admin-vue3/src/types/auto-imports.d.ts @@ -7,8 +7,6 @@ export {} declare global { const DICT_TYPE: typeof import('@/utils/dict')['DICT_TYPE'] const EffectScope: typeof import('vue')['EffectScope'] - const ElMessage: typeof import('element-plus/es')['ElMessage'] - const ElMessageBox: typeof import('element-plus/es')['ElMessageBox'] const computed: typeof import('vue')['computed'] const createApp: typeof import('vue')['createApp'] const customRef: typeof import('vue')['customRef'] diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/machine/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/machine/index.vue index 6a15739..a3f4be0 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/biz/machine/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/machine/index.vue @@ -6,8 +6,38 @@ :model="queryParams" ref="queryFormRef" :inline="true" - label-width="68px" + label-width="80px" > + + + + + + + + + + { +// 产线列表 +const proLineOptions = ref([]) +// 工序列表 +const procOptions = ref([]) + +/** 获取产线列表 */ +const loadProLineOptions = async () => { try { const data = await ProLineApi.getProLineDropdown({}) - const map = {} - data.forEach(item => { - map[item.id] = item.proLineName - }) - proLineMap.value = map + proLineOptions.value = data || [] } catch {} } -// 工序名称映射 -const procMap = ref({}) -const loadProcMap = async () => { +/** 获取工序列表 */ +const loadProcOptions = async () => { try { const data = await ProcApi.getProcDropdown({}) - const map = {} - data.forEach(item => { - map[item.id] = item.procName - }) - procMap.value = map + procOptions.value = data || [] } catch {} } -// 获取产线名称 -const getProLineName = (id) => { - return proLineMap.value[id] || id || '-' -} - -// 获取工序名称 -const getProcName = (id) => { - return procMap.value[id] || id || '-' -} - /** 查询列表 */ const getList = async () => { loading.value = true @@ -213,9 +230,20 @@ const handleExport = async () => { } /** 初始化 **/ -onMounted(() => { - loadProLineMap() - loadProcMap() +onMounted(async () => { + await Promise.all([loadProLineOptions(), loadProcOptions()]) getList() }) + +// 获取产线名称 +const getProLineName = (id) => { + const item = proLineOptions.value.find(p => p.id === id) + return item ? item.proLineName : (id || '-') +} + +// 获取工序名称 +const getProcName = (id) => { + const item = procOptions.value.find(p => p.id === id) + return item ? item.procName : (id || '-') +} diff --git a/mes-ui/mes-ui-admin-vue3/src/views/biz/usermachine/UserMachineForm.vue b/mes-ui/mes-ui-admin-vue3/src/views/biz/usermachine/UserMachineForm.vue index 4492ac7..4eaf9c6 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/biz/usermachine/UserMachineForm.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/biz/usermachine/UserMachineForm.vue @@ -92,10 +92,27 @@ /> - + + + - +