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/webapp/scripts/app/workspace/workspaceUserConfig.controller.js |  168 ++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 122 insertions(+), 46 deletions(-)

diff --git a/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js b/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js
index 2b2852d..461d586 100644
--- a/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js
+++ b/src/main/webapp/scripts/app/workspace/workspaceUserConfig.controller.js
@@ -9,8 +9,8 @@
     ],
     function (app, angular) {
         app.controller('workspaceUserConfigController', ['$scope', '$rootScope', '$log', '$resourceProvider', 'SweetAlert', '$uibModal', '$q', '$state', '$tableProvider', 'Payment', 'Workspace',
-            'UserWorkspace', '$filter',
-            function ($scope, $rootScope, $log, $resourceProvider, SweetAlert, $uibModal, $q, $state, $tableProvider, Payment, Workspace, UserWorkspace, $filter) {
+            'UserWorkspace', '$filter', '$injector', '$controller',
+            function ($scope, $rootScope, $log, $resourceProvider, SweetAlert, $uibModal, $q, $state, $tableProvider, Payment, Workspace, UserWorkspace, $filter, $injector, $controller) {
 
 
                 /*  $scope.fn �긽�냽 以�  */
@@ -19,7 +19,7 @@
                 $scope.fn.initSearch = initSearch;  //  寃��깋 議곌굔 珥덇린�솕
                 $scope.fn.changePageRowCount = changePageRowCount;  //  �뾽臾� 怨듦컙 李몄뿬 �궗�슜�옄 紐⑸줉 蹂닿린 媛쒖닔 蹂�寃�
                 $scope.fn.getLevels = getLevels; // �벑湲� 紐⑸줉 媛��졇�삤湲�
-                // $scope.fn.getDepartments = getDepartments; // 遺��꽌 紐⑸줉 媛��졇�삤湲�
+                $scope.fn.getDepartments = getDepartments; // 遺��꽌 紐⑸줉 媛��졇�삤湲�
 
                 /*  $scope.vm �긽�냽 以�  */
                 $scope.vm.search = {
@@ -36,7 +36,6 @@
                         fieldValue : $filter("translate")("managementWorkspace.participation") // "李몄뿬"
                     }, {
                         fieldKey : "N",
-                        //fieldValue : $filter("translate")("managementWorkspace.waitForParticipation") // "李몄뿬��湲�"
                         fieldValue : $filter("translate")("managementWorkspace.withdrawal") // "�깉�눜"
                     }]
                 };
@@ -46,6 +45,8 @@
                     selectedPageRowCount : String(10)
                 };
 
+                $scope.vm.levels = [];
+                $scope.vm.departments = [];
                 $scope.vm.tableConfigs = [];
                 $scope.vm.responseData = {
                     data : []
@@ -53,36 +54,27 @@
 
                 //  �뀒�씠釉� �씠踰ㅽ듃
                 $scope.vm.tableEvent = {
-                    modifyUserWorkspace : modifyUserWorkspace   //  �뾽臾� 怨듦컙 李몄뿬�븯�뒗 �궗�슜�옄�쓽 李몄뿬 �긽�깭 蹂�寃�
+                    modifyUserWorkspace : modifyUserWorkspace,   //  �뾽臾� 怨듦컙 李몄뿬�븯�뒗 �궗�슜�옄�쓽 李몄뿬 �긽�깭 蹂�寃�
+                    modifyUserDepartments : modifyUserDepartments //�궗�슜�옄 遺��꽌 蹂�寃�
                 };
+
+                angular.extend(this, $controller('autoCompleteController', {$scope : $scope, $injector : $injector}));
 
                 //  �긽�꽭 �젙蹂�
                 $scope.$on("getUserWorkspaceList", function () {
+                    $scope.fn.getLevels();
+                    $scope.fn.getDepartments();
+
                     $scope.fn.getUserWorkspaceList(0);
                 });
-
-                //  �뾽臾� 怨듦컙 李몄뿬�븯�뒗 �궗�슜�옄�쓽 李몄뿬 �긽�깭 蹂�寃�
-                function modifyUserWorkspace(userWorkspace) {
-                    UserWorkspace.modify($resourceProvider.getContent(
-                        userWorkspace,
-                        $resourceProvider.getPageContent(0, 0))).then(function (result) {
-                        if (result.data.message.status === "success") {
-                            //  �궡媛� 愿�由ы븯�뒗 �뾽臾� 怨듦컙 �젙蹂대�� 議고쉶�븳�떎.
-                            $scope.fn.findMyWorkspace();
-                        }
-                        else {
-                            userWorkspace.useYn = false;
-                            SweetAlert.error($filter("translate")("managementWorkspace.failedToParticipationStatusChange"), result.data.message.message); // "李몄뿬 �긽�깭 蹂�寃� �떎�뙣"
-                        }
-                    });
-                }
 
                 //  寃��깋 議곌굔 珥덇린�솕
                 function initSearch() {
                     $scope.vm.search.name = "";
                     $scope.vm.search.account = "";
                     $scope.vm.search.statuses = [];
-                    $scope.vm.search.level = [];
+                    $scope.vm.search.levels = [];
+                    $scope.vm.search.departments = [];
                     $scope.fn.getUserWorkspaceList(0);
                 }
 
@@ -110,8 +102,7 @@
                         .setHWidth("width-120-p")
                         .setDAlign("text-center")
                         .setDType("renderer")
-                        .setDName("department")
-                        .setDRenderer("DEPARTMENT_OPTION"));
+                        .setDRenderer("USE_DEPARTMENT_LIST"));
                     $scope.vm.tableConfigs.push($tableProvider.config()
                         .setHName("common.level")
                         .setHWidth("width-120-p")
@@ -156,6 +147,24 @@
 
                             return statuses;
                         })(),
