diff --git a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomDel.java b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomDel.java index 069eba7f..885e8900 100644 --- a/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomDel.java +++ b/nflg_project_dev/nflg-bom-new/src/main/java/com/nflg/product/bomnew/service/domain/EBom/EBomDel.java @@ -8,15 +8,16 @@ import com.nflg.product.base.core.conmon.util.SessionUtil; import com.nflg.product.bomnew.constant.EBomConstant; import com.nflg.product.bomnew.constant.EBomSourceEnum; import com.nflg.product.bomnew.constant.UserJobEnum; +import com.nflg.product.bomnew.constant.VirtualPackageTypeEnum; import com.nflg.product.bomnew.pojo.vo.BomNewEbomParentVO; import com.nflg.product.bomnew.service.BomNewEbomParentService; import com.nflg.product.bomnew.service.UserRoleService; import com.nflg.product.bomnew.util.VUtils; import lombok.Getter; -import org.apache.tomcat.jni.User; import java.util.ArrayList; import java.util.List; +import java.util.Objects; import java.util.concurrent.ExecutionException; import java.util.stream.Collectors; @@ -52,16 +53,20 @@ public class EBomDel { //工艺岗位,只能删除自己在EBOM中创建的数据 // 原始bom导入过来的只能 设计人员自己删,工艺不能删;双角色可以删自己数据 //设计人员在Ebom中创建的数据 工艺人员可以删除? + //虚拟包可以删除 if(roleList.contains(EBomConstant.DESIGNER)){ - delEBom = bomTreeAll.stream().filter(u ->ObjectUtil.equal( u.getCreatedBy(),SessionUtil.getUserCode()) - && (ObjectUtil.equal(u.getSource(),EBomSourceEnum.FROM_MDM.getValue()) || ObjectUtil.equal(u.getSource(), EBomSourceEnum.FROM_EXCE.getValue() ))) + delEBom = bomTreeAll.stream().filter(u -> (ObjectUtil.equal(u.getCreatedBy(), SessionUtil.getUserCode()) + && (ObjectUtil.equal(u.getSource(), EBomSourceEnum.FROM_MDM.getValue()) || ObjectUtil.equal(u.getSource(), EBomSourceEnum.FROM_EXCE.getValue())) + ) || !Objects.equals(u.getVirtualPartType(), VirtualPackageTypeEnum.UN_VIRTUAL_PACKAGE.getValue())) .collect(Collectors.toList()); } //工艺 删除自己和设计人员的数据只能是excel和手动录入 + //虚拟包可以删除 if(roleList.contains(EBomConstant.TECHNICIAN)){ - delEBom = bomTreeAll.stream().filter(u -> (ObjectUtil.equal(UserJobEnum.DESIGNER.getValue(),u.getCreatedJob()) || ObjectUtil.equal(u.getCreatedBy(),SessionUtil.getUserCode())) - && ( ObjectUtil.equal(u.getSource(),EBomSourceEnum.FROM_MDM.getValue()) || ObjectUtil.equal(u.getSource(), EBomSourceEnum.FROM_EXCE.getValue() ))) + delEBom = bomTreeAll.stream().filter(u -> ((ObjectUtil.equal(UserJobEnum.DESIGNER.getValue(), u.getCreatedJob()) || ObjectUtil.equal(u.getCreatedBy(), SessionUtil.getUserCode())) + && (ObjectUtil.equal(u.getSource(), EBomSourceEnum.FROM_MDM.getValue()) || ObjectUtil.equal(u.getSource(), EBomSourceEnum.FROM_EXCE.getValue())) + ) || !Objects.equals(u.getVirtualPartType(), VirtualPackageTypeEnum.UN_VIRTUAL_PACKAGE.getValue())) .collect(Collectors.toList()); }