|
@@ -865,15 +865,33 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<ArchiveTreeContractVO3> getArchiveTreeByNodeType(Long projectId, Long nodeType) {
|
|
|
- if (nodeType == 1){
|
|
|
- return baseMapper.getArchiveTreeByNodeType2(projectId);
|
|
|
- }else if (nodeType == 2){
|
|
|
- return baseMapper.getArchiveTreeByNodeType(projectId,"C");
|
|
|
- }else if (nodeType == 3){
|
|
|
- return baseMapper.getArchiveTreeByNodeType(projectId,"S");
|
|
|
+ public List<ArchiveTreeContractVO3> getArchiveTreeByNodeType(Long projectId, Long contractId,Integer nodeType) {
|
|
|
+ //获取合同段类型
|
|
|
+ ContractInfo contractInfo = contractInfoService.selectById(contractId + "");
|
|
|
+ Integer contractType = contractInfo.getContractType();
|
|
|
+ //根据用户在当前合同段的权限,判断返回
|
|
|
+ BladeUser user = AuthUtil.getUser();
|
|
|
+ String name = baseMapper.getUserRoleName(projectId,contractId,user.getUserId());
|
|
|
+ if (name.contains("超级管理员") || contractType == 3) {
|
|
|
+ //
|
|
|
+ if (nodeType == 1) {
|
|
|
+ return baseMapper.getArchiveTreeByNodeType2(projectId);
|
|
|
+ } else if (nodeType == 2) {
|
|
|
+ return baseMapper.getArchiveTreeByNodeType(projectId, "C");
|
|
|
+ } else if (nodeType == 3) {
|
|
|
+ return baseMapper.getArchiveTreeByNodeType(projectId, "S");
|
|
|
+ } else {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
}else {
|
|
|
- return null;
|
|
|
+ //只返回对应类型的
|
|
|
+ if (contractType == 1 && nodeType == 2){
|
|
|
+ return baseMapper.getArchiveTreeByNodeType(projectId, "C");
|
|
|
+ } else if (contractType == 2 && nodeType == 3) {
|
|
|
+ return baseMapper.getArchiveTreeByNodeType(projectId, "S");
|
|
|
+ }else {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|