bilibili-backup/app/service/main/vip/dao/privilege.go
2019-04-22 02:59:20 +00:00

58 lines
1.7 KiB
Go

package dao
import (
"context"
"go-common/app/service/main/vip/model"
"go-common/library/database/sql"
"github.com/pkg/errors"
)
const (
privilegeListSQL = "SELECT id, privileges_name, title, explains, privileges_type, operator, state, deleted, icon_url, icon_gray_url, order_num, lang_type, ctime, mtime FROM vip_privileges WHERE deleted = 0 AND state = 1 ORDER BY order_num;"
privilegeResourcesListSQL = "SELECT id,pid,link,image_url,resources_type,ctime,mtime FROM vip_privileges_resources;"
)
// PrivilegeList query .
func (d *Dao) PrivilegeList(c context.Context) (res []*model.Privilege, err error) {
var rows *sql.Rows
if rows, err = d.db.Query(c, privilegeListSQL); err != nil {
err = errors.WithStack(err)
return
}
defer rows.Close()
for rows.Next() {
r := new(model.Privilege)
if err = rows.Scan(&r.ID, &r.Name, &r.Title, &r.Explain, &r.Type, &r.Operator, &r.State, &r.Deleted, &r.IconURL, &r.IconGrayURL, &r.Order, &r.LangType, &r.Ctime, &r.Mtime); err != nil {
err = errors.WithStack(err)
res = nil
return
}
res = append(res, r)
}
err = rows.Err()
return
}
// PrivilegeResourcesList query privilege resources .
func (d *Dao) PrivilegeResourcesList(c context.Context) (res []*model.PrivilegeResources, err error) {
var rows *sql.Rows
if rows, err = d.db.Query(c, privilegeResourcesListSQL); err != nil {
err = errors.WithStack(err)
return
}
defer rows.Close()
for rows.Next() {
r := new(model.PrivilegeResources)
if err = rows.Scan(&r.ID, &r.PID, &r.Link, &r.ImageURL, &r.Type, &r.Ctime, &r.Mtime); err != nil {
err = errors.WithStack(err)
res = nil
return
}
res = append(res, r)
}
err = rows.Err()
return
}