From 8640de04cd67d3fa33ca188d6b45ed1a13d17386 Mon Sep 17 00:00:00 2001
From: wyu <kknd09321@nate.com>
Date: 목, 11 11월 2021 09:25:01 +0900
Subject: [PATCH] 사용자 관리 부서 상세 백앤드 수정

---
 src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java        |    8 +
 src/main/resources/mybatis/query-template/department-template.xml             |   16 +++
 src/main/java/kr/wisestone/owl/web/controller/UserWorkspaceController.java    |    3 
 src/main/java/kr/wisestone/owl/web/form/UserDepartmentForm.java               |   60 ++++++++++++
 src/main/java/kr/wisestone/owl/web/controller/DepartmentController.java       |   10 +-
 src/main/webapp/scripts/app/workspace/workspaceDepartmentModify.controller.js |   12 +
 src/main/java/kr/wisestone/owl/mapper/DepartmentMapper.java                   |    4 
 src/main/java/kr/wisestone/owl/domain/UserDepartment.java                     |   21 +--
 src/main/java/kr/wisestone/owl/vo/UserDepartmentVo.java                       |   51 ++++++++++
 src/main/java/kr/wisestone/owl/service/impl/UserWorkspaceServiceImpl.java     |    1 
 src/main/webapp/scripts/components/utils/autoComplete.controller.js           |    8 
 src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js       |    4 
 src/main/webapp/views/workspace/workspaceDepartmentModify.html                |   10 +-
 src/main/java/kr/wisestone/owl/vo/DepartmentVo.java                           |    9 +
 src/main/resources/migration/V1_11__Alter_Table.sql                           |    4 
 src/main/java/kr/wisestone/owl/web/condition/DepartmentCondition.java         |   12 ++
 src/main/java/kr/wisestone/owl/web/controller/UserDepartmentController.java   |   46 +++++++++
 src/main/java/kr/wisestone/owl/service/DepartmentService.java                 |    4 
 src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js  |    2 
 19 files changed, 249 insertions(+), 36 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/domain/UserDepartment.java b/src/main/java/kr/wisestone/owl/domain/UserDepartment.java
index c159c18..a309995 100644
--- a/src/main/java/kr/wisestone/owl/domain/UserDepartment.java
+++ b/src/main/java/kr/wisestone/owl/domain/UserDepartment.java
@@ -10,13 +10,8 @@
     @Id
     @GeneratedValue(strategy = GenerationType.IDENTITY)
     private Long id;
-    private String departmentId;
-
-    @ManyToOne(targetEntity = User.class, fetch = FetchType.LAZY)
-    @JoinColumn(name="user_id")
-    private User user;
-
-    public UserDepartment(){}
+    private Long departmentId;
+    private Long userId;
 
     public Long getId() {
         return id;
@@ -26,19 +21,19 @@
         this.id = id;
     }
 
