This commit is contained in:
parent
5014614de7
commit
f05ae31a57
|
|
@ -45,5 +45,9 @@ public interface OptionalMbomMaterialMapper extends BaseMapper<OptionalMbomMater
|
|||
*/
|
||||
List<OptionalMbomMaterialListVO> searchList(@Param("rowId") Long rowId );
|
||||
|
||||
|
||||
List<OptionalMbomMaterialListVO> getRecursionList(@Param("rowId") Long rowId );
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ package com.nflg.product.bomnew.service;
|
|||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import cn.hutool.core.util.RandomUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import cn.hutool.extra.spring.SpringUtil;
|
||||
import com.alibaba.excel.enums.BooleanEnum;
|
||||
|
|
@ -723,7 +724,7 @@ public class BomNewPbomParentService extends ServiceImpl<BomNewPbomParentMapper,
|
|||
List<BomNewPbomParentVO> allChild = getAllBom(bomRowId, 0);
|
||||
|
||||
if (StrUtil.isBlank(rootParent.getOrderNo())) {
|
||||
String orderNo = crmService.getOrderNo(rootParent.getMaterialNo());
|
||||
String orderNo = RandomUtil.randomNumbers(6);// crmService.getOrderNo(rootParent.getMaterialNo());
|
||||
rootParent.setOrderNo(orderNo);
|
||||
}
|
||||
VUtils.isTure(StrUtil.isBlank(rootParent.getOrderNo())).throwMessage("没有获取到订单号");
|
||||
|
|
|
|||
|
|
@ -104,10 +104,33 @@ public class OptionalMbomMaterialService extends ServiceImpl<OptionalMbomMateria
|
|||
return collect.get(0);
|
||||
}
|
||||
|
||||
private OptionalMbomMaterialListVO listToTree(Long rowId,List<OptionalMbomMaterialListVO> childs) {
|
||||
|
||||
if(CollectionUtil.isEmpty(childs)){
|
||||
return null;
|
||||
}
|
||||
|
||||
materialMainService.intiMaterialInfo(childs);
|
||||
Map<Long, List<OptionalMbomMaterialListVO>> groupMap = childs.stream().collect(Collectors.groupingBy(OptionalMbomMaterialListVO::getParentRowId));
|
||||
childs.forEach(child -> {
|
||||
child.setChildNodes(groupMap.get(child.getRowId()));
|
||||
|
||||
});
|
||||
//筛选出根
|
||||
List<OptionalMbomMaterialListVO> collect = childs.stream().filter(item -> Objects.equals(rowId,item.getRowId())).collect(Collectors.toList());
|
||||
return collect.get(0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public Boolean importSap(Long rowId){
|
||||
List<OptionalMbomMaterialListVO> list=this.baseMapper.getRecursionList(rowId);
|
||||
|
||||
OptionalMbomMaterialListVO parent=listToTree(rowId,list);
|
||||
|
||||
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,17 @@
|
|||
package com.nflg.product.bomnew.service.domain.OptionalMBom;
|
||||
|
||||
import com.nflg.product.bomnew.constant.BomConstant;
|
||||
import com.nflg.product.bomnew.pojo.dto.sap.impart2.ImportSapParamDTO;
|
||||
|
||||
public class OpMBomImortSap {
|
||||
|
||||
|
||||
|
||||
public ImportSapParamDTO buildSap(){
|
||||
ImportSapParamDTO result=new ImportSapParamDTO();
|
||||
result.setZID(parent.getRowId().toString());
|
||||
result.setI_WERKS(parent.getFacCode());
|
||||
result.setI_STLAN(BomConstant.SAP_YDBOM);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -83,6 +83,27 @@
|
|||
, dd._ids )
|
||||
</select>
|
||||
|
||||
<select id="getRecursionList" >
|
||||
|
||||
SELECT d.*
|
||||
FROM (SELECT @ids AS _ids,
|
||||
(SELECT @ids := GROUP_CONCAT( row_id )
|
||||
FROM t_optional_mbom_material
|
||||
WHERE FIND_IN_SET( parent_row_id, @ids )) AS cids FROM
|
||||
t_optional_mbom_material,
|
||||
( SELECT @ids := ( SELECT pu.row_id FROM t_optional_mbom_material pu WHERE pu.row_id = ${rowId}) ) b
|
||||
WHERE
|
||||
@ids IS NOT NULL
|
||||
) dd
|
||||
, t_optional_mbom_material d
|
||||
WHERE
|
||||
FIND_IN_SET( d.row_id
|
||||
, dd._ids )
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
<update id="updateBackStatus" >
|
||||
UPDATE t_bom_new_mbom_detail SET material_back_status=#{materialBackStatus},modify_time=now()
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue