From f0fbaaad23c53ca1635e074a847cc37303fc7298 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com> Date: Wed, 7 Feb 2024 08:11:08 +0800 Subject: [PATCH] 'commit' --- Doc/打通天喻平台机构人员数据.txt | 7 ++++++- .../Controller/LoginPersonController.java | 16 +++++++++++++--- .../LoginPerson/Model/LoginPersonModel.java | 17 +++++++++++++++++ src/main/resource/whiteList.txt | 3 ++- 4 files changed, 38 insertions(+), 5 deletions(-) diff --git a/Doc/打通天喻平台机构人员数据.txt b/Doc/打通天喻平台机构人员数据.txt index a39ab115..3482faf4 100644 --- a/Doc/打通天喻平台机构人员数据.txt +++ b/Doc/打通天喻平台机构人员数据.txt @@ -25,4 +25,9 @@ cas_id:35e6ebf6a93f11eea5f9be51404f227d 链接示例: https://space.ccsjy.cn/manage/account/login?login_cas_id=35e6ebf6a93f11eea5f9be51404f227d 第三方平台平台名称:长春市教育管理公共服务平台 登录回调地址: http://10.10.21.20:9000/QingLong/loginPerson/casLogin -开发测试用的,正式上线后还需要申请修改为正确的线上地址。 \ No newline at end of file +开发测试用的,正式上线后还需要申请修改为正确的线上地址。 + +-- 为方便调试,将彭鹏修改为 长春市第一中学 1d5e3ed186a44e9392772f252809597a +update ds_base_teacher set bureau_id='1d5e3ed186a44e9392772f252809597a' where id_int=(select id_int from ds_base_teacher where user_id='f0bf1b8d542d4feeb85e401c135ad807' limit 1); +-- 为方便调试,将彭鹏修还原为 长春市绿园区雷锋小学校 414b84ad1ee64d36a600af4625de830c +update ds_base_teacher set bureau_id='414b84ad1ee64d36a600af4625de830c' where id_int=(select id_int from ds_base_teacher where user_id='f0bf1b8d542d4feeb85e401c135ad807' limit 1); \ No newline at end of file diff --git a/src/main/java/com/dsideal/QingLong/LoginPerson/Controller/LoginPersonController.java b/src/main/java/com/dsideal/QingLong/LoginPerson/Controller/LoginPersonController.java index 66001dc8..bfe9b44f 100644 --- a/src/main/java/com/dsideal/QingLong/LoginPerson/Controller/LoginPersonController.java +++ b/src/main/java/com/dsideal/QingLong/LoginPerson/Controller/LoginPersonController.java @@ -520,16 +520,26 @@ public class LoginPersonController extends Controller { map.put("ticket", ticket); JSONObject jo = SyncUtil.getJson(url, map, "GET"); Kv kv = Kv.create(); - if (StrKit.isBlank(jo.getJSONObject("result").toString()) || StrKit.isBlank(jo.getJSONObject("result").getString("user_id"))) { + if (jo.getJSONObject("result")==null || StrKit.isBlank(jo.getJSONObject("result").toString()) || StrKit.isBlank(jo.getJSONObject("result").getString("user_id"))) { kv.set("success", false); kv.set("message", "验证票据失败!"); renderJson(kv); return; } + + String user_id = jo.getJSONObject("result").getString("user_id"); + String user_name = jo.getJSONObject("result").getString("name"); + + Record bureauRecord = model.getTyPersonBureauInfo(user_id); + String org_id = bureauRecord.getStr("org_id"); + String org_name = bureauRecord.getStr("org_name"); + kv.set("success", true); kv.set("message", "验证票据成功!"); - kv.set("user_id", jo.getJSONObject("result").getString("user_id")); - kv.set("user_name", jo.getJSONObject("result").getString("name")); + kv.set("user_id", user_id); + kv.set("user_name", user_name); + kv.set("org_id", org_id); + kv.set("org_name", org_name); renderJson(kv); } } \ No newline at end of file diff --git a/src/main/java/com/dsideal/QingLong/LoginPerson/Model/LoginPersonModel.java b/src/main/java/com/dsideal/QingLong/LoginPerson/Model/LoginPersonModel.java index 23f3eb33..5779c8df 100644 --- a/src/main/java/com/dsideal/QingLong/LoginPerson/Model/LoginPersonModel.java +++ b/src/main/java/com/dsideal/QingLong/LoginPerson/Model/LoginPersonModel.java @@ -277,6 +277,7 @@ public class LoginPersonModel { /** * 功能:指定人员有哪些角色信息 + * * @param person_id * @return */ @@ -285,4 +286,20 @@ public class LoginPersonModel { List list = Db.find(sql, person_id); return list; } + + /***下面的代码用于与天喻平台对接*************************************************************/ + public Record getTyPersonBureauInfo(String user_id) { + //-- 老师 + String sql = "select bureau_id from ds_base_teacher where user_id=? limit 1"; + Record record = Db.findFirst(sql, user_id); + // -- 学生 + if (record == null) { + sql = "select bureau_id from ds_base_student where user_id='722f6eac6c434735a2deb8b557ab2fe5' limit 1"; + record = Db.findFirst(sql, user_id); + } + sql = "select org_id,org_name from ds_base_bureau where org_id=?"; + String org_id = record.getStr("bureau_id"); + Record res = Db.findFirst(sql, org_id); + return res; + } } diff --git a/src/main/resource/whiteList.txt b/src/main/resource/whiteList.txt index 4d4bd252..82a3ec13 100644 --- a/src/main/resource/whiteList.txt +++ b/src/main/resource/whiteList.txt @@ -10,4 +10,5 @@ /hk/schoolLogin /admin/ /loginPerson/showOnline -/collect/doFillLogin \ No newline at end of file +/collect/doFillLogin +/loginPerson/casLogin \ No newline at end of file