| | |
| | | package kr.wisestone.owl.web.condition; |
| | | |
| | | import com.google.common.collect.Lists; |
| | | import kr.wisestone.owl.util.CommonUtil; |
| | | import kr.wisestone.owl.util.ConvertUtil; |
| | | import kr.wisestone.owl.util.DateUtil; |
| | | import kr.wisestone.owl.util.MapUtil; |
| | | import kr.wisestone.owl.util.*; |
| | | import kr.wisestone.owl.vo.PageVo; |
| | | import org.springframework.data.domain.Pageable; |
| | | import org.springframework.util.StringUtils; |
| | | |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | |
| | | private String endStartDate; |
| | | private String beginCompleteDate; |
| | | private String endCompleteDate; |
| | | private String beginDateRange; |
| | | private String endDateRange; |
| | | private Integer page; |
| | | private Integer pageSize; |
| | | private Long loginUserId; |
| | | private Long workspaceId; |
| | | private String projectType; |
| | | private String deep; |
| | | private String isApi; |
| | | private Long parentIssueId; // 상위 일감 |
| | | private String useValue; |
| | | private List<Long> projectIds = Lists.newArrayList(); |
| | |
| | | private List<Long> statusIds = Lists.newArrayList(); |
| | | private List<Long> excludeIds = Lists.newArrayList(); |
| | | private List<Long> myDepartmentIds; // 내가 속해있는 부서 ID |
| | | private Boolean hideDownIssue; |
| | | private Boolean hideCompleteIssue; |
| | | private Boolean isTree; // 트리구조 모드 일때 |
| | | private Pageable relPageable; |
| | | private Pageable downPageable; |
| | | private Boolean allIssue; // 완료된 이슈까지 보여줄지 여부 |
| | | private Long issueTypeId; |
| | | private Boolean parentYN; //상위이슈만 조회 여부 |
| | | |
| | | public IssueCondition(){} |
| | | |
| | |
| | | |
| | | public static IssueCondition make(Map<String, Object> conditions) { |
| | | IssueCondition condition = ConvertUtil.convertMapToClass(conditions, IssueCondition.class); |
| | | Map<String, Object> pageContents = (Map<String, Object>) conditions.get("pageContent"); |
| | | if (pageContents != null) { |
| | | PageVo downPageVo = new PageVo(); |
| | | downPageVo.setPage(MapUtil.getInteger(pageContents, "downPage")); |
| | | downPageVo.setPageSize(MapUtil.getInteger(pageContents, "downPageSize")); |
| | | |
| | | PageVo relPageVo = new PageVo(); |
| | | relPageVo.setPage(MapUtil.getInteger(pageContents, "relPage")); |
| | | relPageVo.setPageSize(MapUtil.getInteger(pageContents, "relPageSize")); |
| | | |
| | | PageUtil pageUtil = new PageUtil(); |
| | | condition.setRelPageable(pageUtil.convertPageable(relPageVo)); |
| | | condition.setDownPageable(pageUtil.convertPageable(downPageVo)); |
| | | } |
| | | |
| | | if (!StringUtils.isEmpty(condition.getCombinationIssueNumber())) { |
| | | if (condition.getCombinationIssueNumber().contains("-")) { |
| | |
| | | condition.setEndCompleteDate(DateUtil.convertDateToStr(endCompleteDate, "yyyy-MM-dd")); |
| | | } |
| | | |
| | | if (StringUtils.hasText(MapUtil.getString(conditions, "dateRange"))) { |
| | | String dateRange = MapUtil.getString(conditions, "dateRange"); |
| | | if (!StringUtils.isEmpty(dateRange)) { |
| | | List<String> date = Arrays.asList(dateRange.split("~")); |
| | | |
| | | Date beginDateRange = DateUtil.convertStrToDate(date.get(0).trim(), "yy-MM-dd"); |
| | | condition.setBeginDateRange(DateUtil.convertDateToStr(beginDateRange, "yyyy-MM-dd")); |
| | | Date endDateRange = DateUtil.convertStrToDate(date.get(1).trim(), "yy-MM-dd"); |
| | | condition.setEndDateRange(DateUtil.convertDateToStr(endDateRange, "yyyy-MM-dd")); |
| | | } |
| | | } |
| | | |
| | | if (MapUtil.getLongs(conditions, "projectIds") != null) { |
| | | condition.setProjectIds(MapUtil.getLongs(conditions, "projectIds")); |
| | | } |
| | |
| | | |
| | | if (MapUtil.getLongs(conditions, "issueTypeIds") != null) { |
| | | condition.setIssueTypeIds(MapUtil.getLongs(conditions, "issueTypeIds")); |
| | | } |
| | | |
| | | if (MapUtil.getLong(conditions, "issueTypeId") != null) { |
| | | condition.setIssueTypeId(MapUtil.getLong(conditions, "issueTypeId")); |
| | | } |
| | | |
| | | if (MapUtil.getLongs(conditions, "priorityIds") != null) { |
| | |
| | | |
| | | if (MapUtil.getLong(conditions, "issueId") != null) { |
| | | condition.setId(MapUtil.getLong(conditions, "issueId")); |
| | | } |
| | | |
| | | |
| | | if (MapUtil.getInteger(conditions, "hideDownIssue") != null) { |
| | | int hideDownIssue = MapUtil.getInteger(conditions, "hideDownIssue"); |
| | | if(MapUtil.getBoolean(conditions, "isTree") != null && !MapUtil.getBoolean(conditions, "isTree")){ |
| | | switch (hideDownIssue){ |
| | | case 0 : // 이슈 모두 보여주기 |
| | | condition.setHideDownIssue(false); |
| | | condition.setParentYN(true); |
| | | break; |
| | | case 1 : // 상위이슈만 보여주기 |
| | | condition.setHideDownIssue(true); |
| | | condition.setParentYN(true); |
| | | break; |
| | | case 2 : // 하위이슈만 보여주기 |
| | | condition.setHideDownIssue(false); |
| | | condition.setParentYN(false); |
| | | break; |
| | | } |
| | | }else if(MapUtil.getBoolean(conditions, "isTree")) { |
| | | condition.setHideDownIssue(false); |
| | | } |
| | | } |
| | | |
| | | if (MapUtil.getBoolean(conditions, "hideCompleteIssue") != null) { |
| | | condition.setHideCompleteIssue(MapUtil.getBoolean(conditions, "hideCompleteIssue")); |
| | | } |
| | | |
| | | if (MapUtil.getBoolean(conditions, "isTree") != null) { |
| | | condition.setTree(MapUtil.getBoolean(conditions, "isTree")); |
| | | } else { |
| | | condition.setTree(false); |
| | | } |
| | | |
| | | if (MapUtil.getBoolean(conditions, "parentYN") != null && MapUtil.getBoolean(conditions, "parentYN")) { |
| | | condition.setParentYN(true); |
| | | } |
| | | |
| | | return condition; |
| | |
| | | this.endCompleteDate = endCompleteDate; |
| | | } |
| | | |
| | | public String getBeginDateRange() { |
| | | return beginDateRange; |
| | | } |
| | | |
| | | public void setBeginDateRange(String beginDateRange) { |
| | | this.beginDateRange = beginDateRange; |
| | | } |
| | | |
| | | public String getEndDateRange() { |
| | | return endDateRange; |
| | | } |
| | | |
| | | public void setEndDateRange(String endDateRange) { |
| | | this.endDateRange = endDateRange; |
| | | } |
| | | |
| | | public Integer getPage() { |
| | | return page; |
| | | } |
| | |
| | | |
| | | public void setDeep(String deep) { |
| | | this.deep = deep; |
| | | } |
| | | |
| | | public String getIsApi() { |
| | | return isApi; |
| | | } |
| | | |
| | | public void setIsApi(String isApi) { |
| | | this.isApi = isApi; |
| | | } |
| | | |
| | | public List<Long> getProjectIds() { |
| | |
| | | public void setMyDepartmentIds(List<Long> myDepartmentIds) { |
| | | this.myDepartmentIds = myDepartmentIds; |
| | | } |
| | | |
| | | public Boolean getHideDownIssue() { |
| | | return hideDownIssue; |
| | | } |
| | | |
| | | public void setHideDownIssue(Boolean hideDownIssue) { |
| | | this.hideDownIssue = hideDownIssue; |
| | | } |
| | | |
| | | public Boolean getHideCompleteIssue() { |
| | | return hideCompleteIssue; |
| | | } |
| | | |
| | | public void setHideCompleteIssue(Boolean hideCompleteIssue) { |
| | | this.hideCompleteIssue = hideCompleteIssue; |
| | | } |
| | | |
| | | public Boolean getTree() { |
| | | return isTree; |
| | | } |
| | | |
| | | public void setTree(Boolean tree) { |
| | | isTree = tree; |
| | | } |
| | | |
| | | public Pageable getRelPageable() { |
| | | return relPageable; |
| | | } |
| | | |
| | | public void setRelPageable(Pageable relPageable) { |
| | | this.relPageable = relPageable; |
| | | } |
| | | |
| | | public Pageable getDownPageable() { |
| | | return downPageable; |
| | | } |
| | | |
| | | public void setDownPageable(Pageable downPageable) { |
| | | this.downPageable = downPageable; |
| | | } |
| | | |
| | | public Boolean getAllIssue() { |
| | | return allIssue; |
| | | } |
| | | |
| | | public void setAllIssue(Boolean allIssue) { |
| | | this.allIssue = allIssue; |
| | | } |
| | | |
| | | public Long getIssueTypeId() { |
| | | return issueTypeId; |
| | | } |
| | | |
| | | public void setIssueTypeId(Long issueTypeId) { |
| | | this.issueTypeId = issueTypeId; |
| | | } |
| | | |
| | | public Boolean getParentYN() { |
| | | return parentYN; |
| | | } |
| | | |
| | | public void setParentYN(Boolean parentYN) { |
| | | this.parentYN = parentYN; |
| | | } |
| | | } |