From bcbd47ebfa5cdb0762c2a33601dc68dd8dd564ec Mon Sep 17 00:00:00 2001 From: liujiandao <274878379@qq.com> Date: 星期六, 23 九月 2023 13:39:18 +0800 Subject: [PATCH] 质检列表搜索修改 --- service/purchase/purchase.go | 16 ++++++++++++++-- 1 files changed, 14 insertions(+), 2 deletions(-) diff --git a/service/purchase/purchase.go b/service/purchase/purchase.go index 2251d8e..d07291e 100644 --- a/service/purchase/purchase.go +++ b/service/purchase/purchase.go @@ -127,6 +127,8 @@ limit := info.PageSize offset := info.PageSize * (info.Page - 1) db := global.GVA_DB.Model(&purchase.Purchase{}) + var ids []uint + var purchaseList = make([]*purchase.Purchase, 0) if info.Keyword != "" { db.Distinct("purchases.id").Joins("left join purchase_products on purchase_products.purchase_id = purchases.id"). Joins("left join Product on Product.Id = purchase_products.product_id"). @@ -134,13 +136,23 @@ Where("purchases.name like ?", "%"+info.Keyword+"%"). Or("Product.name like ?", "%"+info.Keyword+"%"). Or("supplier.name like ?", "%"+info.Keyword+"%") + err = db.Limit(limit).Offset(offset).Find(&ids).Error + if err != nil { + return purchaseList, total, err + } } - var purchaseList []*purchase.Purchase + err = db.Count(&total).Error if err != nil { return purchaseList, total, err } - err = db.Limit(limit).Offset(offset).Find(&purchaseList).Error + if len(ids) != 0 { + db = global.GVA_DB.Model(&purchase.Purchase{}) + err = db.Where("id in (?)", ids).Find(&purchaseList).Error + } else { + err = db.Limit(limit).Offset(offset).Find(&purchaseList).Error + } + return purchaseList, total, err } -- Gitblit v1.8.0