From 02808bc6be0577af6e89c96bcdf505eb8a1fec94 Mon Sep 17 00:00:00 2001 From: huanghai <10402852@qq.com> Date: Wed, 22 Jul 2020 15:05:46 +0800 Subject: [PATCH 1/3] 'commit' --- .../ControllerOauth2/ControllerOauth2.go | 14 ++++++++++++-- dsSso/Dao/DaoBaseGlobal/DaoBaseGlobal.go | 16 ++++++++++++++++ dsSso/docs/docs.go | 11 ++++++++++- dsSso/docs/swagger.json | 11 ++++++++++- dsSso/docs/swagger.yaml | 8 +++++++- dsSso/main.go | 2 +- 6 files changed, 56 insertions(+), 6 deletions(-) create mode 100644 dsSso/Dao/DaoBaseGlobal/DaoBaseGlobal.go diff --git a/dsSso/Controller/ControllerOauth2/ControllerOauth2.go b/dsSso/Controller/ControllerOauth2/ControllerOauth2.go index 1f36874d..f3093443 100644 --- a/dsSso/Controller/ControllerOauth2/ControllerOauth2.go +++ b/dsSso/Controller/ControllerOauth2/ControllerOauth2.go @@ -4,6 +4,7 @@ import ( "dsSso/Const" "dsSso/Const/DefaultConst" "dsSso/Controller/ControllerRecaptcha" + "dsSso/Dao/DaoBaseGlobal" "dsSso/Model" "dsSso/Service/ServiceJoinApp" "dsSso/Service/ServiceLoginPerson" @@ -404,6 +405,7 @@ func authorizeGet(context *gin.Context) { // @Description 退出统一认证 // @Tags 登录验证类 // @Accept application/x-www-form-urlencoded +// @Param redirect_uri query string true "redirect_uri" // @Produce json // @Success 200 {string} string // @Router /oauth2/logout [get] @@ -432,6 +434,14 @@ func logout(context *gin.Context) { } //清除cookie SsoUtil.DeleteSsoCookie(context) - msg := "统一认证退出成功!" - context.JSON(http.StatusOK, map[string]interface{}{"success": false, "msg": msg}) + //跳转回去,系统默认统一的回调首页 + list, err := DaoBaseGlobal.GetGlobalInfoByValue(`defaultIndexUrl`) + if err != nil || len(list) == 0 { + msg := "获取全局变量defaultIndexUrl失败!" + context.JSON(http.StatusOK, map[string]interface{}{"success": false, "msg": msg}) + return + } + globalValue := list[0]["global_value"].(string) + context.Redirect(302, string(globalValue)) + return } diff --git a/dsSso/Dao/DaoBaseGlobal/DaoBaseGlobal.go b/dsSso/Dao/DaoBaseGlobal/DaoBaseGlobal.go new file mode 100644 index 00000000..755724fb --- /dev/null +++ b/dsSso/Dao/DaoBaseGlobal/DaoBaseGlobal.go @@ -0,0 +1,16 @@ +package DaoBaseGlobal + +import "dsSso/Utils/DbUtil" + +var db = DbUtil.Engine + +/** +功能:获取指定value的全局变量 +作者:黄海 +时间:2020-07-22 + */ +func GetGlobalInfoByValue(value string) ([]map[string]interface{}, error) { + sql := `select * from t_base_global where global_code=?` + list, err := db.SQL(sql, value).Query().List() + return list, err +} diff --git a/dsSso/docs/docs.go b/dsSso/docs/docs.go index 220884c4..ce45bab4 100644 --- a/dsSso/docs/docs.go +++ b/dsSso/docs/docs.go @@ -273,6 +273,15 @@ var doc = `{ "登录验证类" ], "summary": "退出统一认证", + "parameters": [ + { + "type": "string", + "description": "redirect_uri", + "name": "redirect_uri", + "in": "query", + "required": true + } + ], "responses": { "200": { "description": "OK", @@ -604,7 +613,7 @@ type swaggerInfo struct { // SwaggerInfo holds exported Swagger Info so clients can modify it var SwaggerInfo = swaggerInfo{ Version: "2.0", - Host: "127.0.0.1:8000", + Host: "10.10.6.200:8000", BasePath: "", Schemes: []string{}, Title: "东师理想统一认证中心(OAuth2+Sso)", diff --git a/dsSso/docs/swagger.json b/dsSso/docs/swagger.json index c65b14e6..dc54fe2a 100644 --- a/dsSso/docs/swagger.json +++ b/dsSso/docs/swagger.json @@ -7,7 +7,7 @@ "license": {}, "version": "2.0" }, - "host": "127.0.0.1:8000", + "host": "10.10.6.200:8000", "paths": { "/oauth2/access_token": { "post": { @@ -257,6 +257,15 @@ "登录验证类" ], "summary": "退出统一认证", + "parameters": [ + { + "type": "string", + "description": "redirect_uri", + "name": "redirect_uri", + "in": "query", + "required": true + } + ], "responses": { "200": { "description": "OK", diff --git a/dsSso/docs/swagger.yaml b/dsSso/docs/swagger.yaml index 778bfc05..d7a39841 100644 --- a/dsSso/docs/swagger.yaml +++ b/dsSso/docs/swagger.yaml @@ -32,7 +32,7 @@ definitions: description: 个数 type: object type: object -host: 127.0.0.1:8000 +host: 10.10.6.200:8000 info: contact: {} description: 参考自xxl-sso @@ -203,6 +203,12 @@ paths: consumes: - application/x-www-form-urlencoded description: 退出统一认证 + parameters: + - description: redirect_uri + in: query + name: redirect_uri + required: true + type: string produces: - application/json responses: diff --git a/dsSso/main.go b/dsSso/main.go index 72b22ec9..e520c213 100644 --- a/dsSso/main.go +++ b/dsSso/main.go @@ -67,7 +67,7 @@ func startOAuth2Server() { // @title 东师理想统一认证中心(OAuth2+Sso) // @version 2.0 // @description 参考自xxl-sso -// @host 127.0.0.1:8000 +// @host 10.10.6.200:8000 func main() { // 发布模式 //gin.SetMode(gin.ReleaseMode) From c12eca618aecdb689b12ac0ca99ffae6c5e579f6 Mon Sep 17 00:00:00 2001 From: huanghai <10402852@qq.com> Date: Wed, 22 Jul 2020 15:09:33 +0800 Subject: [PATCH 2/3] 'commit' --- dsSso/docs/docs.go | 2 +- dsSso/docs/swagger.json | 2 +- dsSso/docs/swagger.yaml | 2 +- dsSso/main.go | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dsSso/docs/docs.go b/dsSso/docs/docs.go index ce45bab4..4872e79d 100644 --- a/dsSso/docs/docs.go +++ b/dsSso/docs/docs.go @@ -613,7 +613,7 @@ type swaggerInfo struct { // SwaggerInfo holds exported Swagger Info so clients can modify it var SwaggerInfo = swaggerInfo{ Version: "2.0", - Host: "10.10.6.200:8000", + Host: "127.0.0.1:8000", BasePath: "", Schemes: []string{}, Title: "东师理想统一认证中心(OAuth2+Sso)", diff --git a/dsSso/docs/swagger.json b/dsSso/docs/swagger.json index dc54fe2a..241b19b6 100644 --- a/dsSso/docs/swagger.json +++ b/dsSso/docs/swagger.json @@ -7,7 +7,7 @@ "license": {}, "version": "2.0" }, - "host": "10.10.6.200:8000", + "host": "127.0.0.1:8000", "paths": { "/oauth2/access_token": { "post": { diff --git a/dsSso/docs/swagger.yaml b/dsSso/docs/swagger.yaml index d7a39841..27260243 100644 --- a/dsSso/docs/swagger.yaml +++ b/dsSso/docs/swagger.yaml @@ -32,7 +32,7 @@ definitions: description: 个数 type: object type: object -host: 10.10.6.200:8000 +host: 127.0.0.1:8000 info: contact: {} description: 参考自xxl-sso diff --git a/dsSso/main.go b/dsSso/main.go index e520c213..72b22ec9 100644 --- a/dsSso/main.go +++ b/dsSso/main.go @@ -67,7 +67,7 @@ func startOAuth2Server() { // @title 东师理想统一认证中心(OAuth2+Sso) // @version 2.0 // @description 参考自xxl-sso -// @host 10.10.6.200:8000 +// @host 127.0.0.1:8000 func main() { // 发布模式 //gin.SetMode(gin.ReleaseMode) From 8a8ca9e7384f5607186dc37c764c8a24b7c37303 Mon Sep 17 00:00:00 2001 From: huanghai <10402852@qq.com> Date: Wed, 22 Jul 2020 15:18:55 +0800 Subject: [PATCH 3/3] 'commit' --- dsBaseRpc/DataExchange/DataExchange.go | 2 +- dsBaseRpc/Sql/t_sys_loginperson_log.sql | 2 +- dsSso/models/t_sys_loginperson_log.go | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dsBaseRpc/DataExchange/DataExchange.go b/dsBaseRpc/DataExchange/DataExchange.go index a8e07773..9afd7dc5 100644 --- a/dsBaseRpc/DataExchange/DataExchange.go +++ b/dsBaseRpc/DataExchange/DataExchange.go @@ -40,7 +40,7 @@ var IncrSqlDict = []tableStruct{ {TableName: "t_base_class", PrimaryKey: "class_id", DataSource: "org_class"}, {TableName: "t_base_teacher", PrimaryKey: "teacher_id", DataSource: "user_teacher"}, {TableName: "t_base_student", PrimaryKey: "student_id", DataSource: "user_student"}, - {TableName: "t_sys_loginperson_log", PrimaryKey: "id", DataSource: "log_login"}, + {TableName: "t_sys_loginperson_log", PrimaryKey: "id_int", DataSource: "log_login"}, } // 全量数据上报 diff --git a/dsBaseRpc/Sql/t_sys_loginperson_log.sql b/dsBaseRpc/Sql/t_sys_loginperson_log.sql index 989d025f..f71f4e9d 100644 --- a/dsBaseRpc/Sql/t_sys_loginperson_log.sql +++ b/dsBaseRpc/Sql/t_sys_loginperson_log.sql @@ -1,4 +1,4 @@ -select t1.id,identity_id,t1.person_id,t1.login_name,t1.ip_address, +select t1.id_int,identity_id,t1.person_id,t1.login_name,t1.ip_address, DATE_FORMAT(t1.`login_time`,'%Y/%m/%d %H:%i:%s') AS `login_time`, t1.province_code, t1.city_code,t1.district_code,t1.bureau_id, diff --git a/dsSso/models/t_sys_loginperson_log.go b/dsSso/models/t_sys_loginperson_log.go index 9cfb4a20..61a3e2a5 100644 --- a/dsSso/models/t_sys_loginperson_log.go +++ b/dsSso/models/t_sys_loginperson_log.go @@ -5,7 +5,7 @@ import ( ) type TSysLoginpersonLog struct { - Id int32 `xorm:"not null pk autoincr INT(11)"` + IdInt int32 `xorm:"not null pk autoincr INT(11)"` IdentityId int32 `xorm:"not null comment('人员身份') INT(11)"` PersonId string `xorm:"not null comment('人员ID') CHAR(36)"` LoginName string `xorm:"not null comment('登录名') VARCHAR(255)"`