- etc 메뉴추가
=> 업체 관리/ISP관리/호스팅 관리 메뉴 추가
=> 관련 파일들만 추가. 추가 구현 필요.
| | |
| | | "projectType": "프로젝트 타입", |
| | | "projectAdmin": "프로젝트 관리자", |
| | | "projectTeam": "프로젝트 팀원", |
| | | "projectDepartment": "프로젝트 담당부서", |
| | | "modifyProject": "프로젝트 수정", |
| | | "settingCustomFields": "사용자 정의 필드 설정", |
| | | "selectCustomField": "사용자 정의 필드 선택", |
| | |
| | | "changeReason": "변경 사유", |
| | | "failedToIssueStatusListLookup": "이슈 상태 목록 조회 실패", |
| | | "customField": "사용자 정의 필드", |
| | | "customCompanyField" : "업체 관리", |
| | | "customIspField" : "ISP 관리", |
| | | "customHostingField" : "호스팅 관리", |
| | | "select": "선택", |
| | | "checkAll": "전체 선택", |
| | | "unCheckAll": "전체 해제", |
| | |
| | | "create" : "토큰 생성", |
| | | "example" : "사용 예시", |
| | | "columnSetting" : "기본값 설정" |
| | | }, |
| | | "companyField" : { |
| | | "add" : "업체 생성", |
| | | "name" : "업체 이름", |
| | | "manager" : "담당자", |
| | | "tel" : "전화번호", |
| | | "email" : "이메일", |
| | | "desc" : "비고" |
| | | }, |
| | | "ispField" : { |
| | | "add" : "ISP 생성", |
| | | "name" : "ISP 이름", |
| | | "manager" : "담당자", |
| | | "tel" : "전화번호", |
| | | "email" : "이메일", |
| | | "desc" : "비고" |
| | | }, |
| | | "hostingField" : { |
| | | "add" : "호스팅 생성", |
| | | "name" : "호스팅 이름", |
| | | "manager" : "담당자", |
| | | "tel" : "전화번호", |
| | | "email" : "이메일", |
| | | "desc" : "비고" |
| | | } |
| | | } |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04. |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define(['app'], |
| | | function (app) { |
| | | app.config(function ($stateProvider) { |
| | | $stateProvider |
| | | .state('companyField', { |
| | | abstract : true, |
| | | url : "/companyField", |
| | | templateUrl : "views/common/app.html", |
| | | resolve : { |
| | | authorize : function (Auth) { |
| | | return Auth.authorize(); |
| | | }, |
| | | translatePartialLoader : function ($translate, $translatePartialLoader) { |
| | | $translatePartialLoader.addPart('global'); |
| | | |
| | | return $translate.refresh(); |
| | | } |
| | | } |
| | | }) |
| | | .state('companyField.list', { |
| | | url : '/companyField', |
| | | data : { |
| | | authorities : ['CUSTOM_FIELD_TOTAL'] |
| | | }, |
| | | templateUrl : 'views/companyField/companyFieldList.html', |
| | | controller : "companyFieldListController", |
| | | resolve : { |
| | | loadController : ["$q", function ($q) { |
| | | var deferred = $q.defer(); |
| | | require(["companyFieldListController", 'jsTable', 'tableColumnGenerator', 'companyFieldService', 'modalFormAutoScroll' |
| | | , 'formSubmit', 'jsShortCut', 'inputRegex'], function () { |
| | | deferred.resolve(); |
| | | }); |
| | | |
| | | return deferred.promise; |
| | | }] |
| | | } |
| | | }); |
| | | }) |
| | | }); |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04. |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define([ |
| | | 'app', |
| | | 'angular' |
| | | ], |
| | | function (app, angular) { |
| | | app.controller('companyFieldListController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$tableProvider', '$state', '$uibModal', 'CompanyField', 'SweetAlert', '$timeout', '$filter', |
| | | function ($scope, $rootScope, $log, $resourceProvider, $tableProvider, $state, $uibModal, CompanyField, SweetAlert, $timeout, $filter) { |
| | | |
| | | // 함수 |
| | | $scope.fn = { |
| | | makeTableConfigs : makeTableConfigs, // 테이블 설정 |
| | | }; |
| | | |
| | | // 변수 |
| | | $scope.vm = { |
| | | tableConfigs : [], |
| | | }; |
| | | |
| | | $scope.vm.responseData = { |
| | | data : [] |
| | | }; |
| | | |
| | | // 사용자 정의 필드 목록 테이블 설정 |
| | | function makeTableConfigs() { |
| | | $scope.vm.tableConfigs = []; |
| | | |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setDType("checkbox") |
| | | .setHWidth("width-20-p") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.name") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.manager") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.tel") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.email") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("companyField.desc") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | } |
| | | |
| | | $scope.fn.makeTableConfigs(); |
| | | } |
| | | ]); |
| | | } |
| | | ); |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04. |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define(['app'], |
| | | function (app) { |
| | | app.config(function ($stateProvider) { |
| | | $stateProvider |
| | | .state('hostingField', { |
| | | abstract : true, |
| | | url : "/hostingField", |
| | | templateUrl : "views/common/app.html", |
| | | resolve : { |
| | | authorize : function (Auth) { |
| | | return Auth.authorize(); |
| | | }, |
| | | translatePartialLoader : function ($translate, $translatePartialLoader) { |
| | | $translatePartialLoader.addPart('global'); |
| | | |
| | | return $translate.refresh(); |
| | | } |
| | | } |
| | | }) |
| | | .state('hostingField.list', { |
| | | url : '/hostingField', |
| | | data : { |
| | | authorities : ['CUSTOM_FIELD_TOTAL'] |
| | | }, |
| | | templateUrl : 'views/hostingField/hostingFieldList.html', |
| | | controller : "hostingFieldListController", |
| | | resolve : { |
| | | loadController : ["$q", function ($q) { |
| | | var deferred = $q.defer(); |
| | | require(["hostingFieldListController", 'jsTable', 'tableColumnGenerator', 'hostingFieldService', 'modalFormAutoScroll' |
| | | , 'formSubmit', 'jsShortCut', 'inputRegex'], function () { |
| | | deferred.resolve(); |
| | | }); |
| | | |
| | | return deferred.promise; |
| | | }] |
| | | } |
| | | }); |
| | | }) |
| | | }); |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04. |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define([ |
| | | 'app', |
| | | 'angular' |
| | | ], |
| | | function (app, angular) { |
| | | app.controller('hostingFieldListController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$tableProvider', '$state', '$uibModal', 'HostingField', 'SweetAlert', '$timeout', '$filter', |
| | | function ($scope, $rootScope, $log, $resourceProvider, $tableProvider, $state, $uibModal, HostingField, SweetAlert, $timeout, $filter) { |
| | | |
| | | // 함수 |
| | | $scope.fn = { |
| | | makeTableConfigs : makeTableConfigs, // 테이블 설정 |
| | | }; |
| | | |
| | | // 변수 |
| | | $scope.vm = { |
| | | tableConfigs : [], |
| | | }; |
| | | |
| | | // 사용자 정의 필드 목록 테이블 설정 |
| | | function makeTableConfigs() { |
| | | $scope.vm.tableConfigs = []; |
| | | |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setDType("checkbox") |
| | | .setHWidth("width-20-p") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("hostingField.name") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("hostingField.manager") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("hostingField.tel") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("hostingField.email") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("hostingField.desc") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | } |
| | | |
| | | $scope.fn.makeTableConfigs(); |
| | | } |
| | | ]); |
| | | } |
| | | ); |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04. |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define(['app'], |
| | | function (app) { |
| | | app.config(function ($stateProvider) { |
| | | $stateProvider |
| | | .state('ispField', { |
| | | abstract : true, |
| | | url : "/ispField", |
| | | templateUrl : "views/common/app.html", |
| | | resolve : { |
| | | authorize : function (Auth) { |
| | | return Auth.authorize(); |
| | | }, |
| | | translatePartialLoader : function ($translate, $translatePartialLoader) { |
| | | $translatePartialLoader.addPart('global'); |
| | | |
| | | return $translate.refresh(); |
| | | } |
| | | } |
| | | }) |
| | | .state('ispField.list', { |
| | | url : '/ispField', |
| | | data : { |
| | | authorities : ['CUSTOM_FIELD_TOTAL'] |
| | | }, |
| | | templateUrl : 'views/ispField/ispFieldList.html', |
| | | controller : "ispFieldListController", |
| | | resolve : { |
| | | loadController : ["$q", function ($q) { |
| | | var deferred = $q.defer(); |
| | | require(["ispFieldListController", 'jsTable', 'tableColumnGenerator', 'ispFieldService', 'modalFormAutoScroll' |
| | | , 'formSubmit', 'jsShortCut', 'inputRegex'], function () { |
| | | deferred.resolve(); |
| | | }); |
| | | |
| | | return deferred.promise; |
| | | }] |
| | | } |
| | | }); |
| | | }) |
| | | }); |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04. |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define([ |
| | | 'app', |
| | | 'angular' |
| | | ], |
| | | function (app, angular) { |
| | | app.controller('ispFieldListController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$tableProvider', '$state', '$uibModal', 'IspField', 'SweetAlert', '$timeout', '$filter', |
| | | function ($scope, $rootScope, $log, $resourceProvider, $tableProvider, $state, $uibModal, IspField, SweetAlert, $timeout, $filter) { |
| | | |
| | | // 함수 |
| | | $scope.fn = { |
| | | makeTableConfigs : makeTableConfigs, // 테이블 설정 |
| | | }; |
| | | |
| | | // 변수 |
| | | $scope.vm = { |
| | | tableConfigs : [], |
| | | }; |
| | | |
| | | // 사용자 정의 필드 목록 테이블 설정 |
| | | function makeTableConfigs() { |
| | | $scope.vm.tableConfigs = []; |
| | | |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setDType("checkbox") |
| | | .setHWidth("width-20-p") |
| | | .setDAlign("text-center")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("ispField.name") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("ispField.manager") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("ispField.tel") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("ispField.email") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | $scope.vm.tableConfigs.push($tableProvider.config() |
| | | .setHName("ispField.desc") |
| | | .setHWidth("bold") |
| | | .setDName("name") |
| | | .setDType("renderer") |
| | | .setDAlign("text-center") |
| | | .setDRenderer("COMMON_MODIFY")); |
| | | } |
| | | |
| | | $scope.fn.makeTableConfigs(); |
| | | } |
| | | ]); |
| | | } |
| | | ); |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04 |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define([ |
| | | 'app' |
| | | ], function (app) { |
| | | app.factory("HostingField", ['$http', '$log', function ($http, $log) { |
| | | return { |
| | | find : function (conditions) { |
| | | return $http.post("HostingField/find", conditions).then(function (response) { |
| | | $log.debug("Hosting 필드 목록 데이터 : ", response); |
| | | return response; |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | ]); |
| | | }); |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04 |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define([ |
| | | 'app' |
| | | ], function (app) { |
| | | app.factory("CompanyField", ['$http', '$log', function ($http, $log) { |
| | | return { |
| | | find : function (conditions) { |
| | | return $http.post("companyField/find", conditions).then(function (response) { |
| | | $log.debug("업체 필드 목록 데이터 : ", response); |
| | | return response; |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | ]); |
| | | }); |
New file |
| | |
| | | /** |
| | | * Created by maprex on 2021-11-04 |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define([ |
| | | 'app' |
| | | ], function (app) { |
| | | app.factory("IspField", ['$http', '$log', function ($http, $log) { |
| | | return { |
| | | find : function (conditions) { |
| | | return $http.post("IspField/find", conditions).then(function (response) { |
| | | $log.debug("ISP 필드 목록 데이터 : ", response); |
| | | return response; |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | ]); |
| | | }); |
| | |
| | | 'apiAuthController' :'app/api/apiAuth.controller', // api 인증 컨트롤러 |
| | | 'apiSettingController' : 'app/api/apiSetting.controller', // api 설정 컨트롤러 |
| | | 'apiMonitorController' : 'app/api/apiMonitor.controller', // api 모니터링 컨트롤러 |
| | | |
| | | /* 업체 */ |
| | | 'companyFieldRoute' : 'app/companyField/companyField', // 업체 route 정보 |
| | | 'companyFieldService' : 'components/companyField/companyField.service', // 업체 관련된 통신 담당 |
| | | 'companyFieldListController' : 'app/companyField/companyFieldList.controller', // 업체 목록 컨트롤러 |
| | | |
| | | /* ISP */ |
| | | 'ispFieldRoute' : 'app/ispField/ispField', // ISP route 정보 |
| | | 'ispFieldService' : 'components/ispField/ispField.service', // ISP 관련된 통신 담당 |
| | | 'ispFieldListController' : 'app/ispField/ispFieldList.controller', // ISP 목록 컨트롤러 |
| | | |
| | | /* 호스팅 */ |
| | | 'hostingFieldRoute' : 'app/hostingField/hostingField', // 호스팅 route 정보 |
| | | 'hostingFieldService' : 'components/HostingField/hostingField.service', // 호스팅 관련된 통신 담당 |
| | | 'hostingFieldListController' : 'app/hostingField/hostingFieldList.controller', // 호스팅 목록 컨트롤러 |
| | | }, |
| | | shim : { |
| | | 'jquery-ui' : { |
| | |
| | | 'supportRoute', |
| | | 'ganttRoute', |
| | | 'apiRoute', |
| | | 'companyFieldRoute', |
| | | 'ispFieldRoute', |
| | | 'hostingFieldRoute', |
| | | 'ganttService', |
| | | 'workflowService', |
| | | 'issueSearchService', |
| | |
| | | 'qnaService', |
| | | 'taskService', |
| | | 'taskCommentService', |
| | | 'workflowStatusService' |
| | | |
| | | 'workflowStatusService', |
| | | 'companyFieldService', |
| | | 'ispFieldService', |
| | | 'hostingFieldService' |
| | | ], function ($, angular, domReady, app, sortable, crypto) { |
| | | // 대시보드에서 Sortable 인식 못하는 문제 해결 |
| | | window.Sortable = sortable; |
| | |
| | | </div> |
| | | <span translate="managementType.managementIssueType">일감 유형 관리</span></a> |
| | | </li> |
| | | |
| | | <li class="sub-header" ng-if="$root.checkMngPermissionSettings()"> |
| | | <span>Etc</span> |
| | | </li> |
| | | <li class="" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_ISSUE_STATUS')"> |
| | | <a ui-sref="companyField.list" tabindex="-1"> |
| | | <div class="icon-w"> |
| | | <div class="os-icon os-icon-agenda-1"></div> |
| | | </div> |
| | | <span translate="common.customCompanyField">업체 관리</span></a> |
| | | </li> |
| | | <li class="" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_ISSUE_STATUS')"> |
| | | <a ui-sref="ispField.list" tabindex="-1"> |
| | | <div class="icon-w"> |
| | | |
| | | <div class="os-icon os-icon-agenda-1"></div> |
| | | </div> |
| | | <span translate="common.customIspField">ISP 관리</span></a> |
| | | </li> |
| | | <li class="" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_ISSUE_STATUS')"> |
| | | <a ui-sref="hostingField.list" tabindex="-1"> |
| | | <div class="icon-w"> |
| | | <div class="os-icon os-icon-agenda-1"></div> |
| | | </div> |
| | | <span translate="common.customHostingField">호스팅 관리</span></a> |
| | | </li> |
| | | <li class="sub-header" ng-if="$root.checkMngPermissionManager()"> |
| | | <span>Management</span> |
| | | </li> |
New file |
| | |
| | | <div class="row"> |
| | | <div class="col-sm-12"> |
| | | <div class="element-wrapper"> |
| | | <div class="element-actions" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_CUSTOME_FIELD')"> |
| | | <button ng-click="fn.add()" |
| | | class="btn btn-xlg btn-danger"><i class="os-icon os-icon-plus"></i> <span translate="companyField.add">업체 생성</span> |
| | | </button> |
| | | </div> |
| | | <h6 class="element-header" translate="common.customCompanyField"> |
| | | 업체 관리 |
| | | </h6> |
| | | <div class="element-box"> |
| | | <div class="row"> |
| | | <div class="col-sm-12"> |
| | | <div class="searchdiv"> |
| | | <form name="customFieldListForm" role="form" ng-enter="fn.getPageList(0)"> |
| | | <div class="row"> |
| | | <div class="col-lg-3"> |
| | | <div class="form-group"> |
| | | <label for="customFieldListForm1"><span translate="companyField.name">사용자 정의 필드 명</span></label> |
| | | <input type="text" |
| | | name="name" |
| | | id="customFieldListForm1" |
| | | autocomplete="off" |
| | | maxlength="15" |
| | | kr-input |
| | | owl-auto-focus |
| | | class="form-control" |
| | | ng-model="vm.search.name" placeholder="{{'customField.pleaseEnterUserDefinedFieldName' | translate}}"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="col-lg-6"> |
| | | <div class="form-group form-buttons-w2"> |
| | | <button class="btn btn-xlg btn-navy" ng-click="fn.getPageList(0)"> |
| | | <i class="os-icon os-icon-ui-37"></i> |
| | | <span translate="common.search">검색</span> |
| | | </button> |
| | | <button class="btn btn-xlg btn-white" ng-click="fn.initSearch()"> |
| | | <i class="os-icon os-icon-grid-18"></i> |
| | | <span translate="common.reset">초기화</span> |
| | | </button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="controls-above-table mt-30"> |
| | | <div class="row"> |
| | | <div class="col-7"> |
| | | <div class="dataTables_length"> |
| | | <label> |
| | | <select name="pageRow" |
| | | class="form-control form-control-sm" |
| | | ng-change="fn.changePageRowCount()" |
| | | ng-model="vm.page.selectedPageRowCount"> |
| | | <option value="10">10</option> |
| | | <option value="50">50</option> |
| | | <option value="100">100</option> |
| | | </select> {{vm.page.selectedPage}}-{{vm.responseData.page.totalPage}} / |
| | | {{vm.responseData.page.totalCount | number}}<span translate="common.few">건</span> |
| | | </label> |
| | | </div> |
| | | </div> |
| | | <div class="col-5 text-right" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_CUSTOME_FIELD')"> |
| | | <form class="form-inline justify-content-sm-end pull-right" method="post" |
| | | action="/customField/downloadExcel" |
| | | name="customFieldListForm"> |
| | | <input type="hidden" name="conditions"> |
| | | <div class="btn-group"> |
| | | <button aria-expanded="false" aria-haspopup="true" |
| | | class="btn btn-secondary dropdown-toggle" |
| | | data-toggle="dropdown" type="button"><span translate="common.addFunction">추가기능</span> |
| | | </button> |
| | | <div aria-labelledby="dropdownMenuButton2" class="dropdown-menu left-menu" |
| | | x-placement="bottom-start"> |
| | | <a class="dropdown-item cursor" form-submit="customFieldListForm" make-search-conditions="fn.makeSearchConditions()"><span translate="common.downloadExcel">엑셀 다운로드</span></a> |
| | | <a class="dropdown-item cursor" ng-click="fn.removes()"> <span translate="common.delete">삭제</span></a> |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="table-responsive"> |
| | | <js-table data="vm.responseData.data" table-configs="vm.tableConfigs" event="tableEvent"></js-table> |
| | | </div> |
| | | |
| | | <div class="controls-below-table text-center"> |
| | | <ul uib-pagination |
| | | boundary-links-numbes="true" |
| | | items-per-page="vm.page.selectedPageRowCount" |
| | | total-items="vm.responseData.page.totalCount" |
| | | ng-model="vm.page.selectedPage" |
| | | max-size="10" |
| | | ng-click="fn.getPageList(vm.page.selectedPage-1)" |
| | | class="pagination pagination-sm" |
| | | previous-text="<" |
| | | next-text=">" |
| | | first-text="" |
| | | last-text=""> |
| | | </ul> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
New file |
| | |
| | | <div class="row"> |
| | | <div class="col-sm-12"> |
| | | <div class="element-wrapper"> |
| | | <div class="element-actions" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_CUSTOME_FIELD')"> |
| | | <button ng-click="fn.add()" |
| | | class="btn btn-xlg btn-danger"><i class="os-icon os-icon-plus"></i> <span translate="hostingField.add">업체 생성</span> |
| | | </button> |
| | | </div> |
| | | <h6 class="element-header" translate="common.customHostingField"> |
| | | 업체 관리 |
| | | </h6> |
| | | <div class="element-box"> |
| | | <div class="row"> |
| | | <div class="col-sm-12"> |
| | | <div class="searchdiv"> |
| | | <form name="customFieldListForm" role="form" ng-enter="fn.getPageList(0)"> |
| | | <div class="row"> |
| | | <div class="col-lg-3"> |
| | | <div class="form-group"> |
| | | <label for="customFieldListForm1"><span translate="hostingField.name">사용자 정의 필드 명</span></label> |
| | | <input type="text" |
| | | name="name" |
| | | id="customFieldListForm1" |
| | | autocomplete="off" |
| | | maxlength="15" |
| | | kr-input |
| | | owl-auto-focus |
| | | class="form-control" |
| | | ng-model="vm.search.name" placeholder="{{'customField.pleaseEnterUserDefinedFieldName' | translate}}"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="col-lg-6"> |
| | | <div class="form-group form-buttons-w2"> |
| | | <button class="btn btn-xlg btn-navy" ng-click="fn.getPageList(0)"> |
| | | <i class="os-icon os-icon-ui-37"></i> |
| | | <span translate="common.search">검색</span> |
| | | </button> |
| | | <button class="btn btn-xlg btn-white" ng-click="fn.initSearch()"> |
| | | <i class="os-icon os-icon-grid-18"></i> |
| | | <span translate="common.reset">초기화</span> |
| | | </button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="controls-above-table mt-30"> |
| | | <div class="row"> |
| | | <div class="col-7"> |
| | | <div class="dataTables_length"> |
| | | <label> |
| | | <select name="pageRow" |
| | | class="form-control form-control-sm" |
| | | ng-change="fn.changePageRowCount()" |
| | | ng-model="vm.page.selectedPageRowCount"> |
| | | <option value="10">10</option> |
| | | <option value="50">50</option> |
| | | <option value="100">100</option> |
| | | </select> {{vm.page.selectedPage}}-{{vm.responseData.page.totalPage}} / |
| | | {{vm.responseData.page.totalCount | number}}<span translate="common.few">건</span> |
| | | </label> |
| | | </div> |
| | | </div> |
| | | <div class="col-5 text-right" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_CUSTOME_FIELD')"> |
| | | <form class="form-inline justify-content-sm-end pull-right" method="post" |
| | | action="/customField/downloadExcel" |
| | | name="customFieldListForm"> |
| | | <input type="hidden" name="conditions"> |
| | | <div class="btn-group"> |
| | | <button aria-expanded="false" aria-haspopup="true" |
| | | class="btn btn-secondary dropdown-toggle" |
| | | data-toggle="dropdown" type="button"><span translate="common.addFunction">추가기능</span> |
| | | </button> |
| | | <div aria-labelledby="dropdownMenuButton2" class="dropdown-menu left-menu" |
| | | x-placement="bottom-start"> |
| | | <a class="dropdown-item cursor" form-submit="customFieldListForm" make-search-conditions="fn.makeSearchConditions()"><span translate="common.downloadExcel">엑셀 다운로드</span></a> |
| | | <a class="dropdown-item cursor" ng-click="fn.removes()"> <span translate="common.delete">삭제</span></a> |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="table-responsive"> |
| | | <js-table data="vm.responseData.data" table-configs="vm.tableConfigs" event="tableEvent"></js-table> |
| | | </div> |
| | | |
| | | <div class="controls-below-table text-center"> |
| | | <ul uib-pagination |
| | | boundary-links-numbes="true" |
| | | items-per-page="vm.page.selectedPageRowCount" |
| | | total-items="vm.responseData.page.totalCount" |
| | | ng-model="vm.page.selectedPage" |
| | | max-size="10" |
| | | ng-click="fn.getPageList(vm.page.selectedPage-1)" |
| | | class="pagination pagination-sm" |
| | | previous-text="<" |
| | | next-text=">" |
| | | first-text="" |
| | | last-text=""> |
| | | </ul> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
New file |
| | |
| | | <div class="row"> |
| | | <div class="col-sm-12"> |
| | | <div class="element-wrapper"> |
| | | <div class="element-actions" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_CUSTOME_FIELD')"> |
| | | <button ng-click="fn.add()" |
| | | class="btn btn-xlg btn-danger"><i class="os-icon os-icon-plus"></i> <span translate="ispField.add">업체 생성</span> |
| | | </button> |
| | | </div> |
| | | <h6 class="element-header" translate="common.customIspField"> |
| | | 업체 관리 |
| | | </h6> |
| | | <div class="element-box"> |
| | | <div class="row"> |
| | | <div class="col-sm-12"> |
| | | <div class="searchdiv"> |
| | | <form name="customFieldListForm" role="form" ng-enter="fn.getPageList(0)"> |
| | | <div class="row"> |
| | | <div class="col-lg-3"> |
| | | <div class="form-group"> |
| | | <label for="customFieldListForm1"><span translate="ispField.name">사용자 정의 필드 명</span></label> |
| | | <input type="text" |
| | | name="name" |
| | | id="customFieldListForm1" |
| | | autocomplete="off" |
| | | maxlength="15" |
| | | kr-input |
| | | owl-auto-focus |
| | | class="form-control" |
| | | ng-model="vm.search.name" placeholder="{{'customField.pleaseEnterUserDefinedFieldName' | translate}}"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="col-lg-6"> |
| | | <div class="form-group form-buttons-w2"> |
| | | <button class="btn btn-xlg btn-navy" ng-click="fn.getPageList(0)"> |
| | | <i class="os-icon os-icon-ui-37"></i> |
| | | <span translate="common.search">검색</span> |
| | | </button> |
| | | <button class="btn btn-xlg btn-white" ng-click="fn.initSearch()"> |
| | | <i class="os-icon os-icon-grid-18"></i> |
| | | <span translate="common.reset">초기화</span> |
| | | </button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="controls-above-table mt-30"> |
| | | <div class="row"> |
| | | <div class="col-7"> |
| | | <div class="dataTables_length"> |
| | | <label> |
| | | <select name="pageRow" |
| | | class="form-control form-control-sm" |
| | | ng-change="fn.changePageRowCount()" |
| | | ng-model="vm.page.selectedPageRowCount"> |
| | | <option value="10">10</option> |
| | | <option value="50">50</option> |
| | | <option value="100">100</option> |
| | | </select> {{vm.page.selectedPage}}-{{vm.responseData.page.totalPage}} / |
| | | {{vm.responseData.page.totalCount | number}}<span translate="common.few">건</span> |
| | | </label> |
| | | </div> |
| | | </div> |
| | | <div class="col-5 text-right" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_CUSTOME_FIELD')"> |
| | | <form class="form-inline justify-content-sm-end pull-right" method="post" |
| | | action="/customField/downloadExcel" |
| | | name="customFieldListForm"> |
| | | <input type="hidden" name="conditions"> |
| | | <div class="btn-group"> |
| | | <button aria-expanded="false" aria-haspopup="true" |
| | | class="btn btn-secondary dropdown-toggle" |
| | | data-toggle="dropdown" type="button"><span translate="common.addFunction">추가기능</span> |
| | | </button> |
| | | <div aria-labelledby="dropdownMenuButton2" class="dropdown-menu left-menu" |
| | | x-placement="bottom-start"> |
| | | <a class="dropdown-item cursor" form-submit="customFieldListForm" make-search-conditions="fn.makeSearchConditions()"><span translate="common.downloadExcel">엑셀 다운로드</span></a> |
| | | <a class="dropdown-item cursor" ng-click="fn.removes()"> <span translate="common.delete">삭제</span></a> |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="table-responsive"> |
| | | <js-table data="vm.responseData.data" table-configs="vm.tableConfigs" event="tableEvent"></js-table> |
| | | </div> |
| | | |
| | | <div class="controls-below-table text-center"> |
| | | <ul uib-pagination |
| | | boundary-links-numbes="true" |
| | | items-per-page="vm.page.selectedPageRowCount" |
| | | total-items="vm.responseData.page.totalCount" |
| | | ng-model="vm.page.selectedPage" |
| | | max-size="10" |
| | | ng-click="fn.getPageList(vm.page.selectedPage-1)" |
| | | class="pagination pagination-sm" |
| | | previous-text="<" |
| | | next-text=">" |
| | | first-text="" |
| | | last-text=""> |
| | | </ul> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="row"> |
| | | <div class="col-lg-6"> |
| | | <div class="form-group"> |
| | | <label><span translate="common.period">기간</span> <code class="highlighter-rouge">*</code></label> |
| | | <label><span translate="common.period">기간</span></label> |
| | | <input type="text" |
| | | class="form-control input-readonly" |
| | | ng-model="vm.form.startEndDateRange" |
| | |
| | | </div> |
| | | |
| | | <div class="form-group"> |
| | | <label><span translate="project.projectTeam">프로젝트 팀원</span> </label> |
| | | <label><span translate="project.projectDepartment">프로젝트 담당부서</span> </label> |
| | | <js-autocomplete-multi data-input-name="users" |
| | | selected-model="vm.form.users" |
| | | search="vm.userName" |