From 174dc12380c54730014e86c8897be16389fc804f Mon Sep 17 00:00:00 2001
From: 박지현 <jhpark@maprex.co.kr>
Date: 월, 21 2월 2022 11:42:38 +0900
Subject: [PATCH] Merge branch 'master' of http://maprex.iptime.org:9001/r/owl-kisa

---
 src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java |   72 ++++++++++++++++++++++++++---------
 1 files changed, 53 insertions(+), 19 deletions(-)

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 f5f077d..6850762 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/UserServiceImpl.java
@@ -18,7 +18,6 @@
 import kr.wisestone.owl.util.*;
 import kr.wisestone.owl.vo.*;
 import kr.wisestone.owl.web.condition.UserCondition;
-import kr.wisestone.owl.web.form.DepartmentForm;
 import kr.wisestone.owl.web.form.UserForm;
 import kr.wisestone.owl.web.view.ExcelView;
 import org.apache.commons.validator.routines.EmailValidator;
@@ -93,6 +92,9 @@
     private ProjectService projectService;
 
     @Autowired
+    private IssueTypeService issueTypeService;
+
+    @Autowired
     private UserSecurityService userSecurityService;
 
     @Autowired
@@ -103,6 +105,9 @@
 
     @Autowired
     private AttachedFileService attachedFileService;
+
+    @Autowired
+    private UserDepartmentService userDepartmentService;
 
     @Autowired
     private IssueService issueService;
@@ -166,6 +171,9 @@
 
     @Value("${total.statistics.email}")
     private String totalStatisticsEmail; //  �봽濡쒖젥�듃, �씠�뒋, �궗�슜�옄�닔 �븣由�
+
+    @Value("${email.joinEmail}")
+    private boolean bJoinEmail;
 
     @Autowired
     private ExcelView excelView;
@@ -258,7 +266,10 @@
                 this.userWorkspaceService.addUserWorkspace(user, workspace, true, true);
 
                 //  湲곕낯�쑝濡� �젣怨듬릺�뒗 �봽濡쒖젥�듃瑜� �깮�꽦�븳�떎.
-//                this.projectService.addDefaultProject(user, workspace);
+                this.projectService.addDefaultProject(user, workspace);
+
+                // 湲곕낯�쑝濡� �젣怨듬릺�뒗 �봽濡쒖젥�듃瑜� �씠�뒋 �쑀�삎�쓽 �궗�슜 �봽濡쒖젥�듃濡� �꽕�젙
+                this.issueTypeService.addDefaultUsedProject(workspace);
 
                 user.setLastWorkspaceId(workspace.getId());
 
@@ -284,8 +295,9 @@
         userMap.put("registerDate", DateUtil.convertDateToYYYYMMDD(user.getRegisterDate()));
 
         //  �쉶�썝 媛��엯 �븣由� 硫붿씪 �쟾�넚
-        this.systemEmailService.directEmail(new String[]{user.getAccount()}, EmailType.WORKSPACE_JOIN, userMap, null);
-
+        if(bJoinEmail) {
+            this.systemEmailService.directEmail(new String[]{user.getAccount()}, EmailType.WORKSPACE_JOIN, userMap, null);
+        }
         return user;
     }
 
@@ -953,6 +965,15 @@
         return this.convertUserVoToMap(results, totalUsersCount, pageable, resJsonData);
     }
 
+    //  �궗�슜�옄 �젙蹂대�� 媛��졇�삩�떎.
+    @Override
+    @Transactional(readOnly = true)
+    public void findMyLevelAndDepartment(Map<String, Object> resJsonData) {
+        Long loginId = this.webAppUtil.getLoginId();
+        Map<String, Object> result = this.userMapper.findByMyLevelAndDepartment(loginId);
+        resJsonData.put(Constants.RES_KEY_CONTENTS, result);
+    }
+
     //  �궗�슜�옄 �븘�씠�뵒濡� �궗�슜�옄瑜� 議고쉶�븳�떎.
     @Override
     @Transactional(readOnly = true)
@@ -1227,10 +1248,19 @@
     @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","permission");
+        UserVo userVo = ConvertUtil.copyProperties(user, UserVo.class, "password");
         // user�뿉�꽌 Permission 媛믪쓣 媛��졇���꽌 userVo �뿉 setPermission �븿
