// 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"
)

// EmailCodeDao is the manager for logic model data accessing
// and custom defined data operations functions management.
type EmailCodeDao 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 emailCodeColumns // Columns contains all the columns of Table that for convenient usage.
}

// EmailCodeColumns defines and stores column names for table c_email_code.
type emailCodeColumns struct {
	Id            string // ID
	Email         string // 邮箱
	Ip            string // IP
	Scenario      string // 场景
	Code          string // 验证码
	ValidateTimes string // 校验次数
	CreatedAt     string // 创建时间
	UpdatedAt     string // 更新时间
}

func NewEmailCodeDao() *EmailCodeDao {
	return &EmailCodeDao{
		M:     g.DB("default").Model("c_email_code").Safe(),
		DB:    g.DB("default"),
		Table: "c_email_code",
		Columns: emailCodeColumns{
			Id:            "id",
			Email:         "email",
			Ip:            "ip",
			Scenario:      "scenario",
			Code:          "code",
			ValidateTimes: "validate_times",
			CreatedAt:     "created_at",
			UpdatedAt:     "updated_at",
		},
	}
}
