Jelajahi Sumber

Merge remote-tracking branch 'origin/dev' into dev

Vanessa 1 tahun lalu
induk
melakukan
50156a0dc9
1 mengubah file dengan 13 tambahan dan 3 penghapusan
  1. 13 3
      kernel/model/attribute_view.go

+ 13 - 3
kernel/model/attribute_view.go

@@ -1880,10 +1880,20 @@ func addAttributeViewColumn(operation *Operation) (err error) {
 		key := av.NewKey(operation.ID, operation.Name, icon, keyType)
 		attrView.KeyValues = append(attrView.KeyValues, &av.KeyValues{Key: key})
 
-		for _, v := range attrView.Views {
-			switch v.LayoutType {
+		for _, view := range attrView.Views {
+			switch view.LayoutType {
 			case av.LayoutTypeTable:
-				v.Table.Columns = append(v.Table.Columns, &av.ViewTableColumn{ID: key.ID})
+				added := false
+				for i, column := range view.Table.Columns {
+					if column.ID == operation.PreviousID {
+						view.Table.Columns = append(view.Table.Columns[:i+1], append([]*av.ViewTableColumn{{ID: key.ID}}, view.Table.Columns[i+1:]...)...)
+						added = true
+						break
+					}
+				}
+				if !added {
+					view.Table.Columns = append(view.Table.Columns, &av.ViewTableColumn{ID: key.ID})
+				}
 			}
 		}
 	}