From e50b78db2f5e74f88b7e5c736f1fca4ca3cbe29b Mon Sep 17 00:00:00 2001 From: jhjang <jhjang@maprex.co.kr> Date: 목, 25 11월 2021 10:57:04 +0900 Subject: [PATCH] - 워크플로우 담당부서 설정 기능 추가 --- src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js | 150 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 134 insertions(+), 16 deletions(-) diff --git a/src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js b/src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js index 0c53523..54617fc 100644 --- a/src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js +++ b/src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js @@ -81,6 +81,13 @@ } break; + // �봽濡쒖젥�듃 �씠由�(�봽濡쒖젥�듃 由ъ뒪�듃�뿉�꽌 �궗�슜) + case "PROJECT_BASIC_NAME" : + if (scope.data.projectVo != null) { + makeTag += "<span class='titlenameSelect'>" + myToken + scope.data.projectVo.name.replace(/</gi, '<') + "</span>"; + } + break; + // �봽濡쒖젥�듃 紐⑸줉�뿉�꽌 �궗�슜�옄 �젙�쓽 �븘�뱶 �꽕�젙 �몴�떆 case "CUSTOM_FIELD_CONFIG" : // 愿�由ъ옄留� �닔�젙�븷 �닔 �엳�떎. @@ -135,12 +142,31 @@ case "USE_DEPARTMENT_LIST" : makeTag += "<ul class='ul-not-comma'>"; - makeTag += "<div style='cursor: pointer' ng-click='event.modifyUserDepartments(scope.data.id)'>"; - angular.forEach(scope.data.departments, function (department) { //departmentVO濡� �닔�젙 泥댄겕 �븘�슂 - makeTag += "<li>" + department.fieldValue + "</li>"; - }); - makeTag += "</div>"; + if(scope.data.departmentVos != null && scope.data.departmentVos.length == 0){ //�냽�빐�엳�뒗 遺��꽌媛� �뾾�쓣 寃쎌슦 + makeTag += "<div style='cursor: pointer; color: #0066ff'' ng-click='event.modifyUserDepartments(data.id, data.userId)'>遺��꽌瑜� �꽑�깮�빐 二쇱꽭�슂.</div>"; + }else{ + makeTag += "<div style='cursor: pointer; color: #0066ff'' ng-click='event.modifyUserDepartments(data.id, data.userId)'>"; + angular.forEach(scope.data.departmentVos, function (departments) { + makeTag += "<li>" + departments.departmentName + "</li>"; + }); + makeTag += "</div>"; + } + makeTag += "</ul>"; + break; + case "WORKFLOW_DEPARTMENT_LIST" : + makeTag += "<ul class='ul-not-comma'>"; + + if(scope.data.issueStatusVos != null && scope.data.issueStatusVos.length > 0){ + makeTag += "<div>"; + angular.forEach(scope.data.issueStatusVos, function (issueStatusVo) { + let workflowDepartments = new Set(issueStatusVo.workflowDepartmentVos); + angular.forEach(workflowDepartments, function (workflowDepartmentVo) { + makeTag += "<li>" + workflowDepartmentVo.departmentVo.departmentName + "</li>"; + }); + }); + makeTag += "</div>"; + } makeTag += "</ul>"; break; @@ -150,7 +176,7 @@ // �씠�뒋 紐⑸줉�뿉�꽌 湲곌컙 �몴�떆 case "ISSUE_DUE_DATE" : if (!$rootScope.isDefined(scope.data.startDate) && !$rootScope.isDefined(scope.data.completeDate)) { - makeTag += "<span></span>"; + makeTag += "<span translate='common.noDate'>湲곌컙 �뾾�쓬</span>"; } else { makeTag += "<span>" + scope.data.startDate + " ~ " + scope.data.completeDate + "</span>"; @@ -184,24 +210,33 @@ makeTag += '</div>'; break; - case "ISSUE_DETAIL_MOVE" : - makeTag += "<a ui-sref='issues.detail({ id : " + scope.data.id + " })'><span>" + scope.data.title + "</span></a>"; - break; + /* case "ISSUE_DETAIL_MOVE" : + makeTag += "<a class='text-center' ui-sref='issues.detail({ id : " + scope.data.id + " })'><span>" + scope.data.title + "</span></a>"; + break;*/ - - // �뿰愿��씪媛� �씠�룞 + // �뿰愿� �씠�뒋 �씠�룞(�젣紐�) case "ISSUE_RELATION_MOVE" : - makeTag += "<span class=\"titlename cursor\" ng-click=\"event.changeDetailView(data.issueRelation)\">" + scope.data.title + "</span></a>"; + makeTag += "<span class=\"titlename cursor text-center\" ng-click=\"event.changeDetailView(data.issueRelation)\">" + scope.data.title + "</span></a>"; break; - // �뿰愿��씪媛� 援щ텇 + // �븯�쐞 �씠�뒋 �씠�룞(�젣紐�) + case "ISSUE_DOWN_MOVE" : + makeTag += "<span class=\"titlename cursor\" ng-click=\"event.changeDetailView(data.id)\">" + scope.data.title + "</span></a>"; + break; + + // �뿰愿��씠�뒋 援щ텇 case "ISSUE_RELATION_TYPE": makeTag += "<span>" + scope.data.relationIssueTypeName + "</span>"; break; - // �뿰愿��씪媛� �궘�젣 + // �뿰愿��씠�뒋 �궘�젣 case "ISSUE_RELATION_DELETE": makeTag += '<img class="cursor" src="/assets/images/delete-icon.png" ng-click="event.removeRelationIssue(data.id)">'; + break; + + // �븯�쐞 �씠�뒋 �궘�젣 + case "ISSUE_DOWN_DELETE": + makeTag += '<img class="cursor" src="/assets/images/delete-icon.png" ng-click="event.removeDownIssue(data.id)">'; break; // �씠由꾩쓣 �겢由��븯硫� �닔�젙 �뙘�뾽 �몴�떆 @@ -234,6 +269,75 @@ break; + // �뿰愿� �씠�뒋 �슦�꽑�닚�쐞 + case "REL_COMMON_PRIORITY" : + makeTag += "<span class='badge' ng-style='{ \"background-color\" : \"" + scope.data.priorityVo.color + "\"," + "\"border-color\"" + " : \"" + scope.data.priorityVo.color + "\", \"color\": \"#FFFFFF\" }' translate='" + scope.data.priorityVo.name + "'></span>"; + break; + + // �뿰愿� �씠�뒋 以묒슂�룄 + case "REL_COMMON_SEVERITY" : + makeTag += "<span class='badge' ng-style='{ \"background-color\" : \"" + scope.data.severityVo.color + "\"," + "\"border-color\"" + " : \"" + scope.data.severityVo.color + "\", \"color\": \"#FFFFFF\" }' translate='" + scope.data.severityVo.name + "'></span>"; + break; + + case "REL_REGISTER": + scope.data.registerVos = [scope.data.issueRelation.registerVo]; + makeTag += '<div owl-profile-over class="" table-user-image="data" target="registerVos"></div>'; + break; + + break; + + case "REL_ISSUE_DEPARTMENT" : + makeTag += "<ul class='ul-not-comma'>"; + makeTag += "<div style='color: #000000'>"; + angular.forEach(scope.data.issueRelation.departmentVos, function (departments) { + makeTag += "<li>" + departments.departmentName + "</li>"; + }); + makeTag += "</div>"; + makeTag += "</ul>"; + break; + + // �뿰愿� �씠�뒋 紐⑸줉�뿉�꽌 湲곌컙 �몴�떆 + case "REL_ISSUE_DUE_DATE" : + if (!$rootScope.isDefined(scope.data.issueRelation.startDate) && !$rootScope.isDefined(scope.data.issueRelation.completeDate)) { + makeTag += "<span translate='common.noDate'>湲곌컙 �뾾�쓬</span>"; + } + else { + makeTag += "<span>" + scope.data.issueRelation.startDate + " ~ " + scope.data.issueRelation.completeDate + "</span>"; + } + break; + + case "DOWN_COMMON_PRIORITY" : + makeTag += "<span class='badge' ng-style='{ \"background-color\" : \"" + scope.data.priorityVo.color + "\"," + "\"border-color\"" + " : \"" + scope.data.priorityVo.color + "\", \"color\": \"#FFFFFF\" }' translate='" + scope.data.priorityVo.name + "'></span>"; + break; + + case "DOWN_COMMON_SEVERITY" : + makeTag += "<span class='badge' ng-style='{ \"background-color\" : \"" + scope.data.severityVo.color + "\"," + "\"border-color\"" + " : \"" + scope.data.severityVo.color + "\", \"color\": \"#FFFFFF\" }' translate='" + scope.data.severityVo.name + "'></span>"; + break; + + case "DOWN_ISSUE_DEPARTMENT" : + makeTag += "<ul class='ul-not-comma'>"; + makeTag += "<div style='color: #000000'>"; + angular.forEach(scope.data.departmentVos, function (departments) { + makeTag += "<li>" + departments.departmentName + "</li>"; + }); + makeTag += "</div>"; + makeTag += "</ul>"; + break; + + case "DOWN_REGISTER": + scope.data.registerVos = [scope.data.registerVo]; + makeTag += '<div owl-profile-over class="" table-user-image="data" target="registerVos"></div>'; + break; + + case "DOWN_ISSUE_DUE_DATE" : + if (!$rootScope.isDefined(scope.data.startDate) && !$rootScope.isDefined(scope.data.completeDate)) { + makeTag += "<span translate='common.noDate'>湲곌컙 �뾾�쓬</span>"; + } + else { + makeTag += "<span>" + scope.data.startDate + " ~ " + scope.data.completeDate + "</span>"; + } + break; + case "COMMON_PRIORITY" : makeTag += "<span class='badge' ng-style='{ \"background-color\" : \"" + scope.data.priorityColor + "\"," + "\"border-color\"" + " : \"" + scope.data.priorityColor + "\", \"color\": \"#FFFFFF\" }' translate='" + scope.data.priorityName + "'></span>"; break; @@ -242,13 +346,23 @@ makeTag += "<span class='badge' ng-style='{ \"background-color\" : \"" + scope.data.severityColor + "\"," + "\"border-color\"" + " : \"" + scope.data.severityColor + "\", \"color\": \"#FFFFFF\" }' translate='" + scope.data.severityName + "'></span>"; break; + case "ISSUE_DEPARTMENT" : + makeTag += "<ul class='ul-not-comma'>"; + makeTag += "<div style='color: #000000'>"; + angular.forEach(scope.data.departmentVos, function (departments) { + makeTag += "<li>" + departments.departmentName + "</li>"; + }); + makeTag += "</div>"; + makeTag += "</ul>"; + break; + case "ISSUE_USER" : makeTag += '<div owl-profile-over class="" table-user-image="data" target="userVos"></div>'; break; case "REGISTER" : - scope.data.registsrVos = [scope.data.registerVo]; - makeTag += '<div owl-profile-over class="" table-user-image="data" target="registsrVos"></div>'; + scope.data.registerVos = [scope.data.registerVo]; + makeTag += '<div owl-profile-over class="" table-user-image="data" target="registerVos"></div>'; break; case "WORKFLOW_NAME": @@ -349,6 +463,10 @@ } break; + case "DEPARTMENT_EX": + makeTag += "<div style='margin-top: 5px;'>" + scope.data.departmentDescription + "</div>"; + break; + case "DEPARTMENT_COUNT": if ($rootScope.checkMngPermission('USER_PERMISSION_MNG_WORKSPACE')) { makeTag += "<span class='titlename cursor table-word-break-all' ng-click='event.modifyDepartmentCount(data.id)'>" + scope.data.departmentCount + "</span>"; -- Gitblit v1.8.0