OWL ITS + 탐지시스템(인터넷 진흥원)
- 이슈 상태명 특수문자 입력 가능하도록 수정
- 이슈유형 리스트에서 파트너 정보 보여주기
8개 파일 변경됨
59 ■■■■ 파일 변경됨
src/main/java/kr/wisestone/owl/service/impl/IssueTypeServiceImpl.java 20 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/java/kr/wisestone/owl/vo/IssueTypeVo.java 9 ●●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/resources/mybatis/query-template/issueType-template.xml 3 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js 11 ●●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/i18n/ko/global.json 1 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/scripts/app/issueType/issueTypeList.controller.js 7 ●●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/views/issueStatus/issueStatusAdd.html 4 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/views/issueStatus/issueStatusModify.html 4 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/java/kr/wisestone/owl/service/impl/IssueTypeServiceImpl.java
@@ -247,9 +247,6 @@
        Long totalCount = this.issueTypeMapper.count(condition);
        int totalPage = (int) Math.ceil((totalCount - 1) / pageable.getPageSize()) + 1;
        List<IssueTypeVo> issueTypeVos = ConvertUtil.convertListToListClass(results, IssueTypeVo.class);
//        for (IssueTypeVo issueTypeVo : issueTypeVos) {
//
//        }
        //  이슈 유형에 연결된 워크플로우 정보를 셋팅한다.
        if (condition.getDeep() != null) {
@@ -261,6 +258,7 @@
        /*this.setUseIssueTypeByCompanyField(issueTypeVos);
        this.setUseIssueTypeByIspField(issueTypeVos);
        this.setUseIssueTypeByHostingField(issueTypeVos);*/
        this.setUsePartner(issueTypeVos);
        resJsonData.put(Constants.REQ_KEY_PAGE_VO, new ResPage(pageable.getPageNumber(), pageable.getPageSize(),
                totalPage, totalCount));
@@ -287,6 +285,22 @@
        }
    }
    //  이슈 유형에 연결된 파트너 정보를 셋팅한다.
    private void setUsePartner(List<IssueTypeVo> issueTypeVos) {
        for (IssueTypeVo issueTypeVo : issueTypeVos) {
            List<UsePartnerVo> usePartnerVos = Lists.newArrayList();
            if (issueTypeVo.getUsePartners() != null) {
                for (Integer usePartner : UsePartner.partners) {// 1 // 2 // 4
                    UsePartnerVo usePartnerVo = UsePartner.checkUsePartner(issueTypeVo.getUsePartners(), usePartner);//3, 1 / 3, 2 / 3, 4
                    if (usePartnerVo != null) {
                        usePartnerVos.add(usePartnerVo);
                    }
                }
                issueTypeVo.setUsePartnerVos(usePartnerVos);
            }
        }
    }
    //  이슈 유형에 연결된 프로젝트 정보를 셋팅한다.
    private void setUseIssueTypeByProject(List<IssueTypeVo> issueTypeVos) {
        for (IssueTypeVo issueTypeVo : issueTypeVos) {
src/main/java/kr/wisestone/owl/vo/IssueTypeVo.java
@@ -17,6 +17,7 @@
    private ProjectVo projectVo;
    private IssueStatusVo completeIssueStatusVo;
    private Integer usePartners;
    private List<UsePartnerVo> usePartnerVos = Lists.newArrayList();
    private Boolean modifyPermissionCheck = Boolean.TRUE;   //  이슈 유형은 모든 사람들이 수정, 삭제할 수 있어서 기본 값이 True
@@ -94,4 +95,12 @@
    public void setCompleteIssueStatusVo(IssueStatusVo completeIssueStatusVo) {
        this.completeIssueStatusVo = completeIssueStatusVo;
    }
    public Integer getUsePartners() {
        return usePartners;
    }
    public void setUsePartners(Integer usePartners) {
        this.usePartners = usePartners;
    }
}
src/main/resources/mybatis/query-template/issueType-template.xml
@@ -9,7 +9,8 @@
        it.name as name,
        it.description as description,
        it.color as color,
        it.project_id as projectId
        it.project_id as projectId,
        it.use_partner AS usePartners
        FROM
        issue_type it
        INNER JOIN workspace ws on it.workspace_id = ws.id
src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js
@@ -92,6 +92,17 @@
                                                }
                                            break;
                                        //  사용 파트너 이름(이슈 유형 리스트에서 사용)
                                        case "USE_PARTNERS" :
                                            if (scope.data.usePartnerVos != null) {
                                                var usePartners = [];
                                                for (var i=0; i<scope.data.usePartnerVos.length; i++) {
                                                    usePartners.push(scope.data.usePartnerVos[i].byName);
                                                }
                                                makeTag += "<span>" + usePartners + "</span>";
                                            }
                                            break;
                                        //  프로젝트 목록에서 사용자 정의 필드 설정 표시
                                        case "CUSTOM_FIELD_CONFIG" :
                                            //  관리자만 수정할 수 있다.
