1.主数据业务数据删除bug修复
2.生命周期状态值删除校验是欧服引用校验接口增加
已修改2个文件
14 ■■■■ 文件已修改
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/StatusServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -2417,10 +2417,10 @@
//        batchCBO.getDeleteCbos().addAll(cboList);
//        WebUtil.setPersistence(false);
//        batchCBO.copyFromOther(
        productCodeService.recycleCode(classifyFullInfo.getCurrentClassifyVO().getBtmTypeId(), deleteBatchDTO.getOidList());
        productCodeService.recycleCode(classifyFullInfo.getTopClassifyVO().getBtmTypeId(), deleteBatchDTO.getOidList());
//        baseMapper.deleteBatchIds(cboList);
        //使用传入的业务类型查询表
        R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(classifyFullInfo.getCurrentClassifyVO().getBtmTypeId()));
        R<List<BtmTypeVO>> listR = btmTypeClient.selectByIdCollection(Collections.singletonList(classifyFullInfo.getTopClassifyVO().getBtmTypeId()));
        if (!listR.isSuccess() || listR.getData().size() == 0) {
            throw new VciBaseException("传入业务类型未查询到相应表单,请检查!");
        }
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/StatusServiceImpl.java
@@ -416,9 +416,10 @@
            throw new VciBaseException("要删除的状态对象不能为空");
        }
        Set<String> oidSet= new HashSet<>();
        Set<String> idSet= new HashSet<>();
        statusVOList.stream().forEach( s -> {
            VciBaseUtil.alertNotNull(s.getOid(),"要删除的状态对象的主键");
            oidSet.add(s.getOid());
            idSet.add(s.getId());
        });
        //查询
        List<Status> statusDOList = listStatusByOidCollectionDO(oidSet);
@@ -432,7 +433,7 @@
            }
        });
        //检查属性是否被引用
        if(checkStatusUseds(oidSet)){
        if(checkStatusUseds(idSet)){
            throw new VciBaseException("要删除的状态在生命周期对象中被使用,无法删除");
        }
        Collection<Collection<String>> oidCollections = VciBaseUtil.switchCollectionForOracleIn(oidInDbSet);
@@ -449,6 +450,10 @@
     */
    @Override
    public boolean checkStatusUseds(Collection<String> oidCollection) {
        Long count = lifeCycleNodeMapper.selectCount(Wrappers.<LifeCycleNode>query().lambda().in(LifeCycleNode::getId,oidCollection));
        if(count>0){
            return true;
        }
        return false;
    }
@@ -461,6 +466,7 @@
     */
    @Override
    public boolean checkStatusUsed(String pkStatus) throws VciBaseException {
        return false;
    }