bindbox-game/internal/repository/mysql/dao/app_message_read_status.gen.go
邹方成 1a285f4e23 feat(消息状态): 添加消息已读状态功能
- 新增消息已读状态表结构及模型
- 实现用户端标记消息为已读接口
- 添加管理端获取最新消息记录接口
- 实现微信小程序登录功能
- 更新相关API文档和路由配置
2025-10-18 18:24:42 +08:00

398 lines
13 KiB
Go

// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
// Code generated by gorm.io/gen. DO NOT EDIT.
package dao
import (
"context"
"gorm.io/gorm"
"gorm.io/gorm/clause"
"gorm.io/gorm/schema"
"gorm.io/gen"
"gorm.io/gen/field"
"gorm.io/plugin/dbresolver"
"mini-chat/internal/repository/mysql/model"
)
func newAppMessageReadStatus(db *gorm.DB, opts ...gen.DOOption) appMessageReadStatus {
_appMessageReadStatus := appMessageReadStatus{}
_appMessageReadStatus.appMessageReadStatusDo.UseDB(db, opts...)
_appMessageReadStatus.appMessageReadStatusDo.UseModel(&model.AppMessageReadStatus{})
tableName := _appMessageReadStatus.appMessageReadStatusDo.TableName()
_appMessageReadStatus.ALL = field.NewAsterisk(tableName)
_appMessageReadStatus.ID = field.NewInt32(tableName, "id")
_appMessageReadStatus.AppID = field.NewString(tableName, "app_id")
_appMessageReadStatus.MessageID = field.NewInt32(tableName, "message_id")
_appMessageReadStatus.UserID = field.NewString(tableName, "user_id")
_appMessageReadStatus.IsRead = field.NewInt32(tableName, "is_read")
_appMessageReadStatus.ReadTime = field.NewTime(tableName, "read_time")
_appMessageReadStatus.CreatedAt = field.NewTime(tableName, "created_at")
_appMessageReadStatus.UpdatedAt = field.NewTime(tableName, "updated_at")
_appMessageReadStatus.fillFieldMap()
return _appMessageReadStatus
}
// appMessageReadStatus 消息已读状态表
type appMessageReadStatus struct {
appMessageReadStatusDo
ALL field.Asterisk
ID field.Int32 // 主键ID
AppID field.String // 小程序ID
MessageID field.Int32 // 消息ID
UserID field.String // 用户ID
IsRead field.Int32 // 是否已读(0:未读 1:已读)
ReadTime field.Time // 已读时间
CreatedAt field.Time // 创建时间
UpdatedAt field.Time // 更新时间
fieldMap map[string]field.Expr
}
func (a appMessageReadStatus) Table(newTableName string) *appMessageReadStatus {
a.appMessageReadStatusDo.UseTable(newTableName)
return a.updateTableName(newTableName)
}
func (a appMessageReadStatus) As(alias string) *appMessageReadStatus {
a.appMessageReadStatusDo.DO = *(a.appMessageReadStatusDo.As(alias).(*gen.DO))
return a.updateTableName(alias)
}
func (a appMessageReadStatus) updateTableName(table string) *appMessageReadStatus {
a.ALL = field.NewAsterisk(table)
a.ID = field.NewInt32(table, "id")
a.AppID = field.NewString(table, "app_id")
a.MessageID = field.NewInt32(table, "message_id")
a.UserID = field.NewString(table, "user_id")
a.IsRead = field.NewInt32(table, "is_read")
a.ReadTime = field.NewTime(table, "read_time")
a.CreatedAt = field.NewTime(table, "created_at")
a.UpdatedAt = field.NewTime(table, "updated_at")
a.fillFieldMap()
return &a
}
func (a *appMessageReadStatus) fillFieldMap() {
a.fieldMap = make(map[string]field.Expr, 8)
a.fieldMap["id"] = a.ID
a.fieldMap["app_id"] = a.AppID
a.fieldMap["message_id"] = a.MessageID
a.fieldMap["user_id"] = a.UserID
a.fieldMap["is_read"] = a.IsRead
a.fieldMap["read_time"] = a.ReadTime
a.fieldMap["created_at"] = a.CreatedAt
a.fieldMap["updated_at"] = a.UpdatedAt
}
func (a appMessageReadStatus) clone(db *gorm.DB) appMessageReadStatus {
a.appMessageReadStatusDo.ReplaceConnPool(db.Statement.ConnPool)
return a
}
func (a appMessageReadStatus) replaceDB(db *gorm.DB) appMessageReadStatus {
a.appMessageReadStatusDo.ReplaceDB(db)
return a
}
type appMessageReadStatusDo struct{ gen.DO }
type IAppMessageReadStatusDo interface {
gen.SubQuery
Debug() IAppMessageReadStatusDo
WithContext(ctx context.Context) IAppMessageReadStatusDo
WithResult(fc func(tx gen.Dao)) gen.ResultInfo
ReplaceDB(db *gorm.DB)
ReadDB() IAppMessageReadStatusDo
WriteDB() IAppMessageReadStatusDo
As(alias string) gen.Dao
Session(config *gorm.Session) IAppMessageReadStatusDo
Columns(cols ...field.Expr) gen.Columns
Clauses(conds ...clause.Expression) IAppMessageReadStatusDo
Not(conds ...gen.Condition) IAppMessageReadStatusDo
Or(conds ...gen.Condition) IAppMessageReadStatusDo
Select(conds ...field.Expr) IAppMessageReadStatusDo
Where(conds ...gen.Condition) IAppMessageReadStatusDo
Order(conds ...field.Expr) IAppMessageReadStatusDo
Distinct(cols ...field.Expr) IAppMessageReadStatusDo
Omit(cols ...field.Expr) IAppMessageReadStatusDo
Join(table schema.Tabler, on ...field.Expr) IAppMessageReadStatusDo
LeftJoin(table schema.Tabler, on ...field.Expr) IAppMessageReadStatusDo
RightJoin(table schema.Tabler, on ...field.Expr) IAppMessageReadStatusDo
Group(cols ...field.Expr) IAppMessageReadStatusDo
Having(conds ...gen.Condition) IAppMessageReadStatusDo
Limit(limit int) IAppMessageReadStatusDo
Offset(offset int) IAppMessageReadStatusDo
Count() (count int64, err error)
Scopes(funcs ...func(gen.Dao) gen.Dao) IAppMessageReadStatusDo
Unscoped() IAppMessageReadStatusDo
Create(values ...*model.AppMessageReadStatus) error
CreateInBatches(values []*model.AppMessageReadStatus, batchSize int) error
Save(values ...*model.AppMessageReadStatus) error
First() (*model.AppMessageReadStatus, error)
Take() (*model.AppMessageReadStatus, error)
Last() (*model.AppMessageReadStatus, error)
Find() ([]*model.AppMessageReadStatus, error)
FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.AppMessageReadStatus, err error)
FindInBatches(result *[]*model.AppMessageReadStatus, batchSize int, fc func(tx gen.Dao, batch int) error) error
Pluck(column field.Expr, dest interface{}) error
Delete(...*model.AppMessageReadStatus) (info gen.ResultInfo, err error)
Update(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
UpdateSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
Updates(value interface{}) (info gen.ResultInfo, err error)
UpdateColumn(column field.Expr, value interface{}) (info gen.ResultInfo, err error)
UpdateColumnSimple(columns ...field.AssignExpr) (info gen.ResultInfo, err error)
UpdateColumns(value interface{}) (info gen.ResultInfo, err error)
UpdateFrom(q gen.SubQuery) gen.Dao
Attrs(attrs ...field.AssignExpr) IAppMessageReadStatusDo
Assign(attrs ...field.AssignExpr) IAppMessageReadStatusDo
Joins(fields ...field.RelationField) IAppMessageReadStatusDo
Preload(fields ...field.RelationField) IAppMessageReadStatusDo
FirstOrInit() (*model.AppMessageReadStatus, error)
FirstOrCreate() (*model.AppMessageReadStatus, error)
FindByPage(offset int, limit int) (result []*model.AppMessageReadStatus, count int64, err error)
ScanByPage(result interface{}, offset int, limit int) (count int64, err error)
Scan(result interface{}) (err error)
Returning(value interface{}, columns ...string) IAppMessageReadStatusDo
UnderlyingDB() *gorm.DB
schema.Tabler
}
func (a appMessageReadStatusDo) Debug() IAppMessageReadStatusDo {
return a.withDO(a.DO.Debug())
}
func (a appMessageReadStatusDo) WithContext(ctx context.Context) IAppMessageReadStatusDo {
return a.withDO(a.DO.WithContext(ctx))
}
func (a appMessageReadStatusDo) ReadDB() IAppMessageReadStatusDo {
return a.withDO(a.DO.Clauses(dbresolver.Read))
}
func (a appMessageReadStatusDo) WriteDB() IAppMessageReadStatusDo {
return a.withDO(a.DO.Clauses(dbresolver.Write))
}
func (a appMessageReadStatusDo) Session(config *gorm.Session) IAppMessageReadStatusDo {
return a.withDO(a.DO.Session(config))
}
func (a appMessageReadStatusDo) Clauses(conds ...clause.Expression) IAppMessageReadStatusDo {
return a.withDO(a.DO.Clauses(conds...))
}
func (a appMessageReadStatusDo) Returning(value interface{}, columns ...string) IAppMessageReadStatusDo {
return a.withDO(a.DO.Returning(value, columns...))
}
func (a appMessageReadStatusDo) Not(conds ...gen.Condition) IAppMessageReadStatusDo {
return a.withDO(a.DO.Not(conds...))
}
func (a appMessageReadStatusDo) Or(conds ...gen.Condition) IAppMessageReadStatusDo {
return a.withDO(a.DO.Or(conds...))
}
func (a appMessageReadStatusDo) Select(conds ...field.Expr) IAppMessageReadStatusDo {
return a.withDO(a.DO.Select(conds...))
}
func (a appMessageReadStatusDo) Where(conds ...gen.Condition) IAppMessageReadStatusDo {
return a.withDO(a.DO.Where(conds...))
}
func (a appMessageReadStatusDo) Order(conds ...field.Expr) IAppMessageReadStatusDo {
return a.withDO(a.DO.Order(conds...))
}
func (a appMessageReadStatusDo) Distinct(cols ...field.Expr) IAppMessageReadStatusDo {
return a.withDO(a.DO.Distinct(cols...))
}
func (a appMessageReadStatusDo) Omit(cols ...field.Expr) IAppMessageReadStatusDo {
return a.withDO(a.DO.Omit(cols...))
}
func (a appMessageReadStatusDo) Join(table schema.Tabler, on ...field.Expr) IAppMessageReadStatusDo {
return a.withDO(a.DO.Join(table, on...))
}
func (a appMessageReadStatusDo) LeftJoin(table schema.Tabler, on ...field.Expr) IAppMessageReadStatusDo {
return a.withDO(a.DO.LeftJoin(table, on...))
}
func (a appMessageReadStatusDo) RightJoin(table schema.Tabler, on ...field.Expr) IAppMessageReadStatusDo {
return a.withDO(a.DO.RightJoin(table, on...))
}
func (a appMessageReadStatusDo) Group(cols ...field.Expr) IAppMessageReadStatusDo {
return a.withDO(a.DO.Group(cols...))
}
func (a appMessageReadStatusDo) Having(conds ...gen.Condition) IAppMessageReadStatusDo {
return a.withDO(a.DO.Having(conds...))
}
func (a appMessageReadStatusDo) Limit(limit int) IAppMessageReadStatusDo {
return a.withDO(a.DO.Limit(limit))
}
func (a appMessageReadStatusDo) Offset(offset int) IAppMessageReadStatusDo {
return a.withDO(a.DO.Offset(offset))
}
func (a appMessageReadStatusDo) Scopes(funcs ...func(gen.Dao) gen.Dao) IAppMessageReadStatusDo {
return a.withDO(a.DO.Scopes(funcs...))
}
func (a appMessageReadStatusDo) Unscoped() IAppMessageReadStatusDo {
return a.withDO(a.DO.Unscoped())
}
func (a appMessageReadStatusDo) Create(values ...*model.AppMessageReadStatus) error {
if len(values) == 0 {
return nil
}
return a.DO.Create(values)
}
func (a appMessageReadStatusDo) CreateInBatches(values []*model.AppMessageReadStatus, batchSize int) error {
return a.DO.CreateInBatches(values, batchSize)
}
func (a appMessageReadStatusDo) Save(values ...*model.AppMessageReadStatus) error {
if len(values) == 0 {
return nil
}
return a.DO.Save(values)
}
func (a appMessageReadStatusDo) First() (*model.AppMessageReadStatus, error) {
if result, err := a.DO.First(); err != nil {
return nil, err
} else {
return result.(*model.AppMessageReadStatus), nil
}
}
func (a appMessageReadStatusDo) Take() (*model.AppMessageReadStatus, error) {
if result, err := a.DO.Take(); err != nil {
return nil, err
} else {
return result.(*model.AppMessageReadStatus), nil
}
}
func (a appMessageReadStatusDo) Last() (*model.AppMessageReadStatus, error) {
if result, err := a.DO.Last(); err != nil {
return nil, err
} else {
return result.(*model.AppMessageReadStatus), nil
}
}
func (a appMessageReadStatusDo) Find() ([]*model.AppMessageReadStatus, error) {
result, err := a.DO.Find()
return result.([]*model.AppMessageReadStatus), err
}
func (a appMessageReadStatusDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.AppMessageReadStatus, err error) {
buf := make([]*model.AppMessageReadStatus, 0, batchSize)
err = a.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error {
defer func() { results = append(results, buf...) }()
return fc(tx, batch)
})
return results, err
}
func (a appMessageReadStatusDo) FindInBatches(result *[]*model.AppMessageReadStatus, batchSize int, fc func(tx gen.Dao, batch int) error) error {
return a.DO.FindInBatches(result, batchSize, fc)
}
func (a appMessageReadStatusDo) Attrs(attrs ...field.AssignExpr) IAppMessageReadStatusDo {
return a.withDO(a.DO.Attrs(attrs...))
}
func (a appMessageReadStatusDo) Assign(attrs ...field.AssignExpr) IAppMessageReadStatusDo {
return a.withDO(a.DO.Assign(attrs...))
}
func (a appMessageReadStatusDo) Joins(fields ...field.RelationField) IAppMessageReadStatusDo {
for _, _f := range fields {
a = *a.withDO(a.DO.Joins(_f))
}
return &a
}
func (a appMessageReadStatusDo) Preload(fields ...field.RelationField) IAppMessageReadStatusDo {
for _, _f := range fields {
a = *a.withDO(a.DO.Preload(_f))
}
return &a
}
func (a appMessageReadStatusDo) FirstOrInit() (*model.AppMessageReadStatus, error) {
if result, err := a.DO.FirstOrInit(); err != nil {
return nil, err
} else {
return result.(*model.AppMessageReadStatus), nil
}
}
func (a appMessageReadStatusDo) FirstOrCreate() (*model.AppMessageReadStatus, error) {
if result, err := a.DO.FirstOrCreate(); err != nil {
return nil, err
} else {
return result.(*model.AppMessageReadStatus), nil
}
}
func (a appMessageReadStatusDo) FindByPage(offset int, limit int) (result []*model.AppMessageReadStatus, count int64, err error) {
result, err = a.Offset(offset).Limit(limit).Find()
if err != nil {
return
}
if size := len(result); 0 < limit && 0 < size && size < limit {
count = int64(size + offset)
return
}
count, err = a.Offset(-1).Limit(-1).Count()
return
}
func (a appMessageReadStatusDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) {
count, err = a.Count()
if err != nil {
return
}
err = a.Offset(offset).Limit(limit).Scan(result)
return
}
func (a appMessageReadStatusDo) Scan(result interface{}) (err error) {
return a.DO.Scan(result)
}
func (a appMessageReadStatusDo) Delete(models ...*model.AppMessageReadStatus) (result gen.ResultInfo, err error) {
return a.DO.Delete(models)
}
func (a *appMessageReadStatusDo) withDO(do gen.Dao) *appMessageReadStatusDo {
a.DO = *do.(*gen.DO)
return a
}