package kr.wisestone.owl.web.condition; import com.google.common.collect.Lists; import kr.wisestone.owl.domain.enumType.CustomFieldType; import kr.wisestone.owl.domain.enumType.IssueStatusType; import kr.wisestone.owl.util.ConvertUtil; import kr.wisestone.owl.util.MapUtil; import java.util.List; import java.util.Map; /** * Created by wisestone on 2018-05-28. */ public class CustomFieldCondition { private Long id; private String name; private Integer page; private Integer pageSize; private Long workspaceId; private List customFieldTypes = Lists.newArrayList(); private String deep; // 상세 조회에서 가져올 데이터의 종류를 결정한다. public CustomFieldCondition(){} public static CustomFieldCondition make(Map conditions) { CustomFieldCondition condition = ConvertUtil.convertMapToClass(conditions, CustomFieldCondition.class); if (MapUtil.getStrings(conditions, "customFieldTypes") != null) { for (String customFieldTypeString : MapUtil.getStrings(conditions, "customFieldTypes")) { CustomFieldType customFieldType = CustomFieldType.valueOf(customFieldTypeString); if (customFieldType != null) { condition.addCustomFieldTypes(customFieldType); } } } return condition; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getPage() { return page; } public void setPage(Integer page) { this.page = page; } public Integer getPageSize() { return pageSize; } public void setPageSize(Integer pageSize) { this.pageSize = pageSize; } public Long getWorkspaceId() { return workspaceId; } public void setWorkspaceId(Long workspaceId) { this.workspaceId = workspaceId; } public String getDeep() { return deep; } public void setDeep(String deep) { this.deep = deep; } public List getCustomFieldTypes() { return customFieldTypes; } public void setCustomFieldTypes(List customFieldTypes) { this.customFieldTypes = customFieldTypes; } public void addCustomFieldTypes(CustomFieldType customFieldType) { this.customFieldTypes.add(customFieldType); } }