master
wangshuai 5 years ago
parent 6dc8583846
commit 31e3c67bf3

@ -44,8 +44,8 @@ func QuerySimple(c *gin.Context) {
flag,_,systemID:=AuthService.CheckAccessToken(temp[0],temp[1],temp[2])
if flag==false {
//c.JSON(http.StatusOK, MySwagger.DataResult{Success: false,Message: "接入系统票据不正确"})
//return
c.JSON(http.StatusOK, MySwagger.DataResult{Success: false,Message: "接入系统票据不正确"})
return
}
flag2,_ := DataexService.CheckDatasourceSql(systemID,input.Query.QueryID)
@ -109,8 +109,8 @@ func QueryJoin(c *gin.Context) {
flag,_,systemID:=AuthService.CheckAccessToken(temp[0],temp[1],temp[2])
if flag==false {
//c.JSON(http.StatusOK, MySwagger.DataResult{Success: false,Message: "接入系统票据不正确"})
//return
c.JSON(http.StatusOK, MySwagger.DataResult{Success: false,Message: "接入系统票据不正确"})
return
}
flag2,_ := DataexService.CheckDatasourceSql(systemID,input.Query.QueryID)

@ -83,16 +83,20 @@ func CheckAccessToken(systemID string,accessTime string,accessToken string) (boo
return false,result,""
}else {
myToken:= data["auth_token"].(string)
if data["auth_token"] != nil {
myToken:= data["auth_token"].(string)
var testToken=MD5Util.MD5V1(systemID + accessTime + myToken)
var testToken=MD5Util.MD5V1(systemID + accessTime + myToken)
if testToken==accessToken{
if testToken==accessToken{
return true,"接入系统票据验证成功",data["id"].(string)
}else {
return true,"接入系统票据验证成功",data["id"].(string)
}else {
return false,"接入系统票据验证失败",data["id"].(string)
return false,"接入系统票据验证失败",""
}
} else {
return false,"接入系统票据验证失败",""
}
}
}

@ -7,27 +7,36 @@ remotePath = /usr/local/dsMin/dsSupport/
localPath = E:/Work/dsMin/dsSupport
[mysql]
ip = 10.10.14.187
ip = 10.10.6.200
port = 22066
database = base_db_dev
database = base_db_zhangjun
user = root
pwd = DsideaL147258369
;ip = 10.10.14.187
;port = 22066
;database = base_db_dev
;user = root
;pwd = DsideaL147258369
[redis]
ip = 10.10.14.187
port = 18890
db = 0
ip = 127.0.0.1
port = 6379
db = 1
expireTime = 86400
;ip = 10.10.14.187
;port = 18890
;db = 0
;expireTime = 86400
#gin服务器的端口
[server]
port = 8005
[elasticsearch]
nodes = http://10.10.14.188:9200
;nodes = http://10.10.14.188:9200
##nodes = http://10.10.14.61:9200,http://10.10.14.62:9200,http://10.10.14.63:9200
##nodes = http://192.168.0.200:9200,http://192.168.0.200:9201,http://192.168.0.200:9202
;nodes = http://10.10.14.61:9200,http://10.10.14.62:9200,http://10.10.14.63:9200
nodes = http://10.10.14.61:9200,http://10.10.14.62:9200,http://10.10.14.63:9200
;http://10.10.14.188:9200,
;nodes = http://192.168.0.200:9200,http://192.168.0.200:9201,http://192.168.0.200:9202
user = root

@ -12,6 +12,8 @@ package AccountDAO
import (
"dsSupport/Utils/ConfigUtil"
"dsSupport/Utils/DbUtil"
"fmt"
"html"
"strings"
)
@ -58,3 +60,34 @@ func CurrentUser(username string) (bool, string) {
return flag, msg
}
/**
* @Author zhangjun
* @Description
* @Date 2020-06-12 09:40
* @Param code string code
* @return bool /
* @return string
* @return map
* @return error
**/
func GetbyCode(code string) (bool, string, map[string]interface{}, error){
sql := "SELECT * from t_dataex_linksystem where delete_flag = -1 and enable_flag = 1 and system_code = '" + html.EscapeString(code) + "'"
var limit = 100
var offset = 0
//条件查询语句
conditionSql := fmt.Sprintf("%s", " limit ? offset ? ")
//分页的语句
pageSql := fmt.Sprintf("%s %s", sql, conditionSql)
//数据条数
count, _ := DbUtil.Engine.SQL(sql).Query().Count()
//分页数据
list, _ := DbUtil.Engine.SQL(pageSql, limit, offset).Query().List()
if count==1 {
return true, "数据获取成功", list[0],nil
}else {
return false, "接入系统数据获取失败systemID不存在", nil,nil
}
}

@ -16,6 +16,7 @@ import (
"fmt"
"github.com/gin-gonic/gin"
"net/http"
"time"
)
var globalSessions *SessionUtil.Manager
@ -72,34 +73,40 @@ func Login(c *gin.Context) {
var r *http.Request = c.Request
sess := globalSessions.SessionStart(w, r)
val := sess.Get("username")
if val != nil {
fmt.Println(val)
} else {
username := raw.Username
password := raw.Password
success, _ := AccountService.Login(username, password)
if success {
sess.Set("username", username)
fmt.Println("set session")
c.JSON(http.StatusOK, gin.H{
"status" : "ok",
"type" : "account",
"currentAuthority" : username,
})
return
} else {
c.JSON(http.StatusOK, gin.H{
"status" : "error",
"type" : "account",
"currentAuthority" : "guest",
})
return
//val := sess.Get("username")
//if val != nil {
// fmt.Println(val)
//} else {
//
//}
username := raw.Username
password := raw.Password
success, _ := AccountService.Login(username, password)
if success {
sess.Set("username", username)
fmt.Println("set session")
s, _, accessToken := AccountService.CreateAccessToken("TEST_009", time.Now().Format("200601021504"))
if s == true {
c.SetCookie("access_token", accessToken, 3600 * 8, "/", "", false, true)
}
c.JSON(http.StatusOK, gin.H{
"status" : "ok",
"type" : "account",
"currentAuthority" : username,
})
return
} else {
c.JSON(http.StatusOK, gin.H{
"status" : "error",
"type" : "account",
"currentAuthority" : "guest",
})
return
}
return

@ -11,6 +11,7 @@ package AccountService
import (
"dsSupport/MyModel/Account/AccountDAO"
"dsSupport/Utils/MD5Util"
)
func Login(username string, password string) (bool, string) {
@ -26,3 +27,23 @@ func CurrentUser() (bool, string) {
return result, message
}
func CreateAccessToken(systemID string, accessTime string) (bool, string, string) {
success,result,data,_:= AccountDAO.GetbyCode(systemID)
if success==false{
return false,result,""
} else {
if data["auth_token"] != nil {
authToken:= data["auth_token"].(string)
var accessToken = MD5Util.MD5V1(systemID + accessTime + authToken)
return true,"AccessToken生成成功",accessToken
} else {
return false,"",""
}
}
return true,"",""
}

@ -0,0 +1,28 @@
package MD5Util
import (
"crypto/md5"
"encoding/hex"
"fmt"
"io"
)
func MD5V1(str string) string {
h := md5.New()
h.Write([]byte(str))
return hex.EncodeToString(h.Sum(nil))
}
func MD5V2(str string) string {
data := []byte(str)
has := md5.Sum(data)
md5str := fmt.Sprintf("%x", has)
return md5str
}
func MD5V3(str string) string {
w := md5.New()
io.WriteString(w, str)
md5str := fmt.Sprintf("%x", w.Sum(nil))
return md5str
}
Loading…
Cancel
Save