'use strict'; define(['app', 'angular'], function (app, angular) { app.directive('downColumnGenerator', ['$compile', '$log', '$rootScope', '$downProvider', '$filter', function ($compile, $log, $rootScope, $downProvider, $filter) { return { restrict : "A", compile : function (tElement, tAttrs) { return function (scope, element, attrs) { scope.data = scope[attrs["downColumnGenerator"]]; var myData = scope.data; var makeTag = ""; scope.tableConfigs.forEach(function (tableConfig, index) { if (tableConfig.colSpan > 0) { return; } // 하위 단계 표시 추가 var myToken = ""; if ( scope.data.depth > 0) { for(var i=0; i'; if (tableConfig.dType === "checkbox") { // 체크 박스일때 /*if (scope.data.defaultYn) { makeTag += ''; } else {*/ makeTag += ''; //} tableConfig.hChecked = false; } else if (tableConfig.dType === "radio") { // 라디오 버튼일때 makeTag += ''; } else if (tableConfig.dType === "renderer") { // 랜더러 일때 switch (tableConfig.dRenderer) { // 하위 이슈 이동(제목) case "ISSUE_DOWN_MOVE" : makeTag += "" + scope.data.title + ""; break; // 하위 이슈 타입 case "ISSUE_DOWN_STATUS_TYPE" : makeTag += "" + scope.data.issueStatusVo.name + ""; break; // 하위 이슈 삭제 case "ISSUE_DOWN_DELETE": if (scope.data.modifyPermissionCheck) { makeTag += ''; } break; // 하위 이슈 우선 순위 case "DOWN_COMMON_PRIORITY" : makeTag += ""; break; // 하위 이슈 중요도 case "DOWN_COMMON_SEVERITY" : makeTag += ""; break; // 하위 이슈 담당부서 case "DOWN_ISSUE_DEPARTMENT" : makeTag += ""; break; // 하위 이슈 등록자 case "DOWN_REGISTER": scope.data.registerVos = [scope.data.registerVo]; makeTag += '
'; break; // 하위 이슈 기간 case "DOWN_ISSUE_DUE_DATE" : if (!$rootScope.isDefined(scope.data.startDate) && !$rootScope.isDefined(scope.data.completeDate)) { makeTag += "기간 없음"; } else { makeTag += "" + scope.data.startDate + " ~ " + scope.data.completeDate + ""; } break; // 하위 이슈 사용자 정의 필드 case "DOWN_ISSUE_CUSTOM_FIELD_VALUE_VIEW" : var values = []; for (var count in scope.data.issueCustomFieldValueVos) { var issueCustomFieldValueVo = scope.data.issueCustomFieldValueVos[count]; // 테이블 설정에서 dName 부분에 사용자 정의 필드 id 를 넣고 해당 값을 추출한다. if (tableConfig.columnHint.id == issueCustomFieldValueVo.customFieldVo.id) { values.push(issueCustomFieldValueVo.useValue); } } angular.forEach(values, function (value) { makeTag += '' + value + '
'; }); break; } } makeTag += ''; var linkFn = $compile(makeTag); var content = linkFn(scope); element.append(content); }); } } } }]); });