From d2d33c7634f26a2cfbda6768059ae242c1866773 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 화, 15 2월 2022 17:47:15 +0900 Subject: [PATCH] - 업체(대분류,중분류) 간헐적으로 초기화 안되는 문제 해결 --- src/main/webapp/scripts/components/utils/autoComplete.controller.js | 238 ++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 211 insertions(+), 27 deletions(-) diff --git a/src/main/webapp/scripts/components/utils/autoComplete.controller.js b/src/main/webapp/scripts/components/utils/autoComplete.controller.js index a1570a5..ea0e0b5 100644 --- a/src/main/webapp/scripts/components/utils/autoComplete.controller.js +++ b/src/main/webapp/scripts/components/utils/autoComplete.controller.js @@ -25,6 +25,7 @@ var IssueType = $injector.get("IssueType"); var IssueTypeCustomField = $injector.get("IssueTypeCustomField"); var CustomField = $injector.get("CustomField"); + var CompanyFieldCategory = $injector.get("CompanyFieldCategory"); var $log = $injector.get("$log"); var SweetAlert = $injector.get("SweetAlert"); @@ -32,6 +33,8 @@ $scope.fn.getUserList = getUserList; // �궗�슜�옄 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. $scope.fn.getProjectList = getProjectList; // �봽濡쒖젥�듃 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. $scope.fn.getIssueList = getIssueList; // �씪媛� 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. + $scope.fn.getParentIssueList = getParentIssueList; // �긽�쐞 �씠�뒋 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. + $scope.fn.getRelIssueList = getRelIssueList; // �뿰愿� �씠�뒋 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. $scope.fn.getDownIssueList = getDownIssueList; // �븯�쐞 �씠�뒋 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. $scope.fn.getWorkflowList = getWorkflowList; // �썙�겕�뵆濡쒖슦 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. $scope.fn.getUserDepartmentList = getUserDepartmentList; // 遺��꽌 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. @@ -44,6 +47,8 @@ $scope.fn.getCustomFieldList = getCustomFieldList; // �궗�슜�옄 �젙�쓽 �븘�뱶 紐⑸줉 議고쉶 $scope.fn.getMailTargetAll = getMailTargetAll; // �궗�슜�옄 �젙�쓽 �븘�뱶 紐⑸줉 議고쉶 $scope.fn.getIssueTypeCustomFieldList = getIssueTypeCustomFieldList; // �씠�뒋 �쑀�삎�뿉�꽌 �궗�슜以묒씤 �궗�슜�옄�젙�쓽 �븘�뱶媛��졇�삤湲� + $scope.fn.getCompanyTypeCategory = getCompanyTypeCategory; // �뾽泥� 移댄뀒怨좊━ 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. + $scope.fn.getCompanyChildSector = getCompanyChildSector; // �뾽泥� 移댄뀒怨좊━ 紐⑸줉 �젙蹂대�� 議고쉶�븳�떎. function getUserList(query, excludeList, page, callBack) { var conditions = { @@ -133,13 +138,13 @@ function getIssueList(query, issueTypeId, excludeList, page, callBack) { var conditions = { name : query, - issueTypeIds : (function () { + /*issueTypeIds : (function () { var ids = []; ids.push(issueTypeId); return ids; - })(), + })(),*/ excludeIds : (function () { var excludeIds = []; @@ -171,17 +176,99 @@ return deferred.promise; } - - function getDownIssueList(query, issueTypeId, excludeList, page, callBack) { + function getParentIssueList(query, issueTypeId, excludeList, page, callBack) { var conditions = { name : query, - // issueTypeIds : (function () { - // var ids = []; - // - // ids.push(issueTypeId); - // - // return ids; - // })(), + excludeIds : (function () { + var excludeIds = []; + + angular.forEach(excludeList, function (exclude) { + excludeIds.push(exclude.id); + }); + return excludeIds; + })() + }; + + var deferred = $q.defer(); + + if ($rootScope.isDefined(page) && page > 0) { + $rootScope.spinner = true; + } + + Issue.find($resourceProvider.getContent( + conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 10 : 25))).then(function (result) { + if (result.data.message.status === "success") { + if ($rootScope.isDefined(callBack)) { + callBack(result); + } + deferred.resolve(result.data.data); + } + else { + SweetAlert.swal($filter("translate")("common.failedToIssueListLookUp"), result.data.message.message, "error"); // "�썙�겕�뵆濡쒖슦 紐⑸줉 議고쉶 �떎�뙣" + } + $rootScope.spinner = false; + }); + return deferred.promise; + } + + function getRelIssueList(parentYN, project, query, issueTypeId, excludeList, page, callBack) { + var conditions = { + name : query, + excludeIds : (function () { + var excludeIds = []; + + angular.forEach(excludeList, function (exclude) { + excludeIds.push(exclude.id); + }); + return excludeIds; + })(), + parentYN : parentYN, + projectIds : (function () { + var projectIds = []; + if (project != null) { + if (project.length < 1) { + SweetAlert.swal($filter("translate")("common.failedToIssueListLookUp"), $filter("translate")("common.selectToProjectListLookUp"), "error"); // "�봽濡쒖젥�듃瑜� 癒쇱� �꽑�깮 �빐 二쇱꽭�슂." + } + if ($rootScope.isDefined(project[0])) { + projectIds.push(project[0].id); + } + } + return projectIds; + })() + }; + + var deferred = $q.defer(); + + if ($rootScope.isDefined(page) && page > 0) { + $rootScope.spinner = true; + } + + Issue.find($resourceProvider.getContent( + conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 10 : 25))).then(function (result) { + if (result.data.message.status === "success") { + if ($rootScope.isDefined(callBack)) { + callBack(result); + } + deferred.resolve(result.data.data); + } + else { + SweetAlert.swal($filter("translate")("common.failedToIssueListLookUp"), result.data.message.message, "error"); // "�썙�겕�뵆濡쒖슦 紐⑸줉 議고쉶 �떎�뙣" + } + $rootScope.spinner = false; + }); + return deferred.promise; + } + + function getDownIssueList(query, issueTypeId, parentIssueId, excludeList, page, callBack) { + var conditions = { + name : query, + issueTypeIds : (function () { + var ids = []; + + ids.push(issueTypeId); + + return ids; + })(), excludeIds : (function () { var excludeIds = []; @@ -189,27 +276,31 @@ excludeIds.push(exclude.id); }); + if(parentIssueId != null) { + excludeIds.push(parentIssueId); + } return excludeIds; })() }; - var deferred = $q.defer(); + + if ($rootScope.isDefined(page) && page > 0) { + $rootScope.spinner = true; + } Issue.find($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") { - if ($rootScope.isDefined(callBack)) { callBack(result); } - deferred.resolve(result.data.data); } else { SweetAlert.swal($filter("translate")("common.failedToIssueListLookUp"), result.data.message.message, "error"); // "�썙�겕�뵆濡쒖슦 紐⑸줉 議고쉶 �떎�뙣" } + $rootScope.spinner = false; }); - return deferred.promise; } @@ -279,7 +370,7 @@ function getIssueCompanyFieldList(query, excludeList, page, callBack) { var conditions = { - companyName : query, + name : query, excludeIds : (function () { var excludeIds = []; @@ -296,7 +387,7 @@ CompanyField.find($resourceProvider.getContent( // �럹�씠吏� �뾽�뜲�씠�듃媛� �븘�슂�븳 而댄룷�꼳�듃 �씪寃쎌슦, page �뾽�뜲�씠�듃媛� �엳�쓣 寃쎌슦 湲곕낯 10媛쒖뵫 媛��졇�삤怨� �븘�땺寃쎌슦 25媛쒖뵫 媛��졇�삩�떎. - conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 10 : 25))).then(function (result) { + conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 100 : 1000))).then(function (result) { if (result.data.message.status === "success") { if ($rootScope.isDefined(callBack)) { callBack(result); @@ -312,10 +403,10 @@ return deferred.promise; } - function getIssueDepartmentList(query, excludeList, page, callBack) { + function getIssueDepartmentList(issueTypeId, query, excludeList, page, callBack) { var conditions = { //issueTypeId : $scope.vm.form.issueTypeId, - issueTypeId : $rootScope.currentDetailIssueId, + issueTypeId : Number(issueTypeId), departmentName : query, userId : $rootScope.user.id, projectId : (function () { @@ -343,8 +434,8 @@ var deferred = $q.defer(); - //�썙�겕�뵆濡쒖슦�뿉 �냽�빐�엳�뒗 �떞�떦遺��꽌 李얘린 - UserWorkspace.findWorkflowDepartment($resourceProvider.getContent( // �럹�씠吏� �뾽�뜲�씠�듃媛� �븘�슂�븳 而댄룷�꼳�듃 �씪寃쎌슦, page �뾽�뜲�씠�듃媛� �엳�쓣 寃쎌슦 湲곕낯 10媛쒖뵫 媛��졇�삤怨� �븘�땺寃쎌슦 25媛쒖뵫 媛��졇�삩�떎. + //�봽濡쒖젥�듃�뿉 �냽�빐�엳�뒗 �떞�떦遺��꽌 李얘린 + UserWorkspace.findProjectDepartment($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") { const departments = result.data.data; @@ -371,7 +462,7 @@ function getIssueIspFieldList(query, excludeList, page, callBack) { var conditions = { - ispName : query, + name : query, excludeIds : (function () { var excludeIds = []; @@ -386,7 +477,7 @@ var deferred = $q.defer(); IspField.find($resourceProvider.getContent( // �럹�씠吏� �뾽�뜲�씠�듃媛� �븘�슂�븳 而댄룷�꼳�듃 �씪寃쎌슦, page �뾽�뜲�씠�듃媛� �엳�쓣 寃쎌슦 湲곕낯 10媛쒖뵫 媛��졇�삤怨� �븘�땺寃쎌슦 25媛쒖뵫 媛��졇�삩�떎. - conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 10 : 25))).then(function (result) { + conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 100 : 1000))).then(function (result) { if (result.data.message.status === "success") { if ($rootScope.isDefined(callBack)) { callBack(result); @@ -404,7 +495,7 @@ function getIssueHostingFieldList(query, excludeList, page, callBack) { var conditions = { - hostingName : query, + name : query, excludeIds : (function () { var excludeIds = []; @@ -431,6 +522,91 @@ else { SweetAlert.swal($filter("translate")("common.failedToProjectListLookUp"), result.data.message.message, "error"); // "�봽濡쒖젥�듃 紐⑸줉 議고쉶 �떎�뙣" } + }); + + return deferred.promise; + } + + function getCompanyTypeCategory(typeCategory, query, excludeList, page, callBack) { + var conditions = { + typeCategory : typeCategory, + useValue : query, + excludeIds : (function () { + var excludeIds = []; + + angular.forEach(excludeList, function (exclude) { + excludeIds.push(exclude.id); + }); + + return excludeIds; + })() + }; + + var deferred = $q.defer(); + + if ($rootScope.isDefined(page) && page > 0) { + $rootScope.spinner = true; + } + + CompanyFieldCategory.find($resourceProvider.getContent( // �럹�씠吏� �뾽�뜲�씠�듃媛� �븘�슂�븳 而댄룷�꼳�듃 �씪寃쎌슦, page �뾽�뜲�씠�듃媛� �엳�쓣 寃쎌슦 湲곕낯 10媛쒖뵫 媛��졇�삤怨� �븘�땺寃쎌슦 25媛쒖뵫 媛��졇�삩�떎. + conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 100 : 1000))).then(function (result) { + if (result.data.message.status === "success") { + if ($rootScope.isDefined(callBack)) { + callBack(result, query); + } + deferred.resolve(result.data.data); + } + else { + SweetAlert.swal($filter("translate")("common.failedToCompanyCategoryListLookUp"), result.data.message.message, "error"); + } + $rootScope.spinner = false; + }); + + return deferred.promise; + } + + function getCompanyChildSector(parentSector, parentSectorId, typeCategory, query, excludeList, page, callBack) { + var conditions = { + parentId : (function () { // �뾽醫�(��遺꾨쪟) + var parentId = ""; + if (parentSector != null && parentSector !== "") { + parentId = parentSector; + }else { + parentId = parentSectorId; + } + return parentId; + })(), + typeCategory : typeCategory, + useValue : query, + excludeIds : (function () { + var excludeIds = []; + + angular.forEach(excludeList, function (exclude) { + excludeIds.push(exclude.id); + }); + + return excludeIds; + })() + }; + + var deferred = $q.defer(); + + if ($rootScope.isDefined(page) && page > 0) { + $rootScope.spinner = true; + } + + CompanyFieldCategory.find($resourceProvider.getContent( // �럹�씠吏� �뾽�뜲�씠�듃媛� �븘�슂�븳 而댄룷�꼳�듃 �씪寃쎌슦, page �뾽�뜲�씠�듃媛� �엳�쓣 寃쎌슦 湲곕낯 10媛쒖뵫 媛��졇�삤怨� �븘�땺寃쎌슦 25媛쒖뵫 媛��졇�삩�떎. + conditions, $resourceProvider.getPageContent($rootScope.isDefined(page) ? page : 0, $rootScope.isDefined(page) ? 100 : 1000))).then(function (result) { + if (result.data.message.status === "success") { + if ($rootScope.isDefined(callBack)) { + callBack(result); + } + deferred.resolve(result.data.data); + } + else { + SweetAlert.swal($filter("translate")("common.failedToCompanyCategoryListLookUp"), result.data.message.message, "error"); + } + $rootScope.spinner = false; }); return deferred.promise; @@ -586,11 +762,19 @@ var deferred = $q.defer(); var partners = $scope.vm.partners.slice(); - if (excludeList != null && excludeList.length > 0) { + if (excludeList != null && excludeList.id.length > 0) { + var filterData = excludeList.id.filter(function(item, idx){ + return excludeList.id.findIndex(function(item2, idx2){ + return item === item2 + }) == idx; + }); for (let i = partners.length - 1 ; i >= 0 ; i--) { - excludeList.forEach(function (exclude) { - if (partners[i].id === exclude.id) { + filterData.forEach(function (exclude) { + if (partners[i] != null && partners[i].id === exclude) { partners.splice(i, 1); + if (partners[i] == null) { + return false; + } } }); } -- Gitblit v1.8.0