From 472f25fb616dbc7bb718d893df83c70cb55d9acc Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Mon, 11 Nov 2024 11:42:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BA=86=E9=A3=9E=E8=8A=B1?= =?UTF-8?q?=E4=BB=A4=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/dao/BaseToken.go | 2 ++ api/dto/BaseToken.go | 18 ++++++++++++++---- api/model/BaseToken.go | 1 + 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/api/dao/BaseToken.go b/api/dao/BaseToken.go index 3c01b67..df3435d 100644 --- a/api/dao/BaseToken.go +++ b/api/dao/BaseToken.go @@ -135,6 +135,8 @@ func (r *BaseTokenDao) GetBaseTokenListSearch(req requests.GetTokenList) (m []*m // 构建查询条件 query := global.Db.Model(&model.BaseToken{}) + query = query.Preload("BaseTokenItem") + // 主键id if req.TokenId != "" { query = query.Where("token_id = ?", req.TokenId) diff --git a/api/dto/BaseToken.go b/api/dto/BaseToken.go index 6291939..7546eb8 100644 --- a/api/dto/BaseToken.go +++ b/api/dto/BaseToken.go @@ -7,10 +7,11 @@ import ( // BaseTokenDto 基础数据-飞花令 type BaseTokenDto struct { - TokenId string `json:"token_id"` // 主键id - TokenName string `json:"token_name"` // 名称 - CreatedAt model.LocalTime `json:"created_at"` // 创建时间 - UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间 + TokenId string `json:"token_id"` // 主键id + TokenName string `json:"token_name"` // 名称 + BaseTokenItemCount int `json:"base_token_item_count"` // 明细数量 + CreatedAt model.LocalTime `json:"created_at"` // 创建时间 + UpdatedAt model.LocalTime `json:"updated_at"` // 修改时间 } // GetBaseTokenDto 详情 @@ -37,6 +38,9 @@ func GetBaseTokenListDto(m []*model.BaseToken) []*BaseTokenDto { UpdatedAt: v.UpdatedAt, } + // 加载明细数量 + response = response.LoadTokenItemCount(v.BaseTokenItem) + // 将转换后的结构体添加到新切片中 responses[i] = response } @@ -44,3 +48,9 @@ func GetBaseTokenListDto(m []*model.BaseToken) []*BaseTokenDto { return responses } + +// LoadTokenItemCount 加载明细数量 +func (r *BaseTokenDto) LoadTokenItemCount(m []*model.BaseTokenItem) *BaseTokenDto { + r.BaseTokenItemCount = len(m) + return r +} diff --git a/api/model/BaseToken.go b/api/model/BaseToken.go index 087c49d..4906419 100644 --- a/api/model/BaseToken.go +++ b/api/model/BaseToken.go @@ -11,6 +11,7 @@ type BaseToken struct { TokenId int64 `gorm:"column:token_id;type:bigint(19);primary_key;comment:主键id" json:"token_id"` TokenName string `gorm:"column:token_name;type:varchar(100);comment:名称" json:"token_name"` Model + BaseTokenItem []*BaseTokenItem `gorm:"foreignKey:TokenId;references:token_id" json:"base_token_item"` } func (m *BaseToken) TableName() string {