From 76806da455b31bdcff001d866afde72a284e00ff Mon Sep 17 00:00:00 2001 From: wyu <kknd09321@nate.com> Date: 수, 03 11월 2021 08:57:43 +0900 Subject: [PATCH] - 사용자 등급관리 생성,수정,삭제까지 진행 --- src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 53 insertions(+), 2 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 d5c5fdf..8e35538 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java @@ -2,11 +2,16 @@ import com.google.common.collect.Lists; import kr.wisestone.owl.constant.Constants; +import kr.wisestone.owl.constant.MngPermission; +import kr.wisestone.owl.constant.MsgConstants; +import kr.wisestone.owl.domain.User; import kr.wisestone.owl.domain.UserLevel; +import kr.wisestone.owl.exception.OwlRuntimeException; import kr.wisestone.owl.mapper.UserLevelMapper; import kr.wisestone.owl.mapper.UserMapper; import kr.wisestone.owl.repository.UserLevelRepository; import kr.wisestone.owl.service.UserLevelService; +import kr.wisestone.owl.service.UserService; import kr.wisestone.owl.util.CommonUtil; import kr.wisestone.owl.util.ConvertUtil; import kr.wisestone.owl.vo.ResPage; @@ -14,11 +19,13 @@ import kr.wisestone.owl.vo.UserVo; import kr.wisestone.owl.web.condition.UserCondition; import kr.wisestone.owl.web.condition.UserLevelCondition; +import kr.wisestone.owl.web.form.ManageUserForm; import kr.wisestone.owl.web.form.UserLevelForm; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import java.util.List; import java.util.Map; @@ -32,21 +39,38 @@ @Autowired private UserLevelMapper userLevelMapper; + @Autowired + private UserService userService; + @Override protected JpaRepository<UserLevel, Long> getRepository() { return this.userLevelRepository; } + // �궗�슜�옄 媛��엯 �썑 UserLevel 媛� ���옣 @Override public UserLevel addUserLevel(UserLevelForm userLevelForm) { + userLevelForm.makePermission(); UserLevel userLevel = ConvertUtil.copyProperties(userLevelForm, UserLevel.class); userLevelRepository.saveAndFlush(userLevel); return userLevel; } + // 理쒓퀬愿�由ъ옄 �벑湲� 異붽� @Override - public List<UserLevelVo> findUser(Map<String, Object> resJsonData, UserLevelCondition condition, - Pageable pageable) { + public UserLevel addSuperUserLevel() { + UserLevel userLevel = new UserLevel(); + userLevel.setLevelName("理쒓퀬愿�由ъ옄"); + userLevel.setPermission(MngPermission.makeAllPermission()); + + userLevel = userLevelRepository.saveAndFlush(userLevel); + return userLevel; + } + + // �궗�슜�옄 �벑湲� 紐⑸줉�쓣 媛��졇�삩�떎. + @Override + public List<UserLevelVo> findUser(Map<String, Object> resJsonData, + UserLevelCondition condition, Pageable pageable) { condition.setPage(pageable.getPageNumber() * pageable.getPageSize()); condition.setPageSize(pageable.getPageSize()); @@ -56,6 +80,32 @@ return this.convertUserLevelVoToMap(results, totalUsersCount, pageable, resJsonData); } + // �궗�슜�옄 �벑湲� �젙蹂대�� �닔�젙�븳�떎. + @Override + public void modifyUserLevel(UserLevelForm userLevelForm) { + userLevelForm.makePermission(); + UserLevel userLevel = ConvertUtil.copyProperties(userLevelForm, UserLevel.class); + userLevelRepository.saveAndFlush(userLevel); + } + + @Override + public void removeUserLevel(UserLevelForm userLevelForm) { + if (userLevelForm.getRemoveIds().size() < 1) { + throw new OwlRuntimeException( + this.messageAccessor.getMessage(MsgConstants.PROJECT_REMOVE_NOT_SELECT)); + } + + for (Long id : userLevelForm.getRemoveIds()) { + if (!this.userService.useUserLevel(id)) { + this.userLevelRepository.deleteById(id); + } else { + throw new OwlRuntimeException( + this.messageAccessor.getMessage(MsgConstants.USER_LEVEL_ALREADY)); + } + } + + this.userLevelRepository.flush(); + } // 寃��깋 寃곌낵瑜� UserLevelVo 濡� 蹂��솚�븳�떎. private List<UserLevelVo> convertUserLevelVoToMap(List<Map<String, Object>> results, Long totalUsersCount, Pageable pageable, Map<String, Object> resJsonData) { @@ -63,6 +113,7 @@ for (Map<String, Object> result : results) { UserLevelVo userLevelVo = ConvertUtil.convertMapToClass(result, UserLevelVo.class); + userLevelVo.toPermissionValues(); userLevelVos.add(userLevelVo); } -- Gitblit v1.8.0