src/main/webapp/i18n/ko/global.json
@@ -356,6 +356,7 @@
        "normalList" : "이슈 목록",
        "timeLine" : "타임 라인",
        "useProjects" : "사용 프로젝트",
        "usePartners" : "사용 파트너",
        "companyInfo" : "업체/ISP/호스팅",
        "downIssue": "하위 이슈",
        "downIssueTitle": "하위 이슈 제목",
src/main/webapp/scripts/app/issueType/issueTypeList.controller.js
@@ -70,6 +70,13 @@
                        .setDAlign("text-center")
                        .setDRenderer("PROJECT_BASIC_NAME"));
                    $scope.vm.tableConfigs.push($tableProvider.config()
                        .setHName("issue.usePartners")
                        .setHWidth("bold")
                        .setDType("renderer")
                        .setDName("partners")
                        .setDAlign("text-center")
                        .setDRenderer("USE_PARTNERS"));
                    $scope.vm.tableConfigs.push($tableProvider.config()
                        .setHName("common.color")
                        .setHWidth("width-140-p bold")
                        .setDType("renderer")
src/main/webapp/views/issueStatus/issueStatusAdd.html
@@ -18,7 +18,7 @@
                       class="form-control"
                       autofocus
                       kr-input
                       input-regex="[^a-zA-Z0-9 가-힣ㄱ-ㅎㅏ-ㅣ\u318D\u119E\u11A2\u2022\u2025a\u00B7\uFE55]"
                       input-regex="/[^?a-zA-Z0-9/]/"
                       autocomplete="off"
                       maxlength="20"
                       ng-model="vm.form.name"
@@ -27,7 +27,7 @@
                <small ng-show="issueStatusAddForm.name.$error.maxlength" class="help-block form-text text-danger" translate="common.upTo20Characters">
                    최대 20글자까지 입력할 수 있습니다.
                </small>
                <small translate="managementStatus.limitNameToSpecialCharacters">이슈 상태 명은 특수 문자를 입력할 수 없습니다.</small>
                <!--<small translate="managementStatus.limitNameToSpecialCharacters">이슈 상태 명은 특수 문자를 입력할 수 없습니다.</small>-->
            </div>
            <div class="form-group">
src/main/webapp/views/issueStatus/issueStatusModify.html
@@ -18,7 +18,7 @@
                       class="form-control"
                       autofocus
                       autocomplete="off"
                       input-regex="[^a-zA-Z0-9 가-힣ㄱ-ㅎㅏ-ㅣ\u318D\u119E\u11A2\u2022\u2025a\u00B7\uFE55]"
                       input-regex="/[^?a-zA-Z0-9/]/"
                       ng-model="vm.form.name"
                       maxlength="20"
                       kr-input
@@ -30,7 +30,7 @@
                <div class="help-block form-text text-danger" ng-show="vm.form.useYn" translate="managementStatus.useInTheWorkflow">
                    워크플로우에서 이슈 상태가 사용중입니다. 이름 변경시 이슈 상태를 사용하는 모든 워크플로우에 이슈 상태 명이 변경됩니다.
                </div>
                <small translate="managementStatus.limitNameToSpecialCharacters">이슈 상태 명은 특수 문자를 입력할 수 없습니다.</small>
                <!--<small translate="managementStatus.limitNameToSpecialCharacters">이슈 상태 명은 특수 문자를 입력할 수 없습니다.</small>-->
            </div>
            <div class="form-group">