mirror of
https://gitlab.com/mbugroup/lti-api.git
synced 2026-05-20 13:31:56 +00:00
31 lines
1.1 KiB
Go
31 lines
1.1 KiB
Go
package entities
|
|
|
|
import (
|
|
"database/sql"
|
|
"time"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
type Expense struct {
|
|
Id uint64 `gorm:"primaryKey;autoIncrement"`
|
|
ReferenceNumber *string `gorm:"type:varchar(50);uniqueIndex"`
|
|
SupplierId *uint64 `gorm:""`
|
|
Category string `gorm:"type:varchar(50);not null"`
|
|
PoNumber *string `gorm:"type:varchar(50)"`
|
|
DocumentPath sql.NullString `gorm:"type:json"`
|
|
ExpenseDate time.Time `gorm:"type:date;not null"`
|
|
GrandTotal float64 `gorm:"type:numeric(15,3);default:0"`
|
|
Note *string `gorm:"type:text"`
|
|
CreatedBy *uint64 `gorm:""`
|
|
CreatedAt time.Time `gorm:"autoCreateTime"`
|
|
UpdatedAt time.Time `gorm:"autoUpdateTime"`
|
|
DeletedAt gorm.DeletedAt `gorm:"index" json:"-"`
|
|
|
|
// Relations
|
|
Supplier *Supplier `gorm:"foreignKey:SupplierId;references:Id"`
|
|
CreatedUser *User `gorm:"foreignKey:CreatedBy;references:Id"`
|
|
Nonstocks []ExpenseNonstock `gorm:"foreignKey:ExpenseId;references:Id"`
|
|
LatestApproval *Approval `gorm:"-" json:"latest_approval,omitempty"`
|
|
}
|