Documentation
¶
Overview ¶
记载所有图书馆活动,包括管理员添加图书、用户借阅、归还图书 这个表很庞大,要考虑分表之类的事情
Index ¶
- Variables
- func AddBook(b *Book) (int64, error)
- func AddRecord(r *Record) (int64, error)
- func AddUser(u *User) (int64, error)
- func Connect()
- func DelBookById(Id uint32) (int64, error)
- func DelBookByName(Name string) (int64, error)
- func DelUserById(Id uint32) (int64, error)
- func Getuserlist(page int64, page_size int64, sort string) (users []orm.Params, count int64)
- func InsertInitBooks()
- func InsertInitLibraries()
- func InsertInitOperations()
- func InsertInitUsers()
- func Syncdb()
- func UpdateBook(b *Book) (int64, error)
- func UpdateUser(u *User) (int64, error)
- type Book
- type Library
- type Operation
- type Record
- type User
Constants ¶
This section is empty.
Variables ¶
View Source
var BOOK = []Book{
{Id: 0, Name: "NULL-BOOK", Isbn: 0, Library: 0},
}
View Source
var LIBRARY = []Library{
{Id: 0, City: "NULL-LIBRARY", Building: "NULL"},
{Id: 1, City: "SongShanHu", Building: "F1"},
{Id: 2, City: "SongShanHu", Building: "M2"},
}
View Source
var OPERATION = []Operation{
{Id: 0, Name: "NULL-OPERATION"},
{Id: 1, Name: "UserBorrowBook"},
{Id: 2, Name: "UserReturnBook"},
{Id: 11, Name: "AdminAddNewBook"},
{Id: 12, Name: "AdminModifyBookInfo"},
{Id: 13, Name: "AdminDeleteBook"},
{Id: 21, Name: "UserRigister"},
{Id: 22, Name: "UserModifyInfo"},
{Id: 31, Name: "AdminAddUser"},
{Id: 32, Name: "AdminModifyUserInfo"},
{Id: 33, Name: "AdminDeleteUser"},
}
Functions ¶
func DelBookById ¶
func DelBookByName ¶
func DelUserById ¶
func Getuserlist ¶
get user list
func InsertInitBooks ¶
func InsertInitBooks()
func InsertInitLibraries ¶
func InsertInitLibraries()
func InsertInitOperations ¶
func InsertInitOperations()
func InsertInitUsers ¶
func InsertInitUsers()
func UpdateBook ¶
Types ¶
type Book ¶
type Book struct {
Id uint32 `orm:"pk"`
Name string `orm:"size(40)"`
Isbn uint64 `orm:"" form:"Isbn"`
Library uint16 `orm:""`
CoverPath string `orm:"null"`
Added time.Time `orm:"auto_now_add;type(datetime)"`
Description string `orm:"null;size(1000)"`
}
图书信息表
type Library ¶
type Library struct {
Id uint16 `orm:"pk"`
City string `orm:"size(40)"`
Building string `orm:"size(10)"`
Note string `orm:"null;size(500)"`
}
图书馆表,便于对馆进行调整,新增、合并、撤销 一个图书馆可以对应多个ID,便于兼容历史图书馆的撤销
type Record ¶
type Record struct {
Id uint64
UserId uint32 `orm:""`
BookId uint32 `orm:"null"`
OperationId uint8 `orm:""`
LibraryId uint64 `orm:"null"`
// TODO add sql comment
Date time.Time `orm:"auto_now_add;type(datetime);comment(comment);description(UTC time)"`
// 备用,记事
Note string `orm:"null;size(500)"`
}
各种操作记录表
type User ¶
type User struct {
Id uint32 `orm:"pk"`
Username string `orm:"size(32)" form:"Username" valid:"Required;MaxSize(20);MinSize(6)"`
EmployId string `orm:"unique;size(10)"`
Password string `orm:"size(32)" form:"Password" valid:"Required;MaxSize(20);MinSize(6)"`
Repassword string `orm:"-" form:"Repassword" valid:"Required"`
Email string `orm:"null;size(32)" form:"Email" valid:"Email"`
Status int8 `orm:"default(2)" form:"Status" valid:"Range(1,2)"`
Lastlogintime time.Time `orm:"null;type(datetime)" form:"-"`
// auto_now 每次 model 保存时都会对时间自动更新
// auto_now_add 第一次保存时才设置时间
Created time.Time `orm:"type(datetime);auto_now_add" `
LastLogin time.Time //`orm:"type(datetime);auto_now"`
//role, nomal user 0, admin 1
LastIp string
Role int8 `orm:""`
}
用户表
func GetUserById ¶
func GetUserByUsername ¶
func (*User) Valid ¶
func (u *User) Valid(v *validation.Validation)
Click to show internal directories.
Click to hide internal directories.