From 34d7135177094ca1b06943a80d3a75cfc442cb95 Mon Sep 17 00:00:00 2001
From: wyu <kknd09321@nate.com>
Date: 수, 03 11월 2021 21:46:28 +0900
Subject: [PATCH] 엑셀기능 추가

---
 src/main/webapp/views/workspace/workspaceUserLevelConfig.html                |    4 +-
 src/main/java/kr/wisestone/owl/vo/UserLevelVo.java                           |   72 ++++++++++++++++++++++++++++++++++++
 src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java        |   16 +++++++-
 src/main/resources/mybatis/query-template/userLevel-template.xml             |    4 +
 src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java         |    1 
 src/main/webapp/scripts/app/workspace/workspace.js                           |    2 
 src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js |    8 ++++
 7 files changed, 101 insertions(+), 6 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java
index b721a16..a175487 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java
@@ -227,13 +227,25 @@
         }
 
         UserLevelCondition userLevelCondition = UserLevelCondition.make(conditions);
-        userLevelCondition.setLevelName(this.userLevelService.getUserLevel(this.webAppUtil.getLoginId()).getLevelName());
         List<Map<String, Object>> results = this.userLevelMapper.find(userLevelCondition);
         List<UserLevelVo> userLevelVos = ConvertUtil.convertListToListClass(results, UserLevelVo.class);
 
+        for (UserLevelVo vo : userLevelVos) {
+            vo.toPermissionValues();
+        }
+
         ExportExcelVo excelInfo = new ExportExcelVo();
         excelInfo.setFileName(this.messageAccessor.message("�궗�슜�옄 紐⑸줉"));
