2
3
Преглед на файлове

ptr登录权限认证

Signed-off-by: lijunqing <lijunqing@dashoo.cn>
lijunqing преди 6 години
родител
ревизия
c83fc2a1fe
променени са 2 файла, в които са добавени 21 реда и са изтрити 11 реда
  1. 18 10
      src/dashoo.cn/backend/api/business/oilrtx/RtxService.go
  2. 3 1
      src/dashoo.cn/frontend_web/src/pages/login.vue

+ 18 - 10
src/dashoo.cn/backend/api/business/oilrtx/RtxService.go

@@ -5,13 +5,13 @@ import (
 	"io/ioutil"
 	"log"
 	"net/http"
+	"strconv"
 	"strings"
 	"time"
 
 	"dashoo.cn/utils"
 
 	"dashoo.cn/backend/api/business/organize"
-	"dashoo.cn/business2/parameter"
 	"dashoo.cn/business2/userRole"
 	. "dashoo.cn/utils/db"
 	"github.com/go-xorm/xorm"
@@ -177,7 +177,7 @@ func (s *RtxService) HandleSendMsg(username string, tomobile string, message str
 }
 
 func (s *RtxService) HandlePtrLogin(username string, password string, BaseUser string) int {
-	var list []map[string]string
+
 	client := &http.Client{}
 	var ptrUser PtrUser
 
@@ -200,13 +200,19 @@ func (s *RtxService) HandlePtrLogin(username string, password string, BaseUser s
 	jsonBlob, _ := ioutil.ReadAll(resp.Body)
 	var rtxRespToken RtxRespToken
 	json.Unmarshal(jsonBlob, &rtxRespToken)
+
 	flag := 0
 	if rtxRespToken.Code == 2000 {
-		sql := "select 1 from " + BaseUser + " where UserName='" + username + "'"
+		sql := " UserName='" + username + "'"
+		var baseUser1 userRole.Base_User
+		s.GetEntity(&baseUser1,sql)
 
-		list, _ = s.DBE.QueryString(sql)
-		if len(list) > 0 {
+		if baseUser1.Username!="" {
 			flag = 1
+			res:=utils.RBAC.GetRolesForUserInDomain("uid_"+strconv.Itoa(baseUser1.Id),utils.DOMAIN)
+			if len(res)<=0{
+				flag = 3
+			}
 		} else {
 			flag = 2
 			var baseuser userRole.Base_User
@@ -219,15 +225,17 @@ func (s *RtxService) HandlePtrLogin(username string, password string, BaseUser s
 			baseuser.Publickey = key
 
 			_, err := s.InsertEntity(&baseuser)
-
-			paramSvc := baseparameter.GetBaseparameterService(utils.DBE)
-			roleid := paramSvc.GetBaseparameterMessage("", "paramset", "PuTongRegRoleId")
-
-			utils.RBAC.AddRoleForUserInDomain("uid_"+string(baseuser.Id), "rid_"+roleid, utils.DOMAIN)
 			if err != nil {
 				log.Println(err)
 			}
+			//查询角色表里有没有权限登录此系统
+			res:=utils.RBAC.GetRolesForUserInDomain("uid_"+strconv.Itoa(baseuser.Id),utils.DOMAIN)
+			if len(res)<=0{
+				flag = 3
+			}
 		}
+
+
 	} else {
 		log.Println("Code:" + string(rtxRespToken.Code) + ",Message:" + rtxRespToken.Message + ",Token:" + rtxRespToken.Token)
 	}

+ 3 - 1
src/dashoo.cn/frontend_web/src/pages/login.vue

@@ -481,7 +481,9 @@ import api from "@/api/rtxservice/rtx";
           } else if (res.data.items === 2) {
             this.flag = 2;
             this.login();
-          } else {
+          }else if (res.data.items === 3) {
+            this.$message.warning("您无权限登陆本系统");
+          }else {
             this.$message.warning("账号或密码错误");
           }
         })