From aa5f2612d0b035a210dda5818e0d3d166efa6a0a Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 수, 03 11월 2021 18:05:12 +0900 Subject: [PATCH] 사용자등급관리 프론트 수정(상세보기 불가) --- src/main/webapp/scripts/app/manageUser/manageUser.controller.js | 7 src/main/java/kr/wisestone/owl/web/form/ManageUserForm.java | 10 src/main/webapp/scripts/app/workspace/levelModify.controller.js | 114 ++++++++++++++ src/main/resources/mybatis/query-template/user-template.xml | 4 src/main/resources/mybatis/query-template/userLevel-template.xml | 2 src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js | 2 src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js | 2 src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java | 14 src/main/webapp/scripts/app/workspace/workspacePaymentExecute.controller.js | 5 src/main/webapp/scripts/main.js | 1 src/main/webapp/views/workspace/workspaceUserLevelConfig.html | 47 ----- src/main/java/kr/wisestone/owl/vo/ManageUserVo.java | 4 src/main/webapp/views/workspace/workspaceLevelModify.html | 114 ++++++++++++++ src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java | 2 src/main/java/kr/wisestone/owl/constant/MsgConstants.java | 2 src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties | 1 src/main/webapp/scripts/app/workspace/workspace.js | 2 src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js | 80 +++------ src/main/java/kr/wisestone/owl/service/impl/UserWorkspaceServiceImpl.java | 6 src/main/java/kr/wisestone/owl/vo/UserLevelVo.java | 4 src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java | 1 src/main/webapp/views/workspace/workspaceLevelAdd.html | 11 + src/main/webapp/i18n/ko/global.json | 3 src/main/java/kr/wisestone/owl/service/impl/ManageUserServiceImpl.java | 2 src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js | 13 + 25 files changed, 316 insertions(+), 137 deletions(-) diff --git a/src/main/java/kr/wisestone/owl/constant/MsgConstants.java b/src/main/java/kr/wisestone/owl/constant/MsgConstants.java index 6fa3dd9..0136cc5 100644 --- a/src/main/java/kr/wisestone/owl/constant/MsgConstants.java +++ b/src/main/java/kr/wisestone/owl/constant/MsgConstants.java @@ -204,6 +204,6 @@ public static final String PAGE_NEGATIVE_OR_NULL = "PAGE_NEGATIVE_OR_NULL"; // �슂泥��븳 �럹�씠吏� �젙蹂닿� �옒紐삳릺�뿀�뒿�땲�떎. public static final String PAGE_SIZE_NEGATIVE_OR_NULL = "PAGE_SIZE_NEGATIVE_OR_NULL"; // �슂泥��븳 �럹�씠吏� �겕湲곌� �옒紐삳릺�뿀�뒿�땲�떎. - public static final String USER_LEVEL_ALREADY = "USER_LEVEL_ALREADY"; // �궗�슜�옄 �벑湲됱쓣 �궗�슜�븯怨� �엳�뒗 �궗�슜�옄媛� �엳�뒿�땲�떎. + public static final String USER_LEVEL_ALREADY_IN_USE = "USER_LEVEL_ALREADY_IN_USE"; // �궗�슜�옄 �벑湲됱쓣 �궗�슜�븯怨� �엳�뒗 �궗�슜�옄媛� �엳�뒿�땲�떎. } diff --git a/src/main/java/kr/wisestone/owl/service/impl/ManageUserServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/ManageUserServiceImpl.java index 91cf560..60fc0e9 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/ManageUserServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/ManageUserServiceImpl.java @@ -95,7 +95,7 @@ public void modifyUserPermission(ManageUserForm manageUserForm) { int newPermission = MngPermission.USER_PERMISSION_MNG_NONE; - newPermission |= MngPermission.makePermission(manageUserForm.getPermWorkSpace(), MngPermission.USER_PERMISSION_MNG_WORKSPACE); + newPermission |= MngPermission.makePermission(manageUserForm.getPermWorkSpaceSetting(), MngPermission.USER_PERMISSION_MNG_WORKSPACE); newPermission |= MngPermission.makePermission(manageUserForm.getPermProjectSetting(), MngPermission.USER_PERMISSION_MNG_PROJECT); newPermission |= MngPermission.makePermission(manageUserForm.getPermIssueSetting(), MngPermission.USER_PERMISSION_MNG_ISSUE_SETTING); newPermission |= MngPermission.makePermission(manageUserForm.getPermUser(), MngPermission.USER_PERMISSION_MNG_USER); 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 8e35538..23a7a91 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java @@ -100,7 +100,7 @@ this.userLevelRepository.deleteById(id); } else { throw new OwlRuntimeException( - this.messageAccessor.getMessage(MsgConstants.USER_LEVEL_ALREADY)); + this.messageAccessor.getMessage(MsgConstants.USER_LEVEL_ALREADY_IN_USE)); } } diff --git a/src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java index 760b213..2d009dd 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java @@ -1027,6 +1027,7 @@ this.userRepository.saveAndFlush(user); } + // �궘�젣 �븷 �벑湲됰챸�쓣 �쑀��媛� �궗�슜�븯怨� �엳�뒗吏� �솗�씤 @Override public boolean useUserLevel(Long levelId) { return this.userMapper.findByLevelId(levelId) > 0; diff --git a/src/main/java/kr/wisestone/owl/service/impl/UserWorkspaceServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/UserWorkspaceServiceImpl.java index f830917..405cfe5 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/UserWorkspaceServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/UserWorkspaceServiceImpl.java @@ -75,17 +75,17 @@ public List<UserWorkspaceVo> findUserWorkspace(Map<String, Object> resJsonData, UserWorkspaceCondition condition, Pageable pageable) { - UserWorkspace userWorkspace = this.findMyWorkspace(this.webAppUtil.getLoginId()); //濡쒓렇�씤�븳 �븘�씠�뵒 + UserWorkspace userWorkspace = this.findMyWorkspace(this.webAppUtil.getLoginId()); Workspace myWorkspace = userWorkspace.getWorkspace(); condition.setPage(pageable.getPageNumber() * pageable.getPageSize()); condition.setPageSize(pageable.getPageSize()); condition.setWorkspaceId(myWorkspace.getId()); - condition.setAccount(CommonUtil.encryptAES128(condition.getAccount())); + condition.setAccount(CommonUtil.encryptAES128(condition.getAccount())); //怨꾩젙 �븫�샇�솕(�븘�닔 �룞�옉) List<Map<String, Object>> results = this.userWorkspaceMapper.find(condition); Long totalCount = this.userWorkspaceMapper.count(condition); int totalPage = (int) Math.ceil((totalCount - 1) / pageable.getPageSize()) + 1; - List<UserWorkspaceVo> userWorkspaceVos = ConvertUtil.convertListToListClass(results, UserWorkspaceVo.class); + List<UserWorkspaceVo> userWorkspaceVos = ConvertUtil.convertListToListClass(results, UserWorkspaceVo.class); //UserWorkspace�쓽 �뜲�씠�꽣瑜� 由ъ뒪�듃 �삎�떇�쑝濡� 蹂듭궗�빐�꽌 UserWorkspaceVo�뿉 �떞湲� for (UserWorkspaceVo userWorkspaceVo : userWorkspaceVos) { userWorkspaceVo.setAccount(CommonUtil.decryptAES128(userWorkspaceVo.getAccount())); diff --git a/src/main/java/kr/wisestone/owl/vo/ManageUserVo.java b/src/main/java/kr/wisestone/owl/vo/ManageUserVo.java index 157f131..ec442be 100644 --- a/src/main/java/kr/wisestone/owl/vo/ManageUserVo.java +++ b/src/main/java/kr/wisestone/owl/vo/ManageUserVo.java @@ -12,7 +12,7 @@ private Boolean useYn; private Integer permission; private Long userId; - public Boolean permWorkSpace; + public Boolean permWorkSpaceSetting; public Boolean permProjectSetting; public Boolean permIssueSetting; public Boolean permUser; @@ -66,7 +66,7 @@ } private void makePermission() { - this.permWorkSpace = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_WORKSPACE); + this.permWorkSpaceSetting = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_WORKSPACE); this.permProjectSetting = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_PROJECT); this.permIssueSetting = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_ISSUE_SETTING); this.permUser = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_USER); diff --git a/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java b/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java index 9d8325b..d0e51a8 100644 --- a/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java +++ b/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java @@ -14,7 +14,7 @@ private String levelName; private Integer permission; - public Boolean permWorkSpace; + public Boolean permWorkSpaceSetting; public Boolean permProjectSetting; public Boolean permIssueSetting; public Boolean permUser; @@ -66,7 +66,7 @@ } public void toPermissionValues() { - this.permWorkSpace = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_WORKSPACE); + this.permWorkSpaceSetting = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_WORKSPACE); this.permProjectSetting = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_PROJECT); this.permIssueSetting = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_ISSUE_SETTING); this.permUser = MngPermission.checkMngPermission(this.permission, MngPermission.USER_PERMISSION_MNG_USER); diff --git a/src/main/java/kr/wisestone/owl/web/form/ManageUserForm.java b/src/main/java/kr/wisestone/owl/web/form/ManageUserForm.java index 21f1cb5..22c2b91 100644 --- a/src/main/java/kr/wisestone/owl/web/form/ManageUserForm.java +++ b/src/main/java/kr/wisestone/owl/web/form/ManageUserForm.java @@ -14,7 +14,7 @@ private Long id; private Boolean useYn; private Long userId; - private Boolean permWorkSpace; + private Boolean permWorkSpaceSetting; private Boolean permProjectSetting; private Boolean permIssueSetting; private Boolean permUser; @@ -56,12 +56,12 @@ this.userId = userId; } - public Boolean getPermWorkSpace() { - return permWorkSpace; + public Boolean getPermWorkSpaceSetting() { + return permWorkSpaceSetting; } - public void setPermWorkSpace(Boolean permWorkSpace) { - this.permWorkSpace = permWorkSpace; + public void setPermWorkSpaceSetting(Boolean permWorkSpaceSetting) { + this.permWorkSpaceSetting = permWorkSpaceSetting; } public Boolean getPermProjectSetting() { diff --git a/src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java b/src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java index 047cdc1..29438da 100644 --- a/src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java +++ b/src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java @@ -43,13 +43,6 @@ return form; } - public Boolean getPermWorkspaceSetting() { - return permWorkspaceSetting; - } - - public void setPermWorkspaceSetting(Boolean permWorkspaceSetting) { - this.permWorkspaceSetting = permWorkspaceSetting; - } public Long getId() { return id; @@ -75,6 +68,13 @@ this.permission = permission; } + public Boolean getPermWorkspaceSetting() { + return permWorkspaceSetting; + } + + public void setPermWorkspaceSetting(Boolean permWorkspaceSetting) { + this.permWorkspaceSetting = permWorkspaceSetting; + } public Boolean getPermProjectSetting() { return permProjectSetting; diff --git a/src/main/resources/mybatis/query-template/user-template.xml b/src/main/resources/mybatis/query-template/user-template.xml index a1433b4..93a60ef 100644 --- a/src/main/resources/mybatis/query-template/user-template.xml +++ b/src/main/resources/mybatis/query-template/user-template.xml @@ -170,10 +170,10 @@ GROUP BY u.id ORDER BY issueCount desc, loginCount DESC; </select> - <select id="findByLevelId" resultType="java.util.HashMap" parameterType="java.lang.Long"> + <select id="findByLevelId" resultType="java.lang.Long" parameterType="java.lang.Long"> SELECT count(u.id) FROM user u - WHERE u.level_id = #{id} + WHERE u.level_id = #{levelId} </select> </mapper> \ No newline at end of file diff --git a/src/main/resources/mybatis/query-template/userLevel-template.xml b/src/main/resources/mybatis/query-template/userLevel-template.xml index 61ede06..e967c0e 100644 --- a/src/main/resources/mybatis/query-template/userLevel-template.xml +++ b/src/main/resources/mybatis/query-template/userLevel-template.xml @@ -10,7 +10,7 @@ ul.permission as permission FROM user_level ul - WHERE 1=1 + WHERE id != 1 AND 1=1 <if test="levelName != '' and levelName != null"> AND ul.level_name like CONCAT('%',#{levelName},'%') </if> diff --git a/src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties b/src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties index 15bda99..3973425 100644 --- a/src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties +++ b/src/main/webapp/WEB-INF/i18n/messages_ko_KR.properties @@ -149,6 +149,7 @@ USER_EXPIRED_PASSWORD = \uBE44\uBC00\uBC88\uD638\uAC00 \uB9CC\uB8CC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. USER_RETURN_PASSWORD_NOT_PROVIDER_SOCIAL_JOIN_USER = \uBE44\uBC00\uBC88\uD638 \uCC3E\uAE30 \uAE30\uB2A5\uC744 \uC18C\uC15C \uACC4\uC815 \uAC00\uC785 \uC0AC\uC6A9\uC790\uB294 \uC0AC\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. USER_NOT_USE_ACTIVE_STATUS = \uC0AC\uC6A9\uC790\uB294 \uD65C\uC131 \uC0C1\uD0DC\uAC00 \uC544\uB2C8\uBA74 \uB85C\uADF8\uC778\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. +USER_LEVEL_ALREADY_IN_USE = \uC120\uD0DD\uD55C \uC0AC\uC6A9\uC790 \uB4F1\uAE09\uC744 \uC774\uBBF8 \uC0AC\uC6A9\uD558\uACE0 \uC788\uB294 \uC0AC\uC6A9\uC790\uAC00 \uC788\uC2B5\uB2C8\uB2E4. EXCEL_NOT_EXTENSION = \uC5D1\uC140 \uD30C\uC77C \uD655\uC7A5\uC790 (xlsx)\uB9CC \uC5C5\uB85C\uB4DC\uAC00 \uAC00\uB2A5\uD569\uB2C8\uB2E4. EXCEL_DOWNLOAD_MAX_ROWS_OVER = \uC5D1\uC140 \uB2E4\uC6B4\uB85C\uB4DC\uB294 1.000 \uAC74 \uAE4C\uC9C0\uB9CC \uAC00\uB2A5\uD569\uB2C8\uB2E4. \uAC80\uC0C9 \uC870\uAC74\uC744 \uC0AC\uC6A9\uD558\uC5EC \uC870\uD68C\uB418\uB294 \uBAA9\uB85D\uC744 1,000 \uAC74 \uC774\uD558\uB85C \uBCC0\uACBD\uD558\uC5EC \uB2E4\uC6B4\uB85C\uB4DC\uB97C \uC9C4\uD589\uD574\uC8FC\uC138\uC694. 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 3a4d86d..398df12 100644 --- a/src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js +++ b/src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js @@ -283,8 +283,17 @@ makeTag += "<a ng-click='event.fileRemove(data.index)'><i class='fa fa-trash fa-lg' uib-tooltip='�젣嫄�'></i></a>"; break; - case "WORKSPACE_USE_YN" : - makeTag += "<label class='switch'><input type='checkbox' ng-model='data.useYn' ng-click='event.modifyUserWorkspace(data)'><span class='slider round'></span></label>"; + case "USER_LEVEL_MODIFY": + if ($rootScope.checkMngPermission('USER_PERMISSION_MNG_WORKSPACE')) { + makeTag += "<span class='titlename cursor table-word-break-all' ng-click='event.modify(data.id)'>" + scope.data.levelName.replace(/</gi, '<') + "</span>"; + } + else { + makeTag += "<span class='titlename cursor table-word-break-all'>" + scope.data.levelName + "</span>"; + } + break; + + case "WORKSPACE_SETTING_PERM_YN" : + makeTag += "<label class='switch'><input type='checkbox' ng-model='data.permWorkSpaceSetting' ng-click='event.modify(data)'><span class='slider round'></span></label>"; break; case "PROJECT_SETTING_PERM_YN" : diff --git a/src/main/webapp/i18n/ko/global.json b/src/main/webapp/i18n/ko/global.json index 0251df0..7cc9db7 100644 --- a/src/main/webapp/i18n/ko/global.json +++ b/src/main/webapp/i18n/ko/global.json @@ -138,7 +138,8 @@ "failedToModifyWorkspaceName": "�뾽臾� 怨듦컙 紐� �닔�젙 �떎�뙣", "failedToRegularPaymentChange": "�젙湲� 寃곗젣 蹂�寃� �떎�뙣", "failedToParticipationStatusChange": "李몄뿬 �긽�깭 蹂�寃� �떎�뙣", - "failedToSelectWorkspaceFullUserList": "�뾽臾� 怨듦컙 �쟾泥� �궗�슜�옄 紐⑸줉 議고쉶 �떎�뙣" + "failedToSelectWorkspaceFullUserList": "�뾽臾� 怨듦컙 �쟾泥� �궗�슜�옄 紐⑸줉 議고쉶 �떎�뙣", + "failedToModifyUserLevel": "�궗�슜�옄 �벑湲� �긽�꽭 �젙蹂� 議고쉶 �떎�뙣" }, "issue": { "issueType": "�씠�뒋 �쑀�삎", diff --git a/src/main/webapp/scripts/app/manageUser/manageUser.controller.js b/src/main/webapp/scripts/app/manageUser/manageUser.controller.js index a36d03d..4728331 100644 --- a/src/main/webapp/scripts/app/manageUser/manageUser.controller.js +++ b/src/main/webapp/scripts/app/manageUser/manageUser.controller.js @@ -103,6 +103,13 @@ .setHWidth("width-40-p") .setDAlign("text-center") .setDName("account")); + $scope.vm.tableConfigs1.push($tableProvider.config() + .setHName("manageUser.manageWorkspacePerm") + .setHWidth("width-120-p") + .setDType("renderer") + .setDAlign("text-center") + .setDName("manageWorkspace") + .setDRenderer("WORKSPACE_SETTING_PERM_YN")); $scope.vm.tableConfigs.push($tableProvider.config() .setHName("manageUser.manageProjectPerm") .setHWidth("width-20-p") diff --git a/src/main/webapp/scripts/app/workspace/levelModify.controller.js b/src/main/webapp/scripts/app/workspace/levelModify.controller.js new file mode 100644 index 0000000..9994975 --- /dev/null +++ b/src/main/webapp/scripts/app/workspace/levelModify.controller.js @@ -0,0 +1,114 @@ +/** + * Created by wisestone on 2018-05-08. + */ +'use strict'; + +define([ + 'app', + 'angular' + ], + function (app, angular) { + app.controller('levelModifyController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$uibModalInstance', 'UserWorkspace', 'parameter', 'SweetAlert', '$filter', + function ($scope, $rootScope, $log, $resourceProvider, $uibModalInstance, UserWorkspace, parameter, SweetAlert, $filter) { + + $scope.fn = { + cancel : cancel, // �뙘�뾽 李� �떕湲� + formSubmit : formSubmit, // �뤌 �쟾�넚 + formCheck : formCheck, // �뤌 泥댄겕 + modifyUserPermission : modifyUserPermission, // 沅뚰븳 蹂�寃� + //detail : detail // �긽�꽭 �젙蹂� + }; + + $scope.vm = { + search : { + id : parameter.id + }, + form : { + levelName : "", + permWorkspaceSetting : false, + permProjectSetting : false, + permIssueSetting : false, + permUser : false, + permNotice : false, + permFAQ : false, + permQnA : false, + permGuide : false + } + }; + + function formCheck(formInvalid) { + if (formInvalid) { + return true; + } + + return false; + } + + // �뤌 �쟾�넚 + function formSubmit(condition) { + $rootScope.spinner = true; + + var content = { + id : parameter.id, + title : $rootScope.preventXss($scope.vm.form.title), + //description : $rootScope.preventXss($scope.vm.form.description) + }; + + UserWorkspace.modify($resourceProvider.getContent(condition, + content, + $resourceProvider.getPageContent(0, 0))).then(function (result) { + + if (result.data.message.status === "success") { + $scope.fn.cancel(); + // 紐⑸줉 �솕硫� 媛깆떊 + $rootScope.$broadcast("getUserLevelList", {}); + } + else { + SweetAlert.error($filter("translate")("managementWorkspace.failedLevelRegistration"), result.data.message.message); + } + + $rootScope.spinner = false; + }); + + } + + // �뙘�뾽 李� �떕湲� + function cancel() { + $rootScope.$broadcast("closeLayer"); // �뙘�뾽�씠 �뿴由ш퀬 �굹�꽌 js-multi, js-single �벑�뿉�꽌 body �씠踰ㅽ듃媛� �궇�븘媛��뒗 �쁽�긽 �닔�젙 + $uibModalInstance.dismiss('cancel'); + $(document).unbind("keydown"); // �떒異뺥궎 �씠踰ㅽ듃 �젣嫄� + } + + /*// �긽�꽭 議고쉶 + function detail() { + Notice.detail($resourceProvider.getContent( + $scope.vm.search, + $resourceProvider.getPageContent(0, 1))).then(function (result) { + + if (result.data.message.status === "success") { + if ($rootScope.isDefined(result.data.data)) { + $scope.vm.form.title = result.data.data.title; + $scope.vm.form.description = result.data.data.description; + } + } + else { + SweetAlert.error($filter("translate")("managementWorkspace.failedToModifyUserLevel"), result.data.message.message); //怨듭��궗�빆 �긽�꽭 �젙蹂� 議고쉶 �떎�뙣 + } + }); + } + // 怨듭��궗�빆 �긽�꽭 議고쉶 + $scope.fn.detail();*/ + + function modifyUserPermission(userPermission ) { + UserWorkspace.levelModify($resourceProvider.getContent(userPermission, + $resourceProvider.getPageContent(0, 0))).then(function (result) { + if (result.data.message.status === "success") { + } + else { + SweetAlert.error($filter("translate")("managementWorkspace.failedToParticipationStatusChange"), result.data.message.message); // "李몄뿬 �긽�깭 蹂�寃� �떎�뙣" + } + }); + } + + }]); + }); diff --git a/src/main/webapp/scripts/app/workspace/workspace.js b/src/main/webapp/scripts/app/workspace/workspace.js index 2362b7b..0a2c02e 100644 --- a/src/main/webapp/scripts/app/workspace/workspace.js +++ b/src/main/webapp/scripts/app/workspace/workspace.js @@ -34,7 +34,7 @@ var deferred = $q.defer(); require(["modalFormAutoScroll", "workspaceController", "workspaceLevelAddController", "workspaceDepartmentAddController", "workspacePaymentExecuteController", "workspaceUserConfigController", "workspacePaymentModifyController", "workspacePaymentAgreeTermController", "paymentService", "userWorkspaceService", "workspaceService", "numberOnly", 'jsTable', 'tableColumnGenerator', 'summerNote', 'summerNote-ko-KR', - "crypto", "reservationDisableUserService", "workspacePaymentAddController", "workspaceUserLevelController", "workspaceDepartmentConfigController"], function () { + "crypto", "reservationDisableUserService", "workspacePaymentAddController", "workspaceUserLevelController", "workspaceDepartmentConfigController", "levelModifyController"], function () { deferred.resolve(); }); diff --git a/src/main/webapp/scripts/app/workspace/workspacePaymentExecute.controller.js b/src/main/webapp/scripts/app/workspace/workspacePaymentExecute.controller.js index 9cf9b8a..097a9c6 100644 --- a/src/main/webapp/scripts/app/workspace/workspacePaymentExecute.controller.js +++ b/src/main/webapp/scripts/app/workspace/workspacePaymentExecute.controller.js @@ -220,7 +220,8 @@ return; } - Payment.detail($resourceProvider.getContent(content, + //"�궗�슜�옄 愿�由�" �꺆�쑝濡� �씠�룞 �떆 Payment/detail �슂泥��씠 �뱾�뼱���꽌 �븘�옒�궡�슜 二쇱꽍泥섎━ + /*Payment.detail($resourceProvider.getContent(content, $resourceProvider.getPageContent(0, 0))).then(function (result) { if (result.data.message.status === "success") { if (result.data.data != null) { @@ -232,7 +233,7 @@ else { SweetAlert.error($filter("translate")("managementWorkspace.failedToPaymentInformation"), result.data.message.message); // "寃곗젣 �젙蹂� 議고쉶 �떎�뙣" } - }); + });*/ } // �뾽臾� 怨듦컙 紐� �닔�젙 diff --git a/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js b/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js index 3f5130c..2b2852d 100644 --- a/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js +++ b/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js @@ -56,7 +56,7 @@ modifyUserWorkspace : modifyUserWorkspace // �뾽臾� 怨듦컙 李몄뿬�븯�뒗 �궗�슜�옄�쓽 李몄뿬 �긽�깭 蹂�寃� }; - // 寃곗젣 �긽�꽭 �젙蹂� + // �긽�꽭 �젙蹂� $scope.$on("getUserWorkspaceList", function () { $scope.fn.getUserWorkspaceList(0); }); diff --git a/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js b/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js index fb39d05..ac7a1ac 100644 --- a/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js +++ b/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js @@ -19,8 +19,8 @@ $scope.fn.initSearch = initSearch; // 寃��깋 議곌굔 珥덇린�솕 $scope.fn.levelAdd = levelAdd; // �벑湲� 異붽� $scope.fn.removes = removes; // �궗�슜�옄 �벑湲� �궘�젣 - $scope.fn.getPageList = getPageList; // 紐⑸줉 議고쉶 $scope.fn.listView = listView; // 紐⑸줉 �솕硫댁쑝濡� 蹂�寃� + $scope.fn.modify = modify; // �궗�슜�옄 �벑湲� �닔�젙 /* $scope.vm �긽�냽 以� */ $scope.vm.search = { @@ -40,61 +40,13 @@ // �뀒�씠釉� �씠踰ㅽ듃 $scope.vm.tableEvent = { - // modifyUserWorkspace : modifyUserWorkspace // �뾽臾� 怨듦컙 李몄뿬�븯�뒗 �궗�슜�옄�쓽 李몄뿬 �긽�깭 蹂�寃� + modify : modify // �뾽臾� 怨듦컙 李몄뿬�븯�뒗 �궗�슜�옄�쓽 李몄뿬 �긽�깭 蹂�寃� }; // �궗�슜�옄 �벑湲� 由ъ뒪�듃 遺덈윭�삤湲� $scope.$on("getUserLevelList", function () { $scope.fn.getUserLevelList(0); }); - - // �씠�뒋 紐⑸줉�쓣 議고쉶�븳�떎. - function getPageList(selectedPage, detail = false) { - if (selectedPage < 0) { - selectedPage = 0; - } - // �쁽�옱 �럹�씠吏� �젙蹂� - var currentPage = 0; - - // 荑좏궎�뿉 �꽑�깮�븳 �럹�씠吏� �젙蹂닿� �뾾�쑝硫� 湲곕낯 �럹�씠吏� �젙蹂� 0 �쓣 ���옣 - if (angular.isUndefined(selectedPage) || selectedPage === "") { - currentPage = $scope.vm.page.selectedPage; - } - else { - currentPage = selectedPage; - } - - - // 寃��깋 議곌굔�쓣 ���옣�븳�떎. - //$scope.fn.makeVmSearchObject(); - - - // �쁽�옱 �꽑�깮�맂 �봽濡쒖젥�듃瑜� 寃��깋 湲곕낯�쑝濡� 異붽� - if ($rootScope.workProject != null && $rootScope.workProject.id > -1) { - var find = findProjectSearch($rootScope.workProject.id); - if (!find) { - $scope.vm.projects.push($rootScope.workProject); - } - } - - // �씠�뒋 寃��깋 議곌굔�쓣 留뚮뱺�떎. - var conditions = $scope.fn.makeSearchConditions(); - - Issue.find($resourceProvider.getContent(conditions, - $resourceProvider.getPageContent(currentPage, $scope.vm.page.selectedPageRowCount))).then(function (result) { - - if (result.data.message.status === "success") { - $scope.vm.page.selectedPage = currentPage + 1; - $scope.vm.responseData = result.data; - if (detail) { - changeDetailView(result.data.data[0].id); - } - } - else { - SweetAlert.error($filter("translate")("issue.failedIssueLookup"), result.data.message.message); // �씠�뒋 議고쉶 �떎�뙣 - } - }); - } // 紐⑸줉 �솕硫댁쑝濡� 蹂�寃쏀븳�떎. function listView() { @@ -105,6 +57,23 @@ $scope.vm.responseData.data = angular.copy(temp); // 留덉�留됱쑝濡� 蹂닿퀬�엳�뜕 �씠�뒋 id瑜� 珥덇린�솕�븳�떎. $rootScope.currentDetailIssueId = null; + } + + // �궗�슜�옄 �벑湲� �닔�젙 + function modify(id) { + $uibModal.open({ + templateUrl : 'views/workspace/workspaceLevelModify.html', + size : "md", + controller : 'levelModifyController', + backdrop : 'static', + resolve : { + parameter : function () { + return { + id : id + }; + } + } + }); } // �궗�슜�옄 �벑湲� �궘�젣 @@ -169,8 +138,7 @@ }, 100); $scope.fn.listView(); - - $scope.fn.getPageList(0); + $scope.fn.getUserLevelList(0); } else { $timeout(function () { @@ -205,14 +173,15 @@ .setHName("managementWorkspace.levelName") .setHWidth("width-120-p") .setDAlign("text-center") - .setDName("levelName")); + .setDType("renderer") + .setDRenderer("USER_LEVEL_MODIFY")); $scope.vm.tableConfigs1.push($tableProvider.config() .setHName("manageUser.manageWorkspacePerm") .setHWidth("width-120-p") .setDType("renderer") .setDAlign("text-center") - .setDName("manageProject") - .setDRenderer("WORKSPACE_USE_YN")); + .setDName("manageWorkspace") + .setDRenderer("WORKSPACE_SETTING_PERM_YN")); $scope.vm.tableConfigs1.push($tableProvider.config() .setHName("manageUser.manageProjectPerm") .setHWidth("width-120-p") @@ -297,6 +266,7 @@ } }); } + // �벑湲� 異붽� function levelAdd() { $uibModal.open({ diff --git a/src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js b/src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js index 5c4c279..86dd39f 100644 --- a/src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js +++ b/src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js @@ -49,7 +49,7 @@ }); }, modify : function (conditions) { - return $http.post("userWorkspace/modify", conditions).then(function (response) { + return $http.post("userLevel/modify", conditions).then(function (response) { $log.debug("�썙�겕�뒪�럹�씠�뒪 李몄뿬�옄 李몄뿬 �긽�깭 蹂�寃� 寃곌낵 : ", response); return response; }); diff --git a/src/main/webapp/scripts/main.js b/src/main/webapp/scripts/main.js index 4528d6b..c26e97e 100644 --- a/src/main/webapp/scripts/main.js +++ b/src/main/webapp/scripts/main.js @@ -226,6 +226,7 @@ 'workspacePaymentAgreeTermController' : 'app/workspace/workspacePaymentAgreeTerm.controller', // �뾽臾� 怨듦컙 �씠�슜 �빟愿� �솗�씤 而⑦듃濡ㅻ윭 'workspaceUserLevelController' : 'app/workspace/workspaceUserLevelConfig.controller', // �궗�슜�옄 愿�由� 而⑦듃濡ㅻ윭 'workspaceLevelAddController' : 'app/workspace/workspaceLevelAdd.controller', // �궗�슜�옄 �벑湲� 異붽� 而⑦듃濡ㅻ윭 + 'levelModifyController' : 'app/workspace/levelModify.controller', // �궗�슜�옄 �벑湲� �닔�젙 而⑦듃濡ㅻ윭 'workspaceDepartmentAddController' : 'app/workspace/workspaceDepartmentAdd.controller', // 遺��꽌 異붽� 而⑦듃濡ㅻ윭 'workspaceDepartmentConfigController' : 'app/workspace/workspaceDepartmentConfig.controller', // �궗�슜�옄 遺��꽌 愿�由� 而⑦듃濡ㅻ윭 'workspaceService' : 'components/workspace/workspace.service', // �뾽臾� 怨듦컙�뿉 愿��젴�맂 �넻�떊�쓣 �떞�떦�븳�떎. diff --git a/src/main/webapp/views/workspace/workspaceLevelAdd.html b/src/main/webapp/views/workspace/workspaceLevelAdd.html index 5e083e4..671d995 100644 --- a/src/main/webapp/views/workspace/workspaceLevelAdd.html +++ b/src/main/webapp/views/workspace/workspaceLevelAdd.html @@ -18,11 +18,16 @@ <td> <div class="input-group mb-0 mr-sm-0 mb-sm-0"> <input id="levelAddForm1" - class="form-control" placeholder="異붽� �븷 �벑湲됰챸�쓣 �엯�젰�븯�꽭�슂." + name="levelName" type="text" - ng-model="vm.form.levelName" - maxlength="50" + class="form-control" autofocus + kr-input + input-regex="[^a-zA-Z0-9 媛�-�옡�꽦-�뀕�뀖-�뀭\u318D\u119E\u11A2\u2022\u2025a\u00B7\uFE55]" + autocomplete="off" + ng-model="vm.form.levelName" + ng-maxlength="200" + maxlength="200" required> </div> </td> diff --git a/src/main/webapp/views/workspace/workspaceLevelModify.html b/src/main/webapp/views/workspace/workspaceLevelModify.html new file mode 100644 index 0000000..175c0ff --- /dev/null +++ b/src/main/webapp/views/workspace/workspaceLevelModify.html @@ -0,0 +1,114 @@ +<div class="formModal"> + <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-0 mr-sm-0 mb-sm-0"> + <input id="levelAddForm1" + name="levelName" + type="text" + class="form-control" + autofocus + kr-input + input-regex="[^a-zA-Z0-9 媛�-�옡�꽦-�뀕�뀖-�뀭\u318D\u119E\u11A2\u2022\u2025a\u00B7\uFE55]" + autocomplete="off" + ng-model="vm.form.levelName" + ng-maxlength="200" + maxlength="200" + required> + </div> + </td> + </tr> + <!--tableColumnGenerator.dirextive.js �뙆�씪 李멸퀬--> + <tr> + <td class="text-left bold"> + <span translate="manageUser.manageWorkspacePerm">�썙�겕�뒪�럹�씠�뒪 愿�由�</span> + </td> + <td colspan="2"> + <label class='switch'><input type='checkbox' ng-model='vm.form.permWorkspaceSetting'><span class='slider round'></span></label> + </td> + </tr> + <tr> + <td class="text-left bold"> + <span translate="manageUser.manageProjectPerm">�봽濡쒖젥�듃 愿�由�</span> + </td> + <td colspan="2"> + <label class='switch'><input type='checkbox' ng-model='vm.form.permProjectSetting'><span class='slider round'></span></label> + </td> + </tr> + <tr> + <td class="text-left bold"> + <span translate="manageUser.manageIssueSystemPerm">�씠�뒋 �떆�뒪�뀥 愿�由�</span> + </td> + <td> + <label class='switch'><input type='checkbox' ng-model='vm.form.permIssueSetting' ><span class='slider round'></span></label> + </td> + </tr> + <tr> + <td class="text-left bold"> + <span translate="manageUser.manageUserPerm">�궗�슜�옄 愿�由�</span> + </td> + <td> + <label class='switch'><input type='checkbox' ng-model='vm.form.permUser'><span class='slider round'></span></label> + </td> + </tr> + <tr> + <td class="text-left bold"> + <span translate="manageUser.manageNoticePerm">怨듭��궗�빆 愿�由�</span> + </td> + <td> + <label class='switch'><input type='checkbox' ng-model='vm.form.permNotice' ><span class='slider round'></span></label> + </td> + </tr> + <tr> + <td class="text-left bold"> + <span translate="manageUser.manageFAQPerm">FAQ 愿�由�</span> + </td> + <td> + <label class='switch'><input type='checkbox' ng-model='vm.form.permFAQ' ><span class='slider round'></span></label> + </td> + </tr> + <tr> + <td class="text-left bold"> + <span translate="manageUser.manageQnAPerm">QnA 愿�由�</span> + </td> + <td> + <label class='switch'><input type='checkbox' ng-model='vm.form.permQnA' ><span class='slider round'></span></label> + </td> + </tr> + + <tr> + <td class="text-left bold"> + <span translate="manageUser.manageGuidePerm">媛��씠�뱶 愿�由�</span> + </td> + <td> + <label class='switch'><input type='checkbox' ng-model='vm.form.permGuide' ><span class='slider round'></span></label> + </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(levelAddForm.$invalid) || $root.spinner) ? null : fn.formSubmit(vm.form)" + ng-disabled="fn.formCheck(paymentAddForm.$invalid)" + ng-click="fn.formSubmit(vm.form)"><span translate="common.save">���옣</span> + </button> + </div> +</div> \ No newline at end of file diff --git a/src/main/webapp/views/workspace/workspaceUserLevelConfig.html b/src/main/webapp/views/workspace/workspaceUserLevelConfig.html index 2cd37bd..24ed4a8 100644 --- a/src/main/webapp/views/workspace/workspaceUserLevelConfig.html +++ b/src/main/webapp/views/workspace/workspaceUserLevelConfig.html @@ -4,35 +4,10 @@ <div class="searchdiv"> <form name="userWorkspaceForm" role="form" ng-enter="fn.getUserWorkspaceList(0)"> <div class="row"> - <!--<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> - </div> - - <div class="col-xl-3"> - <div class="form-group"> - <label translate="common.status">�긽�깭</label> - <ng-dropdown-multiselect class="multiSelect cursor" - data-input-name="statuses" - selected-model="vm.search.statuses" - extra-settings="{ stringTypeOption : true }" - options="vm.options.statuses"></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>--> - <div class="col-xl-4"> <div class="form-group" style="margin-left: 50px"> <label translate="managementWorkspace.levelName">�벑湲됰챸</label> - <input class="form-control" type="text" ng-model="vm.search.level" maxlength="50"> + <input class="form-control" type="text" ng-click="" ng-model="vm.search.level" maxlength="50"> </div> </div> @@ -70,21 +45,6 @@ </div> </div> <div class="col-sm-6 text-right" ng-if="$root.checkMngPermission('USER_PERMISSION_MNG_USER')"> - <!--<div class="btn-group"> - <button aria-expanded="false" - aria-haspopup="true" - class="btn btn-secondary dropdown-toggle" - data-toggle="dropdown" - type="button">異붽�湲곕뒫 - </button> - <div aria-labelledby="dropdownMenuButton2" - 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>--> <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"> @@ -99,11 +59,6 @@ </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.tableConfigs1" -- Gitblit v1.8.0