add(hwmom-mes): 添加等同物料名称字段并实现关联查询

- 在 BaseEqualMaterialInfo 模型中添加 equalMaterialName 字段
- 在 BaseEqualMaterialInfoServiceImpl 中实现等同物料名称的关联查询
- 在 BaseEqualMaterialInfoVo 中添加 equalMaterialName 字段,并在 Excel 中显示
master
zch 3 weeks ago
parent 87715ec818
commit 79298094aa

@ -1,10 +1,12 @@
package org.dromara.mes.domain;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.tenant.core.TenantEntity;
import java.io.Serial;
@ -53,4 +55,12 @@ public class BaseEqualMaterialInfo extends TenantEntity {
*/
@TableField(exist = false)
private String materialName;//映射字段
/**
*
*/
@TableField(exist = false)
private String equalMaterialName;//映射字段
}

@ -1,12 +1,12 @@
package org.dromara.mes.domain.vo;
import org.dromara.mes.domain.BaseEqualMaterialInfo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import org.dromara.mes.domain.BaseEqualMaterialInfo;
import java.io.Serial;
import java.io.Serializable;
@ -101,4 +101,12 @@ public class BaseEqualMaterialInfoVo implements Serializable {
*/
@ExcelProperty(value = "物料名称")
private String materialName;
/**
*
*/
@ExcelProperty(value = "物料名称")
private String equalMaterialName;//映射字段
}

@ -1,28 +1,27 @@
package org.dromara.mes.service.impl;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
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.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.mes.domain.BaseEqualMaterialInfo;
import org.dromara.mes.domain.BaseMaterialInfo;
import org.dromara.mes.mapper.BaseMaterialInfoMapper;
import org.springframework.stereotype.Service;
import org.dromara.mes.domain.bo.BaseEqualMaterialInfoBo;
import org.dromara.mes.domain.vo.BaseEqualMaterialInfoVo;
import org.dromara.mes.domain.BaseEqualMaterialInfo;
import org.dromara.mes.mapper.BaseEqualMaterialInfoMapper;
import org.dromara.mes.mapper.BaseMaterialInfoMapper;
import org.dromara.mes.service.IBaseEqualMaterialInfoService;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Collection;
import org.springframework.util.ObjectUtils;
/**
* Service
@ -53,6 +52,14 @@ public class BaseEqualMaterialInfoServiceImpl implements IBaseEqualMaterialInfoS
if (!ObjectUtils.isEmpty(baseMaterialInfo)) {
baseEqualMaterialInfoVo.setMaterialName(baseMaterialInfo.getMaterialName());
}
// 关联等同物料名称
BaseMaterialInfo EqualMaterialInfo = baseMaterialInfoMapper.selectOne(Wrappers.lambdaQuery(BaseMaterialInfo.class)
.eq(BaseMaterialInfo::getMaterialId, baseEqualMaterialInfoVo.getMaterialId()));
if (!ObjectUtils.isEmpty(EqualMaterialInfo)) {
baseEqualMaterialInfoVo.setEqualMaterialName(EqualMaterialInfo.getMaterialName());
}
}
return baseEqualMaterialInfoVo;
}
@ -92,6 +99,11 @@ public class BaseEqualMaterialInfoServiceImpl implements IBaseEqualMaterialInfoS
.select(BaseMaterialInfo::getMaterialName)
.leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, BaseEqualMaterialInfo::getMaterialId)
//关联查询等同物料名称
.selectAs(BaseMaterialInfo::getMaterialName,BaseEqualMaterialInfo::getEqualMaterialName)
.leftJoin(BaseMaterialInfo.class, BaseMaterialInfo::getMaterialId, BaseEqualMaterialInfo::getMaterialId)
.eq(bo.getEqualMaterialInfoId() != null, BaseEqualMaterialInfo::getEqualMaterialInfoId, bo.getEqualMaterialInfoId())
.eq(bo.getMaterialId() != null, BaseEqualMaterialInfo::getMaterialId, bo.getMaterialId())
.eq(bo.getEqualMaterialId() != null, BaseEqualMaterialInfo::getEqualMaterialId, bo.getEqualMaterialId())

Loading…
Cancel
Save