From 4e53686d72fa1577bba7bf166f56256a67299b28 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 수, 24 11월 2021 13:27:32 +0900 Subject: [PATCH] 이슈목록 전체검색 가능한 기능 추가 --- src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java | 7 ------- src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java | 9 +++++++++ src/main/resources/mybatis/query-template/issue-template.xml | 15 +++++++++++++++ 3 files changed, 24 insertions(+), 7 deletions(-) diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java index ac137a7..7351c18 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java @@ -573,13 +573,6 @@ // �궗�슜�옄 �젙�쓽 �븘�뱶 �젙蹂� 異붽� this.setIssueCustomFieldValue(issueVos, issueCondition); - // �뾽泥� �젙蹂� 異붽� - //this.setIssueCompanyField(issueVos, issueCondition); - // ISP �젙蹂� 異붽� - //this.setIssueIspField(issueVos, issueCondition); - // HOSTING �젙蹂� 異붽� - //this.setIssueHostingField(issueVos, issueCondition); - } // 寃��깋 議곌굔�쓣 留뚮뱺�떎 diff --git a/src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java b/src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java index 2399de7..0ecc5fb 100644 --- a/src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java +++ b/src/main/java/kr/wisestone/owl/web/condition/IssueCondition.java @@ -43,6 +43,7 @@ private List<Long> departmentIds = Lists.newArrayList(); private List<Long> registerIds = Lists.newArrayList(); private List<String> issueIds = Lists.newArrayList(); // �씠�뒋 紐⑸줉 寃��깋�뿉�꽌 �궗�슜�옄 �젙�쓽 �븘�뱶濡� 1李� 寃��깋�븳 寃곌낵瑜� �떞�쓣�븣 �궗�슜 + private List<String> userCustomFields = Lists.newArrayList(); private List<Map<String, Object>> issueCustomFields = Lists.newArrayList(); private List<Map<String, Object>> issueCompanyField = Lists.newArrayList(); private List<Map<String, Object>> issueIspField = Lists.newArrayList(); @@ -453,4 +454,12 @@ public void setParentIssueId(Long parentIssueId) { this.parentIssueId = parentIssueId; } + + public List<String> getUserCustomFields() { + return userCustomFields; + } + + public void setUserCustomFields(List<String> userCustomFields) { + this.userCustomFields = userCustomFields; + } } diff --git a/src/main/resources/mybatis/query-template/issue-template.xml b/src/main/resources/mybatis/query-template/issue-template.xml index e2a058d..7f2c8b5 100644 --- a/src/main/resources/mybatis/query-template/issue-template.xml +++ b/src/main/resources/mybatis/query-template/issue-template.xml @@ -31,6 +31,7 @@ severity.id as severityId, severity.name as severityName, severity.color as severityColor, + issue_custom.use_value AS useValue, IFNULL(temp_attached_file.attachedFileCount, 0) as attachedFileCount, IFNULL(temp_issue_comment.issueCommentCount, 0) as issueCommentCount FROM issue issue FORCE INDEX(reverseIndex) @@ -40,6 +41,7 @@ INNER JOIN issue_type issue_type FORCE INDEX(PRIMARY) ON issue.issue_type_id = issue_type.id INNER JOIN priority priority FORCE INDEX(PRIMARY) ON issue.priority_id = priority.id INNER JOIN severity severity FORCE INDEX(PRIMARY) ON issue.severity_id = severity.id + LEFT OUTER JOIN issue_custom_field_value issue_custom FORCE INDEX(issueIdIndex) ON issue.id = issue_custom.issue_id LEFT OUTER JOIN issue_department issued FORCE INDEX(issueIdIndex) ON issue.id = issued.issue_id LEFT OUTER JOIN issue_user issue_user FORCE INDEX(issueIdIndex) ON issue.id = issue_user.issue_id LEFT OUTER JOIN (SELECT issue_id, COUNT(id) as attachedFileCount FROM attached_file GROUP BY issue_id) @@ -50,6 +52,19 @@ WHERE 1=1 <if test="title != null and !title.equals('') "> AND issue.title like CONCAT('%',#{title},'%') + OR issue.description like CONCAT('%',#{title},'%') + OR issue.start_date like CONCAT('%',#{title},'%') + OR issue.complete_date like CONCAT('%',#{title},'%') + OR issue.issue_number like CONCAT('%',#{title},'%') + OR issue.register_date like CONCAT('%',#{title},'%') + OR project.name like CONCAT('%',#{title},'%') + OR project.project_key like CONCAT('%',#{title},'%') + OR issue_type.name like CONCAT('%',#{title},'%') + OR issue_status.issue_status_type like CONCAT('%',#{title},'%') + OR issue_status.name like CONCAT('%',#{title},'%') + OR priority.name like CONCAT('%',#{title},'%') + OR severity.name like CONCAT('%',#{title},'%') + OR issue_custom.use_value like CONCAT('%',#{title},'%') </if> <if test="description != null and !description.equals('')"> -- Gitblit v1.8.0