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