// Copyright 2023 Anlity <leo@leocode.net>. All rights reserved.
// Use of this source code is governed by a AGPL v3.0 style
// license that can be found in the LICENSE file.

// ==========================================================================
// This is auto-generated by gf cli tool. DO NOT EDIT THIS FILE MANUALLY.
// ==========================================================================

package internal

import (
	"github.com/gogf/gf/database/gdb"
	"github.com/gogf/gf/frame/g"
	"github.com/gogf/gf/frame/gmvc"
)

// ConfigLevelDao is the manager for logic model data accessing
// and custom defined data operations functions management.
type ConfigLevelDao struct {
	gmvc.M                     // M is the core and embedded struct that inherits all chaining operations from gdb.Model.
	DB      gdb.DB             // DB is the raw underlying database management object.
	Table   string             // Table is the table name of the DAO.
	Columns configLevelColumns // Columns contains all the columns of Table that for convenient usage.
}

// ConfigLevelColumns defines and stores column names for table c_config_level.
type configLevelColumns struct {
	Id              string // ID
	LevelName       string // 级别名称
	MonthGpt3       string // 月赠送gpt3次数
	MonthGpt4       string // 月赠送gpt4次数
	MonthMidjourney string // 月赠送midjourney次数
}

func NewConfigLevelDao() *ConfigLevelDao {
	return &ConfigLevelDao{
		M:     g.DB("default").Model("c_config_level").Safe(),
		DB:    g.DB("default"),
		Table: "c_config_level",
		Columns: configLevelColumns{
			Id:              "id",
			LevelName:       "level_name",
			MonthGpt3:       "month_gpt3",
			MonthGpt4:       "month_gpt4",
			MonthMidjourney: "month_midjourney",
		},
	}
}
