v2版本正式上线测试版
This commit is contained in:
92
models/auth.go
Normal file
92
models/auth.go
Normal file
@@ -0,0 +1,92 @@
|
||||
/**********************************************
|
||||
** @Des: 权限因子
|
||||
** @Author: haodaquan
|
||||
** @Date: 2017-09-09 20:50:36
|
||||
** @Last Modified by: haodaquan
|
||||
** @Last Modified time: 2017-09-17 21:42:08
|
||||
***********************************************/
|
||||
package models
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/astaxie/beego/orm"
|
||||
)
|
||||
|
||||
type Auth struct {
|
||||
Id int
|
||||
AuthName string
|
||||
AuthUrl string
|
||||
UserId int
|
||||
Pid int
|
||||
Sort int
|
||||
Icon string
|
||||
IsShow int
|
||||
Status int
|
||||
CreateId int
|
||||
UpdateId int
|
||||
CreateTime int64
|
||||
UpdateTime int64
|
||||
}
|
||||
|
||||
func (a *Auth) TableName() string {
|
||||
return TableName("uc_auth")
|
||||
}
|
||||
|
||||
func AuthGetList(page, pageSize int, filters ...interface{}) ([]*Auth, int64) {
|
||||
offset := (page - 1) * pageSize
|
||||
list := make([]*Auth, 0)
|
||||
query := orm.NewOrm().QueryTable(TableName("uc_auth"))
|
||||
if len(filters) > 0 {
|
||||
l := len(filters)
|
||||
for k := 0; k < l; k += 2 {
|
||||
query = query.Filter(filters[k].(string), filters[k+1])
|
||||
}
|
||||
}
|
||||
total, _ := query.Count()
|
||||
query.OrderBy("pid", "sort").Limit(pageSize, offset).All(&list)
|
||||
|
||||
return list, total
|
||||
}
|
||||
|
||||
func AuthGetListByIds(authIds string, userId int) ([]*Auth, error) {
|
||||
|
||||
list1 := make([]*Auth, 0)
|
||||
var list []orm.Params
|
||||
//list:=[]orm.Params
|
||||
var err error
|
||||
if userId == 1 {
|
||||
//超级管理员
|
||||
_, err = orm.NewOrm().Raw("select id,auth_name,auth_url,pid,icon,is_show from pp_uc_auth where status=? order by pid asc,sort asc", 1).Values(&list)
|
||||
} else {
|
||||
_, err = orm.NewOrm().Raw("select id,auth_name,auth_url,pid,icon,is_show from pp_uc_auth where status=1 and id in("+authIds+") order by pid asc,sort asc", authIds).Values(&list)
|
||||
}
|
||||
|
||||
for k, v := range list {
|
||||
fmt.Println(k, v)
|
||||
}
|
||||
|
||||
fmt.Println(list)
|
||||
return list1, err
|
||||
}
|
||||
|
||||
func AuthAdd(auth *Auth) (int64, error) {
|
||||
return orm.NewOrm().Insert(auth)
|
||||
}
|
||||
|
||||
func AuthGetById(id int) (*Auth, error) {
|
||||
a := new(Auth)
|
||||
|
||||
err := orm.NewOrm().QueryTable(TableName("uc_auth")).Filter("id", id).One(a)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return a, nil
|
||||
}
|
||||
|
||||
func (a *Auth) Update(fields ...string) error {
|
||||
if _, err := orm.NewOrm().Update(a, fields...); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user