Pārlūkot izejas kodu

合同段权限

huangtf 2 gadi atpakaļ
vecāks
revīzija
bfd2dce438

+ 8 - 6
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ArchiveTreeContractController.java

@@ -175,13 +175,14 @@ public class ArchiveTreeContractController extends BladeController {
 	@ApiOperation(value = "懒加载树形结构", notes = "传入父级id")
 	@ApiImplicitParams(value = {
 			@ApiImplicitParam(name = "parentId", value = "父级id", required = true),
-			@ApiImplicitParam(name = "projectId", value = "项目id", required = true)
+			@ApiImplicitParam(name = "projectId", value = "项目id", required = true),
+			@ApiImplicitParam(name = "contractId", value = "合同段id", required = true)
 	})
-	public R<List<ArchiveTreeContractVO2>> lazyTree(Long parentId,Long projectId) {
+	public R<List<ArchiveTreeContractVO2>> lazyTree(Long parentId,Long projectId,Long contractId) {
 //		if (projectId == null) {
 //			projectId = 1578599210897772545L;
 //		}
-		List<ArchiveTreeContractVO2> tree = archiveTreeContractService.lazyTree2(AuthUtil.getTenantId(), parentId,projectId);
+		List<ArchiveTreeContractVO2> tree = archiveTreeContractService.lazyTree2(AuthUtil.getTenantId(), parentId,projectId,contractId);
 		if (tree != null && tree.size() > 0) {
 			return R.data(tree);
 		}
@@ -198,12 +199,13 @@ public class ArchiveTreeContractController extends BladeController {
 	@ApiImplicitParams(value = {
 			@ApiImplicitParam(name = "disPlayTree", value = "是否加载显示树 'null'=不加载 '1'=加载"),
 			@ApiImplicitParam(name = "nodeType", value = "'null'=全加载 '1'=关联电子原生文件类型树 '2'=文件上传类型树"),
-			@ApiImplicitParam(name = "projectId", value = "项目id", required = true)
+			@ApiImplicitParam(name = "projectId", value = "项目id", required = true),
+			@ApiImplicitParam(name = "contractId", value = "合同段id", required = true)
 	})
-	public R<List<ArchiveTreeContractVO2>> tree(Integer disPlayTree, Integer nodeType,Long projectId){
+	public R<List<ArchiveTreeContractVO2>> tree(Integer disPlayTree, Integer nodeType,Long projectId,Long contractId){
 
 
-		List<ArchiveTreeContractVO2> tree = archiveTreeContractService.tree2(AuthUtil.getTenantId(), disPlayTree, nodeType,projectId);
+		List<ArchiveTreeContractVO2> tree = archiveTreeContractService.tree2(AuthUtil.getTenantId(), disPlayTree, nodeType,projectId,contractId);
 		if (tree != null && tree.size() > 0) {
 			return R.data(tree);
 		}

+ 2 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/service/IArchiveTreeContractService.java

@@ -63,9 +63,9 @@ public interface IArchiveTreeContractService extends BaseService<ArchiveTreeCont
 
 	List<ArchiveTreeContractVO> tree(String tenantI,Integer disPlayTree,Integer nodeType,Long projectId);
 
-	List<ArchiveTreeContractVO2> lazyTree2(String tenantId, Long parentId, Long projectId);
+	List<ArchiveTreeContractVO2> lazyTree2(String tenantId, Long parentId, Long projectId, Long contractId);
 
-	List<ArchiveTreeContractVO2> tree2(String tenantI,Integer disPlayTree,Integer nodeType,Long projectId);
+	List<ArchiveTreeContractVO2> tree2(String tenantI,Integer disPlayTree,Integer nodeType,Long projectId, Long contractId);
 
 
 

+ 26 - 8
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ArchiveTreeContractServiceImpl.java

@@ -131,17 +131,17 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
 	}
 
 	@Override
-	public List<ArchiveTreeContractVO2> lazyTree2(String tenantId, Long parentId, Long projectId) {
+	public List<ArchiveTreeContractVO2> lazyTree2(String tenantId, Long parentId, Long projectId, Long contractId) {
 		if (AuthUtil.isAdministrator()) {
 			tenantId = StringPool.EMPTY;
 		}
-		return ForestNodeMerger.merge(baseMapper.lazyTree2(tenantId, parentId,projectId,getAuthCode(),getAuthContractId()));
+		return ForestNodeMerger.merge(baseMapper.lazyTree2(tenantId, parentId,projectId,getAuthCode(contractId),getAuthContractId(contractId)));
 	}
 
 	@Override
-	public List<ArchiveTreeContractVO2> tree2(String tenantId, Integer disPlayTree, Integer nodeType, Long projectId) {
+	public List<ArchiveTreeContractVO2> tree2(String tenantId, Integer disPlayTree, Integer nodeType, Long projectId, Long contractId) {
 
-		return ForestNodeMerger.merge(baseMapper.tree2(tenantId, disPlayTree, nodeType,projectId,getAuthCode(),getAuthContractId()));
+		return ForestNodeMerger.merge(baseMapper.tree2(tenantId, disPlayTree, nodeType,projectId,getAuthCode(contractId),getAuthContractId(contractId)));
 	}
 
 
@@ -252,20 +252,38 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
 	 * 返回所属的合同段,没有则范围“”
 	 * @return
 	 */
-	public String getAuthContractId() {
-		String contractId ="";
+	public String getAuthContractId(Long contractId) {
+
 		BladeUser bladeUser = AuthUtil.getUser();
 
-		return contractId;
+		return contractId == null?"":contractId.toString();
 	}
 
 	/**
 	 * 施工则返回“C”,监理则返回“S”,其他返回“”
 	 * @return
 	 */
-	public String getAuthCode() {
+	public String getAuthCode(Long contractId) {
 		String code ="";
 		BladeUser bladeUser = AuthUtil.getUser();
+		if (AuthUtil.isAdministrator() || contractId == null) {
+			return code;
+		}
+
+		//查询合同段信息
+		ContractInfo contractInfo = contractInfoService.getById(contractId);
+		switch (contractInfo.getContractType()){
+			case 2:
+				code = "S";
+				break;
+			case 3:
+				code = "";
+				break;
+			default:
+				code = "C";
+				break;
+		}
+
 		return code;
 	}