-        userVo.setPermission(user.getPermission());
         userVo.setAccount(CommonUtil.decryptAES128(userVo.getAccount()));
+
+        UserLevel userLevel = user.getUserLevel();
+        if (userLevel != null) {
+            userVo.setLevelName(userLevel.getLevelName());
+        }
+
+        List<Department> departments = this.userDepartmentService.findDepartment(user.getId());
+        if (departments != null) {
+            userVo.setDepartmentVos(ConvertUtil.convertObjectsToClasses(departments, DepartmentVo.class));
+        }
         resJsonData.put(Constants.RES_KEY_CONTENTS, userVo);
         //  �궗�슜�옄 �꽭�뀡 �젙蹂대�� 遺꾩꽍�빐�꽌 濡쒓렇�뿉 �궓湲대떎.
         log.info(ElasticSearchUtil.makeUserSessionHistoryMessage(httpServletRequest, userVo));
@@ -1347,15 +1377,17 @@
         userMap.put("newUserCount", joinUsers.size());
         userMap.put("joinUsers", userVos);
 
-        String[] sendEmails = this.userJoinStatisticsEmail.replaceAll("\\p{Z}", "").split(",");
-        List<String> encryptSendEmail = Lists.newArrayList();
+        if (this.userJoinStatisticsEmail != null && !this.userJoinStatisticsEmail.equals("")) {
+            String[] sendEmails = this.userJoinStatisticsEmail.replaceAll("\\p{Z}", "").split(",");
+            List<String> encryptSendEmail = Lists.newArrayList();
 
-        for (String sendEmail : sendEmails) {
-            encryptSendEmail.add(CommonUtil.encryptAES128(sendEmail));
+            for (String sendEmail : sendEmails) {
+                encryptSendEmail.add(CommonUtil.encryptAES128(sendEmail));
+            }
+            //  寃곗젣 �꽦怨� 硫붿씪 諛쒖넚
+            this.systemEmailService.directEmail(encryptSendEmail.toArray(new String[encryptSendEmail.size()]), EmailType.USER_JOIN_STATISTICS, userMap, null);
         }
 
-        //  寃곗젣 �꽦怨� 硫붿씪 諛쒖넚
-        this.systemEmailService.directEmail(encryptSendEmail.toArray(new String[encryptSendEmail.size()]), EmailType.USER_JOIN_STATISTICS, userMap, null);
     }
 
     //  �쟾泥� �궗�슜�옄, �봽濡쒖젥�듃 �닔, �씠�뒋 �닔瑜� �씠硫붿씪濡� 蹂대궦�떎.
@@ -1373,15 +1405,17 @@
         userMap.put("projectCount", CommonUtil.getDecimalFormat(projectCount));
         userMap.put("userCount", CommonUtil.getDecimalFormat(activeUsers.size()));
 
-        String[] sendEmails = this.totalStatisticsEmail.replaceAll("\\p{Z}", "").split(",");
-        List<String> encryptSendEmail = Lists.newArrayList();
+        if (this.totalStatisticsEmail != null && !this.totalStatisticsEmail.equals("")) {
+            String[] sendEmails = this.totalStatisticsEmail.replaceAll("\\p{Z}", "").split(",");
+            List<String> encryptSendEmail = Lists.newArrayList();
 
-        for (String sendEmail : sendEmails) {
-            encryptSendEmail.add(CommonUtil.encryptAES128(sendEmail));
+            for (String sendEmail : sendEmails) {
+                encryptSendEmail.add(CommonUtil.encryptAES128(sendEmail));
+            }
+
+            //  寃곗젣 �꽦怨� 硫붿씪 諛쒖넚
+            this.systemEmailService.directEmail(encryptSendEmail.toArray(new String[encryptSendEmail.size()]), EmailType.TOTAL_STATISTICS, userMap, null);
         }
-
-        //  寃곗젣 �꽦怨� 硫붿씪 諛쒖넚
-        this.systemEmailService.directEmail(encryptSendEmail.toArray(new String[encryptSendEmail.size()]), EmailType.TOTAL_STATISTICS, userMap, null);
     }
 
 

--
Gitblit v1.8.0