From bcbd47ebfa5cdb0762c2a33601dc68dd8dd564ec Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期六, 23 九月 2023 13:39:18 +0800
Subject: [PATCH] 质检列表搜索修改

---
 model/test/product.go                 |    1 +
 api/v1/purchase/quality_inspection.go |    3 +--
 api/v1/test/product.go                |    4 ++++
 service/purchase/purchase.go          |   16 ++++++++++++++--
 4 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/api/v1/purchase/quality_inspection.go b/api/v1/purchase/quality_inspection.go
index 803f593..539adef 100644
--- a/api/v1/purchase/quality_inspection.go
+++ b/api/v1/purchase/quality_inspection.go
@@ -44,7 +44,7 @@
 		purchaseNumbers = append(purchaseNumbers, item.Number)
 	}
 	resultList := make([]*purchaseRes.QualityInspectList, 0, len(purchaseList))
-	if len(purchaseList) == 0 {
+	if len(purchaseList) != 0 {
 		err = utils.AssignTo(purchaseList, &resultList)
 		if err != nil {
 			global.GVA_LOG.Error("mapStructure decode", zap.Error(err))
@@ -77,7 +77,6 @@
 			}
 		}
 	}
-
 	response.OkWithDetailed(response.PageResult{
 		List:     resultList,
 		Total:    total,
diff --git a/api/v1/test/product.go b/api/v1/test/product.go
index 0cab86a..ca47df4 100644
--- a/api/v1/test/product.go
+++ b/api/v1/test/product.go
@@ -160,6 +160,10 @@
 		global.GVA_LOG.Error("鑾峰彇澶辫触!", zap.Error(err))
 		response.FailWithMessage("鑾峰彇澶辫触", c)
 	} else {
+		//娣诲姞渚涘簲鍟嗗悕绉�
+		for i := 0; i < len(list); i++ {
+			list[i].SupplierName = list[i].Supplier.Name
+		}
 		response.OkWithDetailed(response.PageResult{
 			List:     list,
 			Total:    total,
diff --git a/model/test/product.go b/model/test/product.go
index 39cf840..975c8c8 100644
--- a/model/test/product.go
+++ b/model/test/product.go
@@ -19,6 +19,7 @@
 	MinimumStock     int      `json:"minimumStock" form:"minimumStock" gorm:"column:minimum_stock;comment:鏈�浣庡簱瀛�;"`
 	MaximumStock     int      `json:"maximumStock" form:"maximumStock" gorm:"column:maximum_stock;comment:鏈�楂樺簱瀛�;"`
 	Remark           string   `json:"remark" form:"remark" gorm:"column:remark;comment:澶囨敞;size:255;"`
+	SupplierName     string   `json:"supplierName" gorm:"-"`
 }
 
 // TableName Product 琛ㄥ悕
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