报表调整

This commit is contained in:
jing's 2024-03-18 23:02:01 +08:00
parent d2720d1844
commit 8d0fc3ad1c
6 changed files with 92 additions and 20 deletions

View File

@ -88,7 +88,11 @@ public class ForwardReportVO extends BaseMaterialVO {
private List<ForwardReportVO> childNodes = Collections.emptyList(); private List<ForwardReportVO> childNodes = Collections.emptyList();
public LocalDateTime getExpireEndTime(){ public LocalDateTime getExpireEndTime(){
return Objects.isNull(expireEndTime)? LocalDateTime.parse("9999-12-31 23:59:59", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")):expireEndTime; if(Objects.isNull(expireEndTime)) {
return Objects.isNull(expireEndTime) ? LocalDateTime.parse("9999-12-31 23:59:59", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) : expireEndTime;
}else {
return expireEndTime;
}
} }

View File

@ -6,8 +6,7 @@ import cn.hutool.core.lang.TypeReference;
import cn.hutool.extra.spring.SpringUtil; import cn.hutool.extra.spring.SpringUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.nflg.product.bomnew.constant.ReportConstant; import com.nflg.product.bomnew.constant.ReportConstant;
import com.nflg.product.bomnew.pojo.entity.BomNewEbomChildFormalEntity; import com.nflg.product.bomnew.pojo.entity.*;
import com.nflg.product.bomnew.pojo.entity.BomNewPbomChildFormalEntity;
import com.nflg.product.bomnew.pojo.query.ChildBomReportQuery; import com.nflg.product.bomnew.pojo.query.ChildBomReportQuery;
import com.nflg.product.bomnew.pojo.query.ReverseReportQuery; import com.nflg.product.bomnew.pojo.query.ReverseReportQuery;
import com.nflg.product.bomnew.pojo.vo.*; import com.nflg.product.bomnew.pojo.vo.*;
@ -159,6 +158,7 @@ public class ForwardReportService {
// QueryWrapper<BomNewEbomChildFormalEntity> queryWrapper = new QueryWrapper<>(); // QueryWrapper<BomNewEbomChildFormalEntity> queryWrapper = new QueryWrapper<>();
// queryWrapper.lambda().eq(BomNewEbomChildFormalEntity::getParentRowId, query.getBomRowId()); // queryWrapper.lambda().eq(BomNewEbomChildFormalEntity::getParentRowId, query.getBomRowId());
// List<BomNewEbomChildFormalEntity> list = SpringUtil.getBean(BomNewEbomChildFormalService.class).list(queryWrapper); // List<BomNewEbomChildFormalEntity> list = SpringUtil.getBean(BomNewEbomChildFormalService.class).list(queryWrapper);
BomNewEbomParentFormalEntity parentEntity=SpringUtil.getBean(BomNewEbomParentFormalService .class).getById(query.getBomRowId());
List<BomNewEbomParentFormalVO> list = SpringUtil.getBean(BomNewEbomParentFormalService .class).getBaseMapper().getParentChild(query.getBomRowId()); List<BomNewEbomParentFormalVO> list = SpringUtil.getBean(BomNewEbomParentFormalService .class).getBaseMapper().getParentChild(query.getBomRowId());
@ -166,28 +166,52 @@ public class ForwardReportService {
new TypeReference<List<ForwardReportVO>>() { new TypeReference<List<ForwardReportVO>>() {
}, list); }, list);
for (ForwardReportVO vo:
childBomLit) {
vo.setDeviseName(parentEntity.getDeviseName());
vo.setCurrentVersion(parentEntity.getCurrentVersion());
vo.setExpireEndTime(parentEntity.getConvertToEbomTime());
}
return childBomLit; return childBomLit;
} }
List<ForwardReportVO> chilidPBomList(ChildBomReportQuery query) { List<ForwardReportVO> chilidPBomList(ChildBomReportQuery query) {
BomNewPbomParentFormalEntity parentEntity= SpringUtil.getBean(BomNewPbomParentFormalService .class).getById(query.getBomRowId());
List<BomNewPbomParentFormalVO> list = SpringUtil.getBean(BomNewPbomParentFormalService .class).getBaseMapper().getParentChild(query.getBomRowId()); List<BomNewPbomParentFormalVO> list = SpringUtil.getBean(BomNewPbomParentFormalService .class).getBaseMapper().getParentChild(query.getBomRowId());
List<ForwardReportVO> childBomLit = Convert.convert( List<ForwardReportVO> childBomLit = Convert.convert(
new TypeReference<List<ForwardReportVO>>() { new TypeReference<List<ForwardReportVO>>() {
}, list); }, list);
for (ForwardReportVO vo:
childBomLit) {
vo.setDeviseName(parentEntity.getDeviseName());
vo.setCurrentVersion(parentEntity.getCurrentVersion());
vo.setExpireEndTime(parentEntity.getReleaseTime());
}
return childBomLit; return childBomLit;
} }
List<ForwardReportVO> chilidMBomList(ChildBomReportQuery query) { List<ForwardReportVO> chilidMBomList(ChildBomReportQuery query) {
List<Long> rowIds=new ArrayList<>(Arrays.asList(query.getBomRowId())) ; List<Long> rowIds=new ArrayList<>(Arrays.asList(query.getBomRowId())) ;
List<BomNewMbomMiddleVO> list = SpringUtil.getBean(BomNewMbomParentService .class).getBaseMapper().getParentChild(rowIds,null); List<BomNewMbomMiddleVO> list = SpringUtil.getBean(BomNewMbomParentService .class).getBaseMapper().getParentChild(rowIds,null);
BomNewMbomMiddleVO vo=list.get(0);
BomNewMbomParentEntity parentEntity= SpringUtil.getBean(BomNewMbomParentService .class).getById(vo.getBomRowId());
for (BomNewMbomMiddleVO item: for (BomNewMbomMiddleVO item:
list) { list) {
Long bomRowId=item.getBomRowId(); Long bomRowId=item.getBomRowId();
item.setRemark(item.getBomMaterialNo()); item.setRemark(item.getBomMaterialNo());
item.setBomRowId(item.getBomVersionRowId()); item.setBomRowId(item.getBomVersionRowId());
item.setCurrentVersion(parentEntity.getCurrentVersion());
if (item.getParentRowId().longValue() == 0l) { if (item.getParentRowId().longValue() == 0l) {
item.setParentRowId(bomRowId); item.setParentRowId(bomRowId);
} }
@ -203,11 +227,21 @@ public class ForwardReportService {
List<ForwardReportVO> chilidOriginalBomList(ChildBomReportQuery query) { List<ForwardReportVO> chilidOriginalBomList(ChildBomReportQuery query) {
BomNewOriginalParentEntity parentEntity= SpringUtil.getBean(BomNewOriginalParentService .class).getById(query.getBomRowId());
List<BomOriginalListVO> list = SpringUtil.getBean(BomNewOriginalParentService .class).getBaseMapper().getParentChild(query.getBomRowId()); List<BomOriginalListVO> list = SpringUtil.getBean(BomNewOriginalParentService .class).getBaseMapper().getParentChild(query.getBomRowId());
List<ForwardReportVO> childBomLit = Convert.convert( List<ForwardReportVO> childBomLit = Convert.convert(
new TypeReference<List<ForwardReportVO>>() { new TypeReference<List<ForwardReportVO>>() {
}, list); }, list);
for (ForwardReportVO vo:
childBomLit) {
vo.setDeviseName(parentEntity.getDeviseName());
vo.setCurrentVersion(parentEntity.getCurrentVersion());
vo.setExpireEndTime(parentEntity.getConvertToEbomTime());
}
return childBomLit; return childBomLit;
} }

View File

@ -117,15 +117,16 @@ public abstract class BaseForwardReport {
protected List<ForwardReportVO> listToList(List<ForwardReportVO> bomList, Long parentRowId) { protected List<ForwardReportVO> listToList(List<ForwardReportVO> bomList, Long parentRowId) {
Map<Long, List<ForwardReportVO>> listMap = bomList.stream().collect(Collectors.groupingBy(ForwardReportVO::getParentRowId)); Map<Long, List<ForwardReportVO>> listMap = bomList.stream().collect(Collectors.groupingBy(ForwardReportVO::getParentRowId));
//第一层数据
List<ForwardReportVO> parentChildList = bomList.stream().filter(item -> Objects.equals(parentRowId, item.getParentRowId())).collect(Collectors.toList()); List<ForwardReportVO> parentChildList = bomList.stream().filter(item -> Objects.equals(parentRowId, item.getParentRowId())).collect(Collectors.toList());
//无bom //无bom数据直接展示
List<ForwardReportVO> rootList = parentChildList.stream().filter(item -> item.getBomRowId() == null || item.getBomRowId().longValue() == 0).collect(Collectors.toList()); List<ForwardReportVO> rootList = parentChildList.stream().filter(item -> item.getBomRowId() == null || item.getBomRowId().longValue() == 0).collect(Collectors.toList());
//有bom //第一层数据有bom
List<ForwardReportVO> moreBomList = parentChildList.stream().filter(item -> item.getBomRowId() != null || item.getBomRowId().longValue() > 0).collect(Collectors.toList()); List<ForwardReportVO> moreBomList = parentChildList.stream().filter(item -> item.getBomRowId() != null && item.getBomRowId().longValue() > 0).collect(Collectors.toList());
//采用前序遍历 ->-> 输出 //采用前序遍历 ->-> 输出
Deque<ForwardReportVO> majorStack = new ArrayDeque(); Deque<ForwardReportVO> majorStack = new ArrayDeque();
//迭代第一层有Bom 前序遍历
if (CollectionUtil.isNotEmpty(moreBomList)) { if (CollectionUtil.isNotEmpty(moreBomList)) {
AtomicInteger noCode = new AtomicInteger(); AtomicInteger noCode = new AtomicInteger();
//noCode.set(1); //noCode.set(1);

View File

@ -119,7 +119,8 @@ public class EBomForwardReport extends BaseForwardReport {
AtomicInteger orderNum = new AtomicInteger(); AtomicInteger orderNum = new AtomicInteger();
for (ForwardReportVO vo : for (ForwardReportVO vo :
nodeList) { nodeList) {
vo.setCreatedTime(forwardReportVO.getCreatedTime()); // vo.setCreatedTime(forwardReportVO.getCreatedTime());
vo.setExpireEndTime(parentFormal.getConvertToEbomTime());
vo.setLevelNum(1); vo.setLevelNum(1);
vo.setOrderNumber(orderNum.incrementAndGet() + ""); vo.setOrderNumber(orderNum.incrementAndGet() + "");
vo.setDeviseName(forwardReportVO.getDeviseName()); vo.setDeviseName(forwardReportVO.getDeviseName());
@ -212,7 +213,12 @@ public class EBomForwardReport extends BaseForwardReport {
List<ForwardReportVO> rootList; List<ForwardReportVO> rootList;
//转化为树结构 //转化为树结构
rootList = showDataStyle(convertBomList, parentFormal.getRowId()); rootList = showDataStyle(convertBomList, parentFormal.getRowId());
for (ForwardReportVO vo :
rootList) {
vo.setDeviseName(forwardReportVO.getDeviseName());
vo.setExpireEndTime(parentFormal.getConvertToEbomTime());
}
return buildReportBomVo(forwardReportVO,rootList,query.getDataType()); return buildReportBomVo(forwardReportVO,rootList,query.getDataType());
@ -249,6 +255,10 @@ public class EBomForwardReport extends BaseForwardReport {
vo.setLevelNum(1); vo.setLevelNum(1);
vo.setOrderNumber(orderNum.incrementAndGet() + ""); vo.setOrderNumber(orderNum.incrementAndGet() + "");
vo.setExpireEndTime(parentFormal.getConvertToEbomTime());
vo.setDeviseName(forwardReportVO.getDeviseName());
} }
return buildReportBomVo(forwardReportVO,sumList); return buildReportBomVo(forwardReportVO,sumList);

View File

@ -45,9 +45,8 @@ public class OriginalBomForwardReport extends BaseForwardReport {
if (StrUtil.isNotBlank(query.getMaterialNo())) { if (StrUtil.isNotBlank(query.getMaterialNo())) {
queryWrapper.lambda().eq(BomNewOriginalParentEntity::getMaterialNo, query.getMaterialNo()); queryWrapper.lambda().eq(BomNewOriginalParentEntity::getMaterialNo, query.getMaterialNo());
} }
queryWrapper.lambda().eq(BomNewOriginalParentEntity::getLastVersionIs,1); queryWrapper.lambda().eq(BomNewOriginalParentEntity::getLastVersionIs,1);
// queryWrapper.lambda().eq(BomNewOriginalParentEntity::getStatus, OriginalStatusEnum.OVER_CONVERT.getValue()); queryWrapper.lambda().eq(BomNewOriginalParentEntity::getStatus, OriginalStatusEnum.OVER_CONVERT.getValue());
if (StrUtil.isNotBlank(query.getStartDate()) && StrUtil.isNotBlank(query.getEndDate())) { if (StrUtil.isNotBlank(query.getStartDate()) && StrUtil.isNotBlank(query.getEndDate())) {
queryWrapper.lambda().between(BomNewOriginalParentEntity::getConvertToEbomTime, query.getStartDate(), query.getEndDate()); queryWrapper.lambda().between(BomNewOriginalParentEntity::getConvertToEbomTime, query.getStartDate(), query.getEndDate());
} }
@ -90,11 +89,7 @@ public class OriginalBomForwardReport extends BaseForwardReport {
ForwardReportVO forwardReportVO = Convert.convert(ForwardReportVO.class, parentFormal); ForwardReportVO forwardReportVO = Convert.convert(ForwardReportVO.class, parentFormal);
forwardReportVO.setCreatedTime(parentFormal.getConvertToEbomTime()); forwardReportVO.setCreatedTime(parentFormal.getConvertToEbomTime());
// QueryWrapper<BomNewEbomChildFormalEntity> queryWrapper = new QueryWrapper<>();
// queryWrapper.lambda().eq(BomNewEbomChildFormalEntity::getParentRowId, parentFormal.getRowId());
//
// List<BomNewEbomChildFormalEntity> list = SpringUtil.getBean(BomNewEbomChildFormalService.class).list(queryWrapper);
//
List<BomOriginalListVO> list = SpringUtil.getBean(BomNewOriginalParentService.class).getBaseMapper().getParentChild(parentFormal.getRowId()); List<BomOriginalListVO> list = SpringUtil.getBean(BomNewOriginalParentService.class).getBaseMapper().getParentChild(parentFormal.getRowId());
initMaterialInfo(list); initMaterialInfo(list);
List<ForwardReportVO> nodeList=null; List<ForwardReportVO> nodeList=null;
@ -105,7 +100,7 @@ public class OriginalBomForwardReport extends BaseForwardReport {
}, list); }, list);
for (ForwardReportVO vo : for (ForwardReportVO vo :
nodeList) { nodeList) {
vo.setCreatedTime(parentFormal.getConvertToEbomTime()); vo.setExpireEndTime(parentFormal.getConvertToEbomTime());
vo.setLevelNum(1); vo.setLevelNum(1);
vo.setCurrentVersion(parentFormal.getCurrentVersion()); vo.setCurrentVersion(parentFormal.getCurrentVersion());
vo.setDeviseName(parentFormal.getDeviseName()); vo.setDeviseName(parentFormal.getDeviseName());
@ -164,6 +159,13 @@ void initMaterialInfo( List<BomOriginalListVO> list){
//转化为树结构 //转化为树结构
rootList = showDataStyle(convertBomList, parentFormal.getRowId()); rootList = showDataStyle(convertBomList, parentFormal.getRowId());
for (ForwardReportVO vo :
rootList) {
vo.setExpireEndTime(parentFormal.getConvertToEbomTime());
vo.setDeviseName(parentFormal.getDeviseName());
}
return buildReportBomVo(forwardReportVO,rootList,query.getDataType()); return buildReportBomVo(forwardReportVO,rootList,query.getDataType());
@ -196,7 +198,8 @@ void initMaterialInfo( List<BomOriginalListVO> list){
for (ForwardReportVO vo : for (ForwardReportVO vo :
sumList) { sumList) {
vo.setOrderNumber(noNum+"");noNum++; vo.setOrderNumber(noNum+"");noNum++;
vo.setExpireEndTime(parentFormal.getConvertToEbomTime());
vo.setDeviseName(parentFormal.getDeviseName());
} }
return buildReportBomVo(forwardReportVO,sumList); return buildReportBomVo(forwardReportVO,sumList);
} }

View File

@ -127,6 +127,7 @@ public class PBomForwardReport extends BaseForwardReport {
for (ForwardReportVO vo : for (ForwardReportVO vo :
nodeList) { nodeList) {
vo.setCreatedTime(forwardReportVO.getCreatedTime()); vo.setCreatedTime(forwardReportVO.getCreatedTime());
vo.setExpireEndTime(parentFormal.getReleaseTime());
vo.setDeviseName(forwardReportVO.getDeviseName()); vo.setDeviseName(forwardReportVO.getDeviseName());
vo.setCurrentVersion(forwardReportVO.getCurrentVersion()); vo.setCurrentVersion(forwardReportVO.getCurrentVersion());
vo.setLevelNum(1); vo.setLevelNum(1);
@ -224,6 +225,19 @@ public class PBomForwardReport extends BaseForwardReport {
sumLevel(convertBomList); sumLevel(convertBomList);
//转化为树结构 //转化为树结构
List<ForwardReportVO> rootList = showDataStyle(convertBomList, parentFormal.getRowId()); List<ForwardReportVO> rootList = showDataStyle(convertBomList, parentFormal.getRowId());
for (ForwardReportVO vo :
rootList) {
vo.setDeviseName(forwardReportVO.getDeviseName());
vo.setCreatedTime(parentFormal.getCreatedTime());
vo.setExpireEndTime(parentFormal.getReleaseTime());
}
return buildReportBomVo(forwardReportVO,rootList,query.getDataType()); return buildReportBomVo(forwardReportVO,rootList,query.getDataType());
} }
@ -250,6 +264,12 @@ public class PBomForwardReport extends BaseForwardReport {
int noNum=1; int noNum=1;
for(ForwardReportVO vo:sumList){ for(ForwardReportVO vo:sumList){
vo.setOrderNumber(noNum+"");noNum++; vo.setOrderNumber(noNum+"");noNum++;
vo.setDeviseName(forwardReportVO.getDeviseName());
vo.setCreatedTime(parentFormal.getCreatedTime());
vo.setExpireEndTime(parentFormal.getReleaseTime());
} }
return buildReportBomVo(forwardReportVO,sumList); return buildReportBomVo(forwardReportVO,sumList);