+                        levelIds : (function () {
+                            var levels = [];
+
+                            angular.forEach($scope.vm.search.levels, function (level) {
+                                levels.push(level.fieldKey);
+                            });
+
+                            return levels;
+                        })(),
+                        departmentIds : (function () {
+                            var departments = [];
+
+                            angular.forEach($scope.vm.search.departments, function (department) {
+                                departments.push(department.fieldKey);
+                            });
+
+                            return departments;
+                        })(),
                     };
 
                     UserWorkspace.find($resourceProvider.getContent(conditions,
@@ -164,6 +173,28 @@
                         if (result.data.message.status === "success") {
                             $scope.vm.page.selectedPage = currentPage + 1;
                             $scope.vm.responseData = result.data;
+
+                            var idx = 0;
+                            angular.forEach($scope.vm.responseData.data, function (data) {
+                                // data.levelId = $scope.vm.levels[idx].fieldKey;
+                                //data.department = $scope.vm.departments[idx];
+
+                                data.levels = [];
+                                data.departments = [];
+                                data.levels = $scope.vm.levels.slice();
+                                data.departments = $scope.vm.departments.slice();
+                                /*if(result.data.data[idx].departmentId == null){
+                                    data.departments = $scope.vm.departments.slice();
+                                    data.departments.unshift({
+                                        fieldKey : 'd',
+                                        fieldValue : '遺��꽌瑜� �꽑�깮 �븯�꽭�슂.'
+                                    });
+                                    result.data.data[idx].departmentId = 'd';
+                                } else{
+                                    data.departments = $scope.vm.departments.slice();
+                                }*/
+                                idx++;
+                            });
                         }
                         else {
                             SweetAlert.error($filter("translate")("managementWorkspace.failedToSelectWorkspaceFullUserList"), result.data.message.message); // "�뾽臾� 怨듦컙 �쟾泥� �궗�슜�옄 紐⑸줉 議고쉶 �떎�뙣"
@@ -174,15 +205,21 @@
                 //  �벑湲� 紐⑸줉
                 function getLevels() {
                     var deferred = $q.defer();
+                    $scope.vm.levels = [];
 
                     UserWorkspace.levelFind($resourceProvider.getContent({},
                         $resourceProvider.getPageContent(0, 1000))).then(function (result) {
 
                         if (result.data.message.status === "success") {
-                            $scope.vm.search.levels = result.data.data;
+                            angular.forEach(result.data.data, function (level) {
+                                $scope.vm.levels.push({
+                                    fieldKey : level.id,
+                                    fieldValue : level.levelName
+                                });
+                            });
                         }
                         else {
-                            SweetAlert.swal($filter("translate")("managementWorkspace.failedToSelectWorkspaceFullUserList"), result.data.message.message, "error"); // �뾽臾� 怨듦컙 �쟾泥� �궗�슜�옄 紐⑸줉 議고쉶 �떎�뙣
+                            SweetAlert.swal($filter("translate")("managementWorkspace.failedToSelectWorkspaceFullLevelList"), result.data.message.message, "error"); // �슜�옄 �벑湲� 紐⑸줉 議고쉶 �떎�뙣
                         }
 
                         deferred.resolve(result.data.data);
@@ -191,28 +228,67 @@
                     return deferred.promise;
                 }
 
-                //  遺��꽌 紐⑸줉
-                // function getDepartments() {
-                //     var deferred = $q.defer();
-                //
-                //     UserWorkspace.departmentFind($resourceProvider.getContent({},
-                //         $resourceProvider.getPageContent(0, 1000))).then(function (result) {
-                //
-                //         if (result.data.message.status === "success") {
-                //             $scope.vm.search.departments = result.data.data;
-                //         }
-                //         else {
-                //             SweetAlert.swal($filter("translate")("managementWorkspace.failedToSelectWorkspaceFullUserList"), result.data.message.message, "error"); // �뾽臾� 怨듦컙 �쟾泥� �궗�슜�옄 紐⑸줉 議고쉶 �떎�뙣
-                //         }
-                //
-                //         deferred.resolve(result.data.data);
-                //     });
-                //
-                //     return deferred.promise;
-                // }
+                // 遺��꽌 紐⑸줉
+                function getDepartments() {
+                    var deferred = $q.defer();
+                    $scope.vm.departments = [];
+
+                    UserWorkspace.departmentFind($resourceProvider.getContent({},
+                        $resourceProvider.getPageContent(0, 1000))).then(function (result) {
+
+                        if (result.data.message.status === "success") {
+                            angular.forEach(result.data.data, function (department) {
+                                $scope.vm.departments.push({
+                                    fieldKey : department.id,
+                                    fieldValue : department.departmentName
+                                });
+                            });
+                        }
+                        else {
+                            SweetAlert.swal($filter("translate")("managementWorkspace.failedToSelectWorkspaceFullDepartmentList"), result.data.message.message, "error"); // 遺��꽌 紐⑸줉 議고쉶 �떎�뙣
+                        }
+
+                        deferred.resolve(result.data.data);
+                    });
+
+                    return deferred.promise;
+                }
+
+                //  �뾽臾� 怨듦컙 李몄뿬�븯�뒗 �궗�슜�옄�쓽 李몄뿬 �긽�깭 蹂�寃�
+                function modifyUserWorkspace(userWorkspace) {
+                    UserWorkspace.modify($resourceProvider.getContent(
+                        userWorkspace,
+                        $resourceProvider.getPageContent(0, 0))).then(function (result) {
+                        if (result.data.message.status === "success") {
+                            //  �궡媛� 愿�由ы븯�뒗 �뾽臾� 怨듦컙 �젙蹂대�� 議고쉶�븳�떎.
+                            $scope.fn.findMyWorkspace();
+                        }
+                        else {
+                            userWorkspace.useYn = false;
+                            SweetAlert.error($filter("translate")("managementWorkspace.failedToParticipationStatusChange"), result.data.message.message); // "李몄뿬 �긽�깭 蹂�寃� �떎�뙣"
+                        }
+                    });
+                }
+
+                //  �궗�슜�옄媛� �냽�빐�엳�뒗 遺��꽌 �닔�젙 �뙘�뾽
+                function modifyUserDepartments(id) {
+                    $uibModal.open({
+                        templateUrl : 'views/workspace/workspaceDepartmentModify.html',
+                        size : "xlg",
+                        controller : 'workspaceDepartmentModifyController',
+                        backdrop : 'static',
+                        windowClass : 'workflow-window',
+                        resolve : {
+                            parameter : function () {
+                                return {
+                                    id : id
+                                };
+                            }
+                        }
+                    });
+                }
 
                 $scope.fn.makeTableConfigs();
-                $scope.fn.getUserWorkspaceList();
             }
         ]);
     }

--
Gitblit v1.8.0