-    public String getDepartmentId() {
+    public Long getDepartmentId() {
         return departmentId;
     }
 
-    public void setDepartmentId(String departmentId) {
+    public void setDepartmentId(Long departmentId) {
         this.departmentId = departmentId;
     }
 
-    public User getUser() {
-        return user;
+    public Long getUserId() {
+        return userId;
     }
 
-    public void setUser(User user) {
-        this.user = user;
+    public void setUserId(Long userId) {
+        this.userId = userId;
     }
 }
diff --git a/src/main/java/kr/wisestone/owl/mapper/DepartmentMapper.java b/src/main/java/kr/wisestone/owl/mapper/DepartmentMapper.java
index be9a3c7..fb614ee 100644
--- a/src/main/java/kr/wisestone/owl/mapper/DepartmentMapper.java
+++ b/src/main/java/kr/wisestone/owl/mapper/DepartmentMapper.java
@@ -1,6 +1,8 @@
 package kr.wisestone.owl.mapper;
 
+import kr.wisestone.owl.vo.DepartmentVo;
 import kr.wisestone.owl.web.condition.DepartmentCondition;
+import kr.wisestone.owl.web.condition.UserCondition;
 import org.springframework.stereotype.Repository;
 
 import java.util.List;
@@ -18,4 +20,6 @@
     List<Map<String, Object>> findEvent();
 
     Long findBydepartmentId(Long Id);
+
+    List<Map<String, Object>> findByDepartmentIds(UserCondition condition);
 }
diff --git a/src/main/java/kr/wisestone/owl/service/DepartmentService.java b/src/main/java/kr/wisestone/owl/service/DepartmentService.java
index d1a2423..682ad46 100644
--- a/src/main/java/kr/wisestone/owl/service/DepartmentService.java
+++ b/src/main/java/kr/wisestone/owl/service/DepartmentService.java
@@ -3,6 +3,7 @@
 import kr.wisestone.owl.domain.Department;
 import kr.wisestone.owl.vo.DepartmentVo;
 import kr.wisestone.owl.web.condition.DepartmentCondition;
+import kr.wisestone.owl.web.condition.UserCondition;
 import kr.wisestone.owl.web.form.DepartmentForm;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.jpa.repository.JpaRepository;
@@ -29,4 +30,7 @@
     ModelAndView downloadExcel(HttpServletRequest request, Model model);
 
     boolean department(Long id);
+
+    List<Map<String, Object>> findByDepartmentIds( UserCondition condition);
+
 }
diff --git a/src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java
index 0e44c92..c1c4f93 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java
@@ -4,6 +4,7 @@
 import kr.wisestone.owl.mapper.DepartmentMapper;
 import kr.wisestone.owl.service.UserService;
 import kr.wisestone.owl.web.condition.DepartmentCondition;
+import kr.wisestone.owl.web.condition.UserCondition;
 import kr.wisestone.owl.web.form.DepartmentForm;
 import org.springframework.ui.Model;
 import com.google.common.collect.Lists;
@@ -115,6 +116,8 @@
         this.departmentRepository.flush();
     }
 
+
+
     // 遺��꽌 紐⑸줉�쓣 �뿊��濡� �떎�슫濡쒕뱶 �븳�떎.
     @Override
     public ModelAndView downloadExcel(HttpServletRequest request, Model model) {
@@ -175,6 +178,11 @@
         return this.departmentMapper.findBydepartmentId(Id) > 0;
     }
 
+    @Override
+    public List<Map<String, Object>> findByDepartmentIds(UserCondition condition) {
+        return this.departmentMapper.findByDepartmentIds(condition);
+    }
+
 
     //  寃��깋 寃곌낵瑜� DepartmentVo 濡� 蹂��솚�븳�떎.
     private List<DepartmentVo> convertDepartmentVoToMap(List<Map<String, Object>> results, Long totalDepartmentsCount, Pageable pageable, Map<String, Object> resJsonData) {
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 95f21fb..1fc09fc 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/UserWorkspaceServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/UserWorkspaceServiceImpl.java
@@ -271,4 +271,5 @@
             this.userWorkspaceRepository.saveAll(userWorkspaces);
         }
     }
+
 }
diff --git a/src/main/java/kr/wisestone/owl/vo/DepartmentVo.java b/src/main/java/kr/wisestone/owl/vo/DepartmentVo.java
index 1b1c9cd..e20c439 100644
--- a/src/main/java/kr/wisestone/owl/vo/DepartmentVo.java
+++ b/src/main/java/kr/wisestone/owl/vo/DepartmentVo.java
@@ -8,6 +8,7 @@
     private Long id;
     private String departmentName;
     private String departmentDescription;
+    private String byName;
 
     private Long departmentCount;
     public DepartmentVo() {}
@@ -49,4 +50,12 @@
     public void setDepartmentCount(Long departmentCount) {
         this.departmentCount = departmentCount;
     }
+
+    public String getByName() {
+        return byName;
+    }
+
+    public void setByName(String byName) {
+        this.byName = byName;
+    }
 }
