animeic 2 年 前
コミット
9b562e7174
2 ファイル変更10 行追加9 行削除
  1. 2 4
      oilseal-train/api/bank.go
  2. 8 5
      oilseal-train/api/user.go

+ 2 - 4
oilseal-train/api/bank.go

@@ -49,11 +49,9 @@ func BankAdd(c *gin.Context, apictx *ApiSession) (interface{}, error) {
 	return repo.RepoAddDoc(apictx.CreateRepoCtx(), repo.CollectionBank, &form)
 }
 
+// 客户端调用时。添加query["state"] = 1 query参数 {"state":1}
 func BankList(c *gin.Context, apictx *ApiSession) (interface{}, error) {
-	// err := IsAdmin(apictx)
-	// if err != nil {
-	// 	return nil, err
-	// }
+
 	page, size, query := UtilQueryPageSize(c)
 
 	if _name, ok := query["name"]; ok {

+ 8 - 5
oilseal-train/api/user.go

@@ -442,14 +442,17 @@ func formatUser(u []string, rowNum int) (*model.User, error) {
 	return user, nil
 }
 
+// 只有admin角色可以后台操作
 // 是否为admin
 func IsAdmin(apictx *ApiSession) error {
-	// 操作用户为admin
-	if apictx.User.Role != "admin" {
-		return errors.New("当前用户不是管理员")
-	} else {
-		return nil
+	allowRoles := []string{"admin", "teacher"}
+
+	for _, allowRole := range allowRoles {
+		if apictx.User.Role == allowRole {
+			return nil
+		}
 	}
+	return errors.New("当前用户不是管理员/教师")
 }
 
 // 下载模板文件