123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- // 数据操作底层模型
- // 秒寻科技
- // zt 2024-01-04
- package mysqlmodel
- import (
- "time"
- )
- // BaseModel 数据库模型的基础结构体(用于返回响应数据时的简单模型)
- type BaseModel struct {
- ID int `json:"id"` //记录ID
- OwnerID int `json:"owner_id,omitempty"`
- }
- // BaseModelDB 数据库模型的基础结构体
- type BaseModelDB struct {
- CompanyID int `json:"company_id" gorm:"size:32;index"` //公司ID
- ProjectID int `json:"project_id" gorm:"default:0"` //项目ID(项目编号由由后台维护,前端可读不可写)
- ID int `json:"id" gorm:"primary_key"` //记录的ID
- CreatedAt time.Time `json:"created_at,omitempty"` //记录的创建时间
- UpdatedAt time.Time `json:"updated_at"` //记录的更新时间
- Status uint8 `json:"status" gorm:"default:1"` //记录的状态
- IsActive uint8 `json:"is_active" gorm:"default:1"` //是否是有效记录,0:无效数据(已删除的数据标记为无效数据) 1:有效数据
- OwnerID int `json:"owner_id"` //记录的所属者
- SourceID int8 `json:"source_id" gorm:"-"` //数据来源,1:管理端,2:移动端,3:GUI网管
- }
- // query参数
- type QueryParam struct {
- Key string `json:"key"`
- Opt string `json:"opt"`
- Data interface{} `json:"data"`
- }
- // 查询参数
- type ListParam struct {
- CompanyID int `json:"company_id"` //公司ID
- ProjectID int `json:"project_id"` //项目ID(项目编号由由后台维护,前端可读不可写)
- OwnerID int `json:"user_id"` //用户ID
- Search map[string]interface{} `json:"search"`
- Query []QueryParam `json:"query"`
- OrderBy string `json:"order_by"` //排序
- }
- // 查询分页参数
- type PageListParam struct {
- CompanyID int `json:"company_id" form:"company_id"` //公司ID
- //ProjectID string `json:"project_id"` //项目ID(项目编号由由后台维护,前端可读不可写)
- ProjectID int `json:"project_id"` //项目ID(项目编号由由后台维护,前端可读不可写)
- OwnerID int `json:"user_id" form:"user_id"` //用户ID
- PageNum int `json:"page_num" form:"page_num"` //页码
- PageSize int `json:"page_size" form:"page_size"` //每页记录数
- Search map[string]interface{} `json:"search" form:"search"`
- Query []QueryParam `json:"query" form:"query"`
- OrderBy string `json:"order_by" form:"order_by"` //获得分页数据时的SQL排序字段,默认为id
- }
- // PageListData 分页列表数据结构
- type PageListData struct {
- PageNum int `json:"page_num"` //分页数据的页码
- PageSize int `json:"page_size"` //每页的记录条数
- TotalCount int `json:"total_count"` //数据总条数
- Items interface{} `json:"items"` //当前页的列表数据
- }
|