From c5a0eb549cba2cd358a2d0496c44f3a289f15d9c Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期一, 28 八月 2023 14:22:06 +0800 Subject: [PATCH] fix --- model/receipt.go | 24 +++++++++++++++++++++++- 1 files changed, 23 insertions(+), 1 deletions(-) diff --git a/model/receipt.go b/model/receipt.go index c93385f..50945d3 100644 --- a/model/receipt.go +++ b/model/receipt.go @@ -14,6 +14,7 @@ Receipt struct { Id int `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"` ClientId int `gorm:"column:client_id;type:int;not null;default 0;comment:瀹㈡埛id" json:"clientId"` // 瀹㈡埛id + Client Client `gorm:"foreignKey:ClientId" json:"client"` // 瀹㈡埛id SourceType constvar.ReceiptSourceType `gorm:"column:source_type;type:int;not null;default 0;comment:鏉ユ簮绫诲瀷锛�1閿�鍞槑缁嗗崟2鏈嶅姟鍚堝悓3閿�鍞彂绁�4鏀舵璁″垝5鍑哄簱鍗曪級" json:"sourceType"` // 鏉ユ簮绫诲瀷锛�1閿�鍞槑缁嗗崟2鏈嶅姟鍚堝悓3閿�鍞彂绁�4鏀舵璁″垝5鍑哄簱鍗曪級 SourceId int `gorm:"column:source_id;type:int;not null;default 0;comment:婧愬崟id " json:"sourceId"` // 婧愬崟id PrincipalId int `gorm:"column:principal_id;type:int;not null;default 0;comment:璐熻矗浜篿d" json:"principalId"` // 璐熻矗浜篿d @@ -52,10 +53,31 @@ } } +func (slf *ReceiptSearch) SetSourceType(sourceType constvar.ReceiptSourceType) *ReceiptSearch { + slf.SourceType = sourceType + return slf +} + +func (slf *ReceiptSearch) SetSourceId(sourceId int) *ReceiptSearch { + slf.SourceId = sourceId + return slf +} + +func (slf *ReceiptSearch) SetPage(page, size int) *ReceiptSearch { + slf.PageNum, slf.PageSize = page, size + return slf +} + func (slf *ReceiptSearch) build() *gorm.DB { var db = slf.Orm.Model(&Receipt{}) if slf.Id != 0 { db = db.Where("id = ?", slf.Id) + } + if slf.SourceType != 0 { + db = db.Where("source_type = ?", slf.SourceType) + } + if slf.SourceId != 0 { + db = db.Where("source_id = ?", slf.SourceId) } return db @@ -134,7 +156,7 @@ db = db.Limit(slf.PageSize).Offset((slf.PageNum - 1) * slf.PageSize) } - err := db.Find(&records).Error + err := db.Preload("Principal").Preload("Client").Preload("PaymentType").Preload("BankAccount").Find(&records).Error return records, total, err } -- Gitblit v1.8.0