diff --git a/src/main/java/kr/wisestone/owl/vo/UserDepartmentVo.java b/src/main/java/kr/wisestone/owl/vo/UserDepartmentVo.java
new file mode 100644
index 0000000..76a51d1
--- /dev/null
+++ b/src/main/java/kr/wisestone/owl/vo/UserDepartmentVo.java
@@ -0,0 +1,51 @@
+package kr.wisestone.owl.vo;
+
+import kr.wisestone.owl.web.form.UserDepartmentForm;
+
+public class UserDepartmentVo extends BaseVo {
+
+    private Long id;
+    private Long departmentId;
+    private Long userId;
+
+    private Long departmentCount;
+    public UserDepartmentVo() {}
+
+    public UserDepartmentVo(Long id, Long departmentId, Long userId) {
+        this.id = id;
+        this.departmentId = departmentId;
+        this.userId = userId;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getDepartmentId() {
+        return departmentId;
+    }
+
+    public void setDepartmentId(Long departmentId) {
+        this.departmentId = departmentId;
+    }
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public Long getDepartmentCount() {
+        return departmentCount;
+    }
+
+    public void setDepartmentCount(Long departmentCount) {
+        this.departmentCount = departmentCount;
+    }
+}
diff --git a/src/main/java/kr/wisestone/owl/web/condition/DepartmentCondition.java b/src/main/java/kr/wisestone/owl/web/condition/DepartmentCondition.java
index b0add88..33af7e6 100644
--- a/src/main/java/kr/wisestone/owl/web/condition/DepartmentCondition.java
+++ b/src/main/java/kr/wisestone/owl/web/condition/DepartmentCondition.java
@@ -1,7 +1,9 @@
 package kr.wisestone.owl.web.condition;
 
+import com.google.common.collect.Lists;
 import kr.wisestone.owl.util.ConvertUtil;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -12,6 +14,8 @@
     private String departmentName;
     private String departmentDescription;
     private Long departmentCount;
+
+    private List<Long> departmentIds = Lists.newArrayList();
 
     private Integer Page;
     private Integer PageSize;
@@ -67,4 +71,12 @@
     public void setPageSize(Integer pageSize) {
         PageSize = pageSize;
     }
+
+    public List<Long> getDepartmentIds() {
+        return departmentIds;
+    }
+
+    public void setDepartmentIds(List<Long> departmentIds) {
+        this.departmentIds = departmentIds;
+    }
 }
diff --git a/src/main/java/kr/wisestone/owl/web/controller/DepartmentController.java b/src/main/java/kr/wisestone/owl/web/controller/DepartmentController.java
index 961973f..1c3f1c0 100644
--- a/src/main/java/kr/wisestone/owl/web/controller/DepartmentController.java
+++ b/src/main/java/kr/wisestone/owl/web/controller/DepartmentController.java
@@ -32,7 +32,7 @@
     @RequestMapping(value = "/department/add", method = RequestMethod.POST)
     public
     @ResponseBody
