DynamicTable.java 677 B

1234567891011121314151617181920212223242526272829
  1. package com.ruoyi.web.domain;
  2. import com.fasterxml.jackson.annotation.JsonInclude;
  3. import com.google.common.collect.Maps;
  4. import lombok.Data;
  5. import org.apache.commons.compress.utils.Lists;
  6. import java.util.List;
  7. import java.util.Map;
  8. @Data
  9. @JsonInclude(JsonInclude.Include.NON_NULL)
  10. public class DynamicTable<T, V> {
  11. String name;
  12. List<String> columns;
  13. List<T> rows = Lists.newArrayList();
  14. Map<String, V> options;
  15. public void appendRow(T row) {
  16. rows.add(row);
  17. }
  18. public V addOption(String name, V value) {
  19. if (null == options) {
  20. options = Maps.newHashMap();
  21. }
  22. return options.put(name, value);
  23. }
  24. }