// 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 domain

import (
	"time"
)

const TableNameProjectBase = "project_base"

// ProjectBase mapped from table <project_base>
type ProjectBase struct {
	ID          string  `gorm:"column:id;type:character(26);primaryKey;default:generate_ulid()" json:"id"`
	ProjectName *string `gorm:"column:project_name;type:character varying(255)" json:"project_name"`
	MarketingID *string `gorm:"column:marketing_id;type:character(26)" json:"marketing_id"`
	/*
		0. Open
		1. Progress
		2. Approved
		3. Rejected
		4. Canceled
		5. Closed
	*/
	Status       *int32     `gorm:"column:status;type:integer;comment:0. Open\n1. Progress\n2. Approved\n3. Rejected\n4. Canceled\n5. Closed" json:"status"`
	Code         *string    `gorm:"column:code;type:character varying(20)" json:"code"`
	CustomersID  *string    `gorm:"column:customers_id;type:character(26)" json:"customers_id"`
	Notes        *string    `gorm:"column:notes;type:text" json:"notes"`
	ProjectStart *time.Time `gorm:"column:project_start;type:timestamp without time zone" json:"project_start"`
	ProjectEnd   *time.Time `gorm:"column:project_end;type:timestamp without time zone" json:"project_end"`
	Total        *float32   `gorm:"column:total;type:real" json:"total"`
	CreatedBy    *string    `gorm:"column:created_by;type:character(26)" json:"created_by"`
	CreatedOn    *time.Time `gorm:"column:created_on;type:timestamp without time zone;default:now()" json:"created_on"`
	UpdatedBy    *string    `gorm:"column:updated_by;type:character(26)" json:"updated_by"`
	UpdatedOn    *time.Time `gorm:"column:updated_on;type:timestamp without time zone;default:now()" json:"updated_on"`
}

// TableName ProjectBase's table name
func (*ProjectBase) TableName() string {
	return TableNameProjectBase
}
