57 lines
1.5 KiB
Go
57 lines
1.5 KiB
Go
package dto
|
|
|
|
import (
|
|
"fmt"
|
|
"knowledge/api/model"
|
|
)
|
|
|
|
// BaseTokenDto 基础数据-飞花令
|
|
type BaseTokenDto struct {
|
|
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 详情
|
|
func GetBaseTokenDto(m *model.BaseToken) *BaseTokenDto {
|
|
return &BaseTokenDto{
|
|
TokenId: fmt.Sprintf("%d", m.TokenId),
|
|
TokenName: m.TokenName,
|
|
CreatedAt: m.CreatedAt,
|
|
UpdatedAt: m.UpdatedAt,
|
|
}
|
|
}
|
|
|
|
// GetBaseTokenListDto 列表
|
|
func GetBaseTokenListDto(m []*model.BaseToken) []*BaseTokenDto {
|
|
// 处理返回值
|
|
responses := make([]*BaseTokenDto, len(m))
|
|
|
|
if len(m) > 0 {
|
|
for i, v := range m {
|
|
response := &BaseTokenDto{
|
|
TokenId: fmt.Sprintf("%d", v.TokenId),
|
|
TokenName: v.TokenName,
|
|
CreatedAt: v.CreatedAt,
|
|
UpdatedAt: v.UpdatedAt,
|
|
}
|
|
|
|
// 加载明细数量
|
|
response = response.LoadTokenItemCount(v.BaseTokenItem)
|
|
|
|
// 将转换后的结构体添加到新切片中
|
|
responses[i] = response
|
|
}
|
|
}
|
|
|
|
return responses
|
|
}
|
|
|
|
// LoadTokenItemCount 加载明细数量
|
|
func (r *BaseTokenDto) LoadTokenItemCount(m []*model.BaseTokenItem) *BaseTokenDto {
|
|
r.BaseTokenItemCount = len(m)
|
|
return r
|
|
}
|