From f4508a84236a4aff1c7b5bfa17a14a8ff95728ba Mon Sep 17 00:00:00 2001
From: yinbentan <yinbentan@live.com>
Date: 星期一, 08 七月 2024 09:45:10 +0800
Subject: [PATCH] 接口调用报错处理

---
 models/attribute_value.go |   37 ++++++++++++++++++++++++++++++++-----
 1 files changed, 32 insertions(+), 5 deletions(-)

diff --git a/models/attribute_value.go b/models/attribute_value.go
index 3b8ad53..fc6e42a 100644
--- a/models/attribute_value.go
+++ b/models/attribute_value.go
@@ -10,13 +10,14 @@
 	// AttributeValue 灞炴�у�煎拰瀵硅薄
 	AttributeValue struct {
 		gorm.Model
-		EntityID    string `gorm:"primaryKey"`
-		AttributeID uint   `gorm:"primaryKey"`
-		Value       string `json:"value"`
+		EntityID    string `gorm:"uniqueIndex:entity_id_attr_id;type:varchar(100);not null;default:''" json:"entityID"`
+		AttributeID uint   `gorm:"uniqueIndex:entity_id_attr_id;type:int;not null;default:0" json:"attributeID"`
+		Value       string `gorm:"type:varchar(255);not null;default:''" json:"value"`
 	}
 
 	AttributeValueSearch struct {
 		AttributeValue
+		Ids      []string
 		Order    string
 		PageNum  int
 		PageSize int
@@ -51,14 +52,40 @@
 	slf.ID = id
 	return slf
 }
-
+func (slf *AttributeValueSearch) SetEntityID(entityId string) *AttributeValueSearch {
+	slf.EntityID = entityId
+	return slf
+}
+func (slf *AttributeValueSearch) SetEntityIDs(entityId []string) *AttributeValueSearch {
+	slf.Ids = entityId
+	return slf
+}
+func (slf *AttributeValueSearch) SetAttributeID(attributeId uint) *AttributeValueSearch {
+	slf.AttributeID = attributeId
+	return slf
+}
+func (slf *AttributeValueSearch) SetValue(value string) *AttributeValueSearch {
+	slf.Value = value
+	return slf
+}
 func (slf *AttributeValueSearch) build() *gorm.DB {
 	var db = slf.Orm.Table(slf.TableName())
 
 	if slf.ID != 0 {
 		db = db.Where("id = ?", slf.ID)
 	}
-
+	if slf.EntityID != "" {
+		db = db.Where("entity_id = ?", slf.EntityID)
+	}
+	if slf.AttributeID != 0 {
+		db = db.Where("attribute_id = ?", slf.AttributeID)
+	}
+	if slf.Value != "" {
+		db = db.Where("value like ?", "%"+slf.Value+"%")
+	}
+	if len(slf.Ids) > 0 {
+		db = db.Where("entity_id in ?", slf.Ids)
+	}
 	if slf.Order != "" {
 		db = db.Order(slf.Order)
 	}

--
Gitblit v1.8.0