From b3a318b7f707ca49fa9127881bbe709654eaa761 Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期三, 27 九月 2023 17:27:51 +0800
Subject: [PATCH] 报表功能开发

---
 models/material.go |   28 ++++++++++++++++++++++------
 1 files changed, 22 insertions(+), 6 deletions(-)

diff --git a/models/material.go b/models/material.go
index dd74cb1..f22f5b9 100644
--- a/models/material.go
+++ b/models/material.go
@@ -77,11 +77,12 @@
 		//MaterialTypes   []constvar.MaterialType
 		Keyword string
 		//SetTemplateType constvar.SetTemplateType
-		Order    string
-		PageNum  int
-		PageSize int
-		Ids      []string
-		Orm      *gorm.DB
+		Order       string
+		PageNum     int
+		PageSize    int
+		Ids         []string
+		Orm         *gorm.DB
+		CategoryIds []int
 	}
 
 	IdAndName struct {
@@ -152,6 +153,15 @@
 	slf.TemplateID = id
 	return slf
 }
+func (slf *MaterialSearch) SetCategoryId(id int) *MaterialSearch {
+	slf.CategoryId = id
+	return slf
+}
+
+func (slf *MaterialSearch) SetCategoryIds(ids []int) *MaterialSearch {
+	slf.CategoryIds = ids
+	return slf
+}
 
 //
 //func (slf *MaterialSearch) SetSetTemplateType(setType constvar.SetTemplateType) *MaterialSearch {
@@ -207,7 +217,7 @@
 	//}
 
 	if slf.Keyword != "" {
-		db = db.Where("name LIKE ? or id LIKE ? ", "%"+slf.Keyword+"%", "%"+slf.Keyword+"%")
+		db = db.Where("name LIKE ? ", "%"+slf.Keyword+"%")
 	}
 
 	if slf.Order != "" {
@@ -223,6 +233,12 @@
 	if slf.IsSale {
 		db = db.Where("is_sale = ?", 1)
 	}
+	if slf.CategoryId > 0 {
+		db = db.Where("category_id = ?", slf.CategoryId)
+	}
+	if len(slf.CategoryIds) > 0 {
+		db = db.Where("category_id in ?", slf.CategoryIds)
+	}
 
 	return db
 }

--
Gitblit v1.8.0