|
@@ -1870,6 +1870,12 @@ public class MeterTreeContractServiceImpl extends BaseServiceImpl<MeterTreeContr
|
|
|
List<MeterTreeLinkWbsTree> list = new ArrayList<>();
|
|
|
//转换为id集合
|
|
|
List<Long> meterIds = Func.toLongList(dto.getMeterIds());
|
|
|
+ //校验节点是否已经计量过,已经计量过的节点不允许再关联
|
|
|
+ List<MiddleMeterApply> applyList = baseMapper.getMiddleMeter(dto.getContractId(),meterIds);
|
|
|
+ if (applyList.size() > 0){
|
|
|
+ MeterTreeContract treeContract = this.getById(applyList.get(0).getContractUnitId());
|
|
|
+ throw new ServiceException("节点("+treeContract.getNodeName()+")已经被计量过,不能再关联WBS节点,请修改后再关联");
|
|
|
+ }
|
|
|
List<Long> wbsIds = Func.toLongList(dto.getWbsIds());
|
|
|
//根据合同段查询出WBS树所有树节点,用于生成分项部位
|
|
|
List<NodePartVO> wbsNodes = baseMapper.getAllWbsNode(dto.getProjectId(),dto.getContractId());
|
|
@@ -1949,6 +1955,16 @@ public class MeterTreeContractServiceImpl extends BaseServiceImpl<MeterTreeContr
|
|
|
if (StringUtils.isBlank(map.get("ids"))){
|
|
|
throw new ServiceException("请选择数据后再提交");
|
|
|
}
|
|
|
+ if (StringUtils.isBlank(map.get("nodeId"))){
|
|
|
+ throw new ServiceException("未传入节点id");
|
|
|
+ }
|
|
|
+ List<Long> meterIds = Func.toLongList(map.get("nodeId"));
|
|
|
+ MeterTreeContract treeContract = this.getById(meterIds.get(0));
|
|
|
+ //校验节点是否已经计量过,已经计量过的节点不允许再关联
|
|
|
+ List<MiddleMeterApply> applyList = baseMapper.getMiddleMeter(treeContract.getContractId(),meterIds);
|
|
|
+ if (applyList.size() > 0){
|
|
|
+ throw new ServiceException("节点("+treeContract.getNodeName()+")已经被计量过,不能取消关联");
|
|
|
+ }
|
|
|
meterTreeLinkWbsTreeService.removeBatchByIds(Func.toLongList(map.get("ids")));
|
|
|
}
|
|
|
|