新增 提现详情-关联订单列表-分页

This commit is contained in:
2023-10-31 14:23:33 +08:00
parent 2e4363a7d4
commit dda86b626d
5 changed files with 267 additions and 11 deletions
+37 -2
View File
@@ -1,7 +1,9 @@
package dao
import (
"gorm.io/gorm"
"hospital-admin-api/api/model"
"hospital-admin-api/api/requests"
"hospital-admin-api/global"
)
@@ -9,7 +11,7 @@ type DoctorWithdrawalOrderDao struct {
}
// GetDoctorWithdrawalOrderById 获取医生提现关联订单数据-id
func (r *DoctorWithdrawalBankDao) GetDoctorWithdrawalOrderById(withdrawalBankId int64) (m *model.DoctorWithdrawalBank, err error) {
func (r *DoctorWithdrawalOrderDao) GetDoctorWithdrawalOrderById(withdrawalBankId int64) (m *model.DoctorWithdrawalBank, err error) {
err = global.Db.First(&m, withdrawalBankId).Error
if err != nil {
return nil, err
@@ -18,10 +20,43 @@ func (r *DoctorWithdrawalBankDao) GetDoctorWithdrawalOrderById(withdrawalBankId
}
// GetDoctorWithdrawalOrderByWithdrawalId 获取医生提现关联订单数据-提现id
func (r *DoctorWithdrawalBankDao) GetDoctorWithdrawalOrderByWithdrawalId(withdrawalId int64) (m *model.DoctorWithdrawalBank, err error) {
func (r *DoctorWithdrawalOrderDao) GetDoctorWithdrawalOrderByWithdrawalId(withdrawalId int64) (m *model.DoctorWithdrawalBank, err error) {
err = global.Db.Where("withdrawal_id = ?", withdrawalId).First(&m).Error
if err != nil {
return nil, err
}
return m, nil
}
// GetDoctorWithdrawalOrderPageSearch 获取医生提现列表-分页
func (r *DoctorWithdrawalOrderDao) GetDoctorWithdrawalOrderPageSearch(req requests.GetDoctorWithdrawalOrderPage, page, pageSize int) (m []*model.DoctorWithdrawalOrder, total int64, err error) {
var totalRecords int64
// 构建查询条件
query := global.Db.Model(&model.DoctorWithdrawalOrder{})
// 医生
query = query.Preload("UserDoctor", func(db *gorm.DB) *gorm.DB {
return db.Omit("open_id", "union_id", "wx_session_key")
})
// 订单
query = query.Preload("OrderInquiry")
// 患者
query = query.Preload("OrderInquiry.User")
// 排序
query = query.Order("created_at desc")
// 查询总数量
if err := query.Count(&totalRecords).Error; err != nil {
return nil, 0, err
}
err = query.Scopes(model.Paginate(page, pageSize)).Find(&m).Error
if err != nil {
return nil, 0, err
}
return m, totalRecords, nil
}