From 477ebb304d50eb5749043e6d900abcc37e21c150 Mon Sep 17 00:00:00 2001 From: zch Date: Tue, 18 Mar 2025 20:47:44 +0800 Subject: [PATCH] =?UTF-8?q?change(device):=20=E8=AE=BE=E5=A4=87=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E5=88=97=E8=A1=A8=E5=A2=9E=E5=8A=A0=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E5=A4=A7=E7=B1=BB=E5=90=8D=E7=A7=B0=E5=AD=97=E6=AE=B5,?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=A5=96=E5=85=88=E8=8A=82=E7=82=B9=E7=9A=84?= =?UTF-8?q?=E6=8F=92=E5=85=A5=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 BaseDeviceType 模型中添加 deviceCategoryName 字段用于映射设备大类名称 - 在 BaseDeviceTypeBo 和 BaseDeviceTypeVo 中添加相应的字段和注解- 修改 BaseDeviceTypeServiceImpl 中的查询方法,增加设备大类名称的关联查询 - 优化设备类型插入逻辑,处理父节点为空的情况 --- .../org/dromara/mes/domain/BaseDeviceType.java | 7 +++++++ .../dromara/mes/domain/bo/BaseDeviceTypeBo.java | 14 +++++++++----- .../dromara/mes/domain/vo/BaseDeviceTypeVo.java | 6 +++++- .../service/impl/BaseDeviceTypeServiceImpl.java | 17 +++++++++++++++++ 4 files changed, 38 insertions(+), 6 deletions(-) diff --git a/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/BaseDeviceType.java b/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/BaseDeviceType.java index b7010dac..1b0ae8ac 100644 --- a/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/BaseDeviceType.java +++ b/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/BaseDeviceType.java @@ -24,6 +24,7 @@ public class BaseDeviceType extends TenantEntity { /** * 物料类型ID */ + @TableId(value = "device_type_id", type = IdType.AUTO) private Long deviceTypeId; /** @@ -61,5 +62,11 @@ public class BaseDeviceType extends TenantEntity { */ private String remark; + /** + * 设备大类名称 + */ + @TableField(exist = false) + private String deviceCategoryName;//join映射字段 + } diff --git a/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/bo/BaseDeviceTypeBo.java b/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/bo/BaseDeviceTypeBo.java index fda02444..f7cffa08 100644 --- a/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/bo/BaseDeviceTypeBo.java +++ b/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/bo/BaseDeviceTypeBo.java @@ -23,7 +23,7 @@ public class BaseDeviceTypeBo extends BaseEntity { /** * 物料类型ID */ - @NotNull(message = "物料类型ID不能为空", groups = { AddGroup.class, EditGroup.class }) +/* @NotNull(message = "物料类型ID不能为空", groups = { AddGroup.class, EditGroup.class })*/ private Long deviceTypeId; /** @@ -35,13 +35,13 @@ public class BaseDeviceTypeBo extends BaseEntity { /** * 设备类型编号 */ - @NotBlank(message = "设备类型编号不能为空", groups = { AddGroup.class, EditGroup.class }) +/* @NotBlank(message = "设备类型编号不能为空", groups = { AddGroup.class, EditGroup.class })*/ private String deviceTypeCode; /** * 设备类型名称 */ - @NotBlank(message = "设备类型名称不能为空", groups = { AddGroup.class, EditGroup.class }) +/* @NotBlank(message = "设备类型名称不能为空", groups = { AddGroup.class, EditGroup.class })*/ private String deviceTypeName; /** @@ -53,13 +53,13 @@ public class BaseDeviceTypeBo extends BaseEntity { /** * 设备大类ID(大类ID(关联base_category表category_type为2的)) */ - @NotNull(message = "设备大类不能为空", groups = { AddGroup.class, EditGroup.class }) +/* @NotNull(message = "设备大类不能为空", groups = { AddGroup.class, EditGroup.class })*/ private Long deviceCategoryId; /** * 激活标识(1是 0否) */ - @NotBlank(message = "激活标识不能为空", groups = { AddGroup.class, EditGroup.class }) +/* @NotBlank(message = "激活标识不能为空", groups = { AddGroup.class, EditGroup.class })*/ private String activeFlag; /** @@ -68,5 +68,9 @@ public class BaseDeviceTypeBo extends BaseEntity { /* @NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })*/ private String remark; + /** + * 设备大类名称 + */ + private String deviceCategoryName;//join映射字段 } diff --git a/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/vo/BaseDeviceTypeVo.java b/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/vo/BaseDeviceTypeVo.java index fd77434d..fcd29675 100644 --- a/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/vo/BaseDeviceTypeVo.java +++ b/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/domain/vo/BaseDeviceTypeVo.java @@ -78,5 +78,9 @@ public class BaseDeviceTypeVo implements Serializable { @ExcelProperty(value = "备注") private String remark; - + /** + * 设备大类名称 + */ + @ExcelProperty(value = "设备大类名称") + private String deviceCategoryName;//join映射字段 } diff --git a/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/service/impl/BaseDeviceTypeServiceImpl.java b/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/service/impl/BaseDeviceTypeServiceImpl.java index de2f880d..cc654546 100644 --- a/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/service/impl/BaseDeviceTypeServiceImpl.java +++ b/ruoyi-modules/hwmom-mes/src/main/java/org/dromara/mes/service/impl/BaseDeviceTypeServiceImpl.java @@ -1,5 +1,6 @@ package org.dromara.mes.service.impl; +import org.apache.commons.lang3.ObjectUtils; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -9,6 +10,8 @@ import com.github.yulichang.toolkit.JoinWrappers; import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import lombok.RequiredArgsConstructor; +import org.dromara.mes.domain.BaseDeviceCategory; +import org.dromara.mes.domain.vo.BaseMaterialTypeVo; import org.springframework.stereotype.Service; import org.dromara.mes.domain.bo.BaseDeviceTypeBo; import org.dromara.mes.domain.vo.BaseDeviceTypeVo; @@ -73,6 +76,11 @@ public class BaseDeviceTypeServiceImpl implements IBaseDeviceTypeService { Map params = bo.getParams(); MPJLambdaWrapper lqw = JoinWrappers.lambda(BaseDeviceType.class) .selectAll(BaseDeviceType.class) + + // 关联查询设备大类信息 + .select(BaseDeviceCategory::getDeviceCategoryName) + .leftJoin(BaseDeviceCategory.class,BaseDeviceCategory::getDeviceCategoryId,BaseDeviceType::getDeviceCategoryId) + .eq(bo.getDeviceTypeId() != null, BaseDeviceType::getDeviceTypeId, bo.getDeviceTypeId()) .eq(bo.getParentId() != null, BaseDeviceType::getParentId, bo.getParentId()) .eq(StringUtils.isNotBlank(bo.getDeviceTypeCode()), BaseDeviceType::getDeviceTypeCode, bo.getDeviceTypeCode()) @@ -94,6 +102,15 @@ public class BaseDeviceTypeServiceImpl implements IBaseDeviceTypeService { public Boolean insertByBo(BaseDeviceTypeBo bo) { BaseDeviceType add = MapstructUtils.convert(bo, BaseDeviceType.class); validEntityBeforeSave(add); + //获取父节点信息 + BaseDeviceTypeVo query = baseMapper.selectVoById(bo.getParentId()); + if (ObjectUtils.isNotEmpty(query)) { + //若父节点不为空,则将父节点的ancestors拼接父节点id拼接成ancestors + add.setAncestors(query.getAncestors() + "," + bo.getParentId()); + }else{ + //若父节点为空,则ancestors仅有父节点id + add.setAncestors(bo.getParentId().toString()); + } boolean flag = baseMapper.insert(add) > 0; if (flag) { bo.setDeviceTypeId(add.getDeviceTypeId());