From 9c7551a7a752c07db11b0fd23bfba8da1ad062e0 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 21 六月 2024 20:39:12 +0800
Subject: [PATCH] fix 404
---
models/attribute.go | 32 ++++++++++++++++++++++++++++++--
1 files changed, 30 insertions(+), 2 deletions(-)
diff --git a/models/attribute.go b/models/attribute.go
index 19fc906..8f1a368 100644
--- a/models/attribute.go
+++ b/models/attribute.go
@@ -25,6 +25,8 @@
PageNum int
PageSize int
Orm *gorm.DB
+ Keyword string
+ IDs []uint
}
)
@@ -47,6 +49,17 @@
}
func (slf *Attribute) BeforeCreate(tx *gorm.DB) (err error) {
+ if len(slf.SelectValues) != 0 {
+ bts, err := json.Marshal(slf.SelectValues)
+ if err != nil {
+ return err
+ }
+ slf.SelectValue = string(bts)
+ }
+ return nil
+}
+
+func (slf *Attribute) BeforeUpdate(tx *gorm.DB) (err error) {
if len(slf.SelectValues) != 0 {
bts, err := json.Marshal(slf.SelectValues)
if err != nil {
@@ -92,9 +105,16 @@
slf.ID = id
return slf
}
-
+func (slf *AttributeSearch) SetIDs(ids []uint) *AttributeSearch {
+ slf.IDs = ids
+ return slf
+}
func (slf *AttributeSearch) SetName(name string) *AttributeSearch {
slf.Name = name
+ return slf
+}
+func (slf *AttributeSearch) SetEntityType(entityType EntityType) *AttributeSearch {
+ slf.EntityType = entityType
return slf
}
@@ -104,14 +124,22 @@
if slf.ID != 0 {
db = db.Where("id = ?", slf.ID)
}
-
+ if len(slf.IDs) != 0 {
+ db = db.Where("id in ?", slf.IDs)
+ }
if slf.Order != "" {
db = db.Order(slf.Order)
+ }
+ if slf.EntityType != 0 {
+ db = db.Where("entity_type = ?", slf.EntityType)
}
if slf.Name != "" {
db = db.Where("name = ?", slf.Name)
}
+ if slf.Keyword != "" {
+ db = db.Where("id like ? or data_type like ? ", fmt.Sprintf("%%%v%%", slf.Keyword), fmt.Sprintf("%%%v%%", slf.Keyword))
+ }
return db
}
--
Gitblit v1.8.0