From 4e32eef25c59e29af3966345bb5e71c12a886865 Mon Sep 17 00:00:00 2001 From: wyu <kknd09321@nate.com> Date: 화, 02 11월 2021 16:10:19 +0900 Subject: [PATCH] - 사용자 등급관리 테이블 및 조회 생성 - 부서 관리 테이블 생성 --- src/main/java/kr/wisestone/owl/web/controller/UserWorkspaceController.java | 26 - src/main/resources/migration/V1_10__Alter_Table.sql | 25 + src/main/resources/mybatis/query-template/userLevel-template.xml | 30 + src/main/java/kr/wisestone/owl/service/UserLevelService.java | 18 + src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js | 2 src/main/java/kr/wisestone/owl/service/impl/DepartmentManagementServiceImpl.java | 29 + src/main/java/kr/wisestone/owl/vo/UserVo.java | 8 src/main/java/kr/wisestone/owl/mapper/UserLevelMapper.java | 33 + src/main/java/kr/wisestone/owl/domain/DepartmentManagement.java | 46 ++ src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java | 45 ++ src/main/java/kr/wisestone/owl/domain/User.java | 38 + src/main/java/kr/wisestone/owl/repository/UserLevelRepository.java | 8 src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java | 63 +++ src/main/java/kr/wisestone/owl/domain/UserLevel.java | 43 ++ src/main/java/kr/wisestone/owl/web/condition/DepartmentManagementCondition.java | 67 +++ src/main/java/kr/wisestone/owl/web/condition/UserCondition.java | 16 src/main/java/kr/wisestone/owl/web/controller/UserLevelController.java | 99 +++++ src/main/java/kr/wisestone/owl/service/DepartmentManagementService.java | 10 src/main/resources/mybatis/query-template/userWorkspace-template.xml | 2 src/main/java/kr/wisestone/owl/repository/DepartmentManagementRepository.java | 8 src/main/resources/META-INF/orm.xml | 4 src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java | 78 ++++ src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js | 6 src/main/java/kr/wisestone/owl/mapper/DepartmentManagementMapper.java | 33 + src/main/java/kr/wisestone/owl/vo/UserLevelVo.java | 48 ++ src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java | 47 ++ src/main/java/kr/wisestone/owl/vo/UserWorkspaceVo.java | 8 src/main/java/kr/wisestone/owl/constant/Constants.java | 1 src/main/java/kr/wisestone/owl/vo/DepartmentManagementVo.java | 44 ++ src/main/java/kr/wisestone/owl/constant/MngPermission.java | 15 src/main/java/kr/wisestone/owl/web/form/DepartmentManagementForm.java | 45 ++ src/main/java/kr/wisestone/owl/web/form/UserForm.java | 18 + src/main/java/kr/wisestone/owl/service/impl/ManageUserServiceImpl.java | 2 33 files changed, 902 insertions(+), 63 deletions(-) diff --git a/src/main/java/kr/wisestone/owl/constant/Constants.java b/src/main/java/kr/wisestone/owl/constant/Constants.java index da9550e..3342dd0 100644 --- a/src/main/java/kr/wisestone/owl/constant/Constants.java +++ b/src/main/java/kr/wisestone/owl/constant/Constants.java @@ -13,4 +13,5 @@ public static final String SESSION_ACCOUNT = "account"; public static final String EXCEL = "excel"; public static final String SESSION_EXPIRE_REDIRECT_URL = "/#/login"; + public static final String ADMIN_MANAGER = "admin"; } diff --git a/src/main/java/kr/wisestone/owl/constant/MngPermission.java b/src/main/java/kr/wisestone/owl/constant/MngPermission.java index 357ccaf..6531dd9 100644 --- a/src/main/java/kr/wisestone/owl/constant/MngPermission.java +++ b/src/main/java/kr/wisestone/owl/constant/MngPermission.java @@ -37,7 +37,7 @@ public static int makeAllPermission() { - int nPermission = (USER_PERMISSION_MNG_WORKSPACE | + return (USER_PERMISSION_MNG_WORKSPACE | USER_PERMISSION_MNG_PROJECT | USER_PERMISSION_MNG_USER | USER_PERMISSION_MNG_NOTICE | @@ -46,18 +46,23 @@ USER_PERMISSION_MNG_EVENT | USER_PERMISSION_MNG_GUIDE | USER_PERMISSION_MNG_ISSUE_SETTING); - - return nPermission; } public static int makeSubAllPermission() { - int nPermission = (/*USER_PERMISSION_MNG_WORKSPACE |*/ + return (/*USER_PERMISSION_MNG_WORKSPACE |*/ USER_PERMISSION_MNG_USER | USER_PERMISSION_MNG_NOTICE | USER_PERMISSION_MNG_FAQ | USER_PERMISSION_MNG_QNA | USER_PERMISSION_MNG_EVENT | USER_PERMISSION_MNG_GUIDE | USER_PERMISSION_MNG_ISSUE_SETTING); + } - return nPermission; + // �씠�뒋 �떆�뒪�뀥 沅뚰븳 (�긽�깭, �썙�겕�뵆濡쒖슦, �궗�슜�옄 �젙�쓽 �븘�뱶, �씠�뒋�쑀�삎 �룷�븿) + public static int makeIssuePermission() + { + return (USER_PERMISSION_MNG_ISSUE_STATUS | + USER_PERMISSION_MNG_WORKFLOW | + USER_PERMISSION_MNG_CUSTOME_FIELD | + USER_PERMISSION_MNG_ISSUE_TYPE); } } diff --git a/src/main/java/kr/wisestone/owl/domain/DepartmentManagement.java b/src/main/java/kr/wisestone/owl/domain/DepartmentManagement.java new file mode 100644 index 0000000..5586e9e --- /dev/null +++ b/src/main/java/kr/wisestone/owl/domain/DepartmentManagement.java @@ -0,0 +1,46 @@ +package kr.wisestone.owl.domain; + +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import java.io.Serializable; + +@Entity +public class DepartmentManagement extends BaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long id; + private String departmentName; + private String departmentDescription; + + public DepartmentManagement() { + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDepartmentName() { + return departmentName; + } + + public void setDepartmentName(String departmentName) { + this.departmentName = departmentName; + } + + public String getDepartmentDescription() { + return departmentDescription; + } + + public void setDepartmentDescription(String departmentDescription) { + this.departmentDescription = departmentDescription; + } +} diff --git a/src/main/java/kr/wisestone/owl/domain/User.java b/src/main/java/kr/wisestone/owl/domain/User.java index a0e43bb..29b8f96 100644 --- a/src/main/java/kr/wisestone/owl/domain/User.java +++ b/src/main/java/kr/wisestone/owl/domain/User.java @@ -30,6 +30,7 @@ private String phone; private String profile; private String awsKey; +// private Long departmentId; @Enumerated(EnumType.STRING) private SocialType socialType; private Long lastWorkspaceId; @@ -37,7 +38,6 @@ private Date lastLoginDate; private String reservationNotifyTime; // �씠硫붿씪 �븣由� �떆媛� �삁�젙 private String language; - private Integer permission; private String licensekey; @OneToMany(mappedBy = "user", cascade = {CascadeType.ALL}, orphanRemoval = true) @@ -61,6 +61,15 @@ @OneToMany(mappedBy = "user", cascade = {CascadeType.ALL}, orphanRemoval = true) private Set<IssueTableConfig> issueTableConfigs = new HashSet<>(); + @ManyToOne(targetEntity = UserLevel.class, fetch = FetchType.LAZY) + @JoinColumn(name="level_id") + private UserLevel userLevel; + + @ManyToOne(targetEntity = DepartmentManagement.class, fetch = FetchType.LAZY) + @JoinColumn(name="department_id") + private DepartmentManagement departmentManagement; + + public User() { } @@ -69,6 +78,23 @@ this.name = name; this.account = account; } + + public DepartmentManagement getDepartmentId() { + return departmentManagement; + } + + public void setDepartmentId(DepartmentManagement department) { + this.departmentManagement = department; + } + + public UserLevel getUserLevel() { + return userLevel; + } + + public void setUserLevel(UserLevel userLevel) { + this.userLevel = userLevel; + } + public Long getId() { return id; @@ -279,13 +305,15 @@ this.language = language; } + public Integer getPermission() { - return permission; + return this.userLevel.getPermission(); } - public void setPermission(Integer permission) { - this.permission = permission; - } + // TEST + //public void setPermission(Integer permission) { + // this.userLevel.setPermission(permission); + //} public String getLicensekey() { return licensekey; diff --git a/src/main/java/kr/wisestone/owl/domain/UserLevel.java b/src/main/java/kr/wisestone/owl/domain/UserLevel.java new file mode 100644 index 0000000..4097324 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/domain/UserLevel.java @@ -0,0 +1,43 @@ +package kr.wisestone.owl.domain; + +import javax.persistence.*; +import java.io.Serializable; + +@Entity +public class UserLevel extends BaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long id; + private String levelName; + private Integer permission; + + public UserLevel() { + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Integer getPermission() { + return permission; + } + + public void setPermission(Integer permission) { + this.permission = permission; + } +} diff --git a/src/main/java/kr/wisestone/owl/mapper/DepartmentManagementMapper.java b/src/main/java/kr/wisestone/owl/mapper/DepartmentManagementMapper.java new file mode 100644 index 0000000..031886a --- /dev/null +++ b/src/main/java/kr/wisestone/owl/mapper/DepartmentManagementMapper.java @@ -0,0 +1,33 @@ +package kr.wisestone.owl.mapper; + +import kr.wisestone.owl.web.condition.DepartmentManagementCondition; +import kr.wisestone.owl.web.condition.DepartmentManagementCondition; +import org.springframework.stereotype.Repository; + +import java.util.List; +import java.util.Map; + +/** + * Created by wisestone on 2018-02-26. + */ +@Repository +public interface DepartmentManagementMapper { + List<Map<String, Object>> find(DepartmentManagementCondition departmentManagementCondition); + + List<Map<String, Object>> findAdmin(); + + List<Map<String, Object>> findProjectMember(DepartmentManagementCondition DepartmentManagementCondition); + + Long count(DepartmentManagementCondition DepartmentManagementCondition); + + void deleteCascadeUser(DepartmentManagementCondition DepartmentManagementCondition); + + List<Map<String, Object>> findByReservationNotifyTime(Map<String, Object> conditions); + + List<Map<String, Object>> findByAllWorkspace(DepartmentManagementCondition DepartmentManagementCondition); + + Long countByAllWorkspace(DepartmentManagementCondition DepartmentManagementCondition); + + List<Map<String, Object>> findEvent(); + +} diff --git a/src/main/java/kr/wisestone/owl/mapper/UserLevelMapper.java b/src/main/java/kr/wisestone/owl/mapper/UserLevelMapper.java new file mode 100644 index 0000000..81c3ccd --- /dev/null +++ b/src/main/java/kr/wisestone/owl/mapper/UserLevelMapper.java @@ -0,0 +1,33 @@ +package kr.wisestone.owl.mapper; + +import kr.wisestone.owl.web.condition.UserCondition; +import kr.wisestone.owl.web.condition.UserLevelCondition; +import org.springframework.stereotype.Repository; + +import java.util.List; +import java.util.Map; + +/** + * Created by wisestone on 2018-02-26. + */ +@Repository +public interface UserLevelMapper { + List<Map<String, Object>> find(UserLevelCondition userLevelCondition); + + List<Map<String, Object>> findAdmin(); + + List<Map<String, Object>> findProjectMember(UserLevelCondition userLevelCondition); + + Long count(UserLevelCondition userLevelCondition); + + void deleteCascadeUser(UserLevelCondition userLevelCondition); + + List<Map<String, Object>> findByReservationNotifyTime(Map<String, Object> conditions); + + List<Map<String, Object>> findByAllWorkspace(UserLevelCondition userLevelCondition); + + Long countByAllWorkspace(UserLevelCondition userLevelCondition); + + List<Map<String, Object>> findEvent(); + +} diff --git a/src/main/java/kr/wisestone/owl/repository/DepartmentManagementRepository.java b/src/main/java/kr/wisestone/owl/repository/DepartmentManagementRepository.java new file mode 100644 index 0000000..eef1247 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/repository/DepartmentManagementRepository.java @@ -0,0 +1,8 @@ +package kr.wisestone.owl.repository; + +import kr.wisestone.owl.domain.DepartmentManagement; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface DepartmentManagementRepository extends JpaRepository<DepartmentManagement, Long> { + +} diff --git a/src/main/java/kr/wisestone/owl/repository/UserLevelRepository.java b/src/main/java/kr/wisestone/owl/repository/UserLevelRepository.java new file mode 100644 index 0000000..4e3e6fd --- /dev/null +++ b/src/main/java/kr/wisestone/owl/repository/UserLevelRepository.java @@ -0,0 +1,8 @@ +package kr.wisestone.owl.repository; + +import kr.wisestone.owl.domain.UserLevel; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface UserLevelRepository extends JpaRepository<UserLevel, Long> { + +} diff --git a/src/main/java/kr/wisestone/owl/service/DepartmentManagementService.java b/src/main/java/kr/wisestone/owl/service/DepartmentManagementService.java new file mode 100644 index 0000000..ac9a13b --- /dev/null +++ b/src/main/java/kr/wisestone/owl/service/DepartmentManagementService.java @@ -0,0 +1,10 @@ +package kr.wisestone.owl.service; + +import kr.wisestone.owl.domain.DepartmentManagement; +import kr.wisestone.owl.web.form.DepartmentManagementForm; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface DepartmentManagementService extends AbstractService<DepartmentManagement, Long, JpaRepository<DepartmentManagement, Long>> { + DepartmentManagement addDepartment(DepartmentManagementForm departmentManagementForm); + +} diff --git a/src/main/java/kr/wisestone/owl/service/UserLevelService.java b/src/main/java/kr/wisestone/owl/service/UserLevelService.java new file mode 100644 index 0000000..7b61e26 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/service/UserLevelService.java @@ -0,0 +1,18 @@ +package kr.wisestone.owl.service; + +import kr.wisestone.owl.domain.UserLevel; +import kr.wisestone.owl.vo.UserLevelVo; +import kr.wisestone.owl.web.condition.UserCondition; +import kr.wisestone.owl.web.condition.UserLevelCondition; +import kr.wisestone.owl.web.form.UserLevelForm; +import org.springframework.data.domain.Pageable; +import org.springframework.data.jpa.repository.JpaRepository; + +import java.util.List; +import java.util.Map; + +public interface UserLevelService extends AbstractService<UserLevel, Long, JpaRepository<UserLevel, Long>> { + UserLevel addUserLevel(UserLevelForm userLevelForm); + + List<UserLevelVo> findUser(Map<String, Object> resJsonData, UserLevelCondition make, Pageable pageable); +} diff --git a/src/main/java/kr/wisestone/owl/service/impl/DepartmentManagementServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/DepartmentManagementServiceImpl.java new file mode 100644 index 0000000..f049487 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/service/impl/DepartmentManagementServiceImpl.java @@ -0,0 +1,29 @@ +package kr.wisestone.owl.service.impl; + +import kr.wisestone.owl.domain.DepartmentManagement; +import kr.wisestone.owl.repository.DepartmentManagementRepository; +import kr.wisestone.owl.service.DepartmentManagementService; +import kr.wisestone.owl.util.ConvertUtil; +import kr.wisestone.owl.web.form.DepartmentManagementForm; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Service; + +@Service +public class DepartmentManagementServiceImpl extends AbstractServiceImpl<DepartmentManagement, Long, JpaRepository<DepartmentManagement, Long>> implements DepartmentManagementService { + + @Autowired + private DepartmentManagementRepository departmentManagementRepository; + + @Override + protected JpaRepository<DepartmentManagement, Long> getRepository() { + return this.departmentManagementRepository; + } + + @Override + public DepartmentManagement addDepartment(DepartmentManagementForm departmentManagementForm) { + DepartmentManagement departmentManagement = ConvertUtil.copyProperties(departmentManagementForm, DepartmentManagement.class); + departmentManagementRepository.saveAndFlush(departmentManagement); + return departmentManagement; + } +} 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 905bf06..91cf560 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/ManageUserServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/ManageUserServiceImpl.java @@ -106,7 +106,7 @@ newPermission |= MngPermission.makePermission(manageUserForm.getPermGuide(), MngPermission.USER_PERMISSION_MNG_GUIDE); User user = userService.getUser(manageUserForm.getUserId()); - user.setPermission(newPermission); +/* user.setPermission(newPermission);*/ this.userRepository.saveAndFlush(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 new file mode 100644 index 0000000..d5c5fdf --- /dev/null +++ b/src/main/java/kr/wisestone/owl/service/impl/UserLevelServiceImpl.java @@ -0,0 +1,78 @@ +package kr.wisestone.owl.service.impl; + +import com.google.common.collect.Lists; +import kr.wisestone.owl.constant.Constants; +import kr.wisestone.owl.domain.UserLevel; +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.util.CommonUtil; +import kr.wisestone.owl.util.ConvertUtil; +import kr.wisestone.owl.vo.ResPage; +import kr.wisestone.owl.vo.UserLevelVo; +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.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 java.util.List; +import java.util.Map; + +@Service +public class UserLevelServiceImpl extends AbstractServiceImpl<UserLevel, Long, JpaRepository<UserLevel, Long>> implements UserLevelService { + + @Autowired + private UserLevelRepository userLevelRepository; + + @Autowired + private UserLevelMapper userLevelMapper; + + @Override + protected JpaRepository<UserLevel, Long> getRepository() { + return this.userLevelRepository; + } + + @Override + public UserLevel addUserLevel(UserLevelForm userLevelForm) { + 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) { + + condition.setPage(pageable.getPageNumber() * pageable.getPageSize()); + condition.setPageSize(pageable.getPageSize()); + + List<Map<String, Object>> results = this.userLevelMapper.find(condition); + Long totalUsersCount = this.userLevelMapper.count(condition); + + return this.convertUserLevelVoToMap(results, totalUsersCount, pageable, resJsonData); + } + + // 寃��깋 寃곌낵瑜� UserLevelVo 濡� 蹂��솚�븳�떎. + private List<UserLevelVo> convertUserLevelVoToMap(List<Map<String, Object>> results, Long totalUsersCount, Pageable pageable, Map<String, Object> resJsonData) { + List<UserLevelVo> userLevelVos = Lists.newArrayList(); + + for (Map<String, Object> result : results) { + UserLevelVo userLevelVo = ConvertUtil.convertMapToClass(result, UserLevelVo.class); + userLevelVos.add(userLevelVo); + } + + int totalPage = (int) Math.ceil((totalUsersCount - 1) / pageable.getPageSize()) + 1; + + resJsonData.put(Constants.RES_KEY_CONTENTS, userLevelVos); + resJsonData.put(Constants.REQ_KEY_PAGE_VO, new ResPage(pageable.getPageNumber(), pageable.getPageSize(), + totalPage, totalUsersCount)); + + return userLevelVos; + } + +} 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 bf2204e..07b26f1 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java @@ -17,7 +17,9 @@ import kr.wisestone.owl.util.*; import kr.wisestone.owl.vo.*; import kr.wisestone.owl.web.condition.UserCondition; +import kr.wisestone.owl.web.form.DepartmentManagementForm; import kr.wisestone.owl.web.form.UserForm; +import kr.wisestone.owl.web.form.UserLevelForm; import kr.wisestone.owl.web.view.ExcelView; import org.apache.commons.validator.routines.EmailValidator; import org.slf4j.Logger; @@ -32,6 +34,7 @@ import org.springframework.security.core.session.SessionRegistry; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.stereotype.Repository; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.ui.Model; @@ -53,6 +56,12 @@ @Autowired private UserRepository userRepository; + + @Autowired + private UserLevelService userLevelService; + + @Autowired + private DepartmentManagementService departmentManagementService; @Autowired private SystemRoleService systemRoleService; @@ -197,7 +206,8 @@ user.setAccount(CommonUtil.encryptAES128(userForm.getAccount())); user.setPassword(this.passwordEncoder.encode(user.getPassword())); - this.userRepository.saveAndFlush(user); + //this.userLevelRepository.saveAndFlush(user); + //userLevelRepository.saveAndFlush(user); // �봽濡쒗븘 �뙆�씪�씠 �쑀�슚�븳吏� 泥댄겕�븳�떎. this.verifyProfile(profile); @@ -217,11 +227,30 @@ this.userInviteService.includePrimaryWorkspace(user, primaryWorkspace); + + // edit by zenith for permission at 20200803 - user.setPermission(MngPermission.USER_PERMISSION_MNG_NONE); + /*user.setPermission(MngPermission.USER_PERMISSION_MNG_NONE);*/ } else if(validAdmin == 1) { // �씪�씠�꽱�뒪 �엯�젰 愿�由ъ옄 Workspace primaryWorkspace = this.workspaceService.getPrimaryWorkspace(); + + // UserLevel�뿉 Permission 媛� �꽔�뼱以� + UserLevelForm userLevelForm = new UserLevelForm(); + // Constants �뿉�꽌 ADMIN 媛� 異붽� + userLevelForm.setLevelName(Constants.ADMIN_MANAGER); + // Permission 媛� 異붽� + userLevelForm.setPermission(MngPermission.makeAllPermission()); + UserLevel userLevel = this.userLevelService.addUserLevel(userLevelForm); + user.setUserLevel(userLevel); + + // DepartmentManagement�뿉 �엫�떆濡� Name, Description 媛� 異붽� + DepartmentManagementForm departmentManagementForm = new DepartmentManagementForm(); + + departmentManagementForm.setDepartmentName("媛쒕컻��"); + departmentManagementForm.setDepartmentDescription("�쎒�궗�씠�듃 諛� �빋 �꽌鍮꾩뒪 媛쒕컻"); + DepartmentManagement departmentManagement = this.departmentManagementService.addDepartment(departmentManagementForm); + user.setDepartmentId(departmentManagement); if(primaryWorkspace == null || primaryWorkspace.getName() != userForm.getWorkspaceName()) { // �뾽臾� 怨듦컙瑜� �깮�꽦�븳�떎. 媛��엯�븳 �궗�슜�옄�뒗 �뾽臾� 怨듦컙�쓽 二쇱씤�씠�떎. @@ -234,18 +263,17 @@ user.setLastWorkspaceId(workspace.getId()); // edit by zenith for permission at 20200803 - user.setPermission(MngPermission.makeAllPermission()); + //user.setPermission(MngPermission.makeAllPermission()); } else { this.userInviteService.includePrimaryWorkspace(user, primaryWorkspace); user.setLastWorkspaceId(primaryWorkspace.getId()); - - user.setPermission(MngPermission.makeSubAllPermission()); + /*user.setPermission(MngPermission.makeSubAllPermission());*/ } } + this.userRepository.saveAndFlush(user); // �씠硫붿씪 �븣由� �삁�젙 �떆媛꾩씠 怨듬갚�씠硫� �뵒�뤃�듃 �씠硫붿씪 �븣由� �삁�젙 �떆媛꾩쑝濡� �꽕�젙�븳�떎. user.setReservationNotifyTime(User.DEFAULT_RESERVATION_NOTIFY_TIME); - this.userRepository.saveAndFlush(user); // 珥덈�諛쏆� 硫붿씪�씠 �엳�뒗 �궗�슜�옄媛� 媛��엯�뻽�쑝硫� 珥덈��뻽�쓣 �븣 �꽑�깮�븳 �봽濡쒖젥�듃�뿉 李몄뿬 �떆�궓�떎. this.userInviteService.checkInviteUser(user); @@ -1005,7 +1033,7 @@ this.userRepository.saveAndFlush(user); } - // 留덉�留됱쑝濡� �꽑�깮�븳 �봽濡쒖젥�듃 �젙蹂대�� ���옣�븳�떎. + // 留덉�留됱쑝濡� �꽑�깮�븳 �봽濡쒖젥�듃 �젙蹂대�� ���옣�븳�떎. @Override @Transactional public void updateLastProject(Map<String, Object> resJsonData, UserForm userForm) { @@ -1150,6 +1178,7 @@ } } + // �뾽臾� 怨듦컙�뿉�꽌 �젣�쇅�릺嫄곕굹 �뾽臾� 怨듦컙 �궘�젣�떆 李몄뿬 �궗�슜�옄�뱾�쓽 留덉�留� �젒洹� �뾽臾� 怨듦컙 �젙蹂대줈 �꽭�뀡 �뾽�뜲�씠�듃�븯湲� �쐞�빐 �궗�슜 @Override @Transactional(readOnly = true) @@ -1164,7 +1193,9 @@ @Transactional(readOnly = true) public User getUserSession(Map<String, Object> resJsonData, HttpServletRequest httpServletRequest) { User user = this.getUser(this.webAppUtil.getLoginId()); - UserVo userVo = ConvertUtil.copyProperties(user, UserVo.class, "password"); + UserVo userVo = ConvertUtil.copyProperties(user, UserVo.class, "password", "permission"); + // user�뿉�꽌 Permission 媛믪쓣 媛��졇���꽌 userVo �뿉 setPermission �븿 + userVo.setPermission(user.getPermission()); userVo.setAccount(CommonUtil.decryptAES128(userVo.getAccount())); resJsonData.put(Constants.RES_KEY_CONTENTS, userVo); // �궗�슜�옄 �꽭�뀡 �젙蹂대�� 遺꾩꽍�빐�꽌 濡쒓렇�뿉 �궓湲대떎. diff --git a/src/main/java/kr/wisestone/owl/vo/DepartmentManagementVo.java b/src/main/java/kr/wisestone/owl/vo/DepartmentManagementVo.java new file mode 100644 index 0000000..3099ac0 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/vo/DepartmentManagementVo.java @@ -0,0 +1,44 @@ +package kr.wisestone.owl.vo; + +/** + * Created by jeong on 2017-08-02. + */ +public class DepartmentManagementVo extends BaseVo{ + + private Long id; + private String departmentName; + private String departmentDescription; + + public DepartmentManagementVo() { + } + + public DepartmentManagementVo(Long id, String departmentName, String departmentDescription) { + this.id = id; + this.departmentName = departmentName; + this.departmentDescription = departmentDescription; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDepartmentName() { + return departmentName; + } + + public void setDepartmentName(String departmentName) { + this.departmentName = departmentName; + } + + public String getDepartmentDescription() { + return departmentDescription; + } + + public void setDepartmentDescription(String departmentDescription) { + this.departmentDescription = departmentDescription; + } +} diff --git a/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java b/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java new file mode 100644 index 0000000..2156ab2 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/vo/UserLevelVo.java @@ -0,0 +1,48 @@ +package kr.wisestone.owl.vo; + +import com.google.common.collect.Lists; + +import java.util.List; + +/** + * Created by jeong on 2017-08-02. + */ +public class UserLevelVo extends BaseVo{ + + private Long id; + private String levelName; + private Integer permission; + + public UserLevelVo() { + } + + public UserLevelVo(Long id, String levelname, Integer permission) { + this.id = id; + this.levelName = levelname; + this.permission = permission; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Integer getPermission() { + return permission; + } + + public void setPermission(Integer permission) { + this.permission = permission; + } +} diff --git a/src/main/java/kr/wisestone/owl/vo/UserVo.java b/src/main/java/kr/wisestone/owl/vo/UserVo.java index eb0fea6..71bf358 100644 --- a/src/main/java/kr/wisestone/owl/vo/UserVo.java +++ b/src/main/java/kr/wisestone/owl/vo/UserVo.java @@ -20,6 +20,7 @@ private String socialType; private Long lastWorkspaceId; private Long lastProjectId; + private Long departmentId; private Boolean userSocialLogin = Boolean.FALSE; private List<ProjectVo> projectVos = Lists.newArrayList(); private String reservationNotifyTime; @@ -47,6 +48,13 @@ this.phone = phone; } + public Long getDepartmentId() { + return departmentId; + } + + public void setDepartmentId(Long departmentId) { + this.departmentId = departmentId; + } public Long getId() { return id; } diff --git a/src/main/java/kr/wisestone/owl/vo/UserWorkspaceVo.java b/src/main/java/kr/wisestone/owl/vo/UserWorkspaceVo.java index 0c42a64..d6281a3 100644 --- a/src/main/java/kr/wisestone/owl/vo/UserWorkspaceVo.java +++ b/src/main/java/kr/wisestone/owl/vo/UserWorkspaceVo.java @@ -7,7 +7,7 @@ private Long id; private String userName; private String account; - private Integer premission; + private Integer permission; private Boolean useYn; public UserWorkspaceVo(){} @@ -37,11 +37,11 @@ } public Integer getPermission() { - return premission; + return permission; } - public void setPermission(Integer premission) { - this.premission = premission; + public void setPermission(Integer permission) { + this.permission = permission; } public Boolean getUseYn() { diff --git a/src/main/java/kr/wisestone/owl/web/condition/DepartmentManagementCondition.java b/src/main/java/kr/wisestone/owl/web/condition/DepartmentManagementCondition.java new file mode 100644 index 0000000..17e3da5 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/web/condition/DepartmentManagementCondition.java @@ -0,0 +1,67 @@ +package kr.wisestone.owl.web.condition; + +import com.google.common.collect.Lists; +import kr.wisestone.owl.util.ConvertUtil; +import kr.wisestone.owl.util.MapUtil; + +import java.util.List; +import java.util.Map; + +/** + * Created by jeong on 2018-01-01. + */ +public class DepartmentManagementCondition { + private Long id; + private String departmentName; + private String departmentDescription; + private List<String> statuses = Lists.newArrayList(); + private List<Long> excludeIds = Lists.newArrayList(); + + public static DepartmentManagementCondition make(Map<String, Object> departmentManagemantconditions) { + DepartmentManagementCondition departmentManagementCondition = ConvertUtil.convertMapToClass(departmentManagemantconditions, DepartmentManagementCondition.class); + departmentManagementCondition.setStatuses(MapUtil.getStrings(departmentManagemantconditions, "statuses")); + departmentManagementCondition.setExcludeIds(MapUtil.getLongs(departmentManagemantconditions, "excludeIds")); + + return departmentManagementCondition; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDepartmentName() { + return departmentName; + } + + public void setDepartmentName(String departmentName) { + this.departmentName = departmentName; + } + + public String getDepartmentDescription() { + return departmentDescription; + } + + public void setDepartmentDescription(String departmentDescription) { + this.departmentDescription = departmentDescription; + } + + public List<String> getStatuses() { + return statuses; + } + + public void setStatuses(List<String> statuses) { + this.statuses = statuses; + } + + public List<Long> getExcludeIds() { + return excludeIds; + } + + public void setExcludeIds(List<Long> excludeIds) { + this.excludeIds = excludeIds; + } +} diff --git a/src/main/java/kr/wisestone/owl/web/condition/UserCondition.java b/src/main/java/kr/wisestone/owl/web/condition/UserCondition.java index 2be9a16..04f3c24 100644 --- a/src/main/java/kr/wisestone/owl/web/condition/UserCondition.java +++ b/src/main/java/kr/wisestone/owl/web/condition/UserCondition.java @@ -25,7 +25,7 @@ private Integer pageSize; private Long loginUserId; private Long workspaceId; - private Integer permission; +// private Integer permission; private String licensekey; public static UserCondition make(Map<String, Object> conditions) { @@ -144,13 +144,13 @@ this.deep = deep; } - public Integer getPermission() { - return permission; - } - - public void setPermission(Integer permission) { - this.permission = permission; - } +// public Integer getPermission() { +// return permission; +// } +// +// public void setPermission(Integer permission) { +// this.permission = permission; +// } public String getLicensekey() { return licensekey; diff --git a/src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java b/src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java new file mode 100644 index 0000000..5ed07f0 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/web/condition/UserLevelCondition.java @@ -0,0 +1,63 @@ +package kr.wisestone.owl.web.condition; + +import com.google.common.collect.Lists; +import kr.wisestone.owl.util.ConvertUtil; +import kr.wisestone.owl.util.MapUtil; + +import java.util.List; +import java.util.Map; + +/** + * Created by jeong on 2018-01-01. + */ +public class UserLevelCondition { + private Long id; + private String levelName; + private Integer permission; + private Integer page; + private Integer pageSize; + + public static UserLevelCondition make(Map<String, Object> userLevelConditions) { + return ConvertUtil.convertMapToClass(userLevelConditions, UserLevelCondition.class); + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Integer getPermission() { + return permission; + } + + public void setPermission(Integer permission) { + this.permission = permission; + } + + public Integer getPage() { + return page; + } + + public void setPage(Integer page) { + this.page = page; + } + + public Integer getPageSize() { + return pageSize; + } + + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + } +} diff --git a/src/main/java/kr/wisestone/owl/web/controller/UserLevelController.java b/src/main/java/kr/wisestone/owl/web/controller/UserLevelController.java new file mode 100644 index 0000000..9f1c0c2 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/web/controller/UserLevelController.java @@ -0,0 +1,99 @@ +package kr.wisestone.owl.web.controller; + +import kr.wisestone.owl.constant.Constants; +import kr.wisestone.owl.domain.enumType.SocialType; +import kr.wisestone.owl.service.UserLevelService; +import kr.wisestone.owl.service.UserService; +import kr.wisestone.owl.util.ConvertUtil; +import kr.wisestone.owl.web.condition.UserCondition; +import kr.wisestone.owl.web.condition.UserLevelCondition; +import kr.wisestone.owl.web.form.UserForm; +import kr.wisestone.owl.web.form.UserLevelForm; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Pageable; +import org.springframework.http.MediaType; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartHttpServletRequest; +import org.springframework.web.servlet.ModelAndView; + +import javax.servlet.http.HttpServletRequest; +import java.util.HashMap; +import java.util.Map; + +/** + * Created by jeong on 2017-08-02. + */ +@Controller +public class UserLevelController extends BaseController { + + @Autowired + private UserLevelService userLevelService; + + // �궗�슜�옄�벑湲� �깮�꽦 + @RequestMapping(value = "/userLevel/add", method = RequestMethod.POST) + public + @ResponseBody + Map<String, Object> addUserLevel(MultipartHttpServletRequest request) { + Map<String, Object> resJsonData = new HashMap<>(); + Map<String, Object> content = ConvertUtil.convertJsonToMap(request.getParameter(Constants.REQ_KEY_CONTENT)); + this.userLevelService.addUserLevel(UserLevelForm.make(content)); + + return this.setSuccessMessage(resJsonData); + } + + // �궗�슜�옄�벑湲� 議고쉶 + @RequestMapping(value = "/userLevel/find", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE) + public + @ResponseBody + Map<String, Object> find(@RequestBody Map<String, Map<String, Object>> params) { + Map<String, Object> resJsonData = new HashMap<>(); + Pageable pageable = this.pageUtil.convertPageable(this.getPageVo(params)); + + this.userLevelService.findUser(resJsonData, UserLevelCondition.make(params.get(Constants.REQ_KEY_CONTENT)), pageable); + + return this.setSuccessMessage(resJsonData); + } + + // �궗�슜�옄�벑湲� �닔�젙 +// @RequestMapping(value = "/userLevel/modify", produces = MediaType.APPLICATION_JSON_VALUE) +// public +// @ResponseBody +// Map<String, Object> modify(MultipartHttpServletRequest request) { +// Map<String, Object> resJsonData = new HashMap<>(); +// +// this.userService.modifyUser(UserForm.make(ConvertUtil.convertJsonToMap(request.getParameter(Constants.REQ_KEY_CONTENT))), request.getFile("file")); +// +// return this.setSuccessMessage(resJsonData); +// } + + // �궗�슜�옄�벑湲� �궘�젣 +// @RequestMapping(value = "/userLevel/remove", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE) +// public +// @ResponseBody +// Map<String, Object> withDraw() { +// Map<String, Object> resJsonData = new HashMap<>(); +// +// this.userService.withDrawUser(); +// +// return this.setSuccessMessage(resJsonData); +// } + + // �궗�슜�옄 �벑湲� �뿊�� �떎�슫濡쒕뱶 +// @RequestMapping(value = "/userLevel/downloadExcel", method = RequestMethod.POST) +// public ModelAndView downloadExcel(HttpServletRequest request, Model model) { +// return this.userService.downloadExcel(model); +// } + + /*// �씠踰ㅽ듃 �떦泥⑥옄 �뿊�� �떎�슫濡쒕뱶 + @RequestMapping(value = "/user/downloadExcelEvent", method = RequestMethod.POST) + public ModelAndView downloadExcelEvent(HttpServletRequest request, Model model) { + return this.userService.downloadExcelEvent(model); + }*/ +} + + + + + diff --git a/src/main/java/kr/wisestone/owl/web/controller/UserWorkspaceController.java b/src/main/java/kr/wisestone/owl/web/controller/UserWorkspaceController.java index c226690..fc19000 100644 --- a/src/main/java/kr/wisestone/owl/web/controller/UserWorkspaceController.java +++ b/src/main/java/kr/wisestone/owl/web/controller/UserWorkspaceController.java @@ -26,32 +26,6 @@ @Autowired private UserWorkspaceService userWorkspaceService; - // �궗�슜�옄 �벑湲� 議고쉶 - @RequestMapping(value = "/userWorkspace/levelFind", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE) - public - @ResponseBody - Map<String, Object> levelFind(@RequestBody Map<String, Map<String, Object>> params) { - Map<String, Object> resJsonData = new HashMap<>(); - Pageable pageable = this.pageUtil.convertPageable(this.getPageVo(params)); - - this.userWorkspaceService.findUserWorkspace(resJsonData, UserWorkspaceCondition.make(params.get(Constants.REQ_KEY_CONTENT)), pageable); - //this.userWorkspaceService.levelFind(resJsonData, UserWorkspaceCondition.make(params.get(Constants.REQ_KEY_CONTENT)), pageable); - return this.setSuccessMessage(resJsonData); - } - - // 遺��꽌 議고쉶 - @RequestMapping(value = "/userWorkspace/departmentFind", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE) - public - @ResponseBody - Map<String, Object> departmentFind(@RequestBody Map<String, Map<String, Object>> params) { - Map<String, Object> resJsonData = new HashMap<>(); - Pageable pageable = this.pageUtil.convertPageable(this.getPageVo(params)); - - this.userWorkspaceService.findUserWorkspace(resJsonData, UserWorkspaceCondition.make(params.get(Constants.REQ_KEY_CONTENT)), pageable); - //this.userWorkspaceService.departmentFind(resJsonData, UserWorkspaceCondition.make(params.get(Constants.REQ_KEY_CONTENT)), pageable); - return this.setSuccessMessage(resJsonData); - } - // �뾽臾닿났媛꾩뿉 李몄뿬�븯�뒗 �궗�슜�옄 議고쉶 @RequestMapping(value = "/userWorkspace/find", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE) public diff --git a/src/main/java/kr/wisestone/owl/web/form/DepartmentManagementForm.java b/src/main/java/kr/wisestone/owl/web/form/DepartmentManagementForm.java new file mode 100644 index 0000000..6f9a6f4 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/web/form/DepartmentManagementForm.java @@ -0,0 +1,45 @@ +package kr.wisestone.owl.web.form; + +import kr.wisestone.owl.util.ConvertUtil; + +import java.util.Map; + +/** + * Created by jeong on 2017-12-30. + */ +public class DepartmentManagementForm { + private Long id; + private String departmentName; + private String departmentDescription; + + public DepartmentManagementForm() { + } + + public static DepartmentManagementForm make(Map<String, Object> params) { + return ConvertUtil.convertMapToClass(params, DepartmentManagementForm.class); + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getDepartmentName() { + return departmentName; + } + + public void setDepartmentName(String departmentName) { + this.departmentName = departmentName; + } + + public String getDepartmentDescription() { + return departmentDescription; + } + + public void setDepartmentDescription(String departmentDescription) { + this.departmentDescription = departmentDescription; + } +} diff --git a/src/main/java/kr/wisestone/owl/web/form/UserForm.java b/src/main/java/kr/wisestone/owl/web/form/UserForm.java index 938513c..06d0a08 100644 --- a/src/main/java/kr/wisestone/owl/web/form/UserForm.java +++ b/src/main/java/kr/wisestone/owl/web/form/UserForm.java @@ -17,6 +17,8 @@ private String profile; private String status; private String phone; + private Long levelId; + private String departmentId; private String workspaceName; private String socialType; private Long lastWorkspaceId; @@ -91,6 +93,22 @@ return phone; } + public Long getLevelId() { + return levelId; + } + + public void setLevelId(Long levelId) { + this.levelId = levelId; + } + + public String getDepartmentId() { + return departmentId; + } + + public void setDepartmentId(String departmentId) { + this.departmentId = departmentId; + } + public void setPhone(String phone) { this.phone = phone; } diff --git a/src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java b/src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java new file mode 100644 index 0000000..3301980 --- /dev/null +++ b/src/main/java/kr/wisestone/owl/web/form/UserLevelForm.java @@ -0,0 +1,45 @@ +package kr.wisestone.owl.web.form; + +import kr.wisestone.owl.domain.User; +import kr.wisestone.owl.util.ConvertUtil; + +import java.util.Map; + +/** + * Created by jeong on 2017-12-30. + */ +public class UserLevelForm { + private Long id; + private String levelName; + private Integer permission; + + public UserLevelForm(){} + + public static UserLevelForm make(Map<String, Object> params) { + return ConvertUtil.convertMapToClass(params, UserLevelForm.class); + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Integer getPermission() { + return permission; + } + + public void setPermission(Integer permission) { + this.permission = permission; + } +} diff --git a/src/main/resources/META-INF/orm.xml b/src/main/resources/META-INF/orm.xml index 0fb4ead..6a31acf 100644 --- a/src/main/resources/META-INF/orm.xml +++ b/src/main/resources/META-INF/orm.xml @@ -42,7 +42,9 @@ <query> SELECT u FROM User u - WHERE u.permission > 2047 + INNER JOIN u.userLevel ul + INNER JOIN u.departmentManagement dm + WHERE ul.permission > 2047 AND u.status = '01' </query> </named-query> diff --git a/src/main/resources/migration/V1_10__Alter_Table.sql b/src/main/resources/migration/V1_10__Alter_Table.sql new file mode 100644 index 0000000..dedf1fe --- /dev/null +++ b/src/main/resources/migration/V1_10__Alter_Table.sql @@ -0,0 +1,25 @@ +ALTER TABLE `user` DROP COLUMN `permission`; +ALTER TABLE `user` ADD COLUMN `level_id` BIGINT(11) NULL; +ALTER TABLE `user` ADD COLUMN `department_id` BIGINT(11) NULL; + +CREATE TABLE `department_management`( + `id` BIGINT(11) AUTO_INCREMENT, + `department_name` VARCHAR(50) NOT NULL, + `department_description` VARCHAR(255) NOT NULL, + `register_id` BIGINT(20) NOT NULL, + `register_date` TIMESTAMP NULL, + `modify_id` BIGINT(20) NOT NULL, + `modify_date` TIMESTAMP NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + +CREATE TABLE `user_level`( + `id` BIGINT(11) AUTO_INCREMENT, + `level_name` VARCHAR(50) NOT NULL, + `permission` INT NULL, + `register_id` BIGINT(20) NOT NULL COMMENT 'register_id', + `register_date` TIMESTAMP NULL COMMENT 'register_date', + `modify_id` BIGINT(20) NOT NULL COMMENT 'modify_id', + `modify_date` TIMESTAMP NULL COMMENT 'modify_date', + PRIMARY KEY (`id`) USING btree +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; \ 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 new file mode 100644 index 0000000..61ede06 --- /dev/null +++ b/src/main/resources/mybatis/query-template/userLevel-template.xml @@ -0,0 +1,30 @@ +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + +<mapper namespace="kr.wisestone.owl.mapper.UserLevelMapper"> + + <select id="find" resultType="java.util.HashMap" parameterType="kr.wisestone.owl.web.condition.UserLevelCondition"> + SELECT + ul.id as id, + ul.level_name as levelName, + ul.permission as permission + FROM + user_level ul + WHERE 1=1 + <if test="levelName != '' and levelName != null"> + AND ul.level_name like CONCAT('%',#{levelName},'%') + </if> + limit #{pageSize} offset #{page}; + </select> + + <select id="count" resultType="java.lang.Long" parameterType="kr.wisestone.owl.web.condition.UserLevelCondition"> + SELECT + count(ul.id) + FROM + user_level ul + WHERE 1=1 + <if test="levelName != '' and levelName != null"> + AND ul.level_name like CONCAT('%',#{levelName},'%') + </if> + </select> +</mapper> \ No newline at end of file diff --git a/src/main/resources/mybatis/query-template/userWorkspace-template.xml b/src/main/resources/mybatis/query-template/userWorkspace-template.xml index 402aff6..0b89246 100644 --- a/src/main/resources/mybatis/query-template/userWorkspace-template.xml +++ b/src/main/resources/mybatis/query-template/userWorkspace-template.xml @@ -9,7 +9,7 @@ u.id as userId, u.name as userName, u.account as account, - u.permission as permission, + /*u.permission as permission,*/ CASE WHEN uw.use_yn = 'Y' THEN 'true' ELSE 'false' END as useYn FROM user_workspace uw diff --git a/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js b/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js index 4a8a351..f78008e 100644 --- a/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js +++ b/src/main/webapp/scripts/app/workspace/workspaceUserLevelConfig.controller.js @@ -87,7 +87,7 @@ $scope.vm.tableConfigs.push($tableProvider.config() .setHName("manageUser.manageNoticePerm") .setHWidth("width-140-p") - .setDType("renderer") + .setDType("renderer") .setDAlign("text-center pdr0 pdt0 pdl0 pdb0") .setDName("Notice") .setDRenderer("WORKSPACE_USE_YN")); @@ -130,10 +130,10 @@ currentPage = selectedPage; } - var conditions = { + var conditions = { name : $scope.vm.search.levelName //�벑湲됰챸 }; - + //�뀒�씠釉� 由ъ뒪�듃 �뜲�씠�꽣 而⑦듃濡ㅻ윭 �슂泥� UserWorkspace.levelFind($resourceProvider.getContent(conditions, $resourceProvider.getPageContent(currentPage, $scope.vm.page.selectedPageRowCount))).then(function (result) { diff --git a/src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js b/src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js index 2554779..2fb0d40 100644 --- a/src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js +++ b/src/main/webapp/scripts/components/userWorkspace/userWorkspace.service.js @@ -7,7 +7,7 @@ app.factory("UserWorkspace", ['$http', '$log', function ($http, $log) { return { levelFind : function (conditions) { - return $http.post("userWorkspace/levelFind", conditions).then(function (response) { + return $http.post("userLevel/find", conditions).then(function (response) { $log.debug("�궗�슜�옄 �벑湲� 紐⑸줉 : ", response); return response; }); -- Gitblit v1.8.0