主要目的就是为了获取获取最后一步返回的数据,前端直接调用最后一步获取数据接口,然后请求先查看redis有没有换成当前用户的access_token,如果有直接用这个access_token调用最后一步接口获取数据,如果没有就走下面的流程获取access_token并存入redis,后续调用接口获取数据时就可以直接从redis获取access_token了。 如果没有走分装好的三方登录校验流程,如果有直接请求返回数据。 首先需要实现三方校验工具类 第一步先要获取access_token,调用的接口是/oauth2/token,成功返回参数{ "rtnFlag": "0", "code": "0", "rtnMessage": "接口调用成功!", "msg": "success", "rtnObj": { "accessToken": { "access_token": "d98e65eaca3a4bdab7e5299a81f9a447", "expires_in": 6000000, "refresh_token": "ee0c0dfad5f6480abc4265ac9854573c" } } } 需要将这个access_token用redis存起来,下一步获取该access_token下的所有用户,请求路径为/sys/user/getUserIdentityPageData将access_token当做Query参数成功返回结果{ "rtnFlag": "0", "code": "0", "rtnMessage": "接口调用成功!", "msg": "success", "rtnObj": { "total": 1, "data": [ { "id": "45e9dcf918fd41bf8b03c21f2ae05feb", "isNewRecord": false, "createDate": "2026-04-15 16:25:05", "updateDate": "2026-04-15 16:25:05", "createById": "1", "updateById": "1", "loginName": "pmbim", "no": "pmbim003", "name": "施工bim", "email": "", "phone": "", "mobile": "13456553434", "loginFlag": "true", "photo": "", "account": { "id": "a72dfbc621334c86ba2e3cb0bca39f2c", "isNewRecord": false, "loginName": "pmbim", "acc4aName": "" }, "org": { "id": "12e3c0eb186243869d94e214363ba083", "isNewRecord": false, "parentId": "adb0fe6486604dd9bf5ffedcff27ec9c", "innerCode": "0000100006000040002000006000170000600003", "orderNo": 0, "isLeaf": false, "treeTable": "sys_org", "textField": "org_name", "orgCode": "PJ2022041117", "orgName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "orgType": "项目", "extParentData": false, "noUsed": false, "timeLimit": 0.0, "contractAmt": 0.0, "postBudgetAmt": 0.0, "org4aId": "101479505", "org4aName": "中交隧道工程局有限公司海太长江隧道(公路部分)工程主体施工项目HT-A4标", "org4aShortname": "海太项目A4标", "dataSource": "dataSource00017", "isCloudUp": "1", "state": "closed" }, "dept": { "id": "12e3c0eb186243869d94e214363ba083", "isNewRecord": false, "parentId": "adb0fe6486604dd9bf5ffedcff27ec9c", "innerCode": "0000100006000040002000006000170000600003", "orderNo": 0, "isLeaf": false, "treeTable": "sys_org", "textField": "org_name", "orgCode": "PJ2022041117", "orgName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "orgType": "项目", "extParentData": false, "noUsed": false, "timeLimit": 0.0, "contractAmt": 0.0, "postBudgetAmt": 0.0, "org4aId": "101479505", "org4aName": "中交隧道工程局有限公司海太长江隧道(公路部分)工程主体施工项目HT-A4标", "org4aShortname": "海太项目A4标", "state": "closed" }, "orgId": "12e3c0eb186243869d94e214363ba083", "deptId": "12e3c0eb186243869d94e214363ba083", "orgName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "deptName": "【一公局集团】-【隧道局】-【海太长江隧道(公路部分)工程主体施工项目HT-A4标】", "accountId": "a72dfbc621334c86ba2e3cb0bca39f2c", "userId": "45e9dcf918fd41bf8b03c21f2ae05feb", "userNo": "pmbim003", "userName": "施工bim", "wxOpenId": "", "roleNames": "", "roleCodes": "", "admin": false } ], "pageSize": 30, "currentPage": 1 } } 接下来先默认将第一个用户id如:"id": "45e9dcf918fd41bf8b03c21f2ae05feb"进行下一步登录接口,登录接口路径为/oauth2/switchLogin Query 参数 access_token=上一步获取的access_token,userId=上一步获取的用户id 成功返回{ "rtnFlag": "0", "code": "0", "rtnMessage": "接口调用成功!", "msg": "success", "rtnObj": { "principal": { "id": "45e9dcf918fd41bf8b03c21f2ae05feb", "loginName": "pmbim", "name": "施工bim", "orgId": "12e3c0eb186243869d94e214363ba083", "deptId": "12e3c0eb186243869d94e214363ba083", "orgName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "deptName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "accountId": "a72dfbc621334c86ba2e3cb0bca39f2c", "loginType": "30", "curUser": { "id": "45e9dcf918fd41bf8b03c21f2ae05feb", "isNewRecord": false, "createDate": "2026-04-15 16:25:05", "updateDate": "2026-04-15 16:25:05", "createById": "1", "updateById": "1", "loginName": "pmbim", "no": "pmbim003", "name": "施工bim", "email": "", "phone": "", "mobile": "13456553434", "loginFlag": "true", "photo": "", "account": { "id": "a72dfbc621334c86ba2e3cb0bca39f2c", "isNewRecord": false, "loginName": "pmbim", "acc4aName": "" }, "org": { "id": "12e3c0eb186243869d94e214363ba083", "isNewRecord": false, "parentId": "adb0fe6486604dd9bf5ffedcff27ec9c", "innerCode": "0000100006000040002000006000170000600003", "orderNo": 0, "isLeaf": false, "treeTable": "sys_org", "textField": "org_name", "orgCode": "PJ2022041117", "orgName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "orgType": "项目", "extParentData": false, "noUsed": false, "timeLimit": 0.0, "contractAmt": 0.0, "postBudgetAmt": 0.0, "org4aId": "101479505", "org4aName": "中交隧道工程局有限公司海太长江隧道(公路部分)工程主体施工项目HT-A4标", "org4aShortname": "海太项目A4标", "dataSource": "dataSource00017", "state": "closed" }, "dept": { "id": "12e3c0eb186243869d94e214363ba083", "isNewRecord": false, "parentId": "adb0fe6486604dd9bf5ffedcff27ec9c", "innerCode": "0000100006000040002000006000170000600003", "orderNo": 0, "isLeaf": false, "treeTable": "sys_org", "textField": "org_name", "orgCode": "PJ2022041117", "orgName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "orgType": "项目", "extParentData": false, "noUsed": false, "timeLimit": 0.0, "contractAmt": 0.0, "postBudgetAmt": 0.0, "org4aId": "101479505", "org4aName": "中交隧道工程局有限公司海太长江隧道(公路部分)工程主体施工项目HT-A4标", "org4aShortname": "海太项目A4标", "state": "closed" }, "orgId": "12e3c0eb186243869d94e214363ba083", "deptId": "12e3c0eb186243869d94e214363ba083", "orgName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "deptName": "海太长江隧道(公路部分)工程主体施工项目HT-A4标", "accountId": "a72dfbc621334c86ba2e3cb0bca39f2c", "userId": "45e9dcf918fd41bf8b03c21f2ae05feb", "userNo": "pmbim003", "userName": "施工bim", "wxOpenId": "", "roleNames": "仅查看权限(项目),所有人权限(项目)", "roleCodes": "1-1-9-viewOnly,1-1-9-all", "admin": false }, "__sid": "ce92742733dd4c15bda3edc008610422", "sessionid": "ce92742733dd4c15bda3edc008610422" }, "accessToken": { "access_token": "d98e65eaca3a4bdab7e5299a81f9a447", "expires_in": 6000000, "refresh_token": "ee0c0dfad5f6480abc4265ac9854573c" } } }。 最后一步就是获取WBS接口,路径为/pj/pjPosition/zTreeDataBim 参数为Query参数 参数为access_token=上一步获取的access_token json参数为projectId=上一步获取的用户所属项目id(如)"orgId": "12e3c0eb186243869d94e214363ba083" 返回如下 { "code": "0", "msg": "success", "data": [ { "id": "c65248f0829c4da08ec725bf4ddc0c58", "isNewRecord": false, "createDate": "2024-04-07 15:27:19", "updateDate": "2025-01-16 16:26:42", "auditStatus": "2", "auditStatusName": "已锁定", "createById": "6ffc000001cf4553986f4c4694b2f58e", "updateById": "e1b35c7e6f98462b8f7b57a225bcbf19", "parentId": "-1", "innerCode": "00001", "orderNo": 1, "isLeaf": false, "treeTable": "pm_pj_position", "busiField": "project_id", "name": "总则", "projectId": "12e3c0eb186243869d94e214363ba083", "fullName": "【总则】", "startNo": "", "endNo": "", "figureNo": "", "auditDate": "2024-04-07 15:35:08", "auditBy": "6ffc000001cf4553986f4c4694b2f58e", "auditByName": "唐智", "reviewAmt": 194301071, "reviewNotaxAmt": 178257863.27, "afterAmt": 194301071, "afterNotaxAmt": 178257863.27, "meteringAmt": 194301071, "meteringNotaxAmt": 178257863.27, "changeNum": 0, "sourceId": "12e3c0eb186243869d94e214363ba083", "staWbsId": "", "staWbsCode": "", "state": "closed" }, { "id": "a03817265daf421b85f7abaf28a60e05", "isNewRecord": false, "createDate": "2024-04-07 15:27:38", "updateDate": "2025-01-16 16:26:42", "auditStatus": "2", "auditStatusName": "已锁定", "createById": "6ffc000001cf4553986f4c4694b2f58e", "updateById": "e1b35c7e6f98462b8f7b57a225bcbf19", "parentId": "-1", "innerCode": "00002", "orderNo": 2, "isLeaf": false, "treeTable": "pm_pj_position", "busiField": "project_id", "name": "隧道工程", "projectId": "12e3c0eb186243869d94e214363ba083", "fullName": "【隧道工程】", "startNo": "", "endNo": "", "figureNo": "", "auditDate": "2024-04-07 15:35:08", "auditBy": "6ffc000001cf4553986f4c4694b2f58e", "auditByName": "唐智", "reviewAmt": 3663530017.12, "reviewNotaxAmt": 3361036665.12, "afterAmt": 3656111376.35, "afterNotaxAmt": 3354230524.36, "meteringAmt": 3651875110.36, "meteringNotaxAmt": 3350344041.79, "changeNum": 0, "sourceId": "12e3c0eb186243869d94e214363ba083", "staWbsId": "", "staWbsCode": "", "state": "closed" }, { "id": "023ca4ab32a34529aa658ef304b51903", "isNewRecord": false, "createDate": "2024-04-07 15:32:13", "updateDate": "2025-01-16 16:26:42", "auditStatus": "2", "auditStatusName": "已锁定", "createById": "6ffc000001cf4553986f4c4694b2f58e", "updateById": "e1b35c7e6f98462b8f7b57a225bcbf19", "parentId": "-1", "innerCode": "00003", "orderNo": 3, "isLeaf": false, "treeTable": "pm_pj_position", "busiField": "project_id", "name": "机电预留预埋", "projectId": "12e3c0eb186243869d94e214363ba083", "fullName": "【机电预留预埋】", "startNo": "", "endNo": "", "figureNo": "", "auditDate": "2024-04-07 15:35:08", "auditBy": "6ffc000001cf4553986f4c4694b2f58e", "auditByName": "唐智", "reviewAmt": 14437594.8, "reviewNotaxAmt": 13245499.82, "afterAmt": 14437594.8, "afterNotaxAmt": 13245499.82, "meteringAmt": 14437594.8, "meteringNotaxAmt": 13245499.82, "changeNum": 0, "sourceId": "12e3c0eb186243869d94e214363ba083", "staWbsId": "", "staWbsCode": "", "state": "closed" }, { "id": "055622c1fce24947910583274e2f3647", "isNewRecord": false, "createDate": "2024-04-07 15:32:13", "updateDate": "2025-01-16 16:26:42", "auditStatus": "2", "auditStatusName": "已锁定", "createById": "6ffc000001cf4553986f4c4694b2f58e", "updateById": "e1b35c7e6f98462b8f7b57a225bcbf19", "parentId": "-1", "innerCode": "00004", "orderNo": 4, "isLeaf": false, "treeTable": "pm_pj_position", "busiField": "project_id", "name": "暂列金额", "projectId": "12e3c0eb186243869d94e214363ba083", "fullName": "【暂列金额】", "startNo": "", "endNo": "", "figureNo": "", "auditDate": "2024-04-07 15:35:08", "auditBy": "6ffc000001cf4553986f4c4694b2f58e", "auditByName": "唐智", "reviewAmt": 396986606.1, "reviewNotaxAmt": 364207895.5, "afterAmt": 396986606.1, "afterNotaxAmt": 364207895.5, "meteringAmt": 396986606.1, "meteringNotaxAmt": 364207895.5, "changeNum": 0, "sourceId": "12e3c0eb186243869d94e214363ba083", "staWbsId": "", "staWbsCode": "", "state": "closed" }, { "id": "c38f082f47af4e2492e472db3b7e7d4b", "isNewRecord": false, "createDate": "2024-04-07 15:32:13", "updateDate": "2025-01-16 16:26:42", "auditStatus": "2", "auditStatusName": "已锁定", "createById": "6ffc000001cf4553986f4c4694b2f58e", "updateById": "e1b35c7e6f98462b8f7b57a225bcbf19", "parentId": "-1", "innerCode": "00005", "orderNo": 5, "isLeaf": false, "treeTable": "pm_pj_position", "busiField": "project_id", "name": "DDCI构件采购(暂估价)", "projectId": "12e3c0eb186243869d94e214363ba083", "fullName": "【DDCI构件采购(暂估价)】", "startNo": "", "endNo": "", "figureNo": "", "auditDate": "2024-04-07 15:35:08", "auditBy": "6ffc000001cf4553986f4c4694b2f58e", "auditByName": "唐智", "reviewAmt": 148960000, "reviewNotaxAmt": 136660550.46, "afterAmt": 148960000, "afterNotaxAmt": 136660550.46, "meteringAmt": 148960000, "meteringNotaxAmt": 136660550.46, "changeNum": 0, "sourceId": "12e3c0eb186243869d94e214363ba083", "staWbsId": "", "staWbsCode": "", "state": "closed" }, { "id": "b9f55978194b4284bac28378d2c85f8a", "isNewRecord": false, "createDate": "2024-04-07 15:32:13", "updateDate": "2025-01-16 16:26:42", "auditStatus": "2", "auditStatusName": "已锁定", "createById": "6ffc000001cf4553986f4c4694b2f58e", "updateById": "e1b35c7e6f98462b8f7b57a225bcbf19", "parentId": "-1", "innerCode": "00006", "orderNo": 6, "isLeaf": false, "treeTable": "pm_pj_position", "busiField": "project_id", "name": "调整金额", "projectId": "12e3c0eb186243869d94e214363ba083", "fullName": "【调整金额】", "startNo": "", "endNo": "", "figureNo": "", "auditDate": "2024-04-07 15:35:08", "auditBy": "6ffc000001cf4553986f4c4694b2f58e", "auditByName": "唐智", "reviewAmt": 3.7, "reviewNotaxAmt": 3.39, "afterAmt": 3.7, "afterNotaxAmt": 3.39, "meteringAmt": 3.7, "meteringNotaxAmt": 3.39, "changeNum": 0, "sourceId": "12e3c0eb186243869d94e214363ba083", "staWbsId": "", "staWbsCode": "", "state": "closed" } ], "trace_id": "280a1c381bb9444b9942fcda0e4e64b8", "span_id": "1aa20045d48d42b78e03c48c379598c9" } 这一步也需要返回给前端,前端后续还会走这个接口参数多了一个parentId,每次点击都会进入下一集子节点成功返回 { "code": "0", "msg": "success", "data": [ { "id": "0fcdafbcbc1948e795301bbabd993198", "isNewRecord": false, "createDate": "2024-04-07 15:32:13", "updateDate": "2025-01-16 16:26:41", "auditStatus": "2", "auditStatusName": "已锁定", "createById": "6ffc000001cf4553986f4c4694b2f58e", "updateById": "e1b35c7e6f98462b8f7b57a225bcbf19", "parentId": "023ca4ab32a34529aa658ef304b51903", "innerCode": "0000300001", "orderNo": 1, "isLeaf": false, "treeTable": "pm_pj_position", "busiField": "project_id", "name": "机电预留预埋", "projectId": "12e3c0eb186243869d94e214363ba083", "fullName": "【机电预留预埋】-【机电预留预埋】", "startNo": "", "endNo": "", "figureNo": "", "auditDate": "2024-04-07 15:35:08", "auditBy": "6ffc000001cf4553986f4c4694b2f58e", "auditByName": "唐智", "reviewAmt": 14437594.8, "reviewNotaxAmt": 13245499.82, "afterAmt": 14437594.8, "afterNotaxAmt": 13245499.82, "meteringAmt": 14437594.8, "meteringNotaxAmt": 13245499.82, "changeNum": 0, "sourceId": "12e3c0eb186243869d94e214363ba083", "staWbsId": "", "staWbsCode": "", "state": "closed" } ], "trace_id": "45486ce7de43465f8fcb6b9979b9d3b4", "span_id": "03602b57b0d04d96aa587773416a479c" }