zhangqian
2024-06-20 0b7036989cbbe1073e5338dc57b395c6d10ee0d1
service/material.go
@@ -45,7 +45,14 @@
      return 0, errors.New("改文件没有数据内容")
   }
   inserts := rows[1:len(rows)]
   inserts := rows[1:]
   headers := rows[0]
   attributesColumns := make([]int, 0)
   for i, header := range headers {
      if mapAttribute[header] != 0 {
         attributesColumns = append(attributesColumns, i)
      }
   }
   for index, insert := range inserts {
      errMsg := ""
@@ -132,6 +139,8 @@
      if len(insert) > 8 && insert[7] != "" {
         material.Type = insert[7] //型号
      }
      {
         /*
      if len(insert) > 9 && insert[8] != "" {
         if mapAttribute[insert[8]] == 0 {
            errMsg = "第" + strconv.Itoa(index+2) + "行,产品编码:" + insert[0] + ",未能识别材质属性,请先添加该属性"
@@ -180,6 +189,24 @@
         attributeValue4.Value = insert[11]
         attributeValueList = append(attributeValueList, attributeValue4)
      }
         */
      }
      //保存动态属性
      for attributesColumn := range attributesColumns {
         if mapAttribute[insert[attributesColumn]] != 0 {
            attributeValue2 := new(models.AttributeValue)
            attributeValue2.EntityID = material.ID
            attributeValue2.AttributeID = mapAttribute[insert[9]]
            attributeValue2.Value = insert[9]
            attributeValueList = append(attributeValueList, &models.AttributeValue{
               EntityID:    material.ID,
               AttributeID: mapAttribute[insert[attributesColumn]],
               Value:       insert[attributesColumn],
            })
         }
      }
   }
   err = models.WithTransaction(func(db *gorm.DB) error {