fix: 原始bom列表支持查询最后一级数据
This commit is contained in:
parent
0b0368993d
commit
55db281e14
|
|
@ -11,4 +11,6 @@ public class OriginalConstant {
|
||||||
public static final String COMMON_MATERIAL_CATEGORY_CODE = "200901";
|
public static final String COMMON_MATERIAL_CATEGORY_CODE = "200901";
|
||||||
|
|
||||||
public static final String NO_BOM_VERSION="A-1";
|
public static final String NO_BOM_VERSION="A-1";
|
||||||
|
|
||||||
|
public static final String DEFAULT_BOM_VERSION="A00";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -153,20 +153,29 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (CollUtil.isNotEmpty(queryDrawingNos)) {
|
if (CollUtil.isNotEmpty(queryDrawingNos)) {
|
||||||
List<BomNewOriginalParentEntity> materialBoms = this.lambdaQuery().in(BomNewOriginalParentEntity::getDrawingNo, queryDrawingNos).eq(BomNewOriginalParentEntity::getLastVersionIs, 1)
|
// List<BomNewOriginalParentEntity> materialBoms = this.lambdaQuery().in(BomNewOriginalParentEntity::getDrawingNo, queryDrawingNos).eq(BomNewOriginalParentEntity::getLastVersionIs, 1)
|
||||||
.eq(BomNewOriginalParentEntity::getStatus, OriginalStatusEnum.UN_CONVERT.getValue()).list();
|
// .eq(BomNewOriginalParentEntity::getStatus, OriginalStatusEnum.UN_CONVERT.getValue()).list();
|
||||||
if(query.getStatus().equals(1) && CollUtil.isEmpty(materialBoms)){
|
// if(query.getStatus().equals(1) && CollUtil.isEmpty(materialBoms)){
|
||||||
return result;
|
// return result;
|
||||||
}
|
// }
|
||||||
List<String> parentDrawingNos = new ArrayList<>(getParentDrawingNoByMaterialNo(queryDrawingNos));
|
List<String> parentDrawingNos = new ArrayList<>(getParentDrawingNoByMaterialNo(queryDrawingNos));
|
||||||
parentDrawingNos.addAll(queryDrawingNos);
|
parentDrawingNos.addAll(queryDrawingNos);
|
||||||
if (CollUtil.isNotEmpty(parentDrawingNos)) {
|
if (CollUtil.isNotEmpty(parentDrawingNos)) {
|
||||||
List<BomOriginalListVO> parents = this.getBaseMapper().getParentForDrawingNoSeach(parentDrawingNos, query.getStatus());
|
List<BomOriginalListVO> parents = this.getBaseMapper().getParentForDrawingNoSeach(parentDrawingNos, query.getStatus());
|
||||||
|
materialMainService.intiMaterialInfo(parents, EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT);
|
||||||
List<BomOriginalListVO> childs = this.getBaseMapper().getChildForDrawingNoSeach(parentDrawingNos,query.getStatus());
|
List<BomOriginalListVO> childs = this.getBaseMapper().getChildForDrawingNoSeach(parentDrawingNos,query.getStatus());
|
||||||
List<BomOriginalListVO> data = new ArrayList<>();
|
materialMainService.intiMaterialInfo(childs, EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT);
|
||||||
data.addAll(parents);
|
childs.stream().filter(f -> StrUtil.isBlank(f.getCurrentVersion())).forEach(f -> {
|
||||||
data.addAll(childs);
|
if (MaterialshouldBomExistUtil.checkShouldBomExist(f.getMaterialCategoryCode(), f.getMaterialGetType())) {
|
||||||
materialMainService.intiMaterialInfo(data, EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT);
|
f.setCurrentVersion(OriginalConstant.NO_BOM_VERSION);
|
||||||
|
} else {
|
||||||
|
f.setCurrentVersion(OriginalConstant.DEFAULT_BOM_VERSION);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
// List<BomOriginalListVO> data = new ArrayList<>();
|
||||||
|
// data.addAll(parents);
|
||||||
|
// data.addAll(childs);
|
||||||
|
// materialMainService.intiMaterialInfo(data, EBomConstant.EBOM_IGNORED_FIELDS_INIT_MATERIAL_DEFAULT);
|
||||||
result = handSeachToTree(parents, childs);
|
result = handSeachToTree(parents, childs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -486,11 +495,11 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
||||||
//开始转换
|
//开始转换
|
||||||
for (BomNewOriginalParentEntity parent : bomNewOriginalParentEntities) {
|
for (BomNewOriginalParentEntity parent : bomNewOriginalParentEntities) {
|
||||||
|
|
||||||
if (!Objects.equals(parent.getCreatedBy(), SessionUtil.getUserCode())){
|
// if (!Objects.equals(parent.getCreatedBy(), SessionUtil.getUserCode())){
|
||||||
importOriginalBomVOList.add(new ImportOriginalBomVO(parent.getDrawingNo(),"非本人创建"));
|
// importOriginalBomVOList.add(new ImportOriginalBomVO(parent.getDrawingNo(),"非本人创建"));
|
||||||
log.warn(SessionUtil.getRealName()+"("+SessionUtil.getUserCode()+")转换原始bom("+parent.getRowId().toString()+")到ebom的操作被阻止");
|
// log.warn(SessionUtil.getRealName()+"("+SessionUtil.getUserCode()+")转换原始bom("+parent.getRowId().toString()+")到ebom的操作被阻止");
|
||||||
continue;
|
// continue;
|
||||||
}
|
// }
|
||||||
|
|
||||||
LogRecordContext.putVariable("bom",parent);
|
LogRecordContext.putVariable("bom",parent);
|
||||||
Long ebomRowId = IdWorker.getId();
|
Long ebomRowId = IdWorker.getId();
|
||||||
|
|
|
||||||
|
|
@ -28,15 +28,12 @@ public class MaterialshouldBomExistUtil {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean checkShouldBomExist(BaseMaterialVO material){
|
public static boolean checkShouldBomExist(BaseMaterialVO material){
|
||||||
|
return checkShouldBomExist(material.getMaterialCategoryCode(), material.getMaterialGetType());
|
||||||
if(StrUtil.isNotBlank(material.getMaterialCategoryCode()) &&
|
}
|
||||||
(material.getMaterialCategoryCode().startsWith("30") || material.getMaterialCategoryCode().equals(OriginalConstant.COMMON_MATERIAL_CATEGORY_CODE) ||
|
public static boolean checkShouldBomExist(String materialCategoryCode, Integer materialGetType){
|
||||||
( material.getMaterialCategoryCode().startsWith("20") && MaterialGetEnum.developing.equalsValue(material.getMaterialGetType()) ))){
|
return StrUtil.isNotBlank(materialCategoryCode) &&
|
||||||
|
(materialCategoryCode.startsWith("30") || materialCategoryCode.equals(OriginalConstant.COMMON_MATERIAL_CATEGORY_CODE) ||
|
||||||
return true;
|
(materialCategoryCode.startsWith("20") && MaterialGetEnum.developing.equalsValue(materialGetType)));
|
||||||
}
|
|
||||||
return false;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -216,8 +216,9 @@
|
||||||
<!--物料编码搜索-子级-->
|
<!--物料编码搜索-子级-->
|
||||||
<select id="getChildForDrawingNoSeach" resultType="com.nflg.product.bomnew.pojo.vo.BomOriginalListVO">
|
<select id="getChildForDrawingNoSeach" resultType="com.nflg.product.bomnew.pojo.vo.BomOriginalListVO">
|
||||||
select if(#{state}=1 and c.status=2,3,c.status) as status ,c.current_version , c.created_by as bomCreatedBy
|
select if(#{state}=1 and c.status=2,3,c.status) as status ,c.current_version , c.created_by as bomCreatedBy
|
||||||
,c.devise_name,c.devise_user_code,c.dept_name ,
|
,IFNULL(c.devise_name,a.devise_name) as devise_name,IFNULL(c.devise_user_code,a.devise_user_code) AS devise_user_code
|
||||||
c.source, c.row_id as bomRowId, c.row_id as childBomRowId, b.*
|
,IFNULL(c.dept_name,a.dept_name) AS dept_name,IFNULL(c.source,a.source) AS source,IFNULL(c.row_id,"0") as bomRowId
|
||||||
|
,IFNULL(c.row_id,"0") as childBomRowId, b.*
|
||||||
from t_bom_new_original_parent a
|
from t_bom_new_original_parent a
|
||||||
join t_bom_new_original_child b on a.row_id =b.parent_row_id
|
join t_bom_new_original_child b on a.row_id =b.parent_row_id
|
||||||
left join t_bom_new_original_parent c on b.drawing_no=c.drawing_no and c.last_version_is=1
|
left join t_bom_new_original_parent c on b.drawing_no=c.drawing_no and c.last_version_is=1
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue