OWL ITS + 탐지시스템(인터넷 진흥원)
wyu
2021-11-26 0509eeb6d6417f20aabe54295512384be707ff9d
테이블 표시 설정 기능 확장 [프론트]
9개 파일 변경됨
69 ■■■■ 파일 변경됨
src/main/java/kr/wisestone/owl/repository/IssueTableConfigRepository.java 8 ●●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java 14 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/scripts/app/customField/customFieldModify.controller.js 1 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/scripts/app/issue/issueAddDownTableConfig.controller.js 3 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/scripts/app/issue/issueAddRelationTableConfig.controller.js 3 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/scripts/app/issue/issueAddTableConfig.controller.js 5 ●●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/scripts/app/issue/issueDetail.controller.js 6 ●●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/scripts/app/issue/issueList.controller.js 16 ●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/webapp/scripts/config.js 13 ●●●●● 패치 | 보기 | raw | blame | 히스토리
src/main/java/kr/wisestone/owl/repository/IssueTableConfigRepository.java
@@ -4,9 +4,11 @@
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.repository.query.Param;
public interface IssueTableConfigRepository extends JpaRepository<IssueTableConfig, Long> {
    IssueTableConfig findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(@Param("userId") Long userId, @Param("workspaceId") Long workspaceId, @Param("issueTypeId") Long issueTypeId, @Param("issueTableType") int issueTableType);
import java.util.List;
    IssueTableConfig findByIssueTypeIdAndIssueTableType(@Param("issueTypeId") Long issueTypeId, @Param("issueTableType") int issueTableType);
public interface IssueTableConfigRepository extends JpaRepository<IssueTableConfig, Long> {
    List<IssueTableConfig> findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(@Param("userId") Long userId, @Param("workspaceId") Long workspaceId, @Param("issueTypeId") Long issueTypeId, @Param("issueTableType") int issueTableType);
    List<IssueTableConfig> findByIssueTypeIdAndIssueTableType(@Param("issueTypeId") Long issueTypeId, @Param("issueTableType") int issueTableType);
}
src/main/java/kr/wisestone/owl/service/impl/IssueTableConfigServiceImpl.java
@@ -16,6 +16,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
@Service
@@ -88,15 +89,24 @@
    @Override
    @Transactional(readOnly = true)
    public IssueTableConfig findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(Long issueTypeId, int issueTableType) {
        return this.issueTableConfigRepository.findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(this.webAppUtil.getLoginId(),
        List<IssueTableConfig> issueTableConfigList = this.issueTableConfigRepository.findByUserIdAndWorkspaceIdAndIssueTypeIdAndIssueTableType(this.webAppUtil.getLoginId(),
                this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId(), issueTypeId, issueTableType);
        if (issueTableConfigList != null && issueTableConfigList.size() > 0) {
            return  issueTableConfigList.get(0);
        }
        return null;
    }
    //이슈타입 Id와 IssueTableType 조회
    @Override
    @Transactional(readOnly = true)
    public IssueTableConfig findByIssueTypeIdAndIssueTableType(Long issueTypeId, int issueTableType) {
        return this.issueTableConfigRepository.findByIssueTypeIdAndIssueTableType(issueTypeId, issueTableType);
        List<IssueTableConfig> issueTableConfigs = this.issueTableConfigRepository.findByIssueTypeIdAndIssueTableType(issueTypeId, issueTableType);
        if (issueTableConfigs != null && issueTableConfigs.size() > 0){
            return issueTableConfigs.get(0);
        }
        return  null;
    }
    // detail 중복 코드 제거
src/main/webapp/scripts/app/customField/customFieldModify.controller.js
@@ -93,6 +93,7 @@
                    if ($scope.vm.form.customFieldType === "INPUT") {
                        return;
                    }
                    // $scope.vm.form.customFieldType == "NUMBER" 존재한다
                    var duplication = false;
                    //  해시 태그는 입력 금지 - 공백 치환
src/main/webapp/scripts/app/issue/issueAddDownTableConfig.controller.js
@@ -78,7 +78,7 @@
                    $rootScope.spinner = true;
                    var content = {
                        issueTypeId : parameter.issueTypeId,
                        issueTypeId : $rootScope.getCurrentIssueTypeId(),
                        issueTableConfigs : JSON.stringify($scope.vm.issueDownTableConfigs)
                    };
@@ -132,6 +132,7 @@
                    var content = {
                        issueId : $rootScope.currentDetailIssueId,
                        delValue : $scope.vm.issueDownTableConfigs.splice(6,1),
                        issueTypeId : $rootScope.getCurrentIssueTypeId(),
                        issueTableConfigs : JSON.stringify($scope.vm.issueDownTableConfigs)
                    };
src/main/webapp/scripts/app/issue/issueAddRelationTableConfig.controller.js
@@ -79,7 +79,7 @@
                    $rootScope.spinner = true;
                    var content = {
                        issueTypeId : parameter.issueTypeId,
                        issueTypeId : $rootScope.getCurrentIssueTypeId(),
                        issueTableConfigs : JSON.stringify($scope.vm.issueRelTableConfigs)
                    };
@@ -133,6 +133,7 @@
                    var content = {
                        issueId : $rootScope.currentDetailIssueId,
                        issueTypeId : $rootScope.getCurrentIssueTypeId(),
                        delValue : $scope.vm.issueRelTableConfigs.splice(6,1),
                        issueTableConfigs : JSON.stringify($scope.vm.issueRelTableConfigs)
                    };
src/main/webapp/scripts/app/issue/issueAddTableConfig.controller.js
@@ -83,7 +83,7 @@
                    $rootScope.spinner = true;
                    var content = {
                        issueTypeId : parameter.issueTypeId,
                        issueTypeId : $rootScope.getCurrentIssueTypeId(),
                        issueTableConfigs : JSON.stringify($scope.vm.issueTableConfigs)
                    };
@@ -132,7 +132,8 @@
                var content = {
                    delValue : $scope.vm.issueTableConfigs.splice(7,1),
                    issueTableConfigs : JSON.stringify($scope.vm.issueTableConfigs)
                    issueTableConfigs : JSON.stringify($scope.vm.issueTableConfigs),
                    issueTypeId : $rootScope.getCurrentIssueTypeId()
                };
                //  이슈 목록 테이블 설정 정보를 가져온다.
                function getIssueAddTableConfigs() {
src/main/webapp/scripts/app/issue/issueDetail.controller.js
@@ -462,7 +462,8 @@
                // 연관 이슈 상세 조회
                function getRelTableConfigs() {
                    var content = {
                        issueId : $scope.vm.viewer.id
                        issueId : $scope.vm.viewer.id,
                        issueTypeId : $rootScope.getCurrentIssueTypeId()
                    };
                    IssueTableConfig.relationDetail($resourceProvider.getContent(
@@ -526,7 +527,8 @@
                // 하위 이슈 상세 조회
                function getDownTableConfigs() {
                    var content = {
                        issueId : $scope.vm.viewer.id
                        issueId : $scope.vm.viewer.id,
                        issueTypeId : $rootScope.getCurrentIssueTypeId()
                    };
                    IssueTableConfig.downDetail($resourceProvider.getContent(
src/main/webapp/scripts/app/issue/issueList.controller.js
@@ -466,6 +466,7 @@
                    // 메뉴에서 선택된 이슈 유형을 기본으로 추가
                    if ($rootScope.issueTypeMenu != null) {
                        // $scope.vm.pageTitle = $rootScope.issueTypeMenu.name;
                        $scope.vm.search.issueTypeIds = [];
                        $scope.vm.search.issueTypeIds.push({
                            fieldKey : $rootScope.issueTypeMenu.id,
                            fieldValue : $rootScope.issueTypeMenu.name
@@ -491,11 +492,14 @@
                        $resourceProvider.getPageContent(currentPage, $scope.vm.page.selectedPageRowCount))).then(function (result) {
                        if (result.data.message.status === "success") {
                            if (result.data.data !=  null && result.data.data.length > 0) {
                            $scope.vm.issueTypeId = result.data.data[0].issueTypeId;
                            $scope.vm.page.selectedPage = currentPage + 1;
                            $scope.vm.responseData = result.data;
                            if (detail) {
                                changeDetailView(result.data.data[0].id);
                                }
                            }
                        }
                        else {
@@ -819,10 +823,16 @@
                }
                //  사용자 이슈 목록 테이블 설정 값을 가져와서 적용한다.
                function getIssueTableConfigs() {
                    var deferred = $q.defer();
                    IssueTableConfig.detail($resourceProvider.getContent({},
                    if ($rootScope.issueTypeMenu != null){
                        var content = {
                            issueTypeId : $rootScope.issueTypeMenu.id
                            }
                        IssueTableConfig.detail($resourceProvider.getContent(content,
                        $resourceProvider.getPageContent(0, 1000))).then(function (result) {
                        if (result.data.message.status !== "success") {
                            SweetAlert.error($filter("translate")("issue.failedToIssueTableColumnLookup"), result.data.message.message); // 이슈 테이블 컬럼 조회 실패
@@ -830,10 +840,10 @@
                        deferred.resolve(result.data.data);
                    });
                    }
                    return deferred.promise;
                }
                //  최초 실행
                function startExecute() {
                    // 파라미터 읽기
@@ -841,6 +851,7 @@
                    if ($rootScope.isDefined(params)) {
                        $rootScope.$broadcast("makeIssueSearch", {  projectKey : params.projectKey, issueNumber : params.issueNumber });
                        $rootScope.previousGetParams = null;
                        $rootScope.issueTypeId = $rootScope.issueTypeMenu.id;
                        return;
                    }
@@ -906,6 +917,7 @@
                $scope.fn.startExecute();
            }
        ]);
    }
);
src/main/webapp/scripts/config.js
@@ -130,6 +130,7 @@
                    return true;
                };
                //  이슈 생성, 수정에서 다중 선택, 단일 선택 옵션에 체크되게 해주는 기능
                $rootScope.selectOption = function (useValues, value) {
                    var result = false;
@@ -250,6 +251,18 @@
                    "USER_PERMISSION_MNG_GUIDE" : 2,
                };
                // 현재 선택된 이슈 타입 아이디 가져오기
                $rootScope.getCurrentIssueTypeId = function () {
                    return $rootScope.issueTypeMenu != null ? $rootScope.issueTypeMenu.id : null;
                }
                // 현재 선택된 이슈 타입 변경하기
                $rootScope.setCurrentIssueTypeId = function (issueTypeVo) {
                    if($rootScope.issueTypeMenu !== issueTypeVo) {
                        $rootScope.issueTypeMenu = issueTypeVo;
                    }
                }
                //  권한을 확인한다
                $rootScope.checkMngPermission = function (userPermission) {
                    if (!$rootScope.isDefined($rootScope.user)) {