src/main/webapp/custom_components/js-html-diff/js-html-diff.directive.js
@@ -413,6 +413,12 @@ switch (issueTypeCustomField.customFieldVo.customFieldType) { case "INPUT" : case "SINGLE_SELECT" : case "NUMBER" : case "DATETIME" : case "IP_ADDRESS" : case "EMAIL" : case "SITE" : case "TEL" : issueTypeCustomField.target = ""; issueTypeCustomField.next = ""; break; @@ -421,31 +427,6 @@ issueTypeCustomField.target = []; issueTypeCustomField.next = []; break; case "NUMBER" : issueTypeCustomField.target = ""; issueTypeCustomField.next = ""; break case "DATETIME" : issueTypeCustomField.target = ""; issueTypeCustomField.next = ""; break case "IP_ADDRESS" : issueTypeCustomField.target = ""; issueTypeCustomField.next = ""; break case "EMAIL" : issueTypeCustomField.target = ""; issueTypeCustomField.next = ""; break case "SITE" : issueTypeCustomField.target = ""; issueTypeCustomField.next = ""; break case "TEL" : issueTypeCustomField.target = ""; issueTypeCustomField.next = ""; break } $scope.vm.customFieldVos.push(issueTypeCustomField); src/main/webapp/scripts/app/customField/customFieldAdd.controller.js
@@ -127,7 +127,7 @@ } }); //content.defaultValue = convertDefaultValues; content.defaultValue = convertDefaultValues; } CustomField.add($resourceProvider.getContent( src/main/webapp/scripts/app/issue/issueAdd.controller.js
@@ -689,6 +689,12 @@ angular.forEach(result.data.data, function (issueTypeCustomField) { switch (issueTypeCustomField.customFieldVo.customFieldType) { case "INPUT" : case "NUMBER" : case "DATETIME" : case "IP_ADDRESS" : case "EMAIL" : case "SITE" : case "TEL" : issueTypeCustomField.useValues = issueTypeCustomField.customFieldVo.defaultValue; break; case "SINGLE_SELECT" : @@ -705,30 +711,6 @@ }); } }); break; case "NUMBER" : issueTypeCustomField.useValues = issueTypeCustomField.customFieldVo.defaultValue; break; case "DATETIME" : issueTypeCustomField.useValues = issueTypeCustomField.customFieldVo.defaultValue; break; case "IP_ADDRESS" : issueTypeCustomField.useValues = issueTypeCustomField.customFieldVo.defaultValue; break; case "EMAIL" : issueTypeCustomField.useValues = issueTypeCustomField.customFieldVo.defaultValue; break; case "SITE" : issueTypeCustomField.useValues = issueTypeCustomField.customFieldVo.defaultValue; break; case "TEL" : issueTypeCustomField.useValues = issueTypeCustomField.customFieldVo.defaultValue; break; } src/main/webapp/scripts/app/issue/issueDetail.controller.js
@@ -42,6 +42,7 @@ $scope.fn.getRelTableConfigs = getRelTableConfigs; $scope.fn.getDownTableConfigs = getDownTableConfigs; $scope.fn.containsPartner = containsPartner; $scope.fn.onActivate = onActivate; // 이슈 목록 컨트롤러 vm, fn 상속 중 $scope.vm.viewer = {}; @@ -85,6 +86,7 @@ $scope.vm.issueName = ""; // 선택된 연관 일감 이름 $scope.vm.issueId = ""; // $scope.vm.issueTypeId = ""; $scope.vm.autoCompletePage = { issue : { page : 0, @@ -110,8 +112,13 @@ function changeDetailView(issue) { // 이슈 번호를 저장한 후 이슈 목록으로 이동한다. // $rootScope.$broadcast("makeIssueSearch", issue); //$rootScope.$broadcast("makeIssueSearch",issue); $scope.$parent.tableEvent.changeDetailView(issue.id); $scope.fn.onActivate(); } function onActivate() { window.scroll(0,240); } angular.extend(this, $controller('autoCompleteController', {$scope : $scope, $injector : $injector})); @@ -279,14 +286,6 @@ .setDAlign("text-center") .setDName("modifyDate")); break; // default :"ISSUE_RELATION_DELETE" // 연관 삭제 // $scope.vm.relTableConfigs.push($tableProvider.config() // .setHName("issue.downIssueTitle") // .setDType("renderer") // .setHWidth("bold" + issueTableConfig.width) // .setHSort(false) // .setDRenderer("ISSUE_RELATION_DELETE")); // break; } // 사용자 정의 필드 컬럼 @@ -581,9 +580,6 @@ }); } // 연관 이슈 추가 function addRelationIssue() { if ($scope.vm.issueName.length == 0 || $scope.vm.form.issues.length == 0 @@ -656,6 +652,7 @@ $scope.vm.editor.issueStatus = false; $scope.vm.issueForm.issueStatusList = []; $scope.vm.issueForm.issueStatusId = ""; $scope.vm.issueTypeId = $rootScope.getCurrentIssueTypeId(); /*if ($scope.$root.$$phase !== '$apply' && $scope.$root.$$phase !== '$digest') { $scope.$apply(); }*/ @@ -807,7 +804,7 @@ $scope.fn.getDownTableConfigs(); Issue.detail($resourceProvider.getContent( {id : $scope.vm.viewer.id, deep : "02"}, {id : $scope.vm.viewer.id, deep : "02", customFields : $scope.vm.customFields}, $resourceProvider.getPageContent(0, 1))).then(function (result) { if (result.data.message.status === "success") { @@ -834,16 +831,19 @@ $scope.vm.form.issuesDown.push(result.data.data); // 연관 이슈 반복문 angular.forEach(result.data.data.issueRelationVos, function (issueRelationVo){ issueRelationVo.relationIssueTypeName = $scope.vm.relationIssueTypes[issueRelationVo.relationIssueType].name; $scope.vm.form.issues.push(issueRelationVo.issueRelation); }); if (result.data.data.issueRelationVos !== null) { angular.forEach(result.data.data.issueRelationVos, function (issueRelationVo){ issueRelationVo.relationIssueTypeName = $scope.vm.relationIssueTypes[issueRelationVo.relationIssueType].name; $scope.vm.form.issues.push(issueRelationVo.issueRelation); }); } // 하위 이슈 반목문 angular.forEach(result.data.data.issueDownVos, function (issueDownVo){ $scope.vm.form.issuesDown.push(issueDownVo.issue); }); if (result.data.data.issueDownVos !== null){ angular.forEach(result.data.data.issueDownVos, function (issueDownVo){ $scope.vm.form.issuesDown.push(issueDownVo.issue); }); } $scope.vm.viewer.issueRelationVos = result.data.data.issueRelationVos; $scope.vm.viewer.issueDownVos = result.data.data.issueDownVos; } @@ -882,35 +882,17 @@ switch (issueTypeCustomField.customFieldVo.customFieldType) { case "INPUT" : case "SINGLE_SELECT" : case "NUMBER" : case "DATETIME" : case "IP_ADDRESS" : case "EMAIL" : case "SITE" : case "TEL" : issueTypeCustomField.useValues = ""; break; case "MULTI_SELECT" : issueTypeCustomField.useValues = []; break; case "NUMBER" : issueTypeCustomField.useValues = "" break; case "DATETIME" : issueTypeCustomField.useValues = "" break; case "IP_ADDRESS" : issueTypeCustomField.useValues = "" break; case "EMAIL" : issueTypeCustomField.useValues = "" break; case "SITE" : issueTypeCustomField.useValues = "" break; case "TEL" : issueTypeCustomField.useValues = "" break; } src/main/webapp/scripts/app/issue/issueList.controller.js
@@ -103,6 +103,7 @@ }); // 검색 조건을 기억한다. - 적용 보류 // 검색 조건을 기억해서 이슈 상세 페이지로 이동 function makeVmSearchObject() { var content = { conditions : JSON.stringify({ @@ -137,10 +138,10 @@ var issueListSearchObject = JSON.parse(result.data.data); // 이슈 번호만 적용한다. - 삭제시 처리방법때문에 다른 속성은 적용 보류 $scope.vm.search = issueListSearchObject.search; $scope.vm.users = issueListSearchObject.users; $scope.vm.departments = issueListSearchObject.departments; $scope.vm.projects = issueListSearchObject.projects; $scope.vm.registers = issueListSearchObject.registers; // $scope.vm.users = issueListSearchObject.users; // $scope.vm.departments = issueListSearchObject.departments; // $scope.vm.projects = issueListSearchObject.projects; // $scope.vm.registers = issueListSearchObject.registers; $scope.fn.getPageList(0, true); } else { @@ -499,6 +500,8 @@ 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.projectKey = result.data.data[0].projectKey; $scope.vm.issueNumber = result.data.data[0].issueNumber; $scope.vm.page.selectedPage = currentPage + 1; $scope.vm.responseData = result.data; @@ -592,7 +595,7 @@ resolve : { parameter : function () { return { id : id id : id, }; } } @@ -825,6 +828,12 @@ angular.forEach(result.data.data, function (customField) { switch (customField.customFieldType) { case "INPUT" : case "NUMBER" : case "DATETIME" : case "IP_ADDRESS" : case "EMAIL" : case "SITE" : case "TEL" : customField.useValues = ""; break; @@ -833,29 +842,6 @@ customField.useValues = []; break; case "NUMBER" : customField.useValues = ""; break; case "DATETIME" : customField.useValues = ""; break; case "IP_ADDRESS" : customField.useValues = ""; break; case "EMAIL" : customField.useValues = ""; break; case "SITE" : customField.useValues = ""; break; case "TEL" : customField.useValues = ""; break; } $scope.vm.customFields.push(customField); @@ -893,6 +879,7 @@ return deferred.promise; } // 최초 실행 function startExecute() { // 파라미터 읽기 @@ -900,7 +887,7 @@ if ($rootScope.isDefined(params)) { $rootScope.$broadcast("makeIssueSearch", { projectKey : params.projectKey, issueNumber : params.issueNumber }); $rootScope.previousGetParams = null; $rootScope.issueTypeId = $rootScope.issueTypeMenu.id; // $rootScope.issueTypeId = $rootScope.issueTypeMenu.id; return; } src/main/webapp/scripts/app/issue/issueListTimeline.controller.js
@@ -313,6 +313,12 @@ angular.forEach(result.data.data, function (customField) { switch (customField.customFieldType) { case "INPUT" : case "NUMBER" : case "DATETIME" : case "IP_ADDRESS" : case "EMAIL" : case "SITE" : case "TEL" : customField.useValues = ""; break; @@ -321,29 +327,6 @@ customField.useValues = []; break; case "NUMBER" : customField.useValues = ""; break; case "DATETIME" : customField.useValues = ""; break; case "IP_ADDRESS" : customField.useValues = ""; break; case "EMAIL" : customField.useValues = ""; break; case "SITE" : customField.useValues = ""; break; case "TEL" : customField.useValues = ""; break; } $scope.vm.customFields.push(customField); src/main/webapp/scripts/app/issue/issueModify.controller.js
@@ -737,35 +737,17 @@ switch (issueTypeCustomField.customFieldVo.customFieldType) { case "INPUT" : case "SINGLE_SELECT" : case "NUMBER" : case "DATETIME" : case "IP_ADDRESS" : case "EMAIL" : case "SITE" : case "TEL" : issueTypeCustomField.useValues = ""; break; case "MULTI_SELECT" : issueTypeCustomField.useValues = []; break; case "NUMBER" : issueTypeCustomField.useValues = "" break; case "DATETIME" : issueTypeCustomField.useValues = "" break; case "IP_ADDRESS" : issueTypeCustomField.useValues = "" break; case "EMAIL" : issueTypeCustomField.useValues = "" break; case "SITE" : issueTypeCustomField.useValues = "" break; case "TEL" : issueTypeCustomField.useValues = "" break; } src/main/webapp/scripts/components/utils/issueSearchCustomFieldViewElement.directive.js
@@ -65,6 +65,12 @@ if ($rootScope.isDefined(customField.useValues)) { switch (customField.customFieldType) { case "INPUT" : case "NUMBER" : case "DATETIME" : case "IP_ADDRESS" : case "EMAIL" : case "SITE" : case "TEL" : makeTag += "<p>"; makeTag += customField.useValues; makeTag += "<span ng-click='fn.remove(" + customField.id + ")'>×</span>"; @@ -80,43 +86,6 @@ makeTag += "</p>"; }); break; case "NUMBER" : makeTag += "<p>"; makeTag += customField.useValues; makeTag += "<span ng-click='fn.remove(" + customField.id + ")'>×</span>"; makeTag += "</p>"; break; case "DATETIME" : makeTag += "<p>"; makeTag += customField.useValues; makeTag += "<span ng-click='fn.remove(" + customField.id + ")'>×</span>"; makeTag += "</p>"; break; case "IP_ADDRESS" : makeTag += "<p>"; makeTag += customField.useValues; makeTag += "<span ng-click='fn.remove(" + customField.id + ")'>×</span>"; makeTag += "</p>"; break; case "EMAIL" : makeTag += "<p>"; makeTag += customField.useValues; makeTag += "<span ng-click='fn.remove(" + customField.id + ")'>×</span>"; makeTag += "</p>"; break; case "SITE" : makeTag += "<p>"; makeTag += customField.useValues; makeTag += "<span ng-click='fn.remove(" + customField.id + ")'>×</span>"; makeTag += "</p>"; break; case "TEL" : makeTag += "<p>"; makeTag += customField.useValues; makeTag += "<span ng-click='fn.remove(" + customField.id + ")'>×</span>"; makeTag += "</p>"; break; } } src/main/webapp/views/issue/issueAdd.html
@@ -241,6 +241,60 @@ ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="NUMBER"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="DATETIME"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="IP_ADDRESS"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="EMAIL"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="SITE"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="TEL"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <!-- 단일 셀렉트 --> <div ng-switch-when="SINGLE_SELECT"> <select class="form-control input-sm issue-select-label" src/main/webapp/views/issue/issueDetail.html
@@ -205,6 +205,43 @@ <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span> </div> <div ng-switch-when="NUMBER"> <!-- 읽기 모드 --> <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span> <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span> </div> <div ng-switch-when="DATETIME"> <!-- 읽기 모드 --> <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span> <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span> </div> <div ng-switch-when="IP_ADDRESS"> <!-- 읽기 모드 --> <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span> <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span> </div> <div ng-switch-when="EMAIL"> <!-- 읽기 모드 --> <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span> <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span> </div> <div ng-switch-when="SITE"> <!-- 읽기 모드 --> <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span> <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span> </div> <div ng-switch-when="TEL"> <!-- 읽기 모드 --> <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span> <span ng-if="!$root.isDefined(issueCustomField.useValues)">-</span> </div> <!-- 단일 셀렉트 --> <div ng-switch-when="SINGLE_SELECT"> <span class="issue-detail-word-break">{{::issueCustomField.useValues}}</span> @@ -443,7 +480,7 @@ <js-autocomplete-single data-input-name="issue" selected-model="vm.form.issues" search="vm.issueName" source="fn.getIssueList(vm.issueName, vm.form.issues, vm.autoCompletePage.issue.page, fn.getIssueListCallBack)" source="fn.getIssueList(vm.issueName, vm.issueTypeId, vm.form.issues, vm.autoCompletePage.issue.page, fn.getIssueListCallBack)" page="vm.autoCompletePage.issue.page" total-page="vm.autoCompletePage.issue.totalPage" input-disabled="false" @@ -480,7 +517,7 @@ <js-autocomplete-single data-input-name="issue" selected-model="vm.form.issuesDown" search="vm.issueNameDown" source="fn.getIssueList(vm.issueNameDown, vm.form.issuesDown, vm.autoCompletePageDown.issue.page, fn.getIssueListCallBack)" source="fn.getIssueList(vm.issueNameDown, vm.issueTypeId, vm.form.issuesDown, vm.autoCompletePageDown.issue.page, fn.getIssueListCallBack)" page="vm.autoCompletePageDown.issue.page" total-page="vm.autoCompletePageDown.issue.totalPage" input-disabled="false" src/main/webapp/views/issue/issueListNormal.html
@@ -38,7 +38,9 @@ <!-- 프로젝트 --> <issue-search-array-view-element lists="vm.projects" type="'project'"></issue-search-array-view-element> <p ng-if="$root.isDefined(vm.projectKey)"> {{vm.projectKey}} </p> <!-- 이슈 타입 --> <issue-search-field-key-view-element lists="vm.issueTypes" keys="vm.search.issueTypeIds"></issue-search-field-key-view-element> @@ -48,6 +50,10 @@ keys="vm.search.issueStatusIds"></issue-search-field-key-view-element> <!-- 이슈 번호 --> <p ng-if="$root.isDefined(vm.issueNumber)"> {{vm.issueNumber}} </p> <p ng-if="$root.isDefined(vm.search.combinationIssueNumber)"> {{vm.search.combinationIssueNumber}} <span ng-click="vm.search.combinationIssueNumber = ''">×</span> @@ -163,7 +169,8 @@ autocomplete="off" kr-input maxlength="20" ng-model="vm.search.combinationIssueNumber"> ng-model="vm.issueNumber"> <!-- ng-model="vm.search.combinationIssueNumber">--> </div> </div> </div> src/main/webapp/views/issue/issueModify.html
@@ -241,6 +241,51 @@ ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="NUMBER"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="DATETIME"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="IP_ADDRESS"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="SITE"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <div ng-switch-when="TEL"> <input type="text" class="form-control input-sm" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input ng-required="issueCustomField.fieldOption == '01'"> </div> <!-- 단일 셀렉트 --> <div ng-switch-when="SINGLE_SELECT"> <select class="form-control input-sm issue-select-label"