| | |
| | | common.issue=\uC77C\uAC10 |
| | | common.issueList=\uC77C\uAC10 \uBAA9\uB85D |
| | | common.status=\uC0C1\uD0DC |
| | | common.level=\uB4F1\uAE09 |
| | | common.issueKey=\uC77C\uAC10 \uBC88\uD638 |
| | | common.issueTitle=\uC77C\uAC10 \uC81C\uBAA9 |
| | | common.content=\uB0B4\uC6A9 |
| | |
| | | $scope.vm.search = { |
| | | name : "", // 이름 |
| | | account : "", // 이메일 |
| | | statuses : [] // 상태 - Y, N |
| | | statuses : [], // 상태 - Y, N |
| | | levels : [] // 등급 |
| | | }; |
| | | |
| | | $scope.vm.options = { |
| | |
| | | fieldValue : $filter("translate")("managementWorkspace.withdrawal") // "탈퇴" |
| | | }] |
| | | }; |
| | | |
| | | /*$scope.vm.options = { |
| | | levels : [{ |
| | | fieldKey : "Y", |
| | | fieldValue : $filter("translate")("managementWorkspace.participation") // "참여" |
| | | }, { |
| | | fieldKey : "N", |
| | | //fieldValue : $filter("translate")("managementWorkspace.waitForParticipation") // "참여대기" |
| | | fieldValue : $filter("translate")("managementWorkspace.withdrawal") // "탈퇴" |
| | | }] |
| | | };*/ |
| | | |
| | | $scope.vm.page = { |
| | | selectedPage : 0, |
| | |
| | | $scope.vm.search.name = ""; |
| | | $scope.vm.search.account = ""; |
| | | $scope.vm.search.statuses = ["Y"]; |
| | | $scope.vm.search.levels = []; |
| | | $scope.fn.getUserWorkspaceList(0); |
| | | } |
| | | |
| | |
| | | resolve : { |
| | | loadController : ["$q", function ($q) { |
| | | var deferred = $q.defer(); |
| | | require(["modalFormAutoScroll", "workspaceController", "workspacePaymentExecuteController", "workspaceUserConfigController", "workspacePaymentModifyController", |
| | | require(["modalFormAutoScroll", "workspaceController", "workspaceLevelAddController", "workspacePaymentExecuteController", "workspaceUserConfigController", "workspacePaymentModifyController", |
| | | "workspacePaymentAgreeTermController", "paymentService", "userWorkspaceService", "workspaceService", "numberOnly", 'jsTable', 'tableColumnGenerator', |
| | | "crypto", "reservationDisableUserService", "workspacePaymentAddController"], function () { |
| | | "crypto", "reservationDisableUserService", "workspacePaymentAddController", "workspaceUserLevelController", "workspaceDepartmentConfigController"], function () { |
| | | deferred.resolve(); |
| | | }); |
| | | |
| | |
| | | 'angular' |
| | | ], |
| | | function (app, angular) { |
| | | app.controller('workspaceUserConfigController', ['$scope', '$rootScope', '$log', '$resourceProvider', 'SweetAlert', '$uibModal', '$q', '$state', '$tableProvider', 'Payment', 'Workspace', |
| | | app.controller('workspaceDepartmentConfigController', ['$scope', '$rootScope', '$log', '$resourceProvider', 'SweetAlert', '$uibModal', '$q', '$state', '$tableProvider', 'Payment', 'Workspace', |
| | | 'UserWorkspace', '$filter', |
| | | function ($scope, $rootScope, $log, $resourceProvider, SweetAlert, $uibModal, $q, $state, $tableProvider, Payment, Workspace, UserWorkspace, $filter) { |
| | | |
New file |
| | |
| | | /** |
| | | * Created by wisestone on 2018-02-19. |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define([ |
| | | 'app', |
| | | 'angular' |
| | | ], |
| | | function (app, angular) { |
| | | app.controller('workspaceLevelAddController', ['$scope', '$rootScope', '$log', '$resourceProvider', 'SweetAlert', '$uibModal', '$uibModalInstance', '$state', 'Workspace', '$filter', 'parameter', '$timeout', |
| | | function ($scope, $rootScope, $log, $resourceProvider, SweetAlert, $uibModal, $uibModalInstance, Payment, $filter, parameter, $timeout) { |
| | | |
| | | $scope.fn = { |
| | | //add : add, // 등급 추가 |
| | | cancel : cancel, // 팝업 창 닫기 |
| | | formCheck : formCheck, // 폼 체크 |
| | | formSubmit : formSubmit |
| | | }; |
| | | |
| | | $scope.vm = { |
| | | form : { |
| | | /*workspaceId : parameter.workspaceId, |
| | | usdKrw : parameter.usdKrw, |
| | | maxUser : parameter.maxUser, |
| | | buyUser : "", |
| | | type : "MONTH", |
| | | cardNumber1 : "", |
| | | cardNumber2 : "", |
| | | cardNumber3 : "", |
| | | cardNumber4 : "", |
| | | expireMonth : "", |
| | | expireYear : "", |
| | | expireYearTmp : "", |
| | | birth : "", |
| | | cardPwd : "", |
| | | paymentAmountTemp : "", // 클라이언트에서 사용자 수를 변경할 때 보여줄 결제 금액 - 금액은 서버에서 다시 계산한다. |
| | | confirm : false // 약관 동의*/ |
| | | }, |
| | | viewAgreeTerm : false |
| | | }; |
| | | |
| | | // 사용자 가격 보기 |
| | | /*$scope.$watch("vm.form.buyUser", function (newValue) { |
| | | |
| | | if ($rootScope.isDefined(newValue)) { |
| | | var totalAmount = (BILLING_AMOUNT * $scope.vm.form.usdKrw * newValue); |
| | | var discount = 0; |
| | | |
| | | if (newValue > 99) { |
| | | var sale = newValue * 0.01; |
| | | discount = (totalAmount * (sale/100)); |
| | | } |
| | | |
| | | $scope.vm.form.paymentAmountTemp = Math.floor(totalAmount - discount); |
| | | } |
| | | else { |
| | | $scope.vm.form.paymentAmountTemp = 0; |
| | | } |
| | | });*/ |
| | | |
| | | // 폼 전송 |
| | | /*function formSubmit() { |
| | | $rootScope.spinner = true; |
| | | |
| | | $scope.vm.form.expireYear = "20" + $scope.vm.form.expireYearTmp; |
| | | var content = angular.copy($scope.vm.form); |
| | | |
| | | // 암호화 시간동안 프로그래스바 못올리는 현상 수정 |
| | | $timeout(function () { |
| | | content.cardNumber1 = $rootScope.encryption($scope.vm.form.cardNumber1); |
| | | content.cardNumber2 = $rootScope.encryption($scope.vm.form.cardNumber2); |
| | | content.cardNumber3 = $rootScope.encryption($scope.vm.form.cardNumber3); |
| | | content.cardNumber4 = $rootScope.encryption($scope.vm.form.cardNumber4); |
| | | content.expireMonth = $rootScope.encryption($scope.vm.form.expireMonth); |
| | | content.expireYear = $rootScope.encryption($scope.vm.form.expireYear); |
| | | content.cardPwd = $rootScope.encryption($scope.vm.form.cardPwd); |
| | | content.birth = $rootScope.encryption($scope.vm.form.birth); |
| | | |
| | | Payment.immediateAddUser($resourceProvider.getContent( |
| | | content, |
| | | $resourceProvider.getPageContent(0, 10))).then(function (result) { |
| | | if (result.data.message.status === "success") { |
| | | $scope.fn.cancel(); |
| | | SweetAlert.success($filter("translate")("managementWorkspace.paymentCompleted"), result.data.message.message); // "추가 결제 성공" |
| | | // 결제 및 업무 공간 정보 화면 갱신 |
| | | $rootScope.$broadcast("findMyWorkspace", {}); |
| | | $rootScope.$broadcast("getPaymentDetail", {}); |
| | | } |
| | | else { |
| | | SweetAlert.error($filter("translate")("managementWorkspace.failedToRegularPaymentChange"), result.data.message.message); // "추가 결제 실패" |
| | | } |
| | | |
| | | $rootScope.spinner = false; |
| | | }); |
| | | }, 100); |
| | | }*/ |
| | | |
| | | // 팝업 창 닫기 |
| | | function cancel() { |
| | | $rootScope.$broadcast("closeLayer"); // 팝업이 열리고 나서 js-multi, js-single 등에서 body 이벤트가 날아가는 현상 수정 |
| | | $uibModalInstance.dismiss('cancel'); |
| | | $(document).unbind("keydown"); // 단축키 이벤트 제거 |
| | | } |
| | | |
| | | // 사용자 수 변경 |
| | | /*function changeBuyUser(changeType) { |
| | | if (changeType === "PLUS") { |
| | | if ($scope.vm.form.buyUser < 999) { |
| | | $scope.vm.form.buyUser++; |
| | | } |
| | | } |
| | | else { |
| | | if ($scope.vm.form.buyUser > 1) { |
| | | $scope.vm.form.buyUser--; |
| | | } |
| | | } |
| | | }*/ |
| | | |
| | | // 폼 체크 |
| | | /*function formCheck() { |
| | | if (!$scope.vm.form.confirm) { |
| | | return true; |
| | | } |
| | | |
| | | if (!$rootScope.isDefined($scope.vm.form.cardNumber1) || !$rootScope.isDefined($scope.vm.form.cardNumber2) || !$rootScope.isDefined($scope.vm.form.cardNumber3) |
| | | || !$rootScope.isDefined($scope.vm.form.cardNumber4) || !$rootScope.isDefined($scope.vm.form.expireMonth) || !$rootScope.isDefined($scope.vm.form.expireYearTmp) |
| | | || !$rootScope.isDefined($scope.vm.form.birth) || !$rootScope.isDefined($scope.vm.form.cardPwd) || !$rootScope.isDefined($scope.vm.form.type)) { |
| | | return true; |
| | | } |
| | | |
| | | if ($scope.vm.form.cardNumber1.length !== 4 || $scope.vm.form.cardNumber2.length !== 4 || $scope.vm.form.cardNumber3.length !== 4 || $scope.vm.form.cardNumber4.length !== 4 |
| | | || $scope.vm.form.expireMonth.length !== 2 || $scope.vm.form.expireYearTmp.length !== 2 || $scope.vm.form.birth.length < 6 || $scope.vm.form.cardPwd.length !== 2) { |
| | | return true; |
| | | } |
| | | |
| | | // 사용자 수는 1명 이상이어야 한다. |
| | | if ($scope.vm.form.buyUser < 1) { |
| | | return true; |
| | | } |
| | | |
| | | return false; |
| | | }*/ |
| | | } |
| | | |
| | | ]); |
| | | } |
| | | ); |
| | |
| | | $scope.vm.search = { |
| | | name : "", // 이름 |
| | | account : "", // 이메일 |
| | | statuses : [] // 상태 - Y, N |
| | | statuses : [], // 상태 - Y, N |
| | | level : [], // 등급 |
| | | departs : [] // 부서 |
| | | }; |
| | | |
| | | $scope.vm.options = { |
| | |
| | | fieldKey : "N", |
| | | //fieldValue : $filter("translate")("managementWorkspace.waitForParticipation") // "참여대기" |
| | | fieldValue : $filter("translate")("managementWorkspace.withdrawal") // "탈퇴" |
| | | }], |
| | | levels : [{ |
| | | fieldKey : "S", |
| | | //fieldValue : $filter("translate")("managementWorkspace.participation") // "참여" |
| | | fieldValue : "슈퍼 관리자" |
| | | }, { |
| | | fieldKey : "U", |
| | | //fieldValue : $filter("translate")("managementWorkspace.withdrawal") // "탈퇴" |
| | | fieldValue : "사용자" |
| | | }], |
| | | departs : [{ |
| | | fieldKey : "A", |
| | | //fieldValue : $filter("translate")("managementWorkspace.participation") // "참여" |
| | | fieldValue : "개발부" |
| | | }, { |
| | | fieldKey : "B", |
| | | //fieldValue : $filter("translate")("managementWorkspace.withdrawal") // "탈퇴" |
| | | fieldValue : "경영지원부" |
| | | }] |
| | | }; |
| | | |
| | | /*$scope.vm.options = { |
| | | levels : [{ |
| | | fieldKey : "S", |
| | | //fieldValue : $filter("translate")("managementWorkspace.participation") // "참여" |
| | | fieldValue : "슈퍼 관리자" |
| | | }, { |
| | | fieldKey : "U", |
| | | //fieldValue : $filter("translate")("managementWorkspace.withdrawal") // "탈퇴" |
| | | fieldValue : "사용자" |
| | | }] |
| | | };*/ |
| | | |
| | | $scope.vm.page = { |
| | | selectedPage : 0, |
| | |
| | | $scope.vm.search.name = ""; |
| | | $scope.vm.search.account = ""; |
| | | $scope.vm.search.statuses = []; |
| | | $scope.vm.search.level = []; |
| | | $scope.fn.getUserWorkspaceList(0); |
| | | } |
| | | |
| | |
| | | 'angular' |
| | | ], |
| | | function (app, angular) { |
| | | app.controller('workspaceUserConfigController', ['$scope', '$rootScope', '$log', '$resourceProvider', 'SweetAlert', '$uibModal', '$q', '$state', '$tableProvider', 'Payment', 'Workspace', |
| | | app.controller('workspaceUserLevelController', ['$scope', '$rootScope', '$log', '$resourceProvider', 'SweetAlert', '$uibModal', '$q', '$state', '$tableProvider', 'Payment', 'Workspace', |
| | | 'UserWorkspace', '$filter', |
| | | function ($scope, $rootScope, $log, $resourceProvider, SweetAlert, $uibModal, $q, $state, $tableProvider, Payment, Workspace, UserWorkspace, $filter) { |
| | | |
| | |
| | | $scope.fn.makeTableConfigs = makeTableConfigs; // 업무 공간에 참여하는 전체 사용자 목록 테이블 설정 |
| | | $scope.fn.initSearch = initSearch; // 검색 조건 초기화 |
| | | $scope.fn.changePageRowCount = changePageRowCount; // 업무 공간 참여 사용자 목록 보기 개수 변경 |
| | | |
| | | $scope.fn.add = add; // 등급 추가 |
| | | |
| | | /* $scope.vm 상속 중 */ |
| | | $scope.vm.search = { |
| | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | $scope.fn.makeTableConfigs(); |
| | | |
| | | // 등급 추가 |
| | | function add() { |
| | | $uibModal.open({ |
| | | templateUrl : 'views/workspace/workspaceLevelAdd.html', |
| | | size : "md", |
| | | //controller : 'workspaceLevelAddController', |
| | | backdrop : 'static' |
| | | /*resolve : { |
| | | parameter : function () { |
| | | return { |
| | | workspaceId : $scope.vm.workspaceVo.id, |
| | | usdKrw : $scope.vm.workspaceVo.usdKrw, |
| | | maxUser : $scope.vm.workspaceVo.maxUser |
| | | }; |
| | | } |
| | | }*/ |
| | | }); |
| | | } |
| | | } |
| | | ]); |
| | | } |
| | |
| | | 'workspacePaymentAddController' : 'app/workspace/workspacePaymentAdd.controller', // 추가 결제 컨트롤러 |
| | | 'workspacePaymentAgreeTermController' : 'app/workspace/workspacePaymentAgreeTerm.controller', // 업무 공간 이용 약관 확인 컨트롤러 |
| | | 'workspaceUserLevelController' : 'app/workspace/workspaceUserLevelConfig.controller', // 사용자 관리 컨트롤러 |
| | | 'workspaceLevelAddController' : 'app/workspace/workspaceLevelAdd.controller', // 사용자 등급 추가 컨트롤러 |
| | | 'workspaceDepartmentConfigController' : 'app/workspace/workspaceDepartmentConfig.controller', // 사용자 부서 관리 컨트롤러 |
| | | 'workspaceService' : 'components/workspace/workspace.service', // 업무 공간에 관련된 통신을 담당한다. |
| | | 'paymentService' : 'components/payment/payment.service', // 결재에 관련된 통신을 담당한다. |
| | |
| | | <span translate="notice.registerNotice">공지사항 등록</span> |
| | | </button> |
| | | |
| | | <form class="form-inline justify-content-sm-end pull-right" |
| | | <!--<form class="form-inline justify-content-sm-end pull-right" |
| | | method="post" |
| | | action="/user/downloadExcel" |
| | | name="userListForm"> |
| | |
| | | make-search-conditions="fn.makeSearchConditions()"> |
| | | <span translate="common.downloadExcel">엑셀 다운로드</span> |
| | | </button> |
| | | </form> |
| | | </form>--> |
| | | </div> |
| | | |
| | | <h6 class="element-header" translate="notice.notice"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="col-sm-6 text-right"> |
| | | |
| | | <form class="form-inline justify-content-sm-end pull-right ng-pristine ng-valid" method="post" action="/project/downloadExcel" name="projectListForm"> |
| | | <input type="hidden" name="conditions" autocomplete="off"> |
| | | <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" class="ng-scope">추가기능</span> |
| | | </button> |
| | | <div aria-labelledby="dropdownMenuButton2" class="dropdown-menu left-menu" x-placement="bottom-start"> |
| | | <a class="dropdown-item cursor ng-isolate-scope" form-submit="projectListForm" make-search-conditions="fn.makeSearchConditions()"><span translate="common.downloadExcel" class="ng-scope">엑셀 다운로드</span></a> |
| | | <a class="dropdown-item cursor" ng-click="fn.removes()"> <span translate="common.delete" class="ng-scope">삭제</span></a> |
| | | |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <h6 class="element-header" translate="managementWorkspace.myWorkspace"> |
| | | 나의 업무공간 관리 |
| | | </h6> |
| | | <div class="element-wrapper"> |
| | | <div class="element-actions"> |
| | | <button ng-click="fn.add()" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_WORKSPACE')" |
| | | class="btn btn-xlg btn-danger"><i class="os-icon os-icon-plus"></i> <span |
| | | translate="managementWorkspace.addLevel">등급 추가</span> |
| | | </button> |
| | | </div> |
| | | <h6 class="element-header" translate="managementWorkspace.myWorkspace"> |
| | | 나의 업무공간 관리 |
| | | </h6> |
| | | </div> |
| | | |
| | | <div class="os-tabs-w"> |
| | | <div class="os-tabs-controls"> |
| | | <ul class="nav nav-tabs upper"> |
New file |
| | |
| | | <div class="formModal" ng-controller="workspaceLevelAddController"> |
| | | <div class="modal-header faded smaller"> |
| | | <div class="modal-title"> |
| | | <strong>새 등급 추가</strong> |
| | | </div> |
| | | <button aria-label="Close" class="close" type="button" ng-click="fn.cancel()"> |
| | | <span aria-hidden="true"> ×</span> |
| | | </button> |
| | | </div> |
| | | |
| | | <div class="modal-body"> |
| | | <form role="form" name="levelAddForm"> |
| | | <table class="table table-lightborder"> |
| | | <tr> |
| | | <td> |
| | | <label for="levelAddForm1"><span translate="managementWorkspace.levelName">등급명</span><code class="highlighter-rouge">*</code></label> |
| | | </td> |
| | | <td> |
| | | <div class="input-group mb-2 mr-sm-2 mb-sm-0"> |
| | | <input id="levelAddForm1" |
| | | class="form-control" placeholder="추가 할 등급명을 입력하세요." |
| | | type="text" |
| | | ng-model="vm.form.name" |
| | | maxlength="50" |
| | | autofocus |
| | | required> |
| | | </div> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="text-left bold"> |
| | | <span translate="manageUser.manageProjectPerm">프로젝트 관리</span> |
| | | </td> |
| | | </tr> |
| | | <!--<tr> |
| | | <td> |
| | | <span translate="managementWorkspace.read">읽기</span> |
| | | <span translate="managementWorkspace.write">쓰기</span> |
| | | </td> |
| | | </tr>--> |
| | | <tr> |
| | | <td class="text-left bold"> |
| | | <span translate="manageUser.manageIssueSystemPerm">이슈 시스템</span> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="text-left bold"> |
| | | <span translate="manageUser.manageUserPerm">사용자</span> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="text-left bold"> |
| | | <span translate="manageUser.manageNoticePerm">공지사항</span> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="text-left bold"> |
| | | <span translate="manageUser.manageFAQPerm">FAQ</span> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="text-left bold"> |
| | | <span translate="manageUser.manageQnAPerm">QnA</span> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="text-left bold"> |
| | | <span translate="manageUser.manageEventPerm">이벤트</span> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="text-left bold"> |
| | | <span translate="manageUser.manageGuidePerm">가이드</span> |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | </form> |
| | | </div> |
| | | |
| | | <div class="modal-footer buttons-on-right"> |
| | | <button type="button" class="btn btn-md btn-grey" ng-click="fn.cancel()"><span translate="common.cancel">취소</span></button> |
| | | <button type="button" class="btn btn-md btn-primary bold" |
| | | js-short-cut |
| | | js-short-cut-action="(fn.formCheck(paymentAddForm.$invalid) || $root.spinner) ? null : fn.formSubmit()" |
| | | ng-disabled="fn.formCheck(paymentAddForm.$invalid)" |
| | | ng-click="fn.formSubmit()"><span translate="common.save">저장</span> |
| | | </button> |
| | | </div> |
| | | </div> |
| | |
| | | |
| | | <div class="col-xl-3"> |
| | | <div class="form-group"> |
| | | <label>등급</label> |
| | | <ng-dropdown-multiselect class="multiSelect cursor" |
| | | data-input-name="levels" |
| | | selected-model="vm.search.levels" |
| | | extra-settings="{ stringTypeOption : true }" |
| | | options="vm.options.levels"></ng-dropdown-multiselect> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="col-xl-3"> |
| | | <div class="form-group"> |
| | | <label>부서명</label> |
| | | <ng-dropdown-multiselect class="multiSelect cursor" |
| | | data-input-name="depart" |
| | | selected-model="vm.search.departs" |
| | | extra-settings="{ stringTypeOption : true }" |
| | | options="vm.options.departs"></ng-dropdown-multiselect> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="col-xl-3"> |
| | | <div class="form-group"> |
| | | <label translate="common.email">이메일</label> |
| | | <input class="form-control" type="text" ng-model="vm.search.account" maxlength="50"> |
| | | </div> |
| | |
| | | <div class="row" ng-controller="workspaceUserLevelController"> |
| | | </div> |
| | | |
| | | <div class="row"> |
| | | <div class="col-lg-12"> |
| | | <div class="element-box"> |
| | | <div class="searchdiv"> |
| | | <form name="userWorkspaceForm" role="form" ng-enter="fn.getUserWorkspaceList(0)"> |
| | | <div class="row"> |
| | | <div class="col-xl-2"> |
| | | <!--<div class="col-xl-2"> |
| | | <div class="form-group"> |
| | | <label translate="common.name">이름</label> |
| | | <input class="form-control" type="text" ng-model="vm.search.name" maxlength="10"> |
| | |
| | | <div class="form-group"> |
| | | <label translate="common.email">이메일</label> |
| | | <input class="form-control" type="text" ng-model="vm.search.account" maxlength="50"> |
| | | </div> |
| | | </div>--> |
| | | |
| | | <div class="col-xl-3"> |
| | | <div class="form-group"> |
| | | <label translate="managementWorkspace.levelName">등급명</label> |
| | | <input class="form-control" type="text" ng-model="vm.search.level" maxlength="50"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </label> |
| | | </div> |
| | | </div> |
| | | <!--<div class="col-sm-6 text-right"> |
| | | <div class="btn-group"> |
| | | <div class="col-sm-6 text-right"> |
| | | <!--<div class="btn-group"> |
| | | <button aria-expanded="false" |
| | | aria-haspopup="true" |
| | | class="btn btn-secondary dropdown-toggle" |
| | |
| | | class="dropdown-menu" |
| | | x-placement="bottom-start" |
| | | style="position: absolute; transform: translate3d(0px, 30px, 0px); top: 0px; left: 0px; will-change: transform;"> |
| | | <a class="dropdown-item cursor ng-isolate-scope" form-submit="projectListForm" make-search-conditions="fn.makeSearchConditions()"><span translate="common.downloadExcel" class="ng-scope">엑셀 다운로드</span></a> |
| | | <a class="dropdown-item" href="#"> 삭제</a> |
| | | </div> |
| | | </div> |
| | | </div>--> |
| | | </div>--> |
| | | <form class="form-inline justify-content-sm-end pull-right ng-pristine ng-valid" method="post" action="/workspace/downloadExcel" name="userLevelListForm"> |
| | | <input type="hidden" name="conditions" autocomplete="off"> |
| | | <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" class="ng-scope">추가기능</span> |
| | | </button> |
| | | <div aria-labelledby="dropdownMenuButton2" class="dropdown-menu left-menu" x-placement="bottom-start"> |
| | | <a class="dropdown-item cursor ng-isolate-scope" form-submit="projectListForm" make-search-conditions="fn.makeSearchConditions()"><span translate="common.downloadExcel" class="ng-scope">엑셀 다운로드</span></a> |
| | | <a class="dropdown-item cursor" ng-click="fn.removes()"> <span translate="common.delete" class="ng-scope">삭제</span></a> |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <!--<div class="table-responsive"> |
| | | <js-table data="vm.responseData.data" table-configs="vm.tableConfigs" |
| | | event="vm.tableEvent"></js-table> |
| | | </div>--> |
| | | |
| | | <div class="table-responsive"> |
| | | <js-table data="vm.responseData.data" table-configs="vm.tableConfigs" |
| | | event="vm.tableEvent"></js-table> |