controllers/attribute.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
controllers/product_controller.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
models/attribute.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
request/attribute.go | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
controllers/attribute.go
@@ -144,14 +144,14 @@ // ListAttribute // @Tags 属性值和对象 // @Summary 查询属性值和对象 // @Summary 添加属性值和对象 // @Produce application/json // object body request.GetAttributeList true "查询参数" // @Param object body request.GetAttributeList true "属性值和对象信息" // @Success 200 {object} util.Response "成功" // @Router /api-wms/v1/attribute/list [post] func (slf AttributeController) ListAttribute(c *gin.Context) { var params request.GetAttributeList if err := c.ShouldBindQuery(¶ms); err != nil { var params request.AttributeList if err := c.ShouldBind(¶ms); err != nil { util.ResponseFormat(c, code.RequestParamError, err.Error()) return } controllers/product_controller.go
@@ -181,6 +181,37 @@ product.MaxInventoryRule = reorderRules[0].MaxInventory } product.ReorderRuleNum = rulesTotal attributeValues, err := models.NewAttributeValueSearch().SetEntityID(product.ID).FindNotTotal() aids := make([]uint, 0) for _, v := range attributeValues { aids = append(aids, v.AttributeID) } attributes, err := models.NewAttributeSearch().SetIDs(aids).FindNotTotal() attributesMap := make(map[uint]*models.Attribute, len(attributes)) for _, v := range attributes { attributesMap[v.ID] = v } if err != nil { util.ResponseFormat(c, code.RequestParamError, "未知动态属性") } for _, v1 := range attributeValues { attribute := attributesMap[v1.AttributeID] if attribute == nil { continue } //product.Attributes = append(product.Attributes,v1) product.Attributes = append(product.Attributes, models.Attribute{ Model: gorm.Model{ID: v1.ID, CreatedAt: v1.CreatedAt, UpdatedAt: v1.UpdatedAt, DeletedAt: v1.DeletedAt}, Name: attribute.Name, DataType: attribute.DataType, EntityType: attribute.EntityType, SelectValues: attribute.SelectValues, SelectValue: attribute.SelectValue, //Value: v1.Value, Value: v1.Value, }) } } util.ResponseFormatList(c, code.Success, products, int(total)) } @@ -268,25 +299,25 @@ } } attributeValueSearch := models.NewAttributeValueSearch() /*attributeValueSearch := models.NewAttributeValueSearch() //删除从新插入 if err := attributeValueSearch.SetOrm(tx).SetEntityID(params.ID).Delete(); err != nil { return err } avs := make([]*models.AttributeValue, 0) }*/ //avs := make([]*models.AttributeValue, 0) for _, v := range params.Attributes { av := models.AttributeValue{ Model: gorm.Model{}, Model: gorm.Model{ID: v.ID}, EntityID: params.ID, AttributeID: v.ID, Value: v.Value, } avs = append(avs, &av) //avs = append(avs, &av) if err := models.NewAttributeValueSearch().SetOrm(tx).Save(&av); err != nil { return err } } } if err := models.NewAttributeValueSearch().SetOrm(tx).CreateBatch(avs); err != nil { return err } return nil }) if err != nil { models/attribute.go
@@ -26,6 +26,7 @@ PageSize int Orm *gorm.DB Keyword string IDs []uint } ) @@ -104,7 +105,10 @@ 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 @@ -120,7 +124,9 @@ 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) } request/attribute.go
@@ -2,10 +2,10 @@ import "wms/models" type GetAttributeList struct { type AttributeList struct { PageInfo Keyword string `json:"keyword"` EntityType models.EntityType `json:"entityType"` Keyword string `json:"keyword" form:"keyword"` EntityType models.EntityType `json:"entityType" form:"entityType"` } type AddAttribute struct {