-    Map<String, Object> add(@RequestBody Map<String, Map<String, Object>> params) {
+    Map<String, Object> departmentAdd(@RequestBody Map<String, Map<String, Object>> params) {
         Map<String, Object> resJsonData = new HashMap<>();
         Map<String, Object> content = params.get(Constants.REQ_KEY_CONTENT);
         this.departmentService.add(DepartmentForm.make(content));
@@ -44,7 +44,7 @@
     @RequestMapping(value = "/department/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> departmentFind(@RequestBody Map<String, Map<String, Object>> params) {
         Map<String, Object> resJsonData = new HashMap<>();
         Pageable pageable = this.pageUtil.convertPageable(this.getPageVo(params));
 
@@ -57,7 +57,7 @@
    @RequestMapping(value = "/department/detail", produces = MediaType.APPLICATION_JSON_VALUE)
    public
    @ResponseBody
-   Map<String, Object> detail(@RequestBody Map<String, Map<String, Object>> params) {
+   Map<String, Object> departmentDetail(@RequestBody Map<String, Map<String, Object>> params) {
        Map<String, Object> resJsonData = new HashMap<>();
        this.departmentService.detail(resJsonData, DepartmentCondition.make(params.get(Constants.REQ_KEY_CONTENT)));
 
@@ -68,7 +68,7 @@
    @RequestMapping(value = "/department/modify", produces = MediaType.APPLICATION_JSON_VALUE)
    public
    @ResponseBody
-   Map<String, Object> modify(@RequestBody Map<String, Map<String, Object>> params) {
+   Map<String, Object> departmentModify(@RequestBody Map<String, Map<String, Object>> params) {
        Map<String, Object> resJsonData = new HashMap<>();
 
        this.departmentService.modify(DepartmentForm.make(params.get(Constants.REQ_KEY_CONTENT)));
@@ -80,7 +80,7 @@
     @RequestMapping(value = "/department/remove", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
     public
     @ResponseBody
-    Map<String, Object> remove(@RequestBody Map<String, Map<String, Object>> params) {
+    Map<String, Object> departmentRemove(@RequestBody Map<String, Map<String, Object>> params) {
         Map<String, Object> resJsonData = new HashMap<>();
         Map<String, Object> content = params.get(Constants.REQ_KEY_CONTENT);
 
diff --git a/src/main/java/kr/wisestone/owl/web/controller/UserDepartmentController.java b/src/main/java/kr/wisestone/owl/web/controller/UserDepartmentController.java
new file mode 100644
index 0000000..549f4cb
--- /dev/null
+++ b/src/main/java/kr/wisestone/owl/web/controller/UserDepartmentController.java
@@ -0,0 +1,46 @@
+package kr.wisestone.owl.web.controller;
+
+import kr.wisestone.owl.constant.Constants;
+import kr.wisestone.owl.service.UserDepartmentService;
+import kr.wisestone.owl.web.condition.UserCondition;
+import kr.wisestone.owl.web.condition.UserDepartmentCondition;
+import kr.wisestone.owl.web.form.UserDepartmentForm;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.MediaType;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import java.util.HashMap;
+import java.util.Map;
+
+@Controller
+public class UserDepartmentController extends BaseController {
+
+    @Autowired
+    private UserDepartmentService userDepartmentService;
+
+        @RequestMapping(value = "/userWorkspace/modifyDepartment", produces = MediaType.APPLICATION_JSON_VALUE)
+        public
+        @ResponseBody
+        Map<String, Object> userDepartmentModify(@RequestBody Map<String, Map<String, Object>> params) {
+            Map<String, Object> resJsonData = new HashMap<>();
+
+            this.userDepartmentService.userDepartmentModify(UserDepartmentForm.make(params.get(Constants.REQ_KEY_CONTENT)));
+
+            return this.setSuccessMessage(resJsonData);
+        }
+
+
+        @RequestMapping(value = "/userWorkspace/detailDepartment", produces = MediaType.APPLICATION_JSON_VALUE)
+        public
+        @ResponseBody
+        Map<String, Object> userDepartmentDetail(@RequestBody Map<String, Map<String, Object>> params) {
+            Map<String, Object> resJsonData = new HashMap<>();
+            this.userDepartmentService.userDepartmentDetail(resJsonData, UserCondition.make(params.get(Constants.REQ_KEY_CONTENT)));
+
+            return this.setSuccessMessage(resJsonData);
+        }
+}
\ No newline at end of file
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 fc19000..809cc3a 100644
--- a/src/main/java/kr/wisestone/owl/web/controller/UserWorkspaceController.java
+++ b/src/main/java/kr/wisestone/owl/web/controller/UserWorkspaceController.java
@@ -3,7 +3,6 @@
 import kr.wisestone.owl.constant.Constants;
 import kr.wisestone.owl.service.UserWorkspaceService;
 import kr.wisestone.owl.web.condition.UserWorkspaceCondition;
-import kr.wisestone.owl.web.form.ProjectForm;
 import kr.wisestone.owl.web.form.UserWorkspaceForm;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Pageable;
@@ -25,6 +24,7 @@
 
     @Autowired
     private UserWorkspaceService userWorkspaceService;
+
 
     //  �뾽臾닿났媛꾩뿉 李몄뿬�븯�뒗 �궗�슜�옄 議고쉶
     @RequestMapping(value = "/userWorkspace/find", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
@@ -50,4 +50,5 @@
 
         return this.setSuccessMessage(resJsonData);
     }
+
 }
diff --git a/src/main/java/kr/wisestone/owl/web/form/UserDepartmentForm.java b/src/main/java/kr/wisestone/owl/web/form/UserDepartmentForm.java
new file mode 100644
index 0000000..4297c51
--- /dev/null
+++ b/src/main/java/kr/wisestone/owl/web/form/UserDepartmentForm.java
@@ -0,0 +1,60 @@
+package kr.wisestone.owl.web.form;
+
+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;
+
+public class UserDepartmentForm {
+    private Long id;
+    private Long departmentId;
+
+    private Long userId;
+    private List<Long> ids = Lists.newArrayList();
+
+    public UserDepartmentForm() {
+    }
+
+    public static UserDepartmentForm make(Map<String, Object> params) {
+        UserDepartmentForm form = ConvertUtil.convertMapToClass(params, UserDepartmentForm.class);
+
+        if (MapUtil.getLongs(params,"Ids") != null) {
+            form.setIds(MapUtil.getLongs(params, "Ids"));
+        }
+        return form;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getDepartmentId() {
+        return departmentId;
+    }
+
+    public void setDepartmentId(Long departmentId) {
+        this.departmentId = departmentId;
+    }
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public List<Long> getIds() {
+        return ids;
+    }
+
+    public void setIds(List<Long> ids) {
+        this.ids = ids;
+    }
+}
diff --git a/src/main/resources/migration/V1_11__Alter_Table.sql b/src/main/resources/migration/V1_11__Alter_Table.sql
index 9842a12..bb9d896 100644
--- a/src/main/resources/migration/V1_11__Alter_Table.sql
+++ b/src/main/resources/migration/V1_11__Alter_Table.sql
@@ -45,8 +45,8 @@
 
 CREATE TABLE `user_department`(
     `id` BIGINT(11) AUTO_INCREMENT,
-    `department_id` VARCHAR(50) NULL,
-    `user_id` VARCHAR(50) NULL,
+    `department_id` BIGINT(11),
+    `user_id` BIGINT(11),
     `register_id` BIGINT(20) NOT NULL,
     `register_date` TIMESTAMP NULL,
     `modify_id` BIGINT(20) NOT NULL,
diff --git a/src/main/resources/mybatis/query-template/department-template.xml b/src/main/resources/mybatis/query-template/department-template.xml
index 2df49a8..98aaf4d 100644
--- a/src/main/resources/mybatis/query-template/department-template.xml
+++ b/src/main/resources/mybatis/query-template/department-template.xml
@@ -36,4 +36,20 @@
             AND d.id like CONCAT('%',#{id},'%')
         </if>
     </select>
+
+    <select id="findByDepartmentIds" resultType="java.util.HashMap" parameterType="kr.wisestone.owl.web.condition.UserCondition">
+        SELECT
+        d.id as id,
+        d.department_name as departmentName,
+        d.department_description as departmentDescription
+        FROM
+        user_department ud
+        INNER JOIN department d ON ud.department_id = d.id
+        WHERE 1=1
+        <if test="id != '' and id != null">
+            AND ud.user_id = #{id}
+        </if>
+    </select>
+
+
 </mapper>
\ No newline at end of file
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 0c53523..49b8c58 100644
--- a/src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js
+++ b/src/main/webapp/custom_components/js-table/tableColumnGenerator.directive.js
@@ -135,7 +135,7 @@
                                         case "USE_DEPARTMENT_LIST" :
                                             makeTag += "<ul class='ul-not-comma'>";
 
-                                            makeTag += "<div style='cursor: pointer' ng-click='event.modifyUserDepartments(scope.data.id)'>";
+                                            makeTag += "<div style='cursor: pointer' ng-click='event.modifyUserDepartments(data.id)'>";
                                             angular.forEach(scope.data.departments, function (department) { //departmentVO濡� �닔�젙 泥댄겕 �븘�슂
                                                 makeTag += "<li>" + department.fieldValue + "</li>";
                                             });
diff --git a/src/main/webapp/scripts/app/workspace/workspaceDepartmentModify.controller.js b/src/main/webapp/scripts/app/workspace/workspaceDepartmentModify.controller.js
index efc42c0..2a4e97f 100644
--- a/src/main/webapp/scripts/app/workspace/workspaceDepartmentModify.controller.js
+++ b/src/main/webapp/scripts/app/workspace/workspaceDepartmentModify.controller.js
@@ -23,7 +23,7 @@
                     id : parameter.id,
                     form : {
                         id : parameter.id,
-                        /*users : [],*/
+                        departmentList : [],    // �쁽�옱 遺��꽌 紐⑸줉
                         departments : [] // 遺��꽌
                     },
                     departmentName : "", //遺��꽌紐� 寃��깋
@@ -34,7 +34,7 @@
                         }
                     },*/
                 };
-                // angular.extend(this, $controller('autoCompleteController', {$scope : $scope, $injector : $injector}));
+                angular.extend(this, $controller('autoCompleteController', {$scope : $scope, $injector : $injector}));
 
                 //  �꽑�깮 �븳 遺��꽌 �젣嫄�
                 function removeDepartments(index) {
@@ -91,13 +91,17 @@
                 }
 
                 function detail() {
+                    var contents = {
+                        id : parameter.id
+                    }
+
                     UserWorkspace.userDepartmentDetail($resourceProvider.getContent(
-                        $scope.vm,
+                        contents,
                         $resourceProvider.getPageContent(0, 1))).then(function (result) {
 
                         if (result.data.message.status === "success") {
                             if (angular.isDefined(result.data.data)) {
-                                $scope.vm.form.departments = result.data.data.userDepartmentVos; //泥댄겕 �븘�슂
+                                $scope.vm.form.departmentList = result.data.data; //泥댄겕 �븘�슂
                             }
                         }
                         else {
diff --git a/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js b/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js
index 6271c6a..461d586 100644
--- a/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js
+++ b/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js
@@ -64,7 +64,7 @@
                 $scope.$on("getUserWorkspaceList", function () {
                     $scope.fn.getLevels();
                     $scope.fn.getDepartments();
-                    $scope.fn.makeTableConfigs();
+
                     $scope.fn.getUserWorkspaceList(0);
                 });
 
@@ -287,6 +287,8 @@
                         }
                     });
                 }
+
+                $scope.fn.makeTableConfigs();
             }
         ]);
     }
diff --git a/src/main/webapp/scripts/components/utils/autoComplete.controller.js b/src/main/webapp/scripts/components/utils/autoComplete.controller.js
index 17642ad..c5586e9 100644
--- a/src/main/webapp/scripts/components/utils/autoComplete.controller.js
+++ b/src/main/webapp/scripts/components/utils/autoComplete.controller.js
@@ -18,7 +18,7 @@
                 var Project = $injector.get("Project");
                 var Workflow = $injector.get("Workflow");
                 var Issue = $injector.get("Issue");
-                // var UserWorkspace = $injector.get("UserWorkspace");
+                var UserWorkspace = $injector.get("UserWorkspace");
                 var $log = $injector.get("$log");
                 var SweetAlert = $injector.get("SweetAlert");
 
@@ -27,7 +27,7 @@
                 $scope.fn.getProjectList = getProjectList;  //  �봽濡쒖젥�듃 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎.
                 $scope.fn.getIssueList = getIssueList;  //  �씪媛� 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎.
                 $scope.fn.getWorkflowList = getWorkflowList;    //  �썙�겕�뵆濡쒖슦 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎.
-                // $scope.fn.getDepartmentList = getDepartmentList;    //  遺��꽌 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎.
+                $scope.fn.getUserDepartmentList = getUserDepartmentList;    //  遺��꽌 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎.
 
                 function getUserList(query, excludeList, page, callBack) {
                     var conditions = {
@@ -111,7 +111,7 @@
                     return deferred.promise;
                 }
 
-                function getDepartmentList(query, excludeList, page, callBack) { //泥댄겕 �븘�슂
+                function getUserDepartmentList(query, excludeList, page, callBack) { //泥댄겕 �븘�슂
                     var conditions = {
                         departmentName : query,
                         excludeIds : (function () { //�뼱�뼡 �뿭�븷? 泥댄겕 �븘�슂
@@ -125,7 +125,7 @@
                     };
                     var deferred = $q.defer();
 
-                    UserWorkspace.find($resourceProvider.getContent(         //  �럹�씠吏� �뾽�뜲�씠�듃媛� �븘�슂�븳 而댄룷�꼳�듃 �씪寃쎌슦, page �뾽�뜲�씠�듃媛� �엳�쓣 寃쎌슦 湲곕낯 10媛쒖뵫 媛��졇�삤怨� �븘�땺寃쎌슦 25媛쒖뵫 媛��졇�삩�떎.
+                    UserWorkspace.userDepartmentDetail($resourceProvider.getContent(         //  �럹�씠吏� �뾽�뜲�씠�듃媛� �븘�슂�븳 而댄룷�꼳�듃 �씪寃쎌슦, page �뾽�뜲�씠�듃媛� �엳�쓣 寃쎌슦 湲곕낯 10媛쒖뵫 媛��졇�삤怨� �븘�땺寃쎌슦 25媛쒖뵫 媛��졇�삩�떎.
                         conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 10 : 25))).then(function (result) {
                         if (result.data.message.status === "success") {
 
diff --git a/src/main/webapp/views/workspace/workspaceDepartmentModify.html b/src/main/webapp/views/workspace/workspaceDepartmentModify.html
index 8312784..be907bd 100644
--- a/src/main/webapp/views/workspace/workspaceDepartmentModify.html
+++ b/src/main/webapp/views/workspace/workspaceDepartmentModify.html
@@ -15,11 +15,11 @@
                 <js-autocomplete-multi data-input-name="departments"
                                        selected-model="vm.form.departments"
                                        search="vm.departmentName"
-                                       source="fn.getDepartments(vm.departmentName, vm.form.departments)"
-                                       input-disabled="false"> <!--concat 泥댄겕 �븘�슂-->
-                                       <!--translation-texts="{ count : 'common.userNum', empty : 'common.emptyUser' }"
-                                       extra-settings="{ displayProp : 'byName' , idProp : 'id', imageable : true, imagePathProp : 'profile', type : 'user', maxlength : 100, autoResize : true }"-->
-                </js-autocomplete-multi>
+                                       source="fn.getUserDepartmentList(vm.departmentName, vm.form.users)"
+                                       input-disabled="false"
+                                       translation-texts="{ count : 'common.userNum', empty : 'common.emptyUser' }"
+                                       extra-settings="{ displayProp : 'byName' , idProp : 'id', imageable : false, imagePathProp : 'profile', type : 'user', maxlength : 100, autoResize : true }"></js-autocomplete-multi>
+
 
                 <div class="select3-selection__choicediv mt-10">
                     <span class="select3-selection__choice" ng-repeat="department in vm.form.departments">

--
Gitblit v1.8.0