Merge branch 'feature/DM/nflg-bom' of http://112.74.186.154:3000/nflj/nflg_project into feature/DM/nflg-bom
This commit is contained in:
commit
6748b2b7d0
|
|
@ -105,7 +105,7 @@ public class EbomApi extends BaseApi {
|
||||||
public ResultVO<Boolean> generateVirtualPackage(@RequestBody VirtualPackageParamDto paramDto) {
|
public ResultVO<Boolean> generateVirtualPackage(@RequestBody VirtualPackageParamDto paramDto) {
|
||||||
VUtils.isTure(CollUtil.isEmpty(paramDto.getVirtualPackageValue())).throwMessage("请选择要生成的虚拟包");
|
VUtils.isTure(CollUtil.isEmpty(paramDto.getVirtualPackageValue())).throwMessage("请选择要生成的虚拟包");
|
||||||
|
|
||||||
VUtils.isTure(true).throwMessage("请选择30开头的或200401类型的物料");
|
|
||||||
bomNewEbomParentService.generateVirtualPackage(paramDto);
|
bomNewEbomParentService.generateVirtualPackage(paramDto);
|
||||||
return ResultVO.success(true);
|
return ResultVO.success(true);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -124,6 +124,7 @@ public class OriginalBomApi extends BaseApi {
|
||||||
*/
|
*/
|
||||||
@PostMapping("convertToEBom")
|
@PostMapping("convertToEBom")
|
||||||
@ApiOperation("原始BOM转Ebom")
|
@ApiOperation("原始BOM转Ebom")
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public ResultVO<Boolean> convertToEBom(@RequestBody List<Long> bomRowIds) throws ExecutionException, InterruptedException {
|
public ResultVO<Boolean> convertToEBom(@RequestBody List<Long> bomRowIds) throws ExecutionException, InterruptedException {
|
||||||
|
|
||||||
VUtils.isTure(CollUtil.isEmpty(bomRowIds)).throwMessage("请选择要转换的BOM");
|
VUtils.isTure(CollUtil.isEmpty(bomRowIds)).throwMessage("请选择要转换的BOM");
|
||||||
|
|
|
||||||
|
|
@ -276,6 +276,9 @@ public class BomNewEbomParentVO extends BaseMaterialVO implements Serializable {
|
||||||
@ApiModelProperty("bom层级数")
|
@ApiModelProperty("bom层级数")
|
||||||
private BigDecimal levelNumber;
|
private BigDecimal levelNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("层级号如:1-1")
|
||||||
|
private String levelNo;
|
||||||
|
|
||||||
@ApiModelProperty("来源行-父项物料编码")
|
@ApiModelProperty("来源行-父项物料编码")
|
||||||
private String sourceParentMaterialNo;
|
private String sourceParentMaterialNo;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -282,7 +282,7 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
|
||||||
EBomDetailTask detailTask = new EBomDetailTask(bomDetail);
|
EBomDetailTask detailTask = new EBomDetailTask(bomDetail);
|
||||||
ForkJoinTask<List<BomNewEbomParentVO>> submit = bomDetailPool.submit(detailTask);
|
ForkJoinTask<List<BomNewEbomParentVO>> submit = bomDetailPool.submit(detailTask);
|
||||||
|
|
||||||
List<BomNewEbomParentVO> result = submit.get();
|
List<BomNewEbomParentVO> result = submit.join();
|
||||||
return result;
|
return result;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -332,7 +332,7 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
||||||
List<BomNewOriginalParentEntity> bomNewOriginalParentEntities = this.getBaseMapper().selectBatchIds(bomRowIds);
|
List<BomNewOriginalParentEntity> bomNewOriginalParentEntities = this.getBaseMapper().selectBatchIds(bomRowIds);
|
||||||
|
|
||||||
List<BomNewOriginalParentEntity> convertedBom = bomNewOriginalParentEntities.stream().filter(u -> OriginalStatusEnum.OVER_CONVERT.equalsValue(u.getStatus())).collect(Collectors.toList());
|
List<BomNewOriginalParentEntity> convertedBom = bomNewOriginalParentEntities.stream().filter(u -> OriginalStatusEnum.OVER_CONVERT.equalsValue(u.getStatus())).collect(Collectors.toList());
|
||||||
VUtils.isTure(CollUtil.isNotEmpty(convertedBom)).throwMessage("所选BOM中存在已转换的BOM");
|
// VUtils.isTure(CollUtil.isNotEmpty(convertedBom)).throwMessage("所选BOM中存在已转换的BOM");
|
||||||
|
|
||||||
//开始转换
|
//开始转换
|
||||||
for (BomNewOriginalParentEntity parent : bomNewOriginalParentEntities) {
|
for (BomNewOriginalParentEntity parent : bomNewOriginalParentEntities) {
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,8 @@ public class MaterialService {
|
||||||
*/
|
*/
|
||||||
public String addMaterial(String drawingNo, String materialName, String materialCategoryCode) throws IOException {
|
public String addMaterial(String drawingNo, String materialName, String materialCategoryCode) throws IOException {
|
||||||
|
|
||||||
List<MaterialMainEntity> oldMaterialList = SpringUtil.getBean(MaterialMainService.class).lambdaQuery().eq(MaterialMainEntity::getMaterialName, materialName).list();
|
List<MaterialMainEntity> oldMaterialList = SpringUtil.getBean(MaterialMainService.class).lambdaQuery()
|
||||||
|
.eq(MaterialMainEntity::getMaterialName, materialName).list();
|
||||||
if(CollUtil.isNotEmpty(oldMaterialList)){
|
if(CollUtil.isNotEmpty(oldMaterialList)){
|
||||||
return oldMaterialList.get(0).getMaterialNo();
|
return oldMaterialList.get(0).getMaterialNo();
|
||||||
}
|
}
|
||||||
|
|
@ -78,8 +79,8 @@ public class MaterialService {
|
||||||
|
|
||||||
|
|
||||||
HttpUtils httpUtils = new HttpUtils();
|
HttpUtils httpUtils = new HttpUtils();
|
||||||
String token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySW5mbyI6IntcImRlcGFydE5hbWVcIjpcIuemj-W7uuWNl-aWuei3r-mdouacuuaisOaciemZkOWFrOWPuFwiLFwiZGVwYXJ0Um93SWRcIjoxNTg1MTk1Njk0ODcyNzg0ODk3LFwiZnVsbERlcHROYW1lXCI6XCJPVT3npo_lu7rljZfmlrnot6_pnaLmnLrmorDmnInpmZDlhazlj7gsREM9bmZsZ1wiLFwicXVlcnlEYXRhXCI6MixcInJlYWxOYW1lXCI6XCJhZG1pblwiLFwicm93SWRcIjoxNTQ3NTEyOTc4MDE2OTE5NTUzLFwidXNlckNvZGVcIjpcImFkbWluXCIsXCJ1c2VyTmFtZVwiOlwiYWRtaW5cIn0iLCJleHAiOjE3MDMwMTEyMzIsImp0aSI6IjQ5NTk3MGY0LTU3NTQtNDc1ZS05NmY0LTdkM2Y3ZTBkYmEwNyJ9.b01YDOG8FzXuWkJTrzI33tf9zwrqXZ2--BfvGN12YEA";
|
// String token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySW5mbyI6IntcImRlcGFydE5hbWVcIjpcIuemj-W7uuWNl-aWuei3r-mdouacuuaisOaciemZkOWFrOWPuFwiLFwiZGVwYXJ0Um93SWRcIjoxNTg1MTk1Njk0ODcyNzg0ODk3LFwiZnVsbERlcHROYW1lXCI6XCJPVT3npo_lu7rljZfmlrnot6_pnaLmnLrmorDmnInpmZDlhazlj7gsREM9bmZsZ1wiLFwicXVlcnlEYXRhXCI6MixcInJlYWxOYW1lXCI6XCJhZG1pblwiLFwicm93SWRcIjoxNTQ3NTEyOTc4MDE2OTE5NTUzLFwidXNlckNvZGVcIjpcImFkbWluXCIsXCJ1c2VyTmFtZVwiOlwiYWRtaW5cIn0iLCJleHAiOjE3MDMwMTEyMzIsImp0aSI6IjQ5NTk3MGY0LTU3NTQtNDc1ZS05NmY0LTdkM2Y3ZTBkYmEwNyJ9.b01YDOG8FzXuWkJTrzI33tf9zwrqXZ2--BfvGN12YEA";
|
||||||
// String token = SessionUtil.getSessionKey();
|
String token = SessionUtil.getSessionKey();
|
||||||
String s = httpUtils.doPost(NacosConfig.getNacosConfig().getAddMaterialUrl(), JSON.toJSONString(materialMainDTO), token);
|
String s = httpUtils.doPost(NacosConfig.getNacosConfig().getAddMaterialUrl(), JSON.toJSONString(materialMainDTO), token);
|
||||||
|
|
||||||
AddMaterialResultDTO result = JSON.parseObject(s, AddMaterialResultDTO.class);
|
AddMaterialResultDTO result = JSON.parseObject(s, AddMaterialResultDTO.class);
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,7 @@ public class UserRoleService {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Integer getUserJob(){
|
public Integer getUserJob(){
|
||||||
return 1;
|
// return 1;
|
||||||
// return technician()? UserJobEnum.ENGINEER.getValue():UserJobEnum.DESIGNER.getValue();
|
return technician()? UserJobEnum.ENGINEER.getValue():UserJobEnum.DESIGNER.getValue();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,14 +3,20 @@ package com.nflg.product.bomnew.service.domain.EBom;
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.lang.Pair;
|
import cn.hutool.core.lang.Pair;
|
||||||
|
import cn.hutool.core.util.NumberUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.hutool.extra.spring.SpringUtil;
|
import cn.hutool.extra.spring.SpringUtil;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
||||||
|
import com.google.common.collect.ImmutableMap;
|
||||||
|
import com.nflg.product.bomnew.constant.EBomExceptionStatusEnum;
|
||||||
|
import com.nflg.product.bomnew.constant.EBomStatusEnum;
|
||||||
import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum;
|
import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum;
|
||||||
import com.nflg.product.bomnew.pojo.entity.BomNewPbomChildEntity;
|
import com.nflg.product.bomnew.pojo.entity.BomNewPbomChildEntity;
|
||||||
import com.nflg.product.bomnew.pojo.entity.BomNewPbomParentEntity;
|
import com.nflg.product.bomnew.pojo.entity.BomNewPbomParentEntity;
|
||||||
import com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO;
|
import com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO;
|
||||||
|
import com.nflg.product.bomnew.service.BomNewPbomChildService;
|
||||||
import com.nflg.product.bomnew.service.BomNewPbomParentService;
|
import com.nflg.product.bomnew.service.BomNewPbomParentService;
|
||||||
|
import com.nflg.product.bomnew.util.VUtils;
|
||||||
import com.nflg.product.bomnew.util.VersionUtil;
|
import com.nflg.product.bomnew.util.VersionUtil;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
|
||||||
|
|
@ -38,22 +44,20 @@ public class EBomToPBom {
|
||||||
private List<BomNewPbomParentEntity> pBomParentResult = new ArrayList<>();
|
private List<BomNewPbomParentEntity> pBomParentResult = new ArrayList<>();
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
private List<BomNewPbomChildEntity> pBomChildResult = new ArrayList<>();
|
private List<BomNewPbomChildEntity> pBomChildResult = new ArrayList<>();
|
||||||
|
|
||||||
|
|
||||||
private Map<String, String> generateDrawingNoMap = new HashMap<>();
|
private Map<String, String> generateDrawingNoMap = new HashMap<>();
|
||||||
|
|
||||||
|
|
||||||
public EBomToPBom(BomNewEbomParentVO inParent, List<BomNewEbomParentVO> inAllBomDetail ,List<String> inFacCodes) {
|
public EBomToPBom(BomNewEbomParentVO inParent, List<BomNewEbomParentVO> inAllBomDetail, List<String> inFacCodes) {
|
||||||
this.parent = inParent;
|
this.parent = inParent;
|
||||||
this.allBomDetail = inAllBomDetail;
|
this.allBomDetail = inAllBomDetail;
|
||||||
this.facCodes=inFacCodes;
|
this.facCodes = inFacCodes;
|
||||||
generateDrawingNo(allBomDetail, inParent.getRowId(), "");
|
generateDrawingNo(allBomDetail, inParent.getRowId(), "");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 31項体层
|
* 31項体层
|
||||||
*/
|
*/
|
||||||
|
|
@ -66,11 +70,7 @@ public class EBomToPBom {
|
||||||
|
|
||||||
for (String facCode : facCodes) {
|
for (String facCode : facCodes) {
|
||||||
for (BomNewEbomParentVO vo : parentList) {
|
for (BomNewEbomParentVO vo : parentList) {
|
||||||
Pair<Integer, BomNewPbomParentEntity> parentPair = buildPBomParent(vo, facCode);
|
BomNewPbomParentEntity parentEnt = buildPBomParent(vo, facCode);
|
||||||
//旧版本,无需处理
|
|
||||||
if(parentPair.getKey().equals(0)){
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
//子级
|
//子级
|
||||||
List<BomNewEbomParentVO> child = result.stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId())).collect(Collectors.toList());
|
List<BomNewEbomParentVO> child = result.stream().filter(u -> u.getParentRowId().equals(vo.getBomRowId())).collect(Collectors.toList());
|
||||||
if (CollUtil.isNotEmpty(child)) {
|
if (CollUtil.isNotEmpty(child)) {
|
||||||
|
|
@ -78,7 +78,7 @@ public class EBomToPBom {
|
||||||
BomNewPbomChildEntity childEnt = new BomNewPbomChildEntity();
|
BomNewPbomChildEntity childEnt = new BomNewPbomChildEntity();
|
||||||
BeanUtil.copyProperties(eb, childEnt);
|
BeanUtil.copyProperties(eb, childEnt);
|
||||||
childEnt.setRowId(IdWorker.getId());
|
childEnt.setRowId(IdWorker.getId());
|
||||||
childEnt.setParentRowId(parentPair.getValue().getRowId());
|
childEnt.setParentRowId(parentEnt.getRowId());
|
||||||
childEnt.setFacCode(facCode);
|
childEnt.setFacCode(facCode);
|
||||||
this.pBomChildResult.add(childEnt);
|
this.pBomChildResult.add(childEnt);
|
||||||
}
|
}
|
||||||
|
|
@ -90,56 +90,53 @@ public class EBomToPBom {
|
||||||
/**
|
/**
|
||||||
* 数据效验
|
* 数据效验
|
||||||
*/
|
*/
|
||||||
private void check(){
|
private void check() {
|
||||||
|
List<BomNewEbomParentVO> collect = allBomDetail.stream().filter(u -> !EBomExceptionStatusEnum.OK.getValue().equals(u.getExceptionStatus())).collect(Collectors.toList());
|
||||||
|
VUtils.isTure(CollUtil.isNotEmpty(collect)).throwMessage("存在异常数据,请处理完再转换");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 构建父
|
* 构建父
|
||||||
|
*
|
||||||
* @param parentVo
|
* @param parentVo
|
||||||
* @return Pair<Integer, BomNewPbomParentEntity> key, 0-旧 1-新 value:pBomParent
|
* @return Pair<Integer, BomNewPbomParentEntity> key, 0-旧 1-新 value:pBomParent
|
||||||
*/
|
*/
|
||||||
private Pair<Integer, BomNewPbomParentEntity> buildPBomParent(BomNewEbomParentVO parentVo, String facCode){
|
private BomNewPbomParentEntity buildPBomParent(BomNewEbomParentVO parentVo, String facCode) {
|
||||||
BomNewPbomParentEntity oldParent = SpringUtil.getBean(BomNewPbomParentService.class).lambdaQuery()
|
BomNewPbomParentEntity oldParent = SpringUtil.getBean(BomNewPbomParentService.class).lambdaQuery()
|
||||||
.eq(BomNewPbomParentEntity::getMaterialNo,parentVo.getMaterialNo())
|
.eq(BomNewPbomParentEntity::getMaterialNo, parentVo.getMaterialNo())
|
||||||
.eq(BomNewPbomParentEntity::getFacCode,facCode).one();
|
.eq(BomNewPbomParentEntity::getFacCode, facCode).one();
|
||||||
|
|
||||||
if(Objects.nonNull(oldParent) && oldParent.getCurrentVersion().equals(parentVo.getCurrentVersion()) ){
|
if (Objects.nonNull(oldParent) && !EBomStatusEnum.PUBLISHED.equalsValue(oldParent.getStatus())) {
|
||||||
//删除原Pbom子级
|
SpringUtil.getBean(BomNewPbomChildService.class).getBaseMapper().deleteByMap(ImmutableMap.of("parent_row_id", oldParent.getRowId()));
|
||||||
// SpringUtil.getBean(BomNewPbomChildService.class).getBaseMapper().deleteByMap(ImmutableMap.of("parent_row_id",oldParent.getRowId()));
|
oldParent.setCurrentVersion(parentVo.getCurrentVersion());
|
||||||
return new Pair<>(0,oldParent);
|
this.pBomParentResult.add(oldParent);
|
||||||
}
|
return oldParent;
|
||||||
else {
|
} else {
|
||||||
BomNewPbomParentEntity pBomParent=new BomNewPbomParentEntity();
|
BomNewPbomParentEntity pBomParent = new BomNewPbomParentEntity();
|
||||||
BeanUtil.copyProperties(pBomParent,parentVo);
|
BeanUtil.copyProperties(pBomParent, parentVo);
|
||||||
pBomParent.setRowId(IdWorker.getId());
|
pBomParent.setRowId(IdWorker.getId());
|
||||||
pBomParent.setLastVersionIs(1);
|
pBomParent.setLastVersionIs(1);
|
||||||
pBomParent.setCurrentVersion(VersionUtil.getNextVersion(Objects.nonNull(oldParent)? oldParent.getCurrentVersion():""));
|
|
||||||
pBomParent.setFacCode(facCode);
|
pBomParent.setFacCode(facCode);
|
||||||
if(Objects.nonNull(oldParent)) {
|
|
||||||
oldParent.setLastVersionIs(0);
|
|
||||||
this.pBomParentResult.add(oldParent);
|
|
||||||
}
|
|
||||||
this.pBomParentResult.add(pBomParent);
|
this.pBomParentResult.add(pBomParent);
|
||||||
|
return pBomParent;
|
||||||
return new Pair<>(1, pBomParent);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 31提层
|
* 31提层
|
||||||
|
*
|
||||||
* @param
|
* @param
|
||||||
* @param
|
* @param
|
||||||
*/
|
*/
|
||||||
private void liftingLayer(){
|
private void liftingLayer() {
|
||||||
for (BomNewEbomParentVO vo : allBomDetail) {
|
for (BomNewEbomParentVO vo : allBomDetail) {
|
||||||
if (vo.getProjectType().equals(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getProductTypeKey())) {
|
if (vo.getProjectType().equals(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getProductTypeKey())) {
|
||||||
BomNewEbomParentVO lastVirtualPackage = getLastVirtualPackage(vo, VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE);
|
BomNewEbomParentVO lastVirtualPackage = getLastVirtualPackage(vo, VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE);
|
||||||
if (Objects.nonNull(lastVirtualPackage)) {
|
if (Objects.nonNull(lastVirtualPackage)) {
|
||||||
|
liftingLayerSummary(lastVirtualPackage, vo);
|
||||||
vo.setSourceRowId(vo.getParentRowId());
|
vo.setSourceRowId(vo.getParentRowId());
|
||||||
vo.setSourceParentMaterialNo(getParentMaterialNo(vo.getBomRowId()));
|
vo.setSourceParentMaterialNo(getParentMaterialNo(vo.getBomRowId()));
|
||||||
vo.setParentRowId(lastVirtualPackage.getBomRowId());
|
vo.setParentRowId(lastVirtualPackage.getBomRowId());
|
||||||
|
|
@ -150,6 +147,7 @@ public class EBomToPBom {
|
||||||
if (vo.getProjectType().equals(VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getProductTypeKey())) {
|
if (vo.getProjectType().equals(VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getProductTypeKey())) {
|
||||||
BomNewEbomParentVO lastVirtualPackage = getLastVirtualPackage(vo, VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE);
|
BomNewEbomParentVO lastVirtualPackage = getLastVirtualPackage(vo, VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE);
|
||||||
if (Objects.nonNull(lastVirtualPackage)) {
|
if (Objects.nonNull(lastVirtualPackage)) {
|
||||||
|
liftingLayerSummary(lastVirtualPackage, vo);
|
||||||
vo.setSourceRowId(vo.getParentRowId());
|
vo.setSourceRowId(vo.getParentRowId());
|
||||||
vo.setSourceParentMaterialNo(getParentMaterialNo(vo.getBomRowId()));
|
vo.setSourceParentMaterialNo(getParentMaterialNo(vo.getBomRowId()));
|
||||||
vo.setParentRowId(lastVirtualPackage.getBomRowId());
|
vo.setParentRowId(lastVirtualPackage.getBomRowId());
|
||||||
|
|
@ -161,9 +159,27 @@ public class EBomToPBom {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getParentMaterialNo(Long parentRowId){
|
/**
|
||||||
|
* 提层汇总数量
|
||||||
|
*
|
||||||
|
* @param lastVirtualPackage 虚拟包
|
||||||
|
* @param vo 提层项
|
||||||
|
*/
|
||||||
|
private void liftingLayerSummary(BomNewEbomParentVO lastVirtualPackage, BomNewEbomParentVO vo) {
|
||||||
|
BigDecimal sum = vo.getNum();
|
||||||
|
String parentLevelNo = vo.getLevelNo().substring(0, vo.getLevelNo().length() - 2);
|
||||||
|
while (parentLevelNo.length() >= lastVirtualPackage.getLevelNo().length()) {
|
||||||
|
List<BomNewEbomParentVO> parentList = allBomDetail.stream().filter(u -> u.getLevelNo().equals(parentLevelNo)).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isNotEmpty(parentList)) {
|
||||||
|
sum = NumberUtil.mul(sum, parentList.get(0).getNum());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
vo.setNum(sum);
|
||||||
|
}
|
||||||
|
|
||||||
|
private String getParentMaterialNo(Long parentRowId) {
|
||||||
List<BomNewEbomParentVO> collect = allBomDetail.stream().filter(u -> u.getBomRowId().equals(parentRowId)).collect(Collectors.toList());
|
List<BomNewEbomParentVO> collect = allBomDetail.stream().filter(u -> u.getBomRowId().equals(parentRowId)).collect(Collectors.toList());
|
||||||
if(CollUtil.isNotEmpty(collect)){
|
if (CollUtil.isNotEmpty(collect)) {
|
||||||
return collect.get(0).getMaterialNo();
|
return collect.get(0).getMaterialNo();
|
||||||
}
|
}
|
||||||
return "";
|
return "";
|
||||||
|
|
@ -178,10 +194,10 @@ public class EBomToPBom {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private BomNewEbomParentVO getVirtualPackageByName( VirtualPackageTypeEnum virtualPackageTypeEnum) {
|
private BomNewEbomParentVO getVirtualPackageByName(VirtualPackageTypeEnum virtualPackageTypeEnum) {
|
||||||
List<BomNewEbomParentVO> list = allBomDetail.stream().filter(u -> u.getMaterialName().contains(virtualPackageTypeEnum.getConMaterialName())).collect(Collectors.toList());
|
List<BomNewEbomParentVO> list = allBomDetail.stream().filter(u -> u.getMaterialName().contains(virtualPackageTypeEnum.getConMaterialName())).collect(Collectors.toList());
|
||||||
if(CollUtil.isNotEmpty(list)){
|
if (CollUtil.isNotEmpty(list)) {
|
||||||
return list.get(0);
|
return list.get(0);
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
|
|
@ -196,27 +212,24 @@ public class EBomToPBom {
|
||||||
* @param parentDrawingNo
|
* @param parentDrawingNo
|
||||||
*/
|
*/
|
||||||
private void generateDrawingNo(List<BomNewEbomParentVO> saveBomDetailParamDTO, Long bomRowID, String parentDrawingNo) {
|
private void generateDrawingNo(List<BomNewEbomParentVO> saveBomDetailParamDTO, Long bomRowID, String parentDrawingNo) {
|
||||||
List<BomNewEbomParentVO> firstLevelBoms = saveBomDetailParamDTO.stream().filter(u -> u.getBomRowId().equals(bomRowID)).collect(Collectors.toList());
|
List<BomNewEbomParentVO> firstLevelBoms = saveBomDetailParamDTO.stream().filter(u -> u.getParentRowId().equals(bomRowID)).collect(Collectors.toList());
|
||||||
parentDrawingNo = StrUtil.isNotBlank(parentDrawingNo) ? parentDrawingNo : "";
|
parentDrawingNo = StrUtil.isNotBlank(parentDrawingNo) ? parentDrawingNo : "";
|
||||||
Integer gNo = 1;
|
Integer gNo = 1;
|
||||||
|
|
||||||
String preAssemblyPackageLevelNo =StrUtil.isNotBlank(parentDrawingNo) ? StrUtil.join("-", parentDrawingNo, "1") : "1";
|
String preAssemblyPackageLevelNo = StrUtil.isNotBlank(parentDrawingNo) ? StrUtil.join("-", parentDrawingNo, "1") : "1";
|
||||||
for (BomNewEbomParentVO firstLevelBom : firstLevelBoms) {
|
for (BomNewEbomParentVO firstLevelBom : firstLevelBoms) {
|
||||||
String key = StrUtil.join("-", bomRowID.toString(), firstLevelBom.getMaterialNo());
|
|
||||||
if (generateDrawingNoMap.containsKey(key)) {
|
if (firstLevelBom.getMaterialName().contains(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getConMaterialName()) || firstLevelBom.getMaterialName().contains(VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getConMaterialName())) {
|
||||||
firstLevelBom.setLevelNumber(levelToNum(generateDrawingNoMap.get(key)));
|
firstLevelBom.setLevelNumber(levelToNum(preAssemblyPackageLevelNo));
|
||||||
|
firstLevelBom.setLevelNo(preAssemblyPackageLevelNo);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if(firstLevelBom.getMaterialName().contains(VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE.getConMaterialName()) || firstLevelBom.getMaterialName().contains(VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getConMaterialName())){
|
|
||||||
firstLevelBom.setLevelNumber(levelToNum(preAssemblyPackageLevelNo));
|
|
||||||
}
|
|
||||||
|
|
||||||
String levelKey = StrUtil.isNotBlank(parentDrawingNo) ? StrUtil.join("-", parentDrawingNo, gNo.toString()) : gNo.toString();
|
String levelKey = StrUtil.isNotBlank(parentDrawingNo) ? StrUtil.join("-", parentDrawingNo, gNo.toString()) : gNo.toString();
|
||||||
firstLevelBom.setLevelNumber(levelToNum(levelKey));
|
firstLevelBom.setLevelNumber(levelToNum(levelKey));
|
||||||
|
firstLevelBom.setLevelNo(levelKey);
|
||||||
gNo++;
|
gNo++;
|
||||||
generateDrawingNo(saveBomDetailParamDTO, firstLevelBom.getChildBomRowId(), firstLevelBom.getDrawingNo());
|
generateDrawingNo(saveBomDetailParamDTO, firstLevelBom.getChildBomRowId(), firstLevelBom.getLevelNo());
|
||||||
|
|
||||||
generateDrawingNoMap.put(key, firstLevelBom.getDrawingNo());
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,7 @@ public class EbomInitProjectType {
|
||||||
|
|
||||||
//10
|
//10
|
||||||
BomNewEbomParentVO parent = getParent(child.getParentRowId());
|
BomNewEbomParentVO parent = getParent(child.getParentRowId());
|
||||||
if (Objects.nonNull(parent) && parent.getProjectType().equals("Q")) {
|
if (Objects.nonNull(parent) && Objects.nonNull(parent.getProjectType()) && parent.getProjectType().equals("Q")) {
|
||||||
List<BomNewEbomParentVO> subChild = getChilds(child.getBomRowId());
|
List<BomNewEbomParentVO> subChild = getChilds(child.getBomRowId());
|
||||||
List<BomNewEbomParentVO> collect = subChild.stream().filter(u -> u.getMaterialCategoryCode().startsWith("1004")).collect(Collectors.toList());
|
List<BomNewEbomParentVO> collect = subChild.stream().filter(u -> u.getMaterialCategoryCode().startsWith("1004")).collect(Collectors.toList());
|
||||||
collect.forEach(u -> u.setProjectType("L"));
|
collect.forEach(u -> u.setProjectType("L"));
|
||||||
|
|
@ -155,7 +155,7 @@ public class EbomInitProjectType {
|
||||||
resultNo1004 = resultNo1004 & projectTypeEquals(sResult1004, Sets.newHashSet("F", "Q"));
|
resultNo1004 = resultNo1004 & projectTypeEquals(sResult1004, Sets.newHashSet("F", "Q"));
|
||||||
}
|
}
|
||||||
|
|
||||||
sResultProjectL = sameLevelChild1004.stream().filter(u -> u.getProjectType().equals("L")).collect(Collectors.toList());
|
sResultProjectL = sameLevelChild1004.stream().filter(u -> Objects.nonNull(u.getProjectType()) && u.getProjectType().equals("L")).collect(Collectors.toList());
|
||||||
|
|
||||||
int lResult = 1;
|
int lResult = 1;
|
||||||
for (BomNewEbomParentVO v : sResultProjectL) {
|
for (BomNewEbomParentVO v : sResultProjectL) {
|
||||||
|
|
|
||||||
|
|
@ -12,16 +12,20 @@ import com.nflg.product.bomnew.constant.ProjectTypeInputTypeEnum;
|
||||||
import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum;
|
import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum;
|
||||||
import com.nflg.product.bomnew.pojo.entity.BomNewEbomChildEntity;
|
import com.nflg.product.bomnew.pojo.entity.BomNewEbomChildEntity;
|
||||||
import com.nflg.product.bomnew.pojo.entity.BomNewEbomParentEntity;
|
import com.nflg.product.bomnew.pojo.entity.BomNewEbomParentEntity;
|
||||||
|
import com.nflg.product.bomnew.pojo.entity.MaterialMainEntity;
|
||||||
import com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO;
|
import com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO;
|
||||||
import com.nflg.product.bomnew.service.BomNewEbomChildService;
|
import com.nflg.product.bomnew.service.BomNewEbomChildService;
|
||||||
import com.nflg.product.bomnew.service.BomNewEbomParentService;
|
import com.nflg.product.bomnew.service.BomNewEbomParentService;
|
||||||
|
import com.nflg.product.bomnew.service.MaterialMainService;
|
||||||
import com.nflg.product.bomnew.service.MaterialService;
|
import com.nflg.product.bomnew.service.MaterialService;
|
||||||
import com.nflg.product.bomnew.util.VersionUtil;
|
import com.nflg.product.bomnew.util.VersionUtil;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
import org.apache.catalina.authenticator.jaspic.CallbackHandlerImpl;
|
||||||
import sun.security.krb5.internal.PAData;
|
import sun.security.krb5.internal.PAData;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -51,7 +55,12 @@ public abstract class VirtualPackageBase {
|
||||||
String vDrawingNo = String.join("",drawingNo,"(",virtualPackageType.getConMaterialName(),")" );
|
String vDrawingNo = String.join("",drawingNo,"(",virtualPackageType.getConMaterialName(),")" );
|
||||||
String vMaterialName = StrUtil.join("",materialName,"(",virtualPackageType.getConMaterialName(),")");
|
String vMaterialName = StrUtil.join("",materialName,"(",virtualPackageType.getConMaterialName(),")");
|
||||||
String vMaterialDesc = StrUtil.join("", drawingNo ," ", materialName,"(",virtualPackageType.getConMaterialName(),")");
|
String vMaterialDesc = StrUtil.join("", drawingNo ," ", materialName,"(",virtualPackageType.getConMaterialName(),")");
|
||||||
BomNewEbomParentEntity oldParent= SpringUtil.getBean(BomNewEbomParentService.class).lambdaQuery().eq(BomNewEbomParentEntity::getDrawingNo, vDrawingNo).eq(BomNewEbomParentEntity::getLastVersionIs,1).one();
|
BomNewEbomParentEntity oldParent=null;
|
||||||
|
List<MaterialMainEntity> oldMaterialList = SpringUtil.getBean(MaterialMainService.class).lambdaQuery().eq(MaterialMainEntity::getMaterialName, vMaterialName)
|
||||||
|
.eq(MaterialMainEntity::getMaterialDesc, vMaterialDesc).list();
|
||||||
|
if(CollUtil.isNotEmpty(oldMaterialList)){
|
||||||
|
oldParent= SpringUtil.getBean(BomNewEbomParentService.class).lambdaQuery().eq(BomNewEbomParentEntity::getMaterialNo, oldMaterialList.get(0).getMaterialNo()).eq(BomNewEbomParentEntity::getLastVersionIs,1).one();
|
||||||
|
}
|
||||||
if(Objects.nonNull(oldParent)){
|
if(Objects.nonNull(oldParent)){
|
||||||
oldParent.setLastVersionIs(0);
|
oldParent.setLastVersionIs(0);
|
||||||
this.parentResult.add(oldParent);
|
this.parentResult.add(oldParent);
|
||||||
|
|
@ -72,6 +81,7 @@ public abstract class VirtualPackageBase {
|
||||||
parent.setBomExist(1);
|
parent.setBomExist(1);
|
||||||
parent.setSourceRowId(0L);
|
parent.setSourceRowId(0L);
|
||||||
parent.setLastVersionIs(1);
|
parent.setLastVersionIs(1);
|
||||||
|
parent.setNum(new BigDecimal(1));
|
||||||
parent.setDeviseName(SessionUtil.getUserCode());
|
parent.setDeviseName(SessionUtil.getUserCode());
|
||||||
parent.setDeviseName(SessionUtil.getRealName());
|
parent.setDeviseName(SessionUtil.getRealName());
|
||||||
parent.setCreatedBy(SessionUtil.getUserCode());
|
parent.setCreatedBy(SessionUtil.getUserCode());
|
||||||
|
|
@ -93,6 +103,7 @@ public abstract class VirtualPackageBase {
|
||||||
childEntity.setParentRowId(parentRowId);
|
childEntity.setParentRowId(parentRowId);
|
||||||
childEntity.setIdentityNo(parent.getRowId().toString());
|
childEntity.setIdentityNo(parent.getRowId().toString());
|
||||||
childEntity.setOrderNumber(orderNo);
|
childEntity.setOrderNumber(orderNo);
|
||||||
|
childEntity.setNum(new BigDecimal(1));
|
||||||
childEntity.setEditStatus(EbomEditStatusEnum.HANDLER_CREATED.getValue());
|
childEntity.setEditStatus(EbomEditStatusEnum.HANDLER_CREATED.getValue());
|
||||||
childEntity.setSource(EBomSourceEnum.FROM_MDM.getValue());
|
childEntity.setSource(EBomSourceEnum.FROM_MDM.getValue());
|
||||||
this.childResult.add(childEntity);
|
this.childResult.add(childEntity);
|
||||||
|
|
@ -109,7 +120,7 @@ public abstract class VirtualPackageBase {
|
||||||
|
|
||||||
protected BomNewEbomParentEntity getParentZhiZuo(){
|
protected BomNewEbomParentEntity getParentZhiZuo(){
|
||||||
List<BomNewEbomChildEntity> list = SpringUtil.getBean(BomNewEbomChildService.class).lambdaQuery().eq(BomNewEbomChildEntity::getParentRowId, bomRowId).list();
|
List<BomNewEbomChildEntity> list = SpringUtil.getBean(BomNewEbomChildService.class).lambdaQuery().eq(BomNewEbomChildEntity::getParentRowId, bomRowId).list();
|
||||||
List<BomNewEbomChildEntity> zhiZuo = list.stream().filter(u -> u.getMaterialName().contains("制作")).collect(Collectors.toList());
|
List<BomNewEbomChildEntity> zhiZuo = list.stream().filter(u -> u.getMaterialName().contains(VirtualPackageTypeEnum.MAKING_PACKAGE.getConMaterialName())).collect(Collectors.toList());
|
||||||
if(CollUtil.isNotEmpty(zhiZuo)){
|
if(CollUtil.isNotEmpty(zhiZuo)){
|
||||||
String materialNo=zhiZuo.get(0).getMaterialNo();
|
String materialNo=zhiZuo.get(0).getMaterialNo();
|
||||||
return SpringUtil.getBean(BomNewEbomParentService.class).lambdaQuery().eq(BomNewEbomParentEntity::getMaterialNo,materialNo)
|
return SpringUtil.getBean(BomNewEbomParentService.class).lambdaQuery().eq(BomNewEbomParentEntity::getMaterialNo,materialNo)
|
||||||
|
|
|
||||||
|
|
@ -53,8 +53,8 @@ public class VirtualPackageFor21 extends VirtualPackageBase {
|
||||||
makingPackage=getParentZhiZuo();
|
makingPackage=getParentZhiZuo();
|
||||||
}
|
}
|
||||||
BomNewEbomParentEntity preAssemblyPackage = buildParentVirtualPackage(parent.getDrawingNo(), parent.getMaterialName(), VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE);
|
BomNewEbomParentEntity preAssemblyPackage = buildParentVirtualPackage(parent.getDrawingNo(), parent.getMaterialName(), VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE);
|
||||||
|
|
||||||
buildChild(preAssemblyPackage, makingPackage.getRowId(), "001", VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE);
|
buildChild(preAssemblyPackage, makingPackage.getRowId(), "001", VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE);
|
||||||
|
|
||||||
}
|
}
|
||||||
List<BomNewEbomParentVO> child = getChild();
|
List<BomNewEbomParentVO> child = getChild();
|
||||||
//将产品子级放制作包下
|
//将产品子级放制作包下
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ import com.nflg.product.bomnew.util.VUtils;
|
||||||
import nflg.product.common.constant.STATE;
|
import nflg.product.common.constant.STATE;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 31物料生成虚拟包
|
* 31物料生成虚拟包
|
||||||
|
|
@ -35,28 +36,43 @@ public class VirtualPackageFor31 extends VirtualPackageBase {
|
||||||
|
|
||||||
List<BomNewEbomParentVO> child = getChild();
|
List<BomNewEbomParentVO> child = getChild();
|
||||||
BomNewEbomParentEntity parent = getParentByRowId(bomRowId);
|
BomNewEbomParentEntity parent = getParentByRowId(bomRowId);
|
||||||
VUtils.isTure(parent.getVirtrualPackageEnum()>0).throwMessage("已生成虚拟包无需重复生成");
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
for (BomNewEbomParentVO item : child) {
|
for (BomNewEbomParentVO item : child) {
|
||||||
//构建发货包
|
BomNewEbomParentEntity makingPackage=null;
|
||||||
BomNewEbomParentEntity deliveryPackage = buildParentVirtualPackage(item.getDrawingNo(), item.getMaterialName(), VirtualPackageTypeEnum.DELIVERY_PACKAGE);
|
if((VirtualPackageTypeEnum.DELIVERY_PACKAGE.getValue()&parent.getVirtrualPackageEnum())!=VirtualPackageTypeEnum.DELIVERY_PACKAGE.getValue()) {
|
||||||
//构建构建发货包下制作包
|
//构建发货包
|
||||||
BomNewEbomParentEntity makingPackage = buildParentVirtualPackage(item.getDrawingNo(), item.getMaterialName(), VirtualPackageTypeEnum.MAKING_PACKAGE);
|
BomNewEbomParentEntity deliveryPackage = buildParentVirtualPackage(item.getDrawingNo(), item.getMaterialName(), VirtualPackageTypeEnum.DELIVERY_PACKAGE);
|
||||||
//构建构建发货包下直发
|
//构建构建发货包下制作包
|
||||||
BomNewEbomParentEntity directDeliveryPackage = buildParentVirtualPackage(item.getDrawingNo(), item.getMaterialName(), VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE);
|
makingPackage = buildParentVirtualPackage(item.getDrawingNo(), item.getMaterialName(), VirtualPackageTypeEnum.MAKING_PACKAGE);
|
||||||
|
//构建构建发货包下直发
|
||||||
|
BomNewEbomParentEntity directDeliveryPackage = buildParentVirtualPackage(item.getDrawingNo(), item.getMaterialName(), VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE);
|
||||||
|
|
||||||
//构建-产品下发货包-子级
|
//构建-产品下发货包-子级
|
||||||
buildChild(deliveryPackage, bomRowId,"001",VirtualPackageTypeEnum.DELIVERY_PACKAGE);
|
buildChild(deliveryPackage, bomRowId, "001", VirtualPackageTypeEnum.DELIVERY_PACKAGE);
|
||||||
|
|
||||||
//构建发货包-子级
|
//构建发货包-子级
|
||||||
buildChild(makingPackage,deliveryPackage.getRowId(),"001",VirtualPackageTypeEnum.MAKING_PACKAGE);
|
buildChild(makingPackage, deliveryPackage.getRowId(), "001", VirtualPackageTypeEnum.MAKING_PACKAGE);
|
||||||
buildChild(directDeliveryPackage,deliveryPackage.getRowId(),"002",VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE);
|
buildChild(directDeliveryPackage, deliveryPackage.getRowId(), "002", VirtualPackageTypeEnum.DIRECT_DELIVERY_PACKAGE);
|
||||||
|
|
||||||
|
|
||||||
BomNewEbomChildEntity itemUp=new BomNewEbomChildEntity();
|
|
||||||
itemUp.setRowId(item.getRowId());
|
BomNewEbomChildEntity itemUp = new BomNewEbomChildEntity();
|
||||||
itemUp.setParentRowId(makingPackage.getRowId());
|
itemUp.setRowId(item.getRowId());
|
||||||
this.childResult.add(itemUp);
|
itemUp.setParentRowId(makingPackage.getRowId());
|
||||||
|
this.childResult.add(itemUp);
|
||||||
|
}
|
||||||
|
// 包含发货前装配包
|
||||||
|
if (virtualPackageValue.contains(VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getValue()) && (VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getValue() & parent.getVirtrualPackageEnum()) != VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE.getValue()) {
|
||||||
|
BomNewEbomParentEntity preAssemblyPackage = buildParentVirtualPackage(item.getDrawingNo(), item.getMaterialName(), VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE);
|
||||||
|
//构建构建发货前装配包
|
||||||
|
if(Objects.isNull(makingPackage)){
|
||||||
|
makingPackage=getParentZhiZuo();
|
||||||
|
}
|
||||||
|
buildChild(preAssemblyPackage, makingPackage.getRowId(), "001", VirtualPackageTypeEnum.PRE_ASSEMBLY_PACKAGE);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
parent.setVirtrualPackageEnum(VirtualPackageTypeEnum.getAll());
|
parent.setVirtrualPackageEnum(VirtualPackageTypeEnum.getAll());
|
||||||
|
|
|
||||||
|
|
@ -69,6 +69,8 @@ public class OriginalBomToEBomConvert extends BaseConvert {
|
||||||
|
|
||||||
SpringUtil.getBean(MaterialMainService.class).intiMaterialInfo(ImmutableList.of(parent));
|
SpringUtil.getBean(MaterialMainService.class).intiMaterialInfo(ImmutableList.of(parent));
|
||||||
SpringUtil.getBean(MaterialMainService.class).intiMaterialInfo(bomDetail);
|
SpringUtil.getBean(MaterialMainService.class).intiMaterialInfo(bomDetail);
|
||||||
|
|
||||||
|
SpringUtil.getBean(MaterialMainService.class).initShouldBomExist(bomDetail,BomOriginalListVO::getMaterialCategoryCode, BomOriginalListVO::setShouldBomExist,BomOriginalListVO::getMaterialGetType);
|
||||||
//处理父级
|
//处理父级
|
||||||
hanlerDo(parent);
|
hanlerDo(parent);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -119,7 +119,7 @@
|
||||||
|
|
||||||
<!--BOM-正式工作表-->
|
<!--BOM-正式工作表-->
|
||||||
<select id="formalWorksheet" resultType="com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO">
|
<select id="formalWorksheet" resultType="com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO">
|
||||||
select row_id as bomRowId, * from t_bom_new_ebom_parent where 1=1
|
select row_id as bomRowId, * from t_bom_new_ebom_parent where status=4
|
||||||
<include refid="whr"/>
|
<include refid="whr"/>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
@ -133,7 +133,7 @@
|
||||||
|
|
||||||
<select id="getParentChildBatch" resultType="com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO">
|
<select id="getParentChildBatch" resultType="com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO">
|
||||||
select *
|
select *
|
||||||
from t_bom_new_original_child
|
from t_bom_new_ebom_child
|
||||||
where parent_row_id in
|
where parent_row_id in
|
||||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||||
#{rowId}
|
#{rowId}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue