From 293c8b04b1227ba302fb294fd25db54a4eafdd0d Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期五, 29 三月 2024 10:04:33 +0800 Subject: [PATCH] 供应商产品搜索支持编号规格 --- service/test/product.go | 8 +++++++- api/v1/test/product.go | 6 +++--- model/test/request/product.go | 3 ++- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/api/v1/test/product.go b/api/v1/test/product.go index a962d3f..a76b4fe 100644 --- a/api/v1/test/product.go +++ b/api/v1/test/product.go @@ -162,13 +162,13 @@ // @Success 200 {string} string "{"success":true,"data":{},"msg":"鑾峰彇鎴愬姛"}" // @Router /p/getProductList [get] func (pApi *ProductApi) GetProductList(c *gin.Context) { - var pageInfo testReq.ProductSearch - err := c.ShouldBindQuery(&pageInfo) + var params testReq.ProductSearch + err := c.ShouldBindQuery(¶ms) if err != nil { response.FailWithMessage(err.Error(), c) return } - list, total, err := pService.GetProductInfoList(pageInfo) + list, total, err := pService.GetProductInfoList(params) if err != nil { global.GVA_LOG.Error("鑾峰彇澶辫触!", zap.Error(err)) response.FailWithMessage("鑾峰彇澶辫触", c) diff --git a/model/test/request/product.go b/model/test/request/product.go index 4949214..81b25e7 100644 --- a/model/test/request/product.go +++ b/model/test/request/product.go @@ -6,7 +6,8 @@ type ProductSearch struct { Product - request.PageInfo + request.PageInfo `json:"request.PageInfo"` + Keyword string `json:"keyword,omitempty"` } type ProductCreate struct { diff --git a/service/test/product.go b/service/test/product.go index 57ad6d9..58fb488 100644 --- a/service/test/product.go +++ b/service/test/product.go @@ -73,7 +73,13 @@ var ps []test.SupplierMaterial //鎼滅储妗嗗悎涓�娣诲姞鏌ヨ鏉′欢 if info.Keyword != "" { - db = db.Where("`srm_supplier_material`.name LIKE ?", "%"+info.Keyword+"%").Joins("Supplier").Or("Supplier.name LIKE ?", "%"+info.Keyword+"%") + kw := "%" + info.Keyword + "%" + if info.SupplierId == 0 { + db = db.Where("`srm_supplier_material`.name LIKE ?", kw).Joins("Supplier").Or("Supplier.name LIKE ?", kw) + } else { + db = db.Where("name LIKE ? OR number LIKE ? OR specifications LIKE ?", kw, kw, kw) + } + } if info.Name != "" { db = db.Where("name LIKE ?", "%"+info.Name+"%") -- Gitblit v1.8.0