Merge branch 'feature/DM/nflg-bom-transition' of http://192.168.0.40:3000/root/nflg_project into feature/DM/nflg-bom-transition
This commit is contained in:
commit
c8b48f739d
|
|
@ -171,7 +171,8 @@ public class OriginalBomApi extends BaseApi {
|
|||
});
|
||||
|
||||
//跟新EBom 根节点
|
||||
ebomParentService.getBaseMapper().updateRootState();
|
||||
// ebomParentService.getBaseMapper().updateRootState();
|
||||
ebomParentService.updateRootState();
|
||||
ebomParentService.getBaseMapper().updateRootForWaitReview();
|
||||
|
||||
return ResultVO.success(result);
|
||||
|
|
|
|||
|
|
@ -55,11 +55,20 @@ public interface BomNewEbomParentMapper extends BaseMapper<BomNewEbomParentEntit
|
|||
|
||||
List<BomNewEbomParentVO> getChildForMaterialNoSeach(@Param("materialNoList") List<String> materialNoList,@Param("bomRowIds") Collection<Long> bomRowIds , @Param("createdBy") String createdBy );
|
||||
|
||||
@Deprecated
|
||||
void updateRootState();
|
||||
void updateRootState1();
|
||||
void updateRootState2();
|
||||
void updateRootState3();
|
||||
|
||||
@Deprecated
|
||||
void delBatch(@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
void updateStateBatchByRowIds(@Param("status") Integer status, String userName, @Param("list") List<Long> list);
|
||||
void delBatch1(@Param("rowIds") List<Long> rowIds);
|
||||
void delBatch2(@Param("rowIds") List<Long> rowIds);
|
||||
void updateStateBatchByRowIdsParent(@Param("status") Integer status, String userName, @Param("list") List<Long> list);
|
||||
|
||||
void updateStateBatchByRowIdsChild( @Param("list") List<Long> list);
|
||||
|
||||
Integer checkIsRoot(@Param("materialNo") String materialNo);
|
||||
|
||||
|
|
|
|||
|
|
@ -51,8 +51,11 @@ public interface BomNewMbomParentMapper extends BaseMapper<BomNewMbomParentEntit
|
|||
/**
|
||||
* 将MBOM迁移到历史表
|
||||
*/
|
||||
@Deprecated
|
||||
void insertMBomIntoHistory(@Param("rowId") Long rowId);
|
||||
|
||||
void insertMBomIntoHistoryParent(@Param("rowId") Long rowId);
|
||||
|
||||
void insertMBomIntoHistoryChild(@Param("rowId") Long rowId);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,13 +33,22 @@ public interface BomNewOriginalChildMapper extends BaseMapper<BomNewOriginalChil
|
|||
* @param drawingNos
|
||||
* @return
|
||||
*/
|
||||
@Deprecated
|
||||
void delOriginalFormalBom(@Param("drawingNos") List<String> drawingNos);
|
||||
|
||||
void delOriginalFormalBomChild(@Param("drawingNos") List<String> drawingNos);
|
||||
|
||||
void delOriginalFormalBomParent(@Param("drawingNos") List<String> drawingNos);
|
||||
|
||||
/**
|
||||
* 原始BOM-同步到正式表
|
||||
* @param rowIds
|
||||
*/
|
||||
@Deprecated
|
||||
void syncOriginalBomToFormal(@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
void syncOriginalBomToFormalParent(@Param("rowIds") List<Long> rowIds);
|
||||
void syncOriginalBomToFormalChild(@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
void deleteChildByParentRowIds(@Param("parentRowIds") List<Long> parentRowIds);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,12 +28,25 @@ public interface BomNewOriginalParentMapper extends BaseMapper<BomNewOriginalPar
|
|||
|
||||
List<BomOriginalListVO> getParentChildBatch(@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
@Deprecated
|
||||
void delBatch(@Param("rowIds") List<Long> rowIds);
|
||||
void delBatchParent(@Param("rowIds") List<Long> rowIds);
|
||||
void delBatchChild(@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
@Deprecated
|
||||
void updateBomState(@Param("editStatus") Integer editStatus, @Param("status") Integer status ,@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
void updateBomStateParent(@Param("editStatus") Integer editStatus, @Param("status") Integer status ,@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
void updateBomStateChild(@Param("editStatus") Integer editStatus, @Param("status") Integer status ,@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
|
||||
@Deprecated
|
||||
void updateRevertBom( @Param("status") Integer status ,@Param("editStatus") Integer editStatus ,@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
void updateRevertBomParent( @Param("status") Integer status ,@Param("editStatus") Integer editStatus ,@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
void updateRevertBomChild( @Param("status") Integer status ,@Param("editStatus") Integer editStatus ,@Param("rowIds") List<Long> rowIds);
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -65,8 +65,12 @@ public interface BomNewPbomParentMapper extends BaseMapper<BomNewPbomParentEntit
|
|||
|
||||
void insertPBomChildToFormal(@Param("bomRowIds") List<Long> bomRowIds);
|
||||
|
||||
@Deprecated
|
||||
void delPBom(@Param("bomRowIds") List<Long> bomRowIds);
|
||||
|
||||
void delPBomParent(@Param("bomRowIds") List<Long> bomRowIds);
|
||||
void delPBomChild(@Param("bomRowIds") List<Long> bomRowIds);
|
||||
|
||||
|
||||
List<BomNewPbomParentEntity> getLatestParents(Set<String> materialNos, String facCode);
|
||||
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ public class ReverseReportVO {
|
|||
private String childDrawingNo;
|
||||
|
||||
@ApiModelProperty("层级")
|
||||
private String levelNum;
|
||||
private Integer levelNum;
|
||||
|
||||
@ApiModelProperty("物料类别")
|
||||
private String categoryName;
|
||||
|
|
@ -85,5 +85,6 @@ public class ReverseReportVO {
|
|||
return Objects.isNull(expireEndTime)? LocalDateTime.parse("9999-12-31 23:59:59", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")):expireEndTime;
|
||||
}
|
||||
|
||||
|
||||
@ApiModelProperty("bom颜色区分")
|
||||
private String bomVersion;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1004,7 +1004,8 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
|
|||
if(CollUtil.isNotEmpty(delEBomParents)){
|
||||
List<Long> delParentBom = delEBomParents.stream().filter(u -> u.getBomRowId() > 0).map(BomNewEbomParentVO::getBomRowId).collect(Collectors.toList());
|
||||
if(CollUtil.isNotEmpty(delParentBom)){
|
||||
this.getBaseMapper().delBatch(delParentBom);
|
||||
// this.getBaseMapper().delBatch(delParentBom);
|
||||
this.delBatch(delParentBom);
|
||||
// ebomChildService.getBaseMapper().delBomChild(delParentBom);
|
||||
}
|
||||
}
|
||||
|
|
@ -1030,7 +1031,8 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
|
|||
}
|
||||
//List<Long> bomRowIds = bomTree.stream().filter(u ->!EBomStatusEnum.PUBLISHED.equalsValue(u.getStatus()) && u.getBomRowId() > 0).map(u -> u.getBomRowId()).collect(Collectors.toList());
|
||||
if (CollUtil.isNotEmpty(eBomToPBom.getAddEBomNew())) {
|
||||
this.getBaseMapper().updateStateBatchByRowIds(EBomStatusEnum.PUBLISHED.getValue(), SessionUtil.getRealName(), eBomToPBom.getAddEBomNew());
|
||||
this.getBaseMapper().updateStateBatchByRowIdsParent(EBomStatusEnum.PUBLISHED.getValue(), SessionUtil.getRealName(), eBomToPBom.getAddEBomNew());
|
||||
this.getBaseMapper().updateStateBatchByRowIdsChild(eBomToPBom.getAddEBomNew());
|
||||
}
|
||||
//替换需覆盖的受影响的虚拟包
|
||||
if(CollUtil.isNotEmpty(eBomToPBom.getUpgradeChangeResultForCover())){
|
||||
|
|
@ -1059,6 +1061,11 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
|
|||
}
|
||||
}
|
||||
|
||||
public void delBatch(List<Long> rowIds){
|
||||
this.getBaseMapper().delBatch1(rowIds);
|
||||
this.getBaseMapper().delBatch2(rowIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* EBOM 正式版转PBom
|
||||
* @param paramDto
|
||||
|
|
@ -1359,7 +1366,7 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
|
|||
//计算树的层级数
|
||||
// CompletableFuture.runAsync(() -> {
|
||||
try {
|
||||
this.getBaseMapper().updateRootState();
|
||||
this.updateRootState();
|
||||
ebomChildService.updateEBomMaterialUse(materialNos);
|
||||
//this.compucteLevelNum();
|
||||
|
||||
|
|
@ -1369,6 +1376,12 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
|
|||
// });
|
||||
}
|
||||
|
||||
public void updateRootState(){
|
||||
this.getBaseMapper().updateRootState1();
|
||||
this.getBaseMapper().updateRootState2();
|
||||
this.getBaseMapper().updateRootState3();
|
||||
}
|
||||
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public ResultVO<Boolean> createBomImport(BomNewEbomImportDTO dto, InputStream inputStream) throws IOException, ExecutionException, InterruptedException {
|
||||
|
|
@ -1998,7 +2011,8 @@ public class BomNewEbomParentService extends ServiceImpl<BomNewEbomParentMapper,
|
|||
.map(BomNewEbomParentVO::getRowId).collect(Collectors.toList());
|
||||
|
||||
if (CollUtil.isNotEmpty(parentList)) {
|
||||
this.getBaseMapper().delBatch(parentList);
|
||||
// this.getBaseMapper().delBatch(parentList);
|
||||
this.delBatch(parentList);
|
||||
}
|
||||
|
||||
// QueryWrapper<BomNewEbomParentEntity> parentWrapper=new QueryWrapper<>();
|
||||
|
|
|
|||
|
|
@ -114,7 +114,7 @@ public class BomNewEbomUpgradeChangeService extends ServiceImpl<BomNewEbomUpgrad
|
|||
//删除旧版PBOM移动到历史表中
|
||||
if (CollUtil.isNotEmpty(updateImpact.getOldPBomList())) {
|
||||
List<Long> oldPbomRowIds = updateImpact.getOldPBomList().stream().map(u -> u.getRowId()).collect(Collectors.toList());
|
||||
pbomParentService.getBaseMapper().delPBom(oldPbomRowIds);
|
||||
pbomParentService.delPBom(oldPbomRowIds);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@ import com.nflg.product.bomnew.service.domain.MBom.IndexListTree;
|
|||
import com.nflg.product.bomnew.util.VUtils;
|
||||
import nflg.product.common.vo.ResultVO;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.*;
|
||||
|
|
@ -322,4 +323,10 @@ public class BomNewMbomParentService extends ServiceImpl<BomNewMbomParentMapper,
|
|||
.set(BomNewMbomParentEntity::getStatus, sapState.getValue())
|
||||
.update();
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public void insertMBomIntoHistory(Long rowId){
|
||||
this.getBaseMapper().insertMBomIntoHistoryParent(rowId);
|
||||
this.getBaseMapper().insertMBomIntoHistoryChild(rowId);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,6 +5,9 @@ import com.nflg.product.bomnew.mapper.master.BomNewOriginalChildMapper;
|
|||
import com.nflg.product.bomnew.pojo.entity.BomNewOriginalChildEntity;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
|
|
@ -17,4 +20,18 @@ import org.springframework.stereotype.Service;
|
|||
@Service
|
||||
public class BomNewOriginalChildService extends ServiceImpl<BomNewOriginalChildMapper, BomNewOriginalChildEntity> {
|
||||
|
||||
|
||||
public void delOriginalFormalBom(List<String> drawingNos){
|
||||
this.getBaseMapper().delOriginalFormalBomChild(drawingNos);
|
||||
this.getBaseMapper().delOriginalFormalBomParent(drawingNos);
|
||||
}
|
||||
|
||||
/**
|
||||
* 同步正式
|
||||
*/
|
||||
@Transactional
|
||||
public void syncOriginalBomToFormal(List<Long> rowIds){
|
||||
this.getBaseMapper().syncOriginalBomToFormalParent(rowIds);
|
||||
this.getBaseMapper().syncOriginalBomToFormalChild(rowIds);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -359,7 +359,7 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
|||
return;
|
||||
}
|
||||
|
||||
this.getBaseMapper().updateRevertBom(OriginalStatusEnum.UN_CONVERT.getValue(),
|
||||
this.updateRevertBom(OriginalStatusEnum.UN_CONVERT.getValue(),
|
||||
OriginalEditStatusEnum.HANDLER_CREATED.getValue(),
|
||||
sourceIds);
|
||||
|
||||
|
|
@ -563,6 +563,7 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
|||
*
|
||||
* @param bomRowId
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean del(Long bomRowId) throws ExecutionException, InterruptedException {
|
||||
|
||||
BomNewOriginalParentEntity parentEntity = this.getBaseMapper().selectById(bomRowId);
|
||||
|
|
@ -578,7 +579,7 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
|||
}
|
||||
delParentRowId.add(bomRowId);
|
||||
if (CollUtil.isNotEmpty(delParentRowId)) {
|
||||
this.getBaseMapper().delBatch(delParentRowId);
|
||||
this.delBatch(delParentRowId);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
@ -655,7 +656,7 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
|||
}
|
||||
//将原始BOM及子级转为已处理
|
||||
if (CollUtil.isNotEmpty(convert.getHasHandlerParentIds())) {
|
||||
this.getBaseMapper().updateBomState(OriginalEditStatusEnum.HANDLER_FINISHED.getValue(), OriginalStatusEnum.OVER_CONVERT.getValue(), convert.getHasHandlerParentIds());
|
||||
this.updateBomState(OriginalEditStatusEnum.HANDLER_FINISHED.getValue(), OriginalStatusEnum.OVER_CONVERT.getValue(), convert.getHasHandlerParentIds());
|
||||
//原始BOM-同步到历史表
|
||||
CompletableFuture.runAsync(() -> {
|
||||
syncToFormal(convert.getHasHandlerParentIds());
|
||||
|
|
@ -735,9 +736,9 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
|||
|
||||
if (CollUtil.isNotEmpty(drawingNos)) {
|
||||
//删除正式版中已有图号的BOM
|
||||
originalChildService.getBaseMapper().delOriginalFormalBom(drawingNos);
|
||||
originalChildService.delOriginalFormalBom(drawingNos);
|
||||
//同步新的BOM版本
|
||||
originalChildService.getBaseMapper().syncOriginalBomToFormal(parentRowIds);
|
||||
originalChildService.syncOriginalBomToFormal(parentRowIds);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -869,4 +870,20 @@ public class BomNewOriginalParentService extends ServiceImpl<BomNewOriginalParen
|
|||
private void resetBomExist(Long rowId) {
|
||||
this.getBaseMapper().resetBomExist(rowId);
|
||||
}
|
||||
|
||||
public void delBatch(List<Long> rowIds){
|
||||
this.getBaseMapper().delBatchParent(rowIds);
|
||||
this.getBaseMapper().delBatchChild(rowIds);
|
||||
}
|
||||
|
||||
public void updateRevertBom(Integer status ,Integer editStatus,List<Long> rowIds){
|
||||
this.getBaseMapper().updateRevertBomParent(status,editStatus,rowIds);
|
||||
this.getBaseMapper().updateRevertBomChild(status,editStatus,rowIds);
|
||||
}
|
||||
|
||||
public void updateBomState(Integer editStatus,Integer status ,List<Long> rowIds){
|
||||
this.getBaseMapper().updateBomStateParent(editStatus,status,rowIds);
|
||||
this.getBaseMapper().updateBomStateChild(editStatus,status,rowIds);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -86,6 +86,9 @@ public class BomNewOriginalParentV2Service extends ServiceImpl<BomNewOriginalPar
|
|||
@Qualifier("syncOriginalBomToFormalPool")
|
||||
ThreadPoolTaskExecutor syncOriginalBomToFormalPool;
|
||||
|
||||
@Resource
|
||||
BomNewOriginalParentService originalParentService;
|
||||
|
||||
/**
|
||||
* 检查物料编码在主数据中是否存在
|
||||
*
|
||||
|
|
@ -289,7 +292,7 @@ public class BomNewOriginalParentV2Service extends ServiceImpl<BomNewOriginalPar
|
|||
}
|
||||
//将原始BOM及子级转为已处理
|
||||
if (CollUtil.isNotEmpty(convert.getHasHandlerParentIds())) {
|
||||
this.getBaseMapper().updateBomState(OriginalEditStatusEnum.HANDLER_FINISHED.getValue(), OriginalStatusEnum.OVER_CONVERT.getValue(), convert.getHasHandlerParentIds());
|
||||
originalParentService.updateBomState(OriginalEditStatusEnum.HANDLER_FINISHED.getValue(), OriginalStatusEnum.OVER_CONVERT.getValue(), convert.getHasHandlerParentIds());
|
||||
//原始BOM-同步到历史表
|
||||
CompletableFuture.runAsync(() -> {
|
||||
syncToFormal(convert.getHasHandlerParentIds());
|
||||
|
|
@ -308,9 +311,9 @@ public class BomNewOriginalParentV2Service extends ServiceImpl<BomNewOriginalPar
|
|||
|
||||
if (CollUtil.isNotEmpty(drawingNos)) {
|
||||
//删除正式版中已有图号的BOM
|
||||
originalChildService.getBaseMapper().delOriginalFormalBom(drawingNos);
|
||||
originalChildService.delOriginalFormalBom(drawingNos);
|
||||
//同步新的BOM版本
|
||||
originalChildService.getBaseMapper().syncOriginalBomToFormal(parentRowIds);
|
||||
originalChildService.syncOriginalBomToFormal(parentRowIds);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1268,7 +1268,7 @@ public class BomNewPbomParentService extends ServiceImpl<BomNewPbomParentMapper,
|
|||
if(CollUtil.isNotEmpty(toParents)) {
|
||||
List<Long> oldPBomRowIds = toParents.stream().map(u -> u.getRowId()).collect(Collectors.toList());
|
||||
//转移后删除
|
||||
this.getBaseMapper().delPBom(oldPBomRowIds);
|
||||
this.delPBom(oldPBomRowIds);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1799,4 +1799,9 @@ public class BomNewPbomParentService extends ServiceImpl<BomNewPbomParentMapper,
|
|||
buildNoticeNumDetailList(noticeNumRowId, noticeNumDetailEntityList, noticeNumDetailEntity2List, newestP, lastP);
|
||||
}
|
||||
}
|
||||
|
||||
public void delPBom(List<Long> bomRowIds){
|
||||
this.getBaseMapper().delPBomParent(bomRowIds);
|
||||
this.getBaseMapper().delPBomChild(bomRowIds);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,8 +80,8 @@ public class ConvertToMBomBase {
|
|||
if (Objects.nonNull(oldParent)) {
|
||||
if (SapStatusEnum.PUB_SUCCESS.equalsValue(oldParent.getStatus())) {
|
||||
//将数据迁移到历史表
|
||||
SpringUtil.getBean(BomNewMbomParentService.class).getBaseMapper().insertMBomIntoHistory(oldParent.getRowId());
|
||||
|
||||
// SpringUtil.getBean(BomNewMbomParentService.class).getBaseMapper().insertMBomIntoHistory(oldParent.getRowId());
|
||||
SpringUtil.getBean(BomNewMbomParentService.class).insertMBomIntoHistory(oldParent.getRowId());
|
||||
mBomParent.setCurrentVersion(VersionUtil.getMBomNextVersion(oldParent.getCurrentVersion()));
|
||||
|
||||
SpringUtil.getBean(BomNewMbomDetailService.class).getBaseMapper().deleteByMap(ImmutableMap.of("bom_row_id", oldParent.getRowId()));
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ public class EBomQueryService {
|
|||
if (CollUtil.isNotEmpty(vos)) {
|
||||
List<BaseMaterialVO> materialVOS = materialMainService.getMaterialBaseInfo(vos.stream().map(ReverseReportVO::getMaterialNo).collect(Collectors.toList()));
|
||||
vos.forEach(it -> {
|
||||
it.setLevelNum("1");
|
||||
it.setLevelNum(1);
|
||||
BaseMaterialVO materialVO = materialVOS.stream()
|
||||
.filter(f -> StrUtil.equals(f.getMaterialNo(), it.getMaterialNo()))
|
||||
.findFirst()
|
||||
|
|
@ -113,7 +113,7 @@ public class EBomQueryService {
|
|||
if (Objects.nonNull(parent)) {
|
||||
List<BomNewPbomParentVO> pVOs = getReverseBoms(parent.getRowId());
|
||||
pVOs.forEach(p -> {
|
||||
vos.add(createVO(p, 1));
|
||||
// vos.add(createVO(p, 1));
|
||||
bindData(p, 1, vos);
|
||||
});
|
||||
} else {
|
||||
|
|
@ -132,7 +132,7 @@ public class EBomQueryService {
|
|||
p.setCurrentVersion(OriginalConstant.NO_BOM_VERSION);
|
||||
}
|
||||
}
|
||||
vos.add(createVO(p, 1));
|
||||
// vos.add(createVO(p, 1));
|
||||
bindData(p, 1, vos);
|
||||
});
|
||||
}
|
||||
|
|
@ -155,14 +155,18 @@ public class EBomQueryService {
|
|||
return vos;
|
||||
}
|
||||
|
||||
private void bindData(BomNewPbomParentVO pVO, Integer level, List<ReverseReportVO> vos) {
|
||||
private void bindData(BomNewPbomParentVO pVO, final Integer level, List<ReverseReportVO> vos) {
|
||||
if (Objects.nonNull(pVO.getParentRowId())) {
|
||||
List<BomNewPbomParentVO> parents = getReverseBoms(pVO.getParentRowId());
|
||||
level++;
|
||||
Integer finalLevel = level;
|
||||
for (BomNewPbomParentVO it : parents) {
|
||||
vos.add(createVO(it, finalLevel));
|
||||
bindData(it, finalLevel, vos);
|
||||
if (vos.stream().noneMatch(v -> StrUtil.equals(v.getMaterialNo(), it.getMaterialNo())
|
||||
&& Objects.equals(v.getLevelNum(), level)
|
||||
&& Objects.equals(v.getNum(), it.getNum())
|
||||
&& StrUtil.equals(v.getMaterialUnit(), it.getMaterialUnit())
|
||||
&& StrUtil.equals(v.getCreatedBy(), it.getCreatedBy()))) {
|
||||
vos.add(createVO(it, level, vos.isEmpty() ? null : vos.get(vos.size() - 1)));
|
||||
}
|
||||
bindData(it, level + 1, vos);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -171,9 +175,14 @@ public class EBomQueryService {
|
|||
return ebomParentService.getReverseBoms(parentRowId);
|
||||
}
|
||||
|
||||
private ReverseReportVO createVO(BomNewPbomParentVO parentVO, Integer level) {
|
||||
private ReverseReportVO createVO(BomNewPbomParentVO parentVO, Integer level, ReverseReportVO lastVO) {
|
||||
ReverseReportVO vo = Convert.convert(ReverseReportVO.class, parentVO);
|
||||
vo.setLevelNum(String.valueOf(level));
|
||||
vo.setLevelNum(level);
|
||||
if (Objects.isNull(lastVO)) {
|
||||
vo.setBomVersion("1");
|
||||
} else {
|
||||
vo.setBomVersion(level >= lastVO.getLevelNum() ? lastVO.getBomVersion() : String.valueOf(Integer.parseInt(lastVO.getBomVersion()) + 1));
|
||||
}
|
||||
return vo;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ public class PBomQueryService {
|
|||
if (CollUtil.isNotEmpty(vos)) {
|
||||
List<BaseMaterialVO> materialVOS = materialMainService.getMaterialBaseInfo(vos.stream().map(ReverseReportVO::getMaterialNo).collect(Collectors.toList()));
|
||||
vos.forEach(it -> {
|
||||
it.setLevelNum("1");
|
||||
it.setLevelNum(1);
|
||||
BaseMaterialVO materialVO = materialVOS.stream()
|
||||
.filter(f -> StrUtil.equals(f.getMaterialNo(), it.getMaterialNo()))
|
||||
.findFirst()
|
||||
|
|
@ -107,7 +107,7 @@ public class PBomQueryService {
|
|||
if (Objects.nonNull(parent)) {
|
||||
List<BomNewPbomParentVO> pVOs = getReverseBoms(parent.getRowId());
|
||||
pVOs.forEach(p -> {
|
||||
vos.add(createVO(p, 1));
|
||||
// vos.add(createVO(p, 1));
|
||||
bindData(p, 1, vos);
|
||||
});
|
||||
} else {
|
||||
|
|
@ -126,7 +126,7 @@ public class PBomQueryService {
|
|||
p.setCurrentVersion(OriginalConstant.NO_BOM_VERSION);
|
||||
}
|
||||
}
|
||||
vos.add(createVO(p, 1));
|
||||
// vos.add(createVO(p, 1));
|
||||
bindData(p, 1, vos);
|
||||
});
|
||||
}
|
||||
|
|
@ -149,14 +149,18 @@ public class PBomQueryService {
|
|||
return vos;
|
||||
}
|
||||
|
||||
private void bindData(BomNewPbomParentVO pVO, Integer level, List<ReverseReportVO> vos) {
|
||||
private void bindData(BomNewPbomParentVO pVO, final Integer level, List<ReverseReportVO> vos) {
|
||||
if (Objects.nonNull(pVO.getParentRowId())) {
|
||||
List<BomNewPbomParentVO> parents = getReverseBoms(pVO.getParentRowId());
|
||||
level++;
|
||||
Integer finalLevel = level;
|
||||
for (BomNewPbomParentVO it : parents) {
|
||||
vos.add(createVO(it, finalLevel));
|
||||
bindData(it, finalLevel, vos);
|
||||
if (vos.stream().noneMatch(v -> StrUtil.equals(v.getMaterialNo(), it.getMaterialNo())
|
||||
&& Objects.equals(v.getLevelNum(), level)
|
||||
&& Objects.equals(v.getNum(), it.getNum())
|
||||
&& StrUtil.equals(v.getMaterialUnit(), it.getMaterialUnit())
|
||||
&& StrUtil.equals(v.getCreatedBy(), it.getCreatedBy()))) {
|
||||
vos.add(createVO(it, level, vos.isEmpty() ? null : vos.get(vos.size() - 1)));
|
||||
}
|
||||
bindData(it, level + 1, vos);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -165,9 +169,14 @@ public class PBomQueryService {
|
|||
return pbomParentService.getReverseBoms(parentRowId);
|
||||
}
|
||||
|
||||
private ReverseReportVO createVO(BomNewPbomParentVO parentVO, Integer level) {
|
||||
private ReverseReportVO createVO(BomNewPbomParentVO parentVO, Integer level, ReverseReportVO lastVO) {
|
||||
ReverseReportVO vo = Convert.convert(ReverseReportVO.class, parentVO);
|
||||
vo.setLevelNum(String.valueOf(level));
|
||||
vo.setLevelNum(level);
|
||||
if (Objects.isNull(lastVO)) {
|
||||
vo.setBomVersion("1");
|
||||
} else {
|
||||
vo.setBomVersion(level >= lastVO.getLevelNum() ? lastVO.getBomVersion() : String.valueOf(Integer.parseInt(lastVO.getBomVersion()) + 1));
|
||||
}
|
||||
return vo;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -256,6 +256,37 @@
|
|||
</foreach>
|
||||
</select>
|
||||
|
||||
<update id="updateRootState1">
|
||||
update t_bom_new_ebom_parent
|
||||
set root_is=0,
|
||||
user_root_is=0
|
||||
where last_version_is = 1
|
||||
AND `status` < 4
|
||||
</update>
|
||||
<update id="updateRootState2">
|
||||
update t_bom_new_ebom_parent a left join (
|
||||
select b.row_id, b.material_no,a.`status` from t_bom_new_ebom_parent a join t_bom_new_ebom_child b on a.row_id=b.parent_row_id
|
||||
and a.`status` < 4
|
||||
) b
|
||||
on a.material_no=b.material_no
|
||||
set a.root_is=1,
|
||||
a.user_root_is=1
|
||||
where a.`status` < 4 and b.row_id is null and a.last_version_is=1
|
||||
</update>
|
||||
<update id="updateRootState3">
|
||||
update t_bom_new_ebom_parent a left join (
|
||||
select b.row_id, b.material_no,a.`status` , a.created_by from t_bom_new_ebom_parent a join t_bom_new_ebom_child b on a.row_id=b.parent_row_id
|
||||
and a.`status` < 4
|
||||
) b
|
||||
on a.material_no=b.material_no and a.created_by=b.created_by
|
||||
set a.user_root_is=1
|
||||
where a.`status`
|
||||
< 4
|
||||
and b.row_id is null
|
||||
and a.last_version_is = 1
|
||||
AND a.virtual_package_is = 0;
|
||||
</update>
|
||||
|
||||
<update id="updateRootState">
|
||||
update t_bom_new_ebom_parent
|
||||
set root_is=0,
|
||||
|
|
@ -298,6 +329,18 @@
|
|||
where a.`status` in (1, 3) and last_version_is=1 and b.row_id is null;
|
||||
</update>
|
||||
|
||||
<delete id="delBatch1">
|
||||
delete from t_bom_new_ebom_parent where row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</delete>
|
||||
<delete id="delBatch2">
|
||||
delete from t_bom_new_ebom_child where parent_row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<delete id="delBatch">
|
||||
delete from t_bom_new_ebom_parent where row_id in
|
||||
|
|
@ -310,13 +353,18 @@
|
|||
</foreach>;
|
||||
</delete>
|
||||
|
||||
<update id="updateStateBatchByRowIds">
|
||||
<update id="updateStateBatchByRowIdsParent">
|
||||
update t_bom_new_ebom_parent set status=#{status} ,
|
||||
convert_to_ebom_time=now(),release_time=now(),release_user_name=#{userName},edit_status=2,exception_status=1
|
||||
where row_id in
|
||||
<foreach collection="list" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>;
|
||||
</foreach>
|
||||
|
||||
</update>
|
||||
|
||||
<update id="updateStateBatchByRowIdsChild">
|
||||
|
||||
UPDATE t_bom_new_ebom_child SET edit_status=2 WHERE parent_row_id IN
|
||||
<foreach collection="list" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
|
|
@ -561,11 +609,12 @@
|
|||
</foreach>;
|
||||
</select>
|
||||
<select id="getReverseBoms" resultType="com.nflg.product.bomnew.pojo.vo.BomNewPbomParentVO">
|
||||
SELECT c.num, c.project_type projectType, c.project_type, p1.row_id parentRowId, p.*
|
||||
SELECT IFNULL(c.num, p.num) AS num, c.project_type projectType, c.project_type, p1.row_id parentRowId, p.*
|
||||
FROM t_bom_new_ebom_child c
|
||||
RIGHT JOIN t_bom_new_ebom_parent p ON c.material_no = p.material_no
|
||||
LEFT JOIN t_bom_new_ebom_parent p1 ON c.parent_row_id = p1.row_id AND p1.status = 4
|
||||
WHERE p.row_id = #{parentRowId}
|
||||
ORDER BY p.material_no
|
||||
</select>
|
||||
|
||||
<insert id="insertEBomFormalParent">
|
||||
|
|
|
|||
|
|
@ -185,8 +185,17 @@
|
|||
|
||||
]]>
|
||||
</select>
|
||||
<insert id="insertMBomIntoHistoryParent">
|
||||
INSERT INTO `nflg`.`t_bom_new_mbom_parent_history` (`row_id`, `batch_no`, `drawing_no`, `fac_code`, `material_no`, `order_number`, `material_name`, `material_desc`, `material_texture`, `material_unit`, `unit_weight`, `total_weight`, `current_version`, `num`, `last_version_is`, `status`, `sysn_sap_user_name`, `sysn_sap_time`, `source_row_id`, `devise_user_code`, `devise_name`, `created_by`, `created_time`, `expire_end_time`, `remark`, `dept_name`, `level_num`, `change_desc`, `notice_nums`, `order_no`, `modify_time`)
|
||||
select `row_id`, `batch_no`, `drawing_no`, `fac_code`, `material_no`, `order_number`, `material_name`, `material_desc`, `material_texture`, `material_unit`, `unit_weight`, `total_weight`, `current_version`, `num`, `last_version_is`, `status`, `sysn_sap_user_name`, `sysn_sap_time`, `source_row_id`, `devise_user_code`, `devise_name`, `created_by`, `created_time`, `expire_end_time`, `remark`, `dept_name`, `level_num`, `change_desc`, `notice_nums`, `order_no`, `modify_time` from t_bom_new_mbom_parent where row_id=#{rowId}
|
||||
|
||||
</insert>
|
||||
|
||||
<insert id="insertMBomIntoHistoryChild">
|
||||
INSERT INTO `nflg`.`t_bom_new_mbom_detail_history` (`row_id`, `bom_row_id`, `parent_row_id`, `drawing_no`, `fac_code`, `material_no`, `current_version`, `order_number`, `material_name`, `material_desc`, `material_texture`, `material_unit`, `unit_weight`, `total_weight`, `num`, `project_type`, `super_material_status`, `virtual_part_is`, `source_row_id`, `devise_user_code`, `devise_name`, `created_by`, `created_time`, `remark`, `dept_name`, `level_num`, `change_desc`, `notice_nums`, `modify_time`, `material_back_status`, `virtual_part_type`)
|
||||
|
||||
select `row_id`, `bom_row_id`, `parent_row_id`, `drawing_no`, `fac_code`, `material_no`, `current_version`, `order_number`, `material_name`, `material_desc`, `material_texture`, `material_unit`, `unit_weight`, `total_weight`, `num`, `project_type`, `super_material_status`, `virtual_part_is`, `source_row_id`, `devise_user_code`, `devise_name`, `created_by`, `created_time`, `remark`, `dept_name`, `level_num`, `change_desc`, `notice_nums`, `modify_time`, `material_back_status`, `virtual_part_type` from t_bom_new_mbom_detail where bom_row_id=#{rowId}
|
||||
</insert>
|
||||
<!--将MBOM迁移到历史表-->
|
||||
<insert id="insertMBomIntoHistory">
|
||||
INSERT INTO `nflg`.`t_bom_new_mbom_parent_history` (`row_id`, `batch_no`, `drawing_no`, `fac_code`, `material_no`, `order_number`, `material_name`, `material_desc`, `material_texture`, `material_unit`, `unit_weight`, `total_weight`, `current_version`, `num`, `last_version_is`, `status`, `sysn_sap_user_name`, `sysn_sap_time`, `source_row_id`, `devise_user_code`, `devise_name`, `created_by`, `created_time`, `expire_end_time`, `remark`, `dept_name`, `level_num`, `change_desc`, `notice_nums`, `order_no`, `modify_time`)
|
||||
|
|
|
|||
|
|
@ -53,6 +53,23 @@
|
|||
</foreach>
|
||||
</select>
|
||||
|
||||
<delete id="delOriginalFormalBomChild">
|
||||
delete from t_bom_new_original_child_formal where parent_row_id in
|
||||
( select row_id from t_bom_new_original_parent_formal where drawing_no in
|
||||
<foreach collection="drawingNos" item="drawingNo" open="(" separator="," close=")">
|
||||
#{drawingNo}
|
||||
</foreach>
|
||||
)
|
||||
</delete>
|
||||
|
||||
<delete id="delOriginalFormalBomParent">
|
||||
delete from t_bom_new_original_parent_formal where drawing_no in
|
||||
<foreach collection="drawingNos" item="drawingNo" open="(" separator="," close=")">
|
||||
#{drawingNo}
|
||||
</foreach>
|
||||
)
|
||||
</delete>
|
||||
|
||||
<!--删除-正式表中已有的BOM-->
|
||||
<delete id="delOriginalFormalBom">
|
||||
delete from t_bom_new_original_child_formal where parent_row_id in
|
||||
|
|
@ -68,6 +85,25 @@
|
|||
</foreach>
|
||||
);
|
||||
</delete>
|
||||
<insert id="syncOriginalBomToFormalParent">
|
||||
INSERT INTO `nflg`.`t_bom_new_original_parent_formal` (`row_id`, `batch_no`, `drawing_no`, `material_no`, `material_name`, `material_desc`, `current_version`, `num`, `root_is`, `user_root_is`, `bom_exist`, `should_bom_exist`, `last_version_is`, `material_texture`, `unit_weight`, `total_weight`, `devise_user_code`, `devise_name`, `status`, `edit_status`, `convert_to_ebom_time`, `dept_row_id`, `dept_name`, `source`, `remark`, `created_by`, `created_time`, `expire_end_time`, `level_num`)
|
||||
|
||||
select `row_id`, `batch_no`, `drawing_no`, `material_no`, `material_name`, `material_desc`, `current_version`, `num`, `root_is`, `user_root_is`, `bom_exist`, `should_bom_exist`, `last_version_is`, `material_texture`, `unit_weight`, `total_weight`, `devise_user_code`, `devise_name`, `status`, `edit_status`, `convert_to_ebom_time`, `dept_row_id`, `dept_name`, `source`, `remark`, `created_by`, `created_time`, `expire_end_time`, `level_num`
|
||||
from t_bom_new_original_parent where row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<insert id="syncOriginalBomToFormalChild">
|
||||
INSERT INTO `t_bom_new_original_child_formal` (`row_id`, `parent_row_id`, `order_number`, `drawing_no`, `material_no`, `material_name`, `material_desc`, `unit_weight`, `num`, `total_weight`, `remark`, `created_time`, `created_by`, `edit_status`, `status`, `material_texture`, `should_bom_exist`, `bom_version_row_id`)
|
||||
select `row_id`, `parent_row_id`, `order_number`, `drawing_no`, `material_no`, `material_name`, `material_desc`, `unit_weight`, `num`, `total_weight`, `remark`, `created_time`, `created_by`, `edit_status`, `status`, `material_texture`, `should_bom_exist`, `bom_version_row_id`
|
||||
from t_bom_new_original_child
|
||||
where parent_row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<!--原始BOM-同步到正式表-->
|
||||
<insert id="syncOriginalBomToFormal">
|
||||
|
|
|
|||
|
|
@ -101,6 +101,18 @@
|
|||
</foreach>
|
||||
</select>
|
||||
|
||||
<delete id="delBatchParent">
|
||||
delete from t_bom_new_original_parent where row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</delete>
|
||||
<delete id="delBatchChild">
|
||||
delete from t_bom_new_original_child where parent_row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</delete>
|
||||
<delete id="delBatch">
|
||||
delete from t_bom_new_original_parent where row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
|
|
@ -112,6 +124,21 @@
|
|||
</foreach>;
|
||||
</delete>
|
||||
|
||||
<update id="updateRevertBomParent">
|
||||
update t_bom_new_original_parent set status = #{status},edit_status=#{editStatus} where
|
||||
row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</update>
|
||||
<update id="updateRevertBomChild">
|
||||
update t_bom_new_original_child set status = #{status},edit_status=#{editStatus} where
|
||||
parent_row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
<update id="updateRevertBom">
|
||||
update t_bom_new_original_parent set status = #{status},edit_status=#{editStatus} where
|
||||
row_id in
|
||||
|
|
@ -126,7 +153,22 @@
|
|||
</foreach>;
|
||||
</update>
|
||||
|
||||
<update id="updateBomStateParent">
|
||||
update t_bom_new_original_parent set status = #{status},edit_status=#{editStatus}, convert_to_ebom_time=now()
|
||||
where
|
||||
row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
</update>
|
||||
<update id="updateBomStateChild">
|
||||
update t_bom_new_original_child set status = #{status} ,edit_status=#{editStatus} where
|
||||
parent_row_id in
|
||||
<foreach collection="rowIds" item="rowId" open="(" separator="," close=")">
|
||||
#{rowId}
|
||||
</foreach>
|
||||
|
||||
</update>
|
||||
<update id="updateBomState">
|
||||
update t_bom_new_original_parent set status = #{status},edit_status=#{editStatus}, convert_to_ebom_time=now()
|
||||
where
|
||||
|
|
|
|||
|
|
@ -296,12 +296,13 @@
|
|||
WHERE p.created_by = #{userCode}
|
||||
</select>
|
||||
<select id="getReverseBoms" resultType="com.nflg.product.bomnew.pojo.vo.BomNewPbomParentVO">
|
||||
SELECT c.num, c.project_type projectType, c.project_type, p1.row_id parentRowId, p.*
|
||||
SELECT IFNULL(c.num, p.num) AS num, c.project_type projectType, c.project_type, p1.row_id parentRowId, p.*
|
||||
FROM t_bom_new_pbom_child c
|
||||
RIGHT JOIN t_bom_new_pbom_parent p ON c.material_no = p.material_no AND c.fac_code = p.fac_code
|
||||
LEFT JOIN t_bom_new_pbom_parent p1
|
||||
ON c.parent_row_id = p1.row_id AND p1.status >= 4 AND c.fac_code = p1.fac_code
|
||||
WHERE p.row_id = #{parentRowId}
|
||||
ORDER BY p.material_no
|
||||
</select>
|
||||
|
||||
<sql id="upRootStateWhr">
|
||||
|
|
@ -343,6 +344,19 @@
|
|||
</foreach>
|
||||
</insert>
|
||||
|
||||
<delete id="delPBomParent">
|
||||
delete from t_bom_new_pbom_parent where row_id in
|
||||
<foreach collection="bomRowIds" item="item" open="(" separator="," close=");">
|
||||
#{item}
|
||||
</foreach>
|
||||
</delete>
|
||||
<delete id="delPBomChild">
|
||||
delete from t_bom_new_pbom_child where parent_row_id in
|
||||
<foreach collection="bomRowIds" item="item" open="(" separator="," close=");">
|
||||
#{item}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<delete id="delPBom">
|
||||
delete from t_bom_new_pbom_parent where row_id in
|
||||
<foreach collection="bomRowIds" item="item" open="(" separator="," close=");">
|
||||
|
|
|
|||
Loading…
Reference in New Issue