package kr.wisestone.owl.web.condition; import com.google.common.collect.Lists; 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-01-02. */ public class ProjectCondition { private Long id; private Long parentProjectId; private String name; private Integer page; private Integer pageSize; private Long loginUserId; private Long workspaceId; private String projectType; private Boolean workspaceManager = Boolean.FALSE; // 프로젝트 목록 조회에서 조회 요청할 경우 업무 공간 담당자는 모든 프로젝트 목록이 표시되어야한다. private String deep; // 상세 조회에서 가져올 데이터의 종류를 결정한다. private List statuses = Lists.newArrayList(); private List roleTypes = Lists.newArrayList(); // 프로젝트 관리자, 일반 참여자를 구분해서 가져온다. private List excludeIds = Lists.newArrayList(); private List userIds = Lists.newArrayList(); private List departmentIds = Lists.newArrayList(); public ProjectCondition(){} public ProjectCondition(Long id, Long loginUserId){ this.id = id; this.loginUserId = loginUserId; } public static ProjectCondition make(Map conditions) { ProjectCondition condition = ConvertUtil.convertMapToClass(conditions, ProjectCondition.class); if (MapUtil.getStrings(conditions, "statuses") != null) { condition.setStatuses(MapUtil.getStrings(conditions, "statuses")); } if (MapUtil.getStrings(conditions, "roleTypes") != null) { condition.setRoleTypes(MapUtil.getStrings(conditions, "roleTypes")); } if (MapUtil.getLongs(conditions, "excludeIds") != null) { condition.setExcludeIds(MapUtil.getLongs(conditions, "excludeIds")); } if (MapUtil.getLongs(conditions, "userIds") != null) { condition.setUserIds(MapUtil.getLongs(conditions, "userIds")); } if (MapUtil.getLongs(conditions, "departmentIds") != null) { condition.setDepartmentIds(MapUtil.getLongs(conditions, "departmentIds")); } return condition; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public Long getParentProjectId() { return parentProjectId; } public void setParentProjectId(Long id) { this.parentProjectId = 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 getLoginUserId() { return loginUserId; } public void setLoginUserId(Long loginUserId) { this.loginUserId = loginUserId; } public List getStatuses() { return statuses; } public void setStatuses(List statuses) { this.statuses = statuses; } public List getExcludeIds() { return excludeIds; } public void setExcludeIds(List excludeIds) { this.excludeIds = excludeIds; } public Long getWorkspaceId() { return workspaceId; } public void setWorkspaceId(Long workspaceId) { this.workspaceId = workspaceId; } public List getUserIds() { return userIds; } public void setUserIds(List userIds) { this.userIds = userIds; } public String getDeep() { return deep; } public void setDeep(String deep) { this.deep = deep; } public List getRoleTypes() { return roleTypes; } public void setRoleTypes(List roleTypes) { this.roleTypes = roleTypes; } public String getProjectType() { return projectType; } public void setProjectType(String projectType) { this.projectType = projectType; } public Boolean getWorkspaceManager() { return workspaceManager; } public void setWorkspaceManager(Boolean workspaceManager) { this.workspaceManager = workspaceManager; } public List getDepartmentIds() { return departmentIds; } public void setDepartmentIds(List departmentIds) { this.departmentIds = departmentIds; } }