571 lines
12 KiB
Go
571 lines
12 KiB
Go
package dao
|
|
|
|
import (
|
|
"context"
|
|
"github.com/gogf/gf/v2/database/gdb"
|
|
"github.com/gogf/gf/v2/frame/g"
|
|
)
|
|
|
|
// 数据访问对象实例
|
|
var (
|
|
User = NewUserDao()
|
|
Role = NewRoleDao()
|
|
Article = NewArticleDao()
|
|
News = NewNewsDao()
|
|
Attachment = NewAttachmentDao()
|
|
Partner = NewPartnerDao()
|
|
Contact = NewContactDao()
|
|
Config = NewConfigDao()
|
|
)
|
|
|
|
// UserDao 用户数据访问对象
|
|
type UserDao struct {
|
|
table string
|
|
group string
|
|
columns UserColumns
|
|
}
|
|
|
|
type UserColumns struct {
|
|
Id string
|
|
Account string
|
|
NickName string
|
|
Avatar string
|
|
Email string
|
|
Password string
|
|
Balance string
|
|
QrCode string
|
|
RoleId string
|
|
IsSysNotifications string
|
|
IsCollectionNotifications string
|
|
IsMarketingNotifications string
|
|
Ip string
|
|
IpTable string
|
|
Status string
|
|
LastResetPasswordAt string
|
|
CreatedAt string
|
|
UpdatedAt string
|
|
DeletedAt string
|
|
}
|
|
|
|
func NewUserDao() *UserDao {
|
|
return &UserDao{
|
|
group: "default",
|
|
table: "users",
|
|
columns: UserColumns{
|
|
Id: "id",
|
|
Account: "account",
|
|
NickName: "nick_name",
|
|
Avatar: "avatar",
|
|
Email: "email",
|
|
Password: "password",
|
|
Balance: "balance",
|
|
QrCode: "qr_code",
|
|
RoleId: "role_id",
|
|
IsSysNotifications: "is_sys_notifications",
|
|
IsCollectionNotifications: "is_collection_notifications",
|
|
IsMarketingNotifications: "is_marketing_notifications",
|
|
Ip: "ip",
|
|
IpTable: "ip_table",
|
|
Status: "status",
|
|
LastResetPasswordAt: "last_reset_password_at",
|
|
CreatedAt: "created_at",
|
|
UpdatedAt: "updated_at",
|
|
DeletedAt: "deleted_at",
|
|
},
|
|
}
|
|
}
|
|
|
|
func (dao *UserDao) DB() gdb.DB {
|
|
return g.DB(dao.group)
|
|
}
|
|
|
|
func (dao *UserDao) Table() string {
|
|
return dao.table
|
|
}
|
|
|
|
func (dao *UserDao) Columns() UserColumns {
|
|
return dao.columns
|
|
}
|
|
|
|
func (dao *UserDao) Group() string {
|
|
return dao.group
|
|
}
|
|
|
|
func (dao *UserDao) Ctx(ctx context.Context) *gdb.Model {
|
|
return dao.DB().Model(dao.table).Safe().Ctx(ctx)
|
|
}
|
|
|
|
// RoleDao 角色数据访问对象
|
|
type RoleDao struct {
|
|
table string
|
|
group string
|
|
columns RoleColumns
|
|
}
|
|
|
|
type RoleColumns struct {
|
|
Id string
|
|
Name string
|
|
Description string
|
|
Permissions string
|
|
Status string
|
|
CreatedAt string
|
|
UpdatedAt string
|
|
DeletedAt string
|
|
}
|
|
|
|
func NewRoleDao() *RoleDao {
|
|
return &RoleDao{
|
|
group: "default",
|
|
table: "roles",
|
|
columns: RoleColumns{
|
|
Id: "id",
|
|
Name: "name",
|
|
Description: "description",
|
|
Permissions: "permissions",
|
|
Status: "status",
|
|
CreatedAt: "created_at",
|
|
UpdatedAt: "updated_at",
|
|
DeletedAt: "deleted_at",
|
|
},
|
|
}
|
|
}
|
|
|
|
func (dao *RoleDao) DB() gdb.DB {
|
|
return g.DB(dao.group)
|
|
}
|
|
|
|
func (dao *RoleDao) Table() string {
|
|
return dao.table
|
|
}
|
|
|
|
func (dao *RoleDao) Columns() RoleColumns {
|
|
return dao.columns
|
|
}
|
|
|
|
func (dao *RoleDao) Group() string {
|
|
return dao.group
|
|
}
|
|
|
|
func (dao *RoleDao) Ctx(ctx context.Context) *gdb.Model {
|
|
return dao.DB().Model(dao.table).Safe().Ctx(ctx)
|
|
}
|
|
|
|
// ArticleDao 文章数据访问对象
|
|
type ArticleDao struct {
|
|
table string
|
|
group string
|
|
columns ArticleColumns
|
|
}
|
|
|
|
type ArticleColumns struct {
|
|
Id string
|
|
Title string
|
|
Slug string
|
|
Summary string
|
|
Content string
|
|
HtmlContent string
|
|
CoverImage string
|
|
CategoryId string
|
|
Tags string
|
|
AuthorId string
|
|
ViewCount string
|
|
LikeCount string
|
|
CommentCount string
|
|
IsPublished string
|
|
IsFeatured string
|
|
IsTop string
|
|
SeoTitle string
|
|
SeoDescription string
|
|
SeoKeywords string
|
|
PublishedAt string
|
|
CreatedAt string
|
|
UpdatedAt string
|
|
DeletedAt string
|
|
}
|
|
|
|
func NewArticleDao() *ArticleDao {
|
|
return &ArticleDao{
|
|
group: "default",
|
|
table: "articles",
|
|
columns: ArticleColumns{
|
|
Id: "id",
|
|
Title: "title",
|
|
Slug: "slug",
|
|
Summary: "summary",
|
|
Content: "content",
|
|
HtmlContent: "html_content",
|
|
CoverImage: "cover_image",
|
|
CategoryId: "category_id",
|
|
Tags: "tags",
|
|
AuthorId: "author_id",
|
|
ViewCount: "view_count",
|
|
LikeCount: "like_count",
|
|
CommentCount: "comment_count",
|
|
IsPublished: "is_published",
|
|
IsFeatured: "is_featured",
|
|
IsTop: "is_top",
|
|
SeoTitle: "seo_title",
|
|
SeoDescription: "seo_description",
|
|
SeoKeywords: "seo_keywords",
|
|
PublishedAt: "published_at",
|
|
CreatedAt: "created_at",
|
|
UpdatedAt: "updated_at",
|
|
DeletedAt: "deleted_at",
|
|
},
|
|
}
|
|
}
|
|
|
|
func (dao *ArticleDao) DB() gdb.DB {
|
|
return g.DB(dao.group)
|
|
}
|
|
|
|
func (dao *ArticleDao) Table() string {
|
|
return dao.table
|
|
}
|
|
|
|
func (dao *ArticleDao) Columns() ArticleColumns {
|
|
return dao.columns
|
|
}
|
|
|
|
func (dao *ArticleDao) Group() string {
|
|
return dao.group
|
|
}
|
|
|
|
func (dao *ArticleDao) Ctx(ctx context.Context) *gdb.Model {
|
|
return dao.DB().Model(dao.table).Safe().Ctx(ctx)
|
|
}
|
|
|
|
// NewsDao 新闻数据访问对象
|
|
type NewsDao struct {
|
|
table string
|
|
group string
|
|
columns NewsColumns
|
|
}
|
|
|
|
type NewsColumns struct {
|
|
Id string
|
|
Title string
|
|
Slug string
|
|
Summary string
|
|
Content string
|
|
CoverImage string
|
|
Category string
|
|
Source string
|
|
Author string
|
|
ViewCount string
|
|
IsPublished string
|
|
IsFeatured string
|
|
IsTop string
|
|
PublishedAt string
|
|
CreatedAt string
|
|
UpdatedAt string
|
|
DeletedAt string
|
|
}
|
|
|
|
func NewNewsDao() *NewsDao {
|
|
return &NewsDao{
|
|
group: "default",
|
|
table: "news",
|
|
columns: NewsColumns{
|
|
Id: "id",
|
|
Title: "title",
|
|
Slug: "slug",
|
|
Summary: "summary",
|
|
Content: "content",
|
|
CoverImage: "cover_image",
|
|
Category: "category",
|
|
Source: "source",
|
|
Author: "author",
|
|
ViewCount: "view_count",
|
|
IsPublished: "is_published",
|
|
IsFeatured: "is_featured",
|
|
IsTop: "is_top",
|
|
PublishedAt: "published_at",
|
|
CreatedAt: "created_at",
|
|
UpdatedAt: "updated_at",
|
|
DeletedAt: "deleted_at",
|
|
},
|
|
}
|
|
}
|
|
|
|
func (dao *NewsDao) DB() gdb.DB {
|
|
return g.DB(dao.group)
|
|
}
|
|
|
|
func (dao *NewsDao) Table() string {
|
|
return dao.table
|
|
}
|
|
|
|
func (dao *NewsDao) Columns() NewsColumns {
|
|
return dao.columns
|
|
}
|
|
|
|
func (dao *NewsDao) Group() string {
|
|
return dao.group
|
|
}
|
|
|
|
func (dao *NewsDao) Ctx(ctx context.Context) *gdb.Model {
|
|
return dao.DB().Model(dao.table).Safe().Ctx(ctx)
|
|
}
|
|
|
|
// AttachmentDao 附件数据访问对象
|
|
type AttachmentDao struct {
|
|
table string
|
|
group string
|
|
columns AttachmentColumns
|
|
}
|
|
|
|
type AttachmentColumns struct {
|
|
Id string
|
|
OriginalName string
|
|
FileName string
|
|
FilePath string
|
|
FileUrl string
|
|
FileSize string
|
|
FileType string
|
|
MimeType string
|
|
FileExt string
|
|
StorageType string
|
|
UploadIp string
|
|
UploadedBy string
|
|
UsageCount string
|
|
CreatedAt string
|
|
UpdatedAt string
|
|
DeletedAt string
|
|
}
|
|
|
|
func NewAttachmentDao() *AttachmentDao {
|
|
return &AttachmentDao{
|
|
group: "default",
|
|
table: "attachments",
|
|
columns: AttachmentColumns{
|
|
Id: "id",
|
|
OriginalName: "original_name",
|
|
FileName: "file_name",
|
|
FilePath: "file_path",
|
|
FileUrl: "file_url",
|
|
FileSize: "file_size",
|
|
FileType: "file_type",
|
|
MimeType: "mime_type",
|
|
FileExt: "file_ext",
|
|
StorageType: "storage_type",
|
|
UploadIp: "upload_ip",
|
|
UploadedBy: "uploaded_by",
|
|
UsageCount: "usage_count",
|
|
CreatedAt: "created_at",
|
|
UpdatedAt: "updated_at",
|
|
DeletedAt: "deleted_at",
|
|
},
|
|
}
|
|
}
|
|
|
|
func (dao *AttachmentDao) DB() gdb.DB {
|
|
return g.DB(dao.group)
|
|
}
|
|
|
|
func (dao *AttachmentDao) Table() string {
|
|
return dao.table
|
|
}
|
|
|
|
func (dao *AttachmentDao) Columns() AttachmentColumns {
|
|
return dao.columns
|
|
}
|
|
|
|
func (dao *AttachmentDao) Group() string {
|
|
return dao.group
|
|
}
|
|
|
|
func (dao *AttachmentDao) Ctx(ctx context.Context) *gdb.Model {
|
|
return dao.DB().Model(dao.table).Safe().Ctx(ctx)
|
|
}
|
|
|
|
// PartnerDao 合作伙伴数据访问对象
|
|
type PartnerDao struct {
|
|
table string
|
|
group string
|
|
columns PartnerColumns
|
|
}
|
|
|
|
type PartnerColumns struct {
|
|
Id string
|
|
Name string
|
|
Logo string
|
|
Website string
|
|
Description string
|
|
Category string
|
|
SortOrder string
|
|
IsFeatured string
|
|
Status string
|
|
CreatedAt string
|
|
UpdatedAt string
|
|
DeletedAt string
|
|
}
|
|
|
|
func NewPartnerDao() *PartnerDao {
|
|
return &PartnerDao{
|
|
group: "default",
|
|
table: "partners",
|
|
columns: PartnerColumns{
|
|
Id: "id",
|
|
Name: "name",
|
|
Logo: "logo",
|
|
Website: "website",
|
|
Description: "description",
|
|
Category: "category",
|
|
SortOrder: "sort_order",
|
|
IsFeatured: "is_featured",
|
|
Status: "status",
|
|
CreatedAt: "created_at",
|
|
UpdatedAt: "updated_at",
|
|
DeletedAt: "deleted_at",
|
|
},
|
|
}
|
|
}
|
|
|
|
func (dao *PartnerDao) DB() gdb.DB {
|
|
return g.DB(dao.group)
|
|
}
|
|
|
|
func (dao *PartnerDao) Table() string {
|
|
return dao.table
|
|
}
|
|
|
|
func (dao *PartnerDao) Columns() PartnerColumns {
|
|
return dao.columns
|
|
}
|
|
|
|
func (dao *PartnerDao) Group() string {
|
|
return dao.group
|
|
}
|
|
|
|
func (dao *PartnerDao) Ctx(ctx context.Context) *gdb.Model {
|
|
return dao.DB().Model(dao.table).Safe().Ctx(ctx)
|
|
}
|
|
|
|
// ContactDao 联系我们数据访问对象
|
|
type ContactDao struct {
|
|
table string
|
|
group string
|
|
columns ContactColumns
|
|
}
|
|
|
|
type ContactColumns struct {
|
|
Id string
|
|
Name string
|
|
Email string
|
|
Phone string
|
|
Company string
|
|
Subject string
|
|
Message string
|
|
Ip string
|
|
UserAgent string
|
|
Status string
|
|
Reply string
|
|
RepliedAt string
|
|
RepliedBy string
|
|
CreatedAt string
|
|
UpdatedAt string
|
|
}
|
|
|
|
func NewContactDao() *ContactDao {
|
|
return &ContactDao{
|
|
group: "default",
|
|
table: "contacts",
|
|
columns: ContactColumns{
|
|
Id: "id",
|
|
Name: "name",
|
|
Email: "email",
|
|
Phone: "phone",
|
|
Company: "company",
|
|
Subject: "subject",
|
|
Message: "message",
|
|
Ip: "ip",
|
|
UserAgent: "user_agent",
|
|
Status: "status",
|
|
Reply: "reply",
|
|
RepliedAt: "replied_at",
|
|
RepliedBy: "replied_by",
|
|
CreatedAt: "created_at",
|
|
UpdatedAt: "updated_at",
|
|
},
|
|
}
|
|
}
|
|
|
|
func (dao *ContactDao) DB() gdb.DB {
|
|
return g.DB(dao.group)
|
|
}
|
|
|
|
func (dao *ContactDao) Table() string {
|
|
return dao.table
|
|
}
|
|
|
|
func (dao *ContactDao) Columns() ContactColumns {
|
|
return dao.columns
|
|
}
|
|
|
|
func (dao *ContactDao) Group() string {
|
|
return dao.group
|
|
}
|
|
|
|
func (dao *ContactDao) Ctx(ctx context.Context) *gdb.Model {
|
|
return dao.DB().Model(dao.table).Safe().Ctx(ctx)
|
|
}
|
|
|
|
// ConfigDao 配置数据访问对象
|
|
type ConfigDao struct {
|
|
table string
|
|
group string
|
|
columns ConfigColumns
|
|
}
|
|
|
|
type ConfigColumns struct {
|
|
Id string
|
|
ConfigKey string
|
|
ConfigValue string
|
|
ConfigType string
|
|
GroupName string
|
|
Description string
|
|
SortOrder string
|
|
IsSystem string
|
|
CreatedAt string
|
|
UpdatedAt string
|
|
}
|
|
|
|
func NewConfigDao() *ConfigDao {
|
|
return &ConfigDao{
|
|
group: "default",
|
|
table: "site_configs",
|
|
columns: ConfigColumns{
|
|
Id: "id",
|
|
ConfigKey: "config_key",
|
|
ConfigValue: "config_value",
|
|
ConfigType: "config_type",
|
|
GroupName: "group_name",
|
|
Description: "description",
|
|
SortOrder: "sort_order",
|
|
IsSystem: "is_system",
|
|
CreatedAt: "created_at",
|
|
UpdatedAt: "updated_at",
|
|
},
|
|
}
|
|
}
|
|
|
|
func (dao *ConfigDao) DB() gdb.DB {
|
|
return g.DB(dao.group)
|
|
}
|
|
|
|
func (dao *ConfigDao) Table() string {
|
|
return dao.table
|
|
}
|
|
|
|
func (dao *ConfigDao) Columns() ConfigColumns {
|
|
return dao.columns
|
|
}
|
|
|
|
func (dao *ConfigDao) Group() string {
|
|
return dao.group
|
|
}
|
|
|
|
func (dao *ConfigDao) Ctx(ctx context.Context) *gdb.Model {
|
|
return dao.DB().Model(dao.table).Safe().Ctx(ctx)
|
|
} |