-        excelInfo.addAttrInfos(new ExportExcelAttrVo("levelName", "�벑湲됰챸", 6, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("levelName", this.messageAccessor.message("managementWorkspace.levelName"), 6, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("permWorkSpaceSetting", this.messageAccessor.message("manageUser.manageWorkspacePerm"), 3, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("permProjectSetting", this.messageAccessor.message("manageUser.manageProjectPerm"), 3, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("permIssueSetting", this.messageAccessor.message("manageUser.manageIssueSystemPerm"), 3, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("permUser", this.messageAccessor.message("manageUser.manageUserPerm"), 3, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("permNotice", this.messageAccessor.message("manageUser.manageNoticePerm"), 3, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("permFAQ", this.messageAccessor.message("manageUser.manageFAQPerm"), 3, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("permQnA", this.messageAccessor.message("manageUser.manageQnAPerm"), 3, ExportExcelAttrVo.ALIGN_CENTER));
+        excelInfo.addAttrInfos(new ExportExcelAttrVo("permGuide", this.messageAccessor.message("manageUser.manageGuidePerm"), 3, ExportExcelAttrVo.ALIGN_CENTER));
+
         excelInfo.setDatas(userLevelVos);
 
         model.addAttribute(Constants.EXCEL, excelInfo);
diff --git a/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java b/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java
index 50c74f0..ec1fbdb 100644
--- a/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java
+++ b/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java
@@ -83,6 +83,78 @@
         this.modifyPermissionCheck = modifyPermissionCheck;
     }
 
+    public Boolean getPermWorkSpaceSetting() {
+        return permWorkSpaceSetting;
+    }
+
+    public void setPermWorkSpaceSetting(Boolean permWorkSpaceSetting) {
+        this.permWorkSpaceSetting = permWorkSpaceSetting;
+    }
+
+    public Boolean getPermProjectSetting() {
+        return permProjectSetting;
+    }
+
+    public void setPermProjectSetting(Boolean permProjectSetting) {
+        this.permProjectSetting = permProjectSetting;
+    }
+
+    public Boolean getPermIssueSetting() {
+        return permIssueSetting;
+    }
+
+    public void setPermIssueSetting(Boolean permIssueSetting) {
+        this.permIssueSetting = permIssueSetting;
+    }
+
+    public Boolean getPermUser() {
+        return permUser;
+    }
+
+    public void setPermUser(Boolean permUser) {
+        this.permUser = permUser;
+    }
+
+    public Boolean getPermNotice() {
+        return permNotice;
+    }
+
+    public void setPermNotice(Boolean permNotice) {
+        this.permNotice = permNotice;
+    }
+
+    public Boolean getPermFAQ() {
+        return permFAQ;
+    }
+
+    public void setPermFAQ(Boolean permFAQ) {
+        this.permFAQ = permFAQ;
+    }
+
+    public Boolean getPermQnA() {
+        return permQnA;
+    }
+
+    public void setPermQnA(Boolean permQnA) {
+        this.permQnA = permQnA;
+    }
+
+    public Boolean getPermEvent() {
+        return permEvent;
+    }
+
+    public void setPermEvent(Boolean permEvent) {
+        this.permEvent = permEvent;
+    }
+
+    public Boolean getPermGuide() {
+        return permGuide;
+    }
+
+    public void setPermGuide(Boolean permGuide) {
+        this.permGuide = permGuide;
+    }
+
     public void toPermissionValues() {
         this.permWorkSpaceSetting = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_WORKSPACE);
         this.permProjectSetting = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_PROJECT);
diff --git a/src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java b/src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java
index 12229d3..5757160 100644
--- a/src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java
+++ b/src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java
@@ -16,6 +16,7 @@
     private Integer permission;
     private String defaultYn;
     private String basicUser;
+
     private Integer page;
     private Integer pageSize;
 
diff --git a/src/main/resources/mybatis/query-template/userLevel-template.xml b/src/main/resources/mybatis/query-template/userLevel-template.xml
index 629dd12..9a1659a 100644
--- a/src/main/resources/mybatis/query-template/userLevel-template.xml
+++ b/src/main/resources/mybatis/query-template/userLevel-template.xml
@@ -17,7 +17,9 @@
         <if test="id != '' and id != null">
             AND ul.id like CONCAT('%',#{id},'%')
         </if>
-        limit #{pageSize} offset #{page};
+        <if test="pageSize != '' and pageSize != null">
+            limit #{pageSize} offset #{page};
+        </if>
     </select>
 
     <select id="count" resultType="java.lang.Long" parameterType="kr.wisestone.owl.web.condition.UserLevelCondition">
diff --git a/src/main/webapp/scripts/app/workspace/workspace.js b/src/main/webapp/scripts/app/workspace/workspace.js
index 0a2c02e..6111fc7 100644
--- a/src/main/webapp/scripts/app/workspace/workspace.js
+++ b/src/main/webapp/scripts/app/workspace/workspace.js
@@ -33,7 +33,7 @@
                         loadController : ["$q", function ($q) {
                             var deferred = $q.defer();
                             require(["modalFormAutoScroll", "workspaceController", "workspaceLevelAddController", "workspaceDepartmentAddController", "workspacePaymentExecuteController", "workspaceUserConfigController", "workspacePaymentModifyController",
-                                "workspacePaymentAgreeTermController", "paymentService", "userWorkspaceService", "workspaceService", "numberOnly", 'jsTable', 'tableColumnGenerator', 'summerNote', 'summerNote-ko-KR',
+                                "workspacePaymentAgreeTermController", "paymentService", "userWorkspaceService", "workspaceService", "numberOnly", 'jsTable', 'tableColumnGenerator', 'summerNote', 'summerNote-ko-KR', 'formSubmit',
                                 "crypto", "reservationDisableUserService", "workspacePaymentAddController", "workspaceUserLevelController", "workspaceDepartmentConfigController", "levelModifyController"], function () {
                                 deferred.resolve();
                             });
diff --git a/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js b/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js
index 26d43b3..1a80df0 100644
--- a/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js
+++ b/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js
@@ -20,6 +20,7 @@
                 $scope.fn.changePageRowCount = changePageRowCount;  //  �뾽臾� 怨듦컙 李몄뿬 �궗�슜�옄 紐⑸줉 蹂닿린 媛쒖닔 蹂�寃�
                 $scope.fn.levelAdd = levelAdd;    //  �벑湲� 異붽�
                 $scope.fn.removes = removes;    // �궗�슜�옄 �벑湲� �궘�젣
+                $scope.fn.makeSearchConditions = makeSearchConditions;
 
                 /*  $scope.vm �긽�냽 以�  */
                 $scope.vm.search = {
@@ -47,6 +48,13 @@
                     $scope.fn.getUserLevelList(0);
                 });
 
+                function makeSearchConditions() {
+                    var conditions = {
+                        levelName: $scope.vm.search.levelName
+                    }
+                    return conditions;
+                }
+
                 //  �궗�슜�옄 �벑湲� �닔�젙
                 function modifyLevel(id) {
                     $uibModal.open({
diff --git a/src/main/webapp/views/workspace/workspaceUserLevelConfig.html b/src/main/webapp/views/workspace/workspaceUserLevelConfig.html
index 894f8e3..c0e2b6f 100644
--- a/src/main/webapp/views/workspace/workspaceUserLevelConfig.html
+++ b/src/main/webapp/views/workspace/workspaceUserLevelConfig.html
@@ -45,13 +45,13 @@
                         </div>
                     </div>
                     <div class="col-sm-6 text-right" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_USER')">
-                        <form class="form-inline justify-content-sm-end pull-right ng-pristine ng-valid" method="post" action="/workspace/downloadExcel" name="userLevelListForm">
+                        <form class="form-inline justify-content-sm-end pull-right ng-pristine ng-valid" method="post" action="/userLevel/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-isolate-scope" form-submit="userLevelListForm" 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>

--
Gitblit v1.8.0