| | |
| | | 'angular' |
| | | ], |
| | | function (app, angular) { |
| | | app.controller('issueAddController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$uibModalInstance', '$injector', |
| | | app.controller('issueAddController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$uibModalInstance', '$uibModal', '$injector', |
| | | '$controller', '$tableProvider', 'SweetAlert', '$timeout', '$stateParams', '$q', 'Issue', 'User', 'AttachedFile', 'IssueType', 'Priority', 'Severity', 'IssueTypeCustomField', '$filter', '$state', |
| | | function ($scope, $rootScope, $log, $resourceProvider, $uibModalInstance, $injector, $controller, $tableProvider, SweetAlert, $timeout, |
| | | function ($scope, $rootScope, $log, $resourceProvider, $uibModalInstance, $uibModal, $injector, $controller, $tableProvider, SweetAlert, $timeout, |
| | | $stateParams, $q, Issue, User, AttachedFile, IssueType, Priority, Severity, IssueTypeCustomField, $filter, $state) { |
| | | |
| | | $scope.fn = { |
| | | cancel : cancel, // 팝업 창 닫기 |
| | | formSubmit : formSubmit, // 폼 전송 |
| | | formCheck : formCheck, // 폼 체크 |
| | | // formCheck : formCheck, // 폼 체크 |
| | | getUserListCallBack : getUserListCallBack, // 담당자 autocomplete 페이징 |
| | | getProjectListCallBack : getProjectListCallBack, // 프로젝트 autocomplete 페이징 |
| | | getCompanyFieldListCallBack : getCompanyFieldListCallBack, // 프로젝트 autocomplete 페이징 |
| | | getOptionColor : getOptionColor, // 우선순위, 중요도 색상으로 Select 태그 적용 |
| | | onFileSelect : onFileSelect, // 파일 첨부 |
| | | infiniteAddForm : infiniteAddForm, // 계속 생성 |
| | |
| | | removeUploadFile : removeUploadFile, // 업로드하려는 특정 파일을 삭제 |
| | | removeManager : removeManager, // 담당자 삭제 |
| | | setIssueTypeTemplate : setIssueTypeTemplate, // 이슈 유형 템플릿 적용하기 |
| | | startExecute : startExecute // 컨트롤 로딩시 처음으로 시작되는 함수 |
| | | startExecute : startExecute, // 컨트롤 로딩시 처음으로 시작되는 함수 |
| | | companyImport : companyImport |
| | | }; |
| | | |
| | | $scope.vm = { |
| | |
| | | title : "", // 제목 |
| | | description : "", // 내용 |
| | | projects : [], // 프로젝트 |
| | | companyFields : [], |
| | | issueTypeId : "", // 이슈 유형 아이디 |
| | | priorityId : "", // 우선순위 아이디 |
| | | severityId : "", // 중요도 아이디 |
| | |
| | | }, |
| | | infiniteAdd : false, // 연속 생성 |
| | | projectName : "", // 프로젝트 명 검색 |
| | | companyName : "", // 프로젝트 명 검색 |
| | | userName : "", // 사용자 검색 |
| | | companyManager : "", //담당자 |
| | | companyTel : "", //전화번호 |
| | | companyEmail : "", //이메일 |
| | | companyDesc : "", //비고 |
| | | autoCompletePage : { |
| | | user : { |
| | | page : 0, |
| | | totalPage : 0 |
| | | }, |
| | | project : { |
| | | page : 0, |
| | | totalPage : 0 |
| | | }, |
| | | companyField : { |
| | | page : 0, |
| | | totalPage : 0 |
| | | } |
| | |
| | | $scope.fn.getIssueTypeCustomFields(); |
| | | } |
| | | }); |
| | | |
| | | function companyImport() { |
| | | $uibModal.open({ |
| | | templateUrl : 'views/issue/issueCompanyFieldDetail.html', |
| | | size : "mg", |
| | | controller : 'issueCompanyFieldDetailController', |
| | | backdrop : 'static', |
| | | }); |
| | | } |
| | | |
| | | // 섬머노트 이미지 업로드 |
| | | function imageUpload($files) { |
| | |
| | | $scope.vm.autoCompletePage.project.totalPage = result.data.page.totalPage; |
| | | } |
| | | |
| | | // 폼 체크 |
| | | function formCheck(formInvalid) { |
| | | if (formInvalid) { |
| | | return true; |
| | | } |
| | | |
| | | if ($scope.vm.form.projects.length < 1) { |
| | | return true; |
| | | } |
| | | |
| | | return false; |
| | | function getCompanyFieldListCallBack(result) { |
| | | $scope.vm.autoCompletePage.project.totalPage = result.data.page.totalPage; |
| | | } |
| | | |
| | | // 폼 체크 |
| | | // function formCheck(formInvalid) { |
| | | // if (formInvalid) { |
| | | // return true; |
| | | // } |
| | | // |
| | | // if ($scope.vm.form.projects.length < 1) { |
| | | // return true; |
| | | // } |
| | | // |
| | | // return false; |
| | | // } |
| | | |
| | | // 폼 전송 |
| | | function formSubmit() { |
| | | $rootScope.spinner = true; |
| | |
| | | /** |
| | | * Created by wisestone on 2018-02-19. |
| | | * Created by wisestone on 2017-12-15. |
| | | */ |
| | | 'use strict'; |
| | | |
| | | define([ |
| | | 'app' |
| | | 'app', |
| | | 'angular' |
| | | ], |
| | | function (app) { |
| | | app.controller('companyFieldAddController', ['$scope', '$rootScope', '$log', '$resourceProvider', 'SweetAlert', '$uibModal', '$uibModalInstance', '$state', 'CompanyField', '$filter', |
| | | function ($scope, $rootScope, $log, $resourceProvider, SweetAlert, $uibModal, $uibModalInstance, $state, CompanyField, $filter) { |
| | | function (app, angular) { |
| | | app.controller('issueCompanyFieldDetailController', ['$scope', '$rootScope', '$log', '$resourceProvider', '$uibModalInstance', '$uibModal', '$injector', |
| | | '$controller', '$tableProvider', 'SweetAlert', '$timeout', '$stateParams', '$q', 'Issue', 'CompanyField', 'User', 'AttachedFile', 'IssueType', 'Priority', 'Severity', 'IssueTypeCustomField', '$filter', '$state', |
| | | function ($scope, $rootScope, $log, $resourceProvider, $uibModalInstance, $uibModal, $injector, $controller, $tableProvider, SweetAlert, $timeout, |
| | | $stateParams, $q, Issue, CompanyField, User, AttachedFile, IssueType, Priority, Severity, IssueTypeCustomField, $filter, $state) { |
| | | |
| | | $scope.fn = { |
| | | cancel : cancel, // 팝업 창 닫기 |
| | | formSubmit : formSubmit, // 폼 전송 |
| | | formCheck : formCheck, // 폼 체크 |
| | | formCheck : formCheck, // 폼 체크 |
| | | }; |
| | | |
| | | $scope.vm = { |
| | | form : { |
| | | name : "", //업체명 |
| | | //companyType : "", //업체분류 |
| | | //profitYN : "", //영리/비영리 |
| | | //industry : "", //산업분류 |
| | | //domain : "", //도메인 |
| | | manager : "", //담당자 |
| | | tel : "", //전화번호 |
| | | email : "", //이메일 |
| | | memo : "" //비고 |
| | | companyName : "", |
| | | companyManager : "", |
| | | companyTel : "", |
| | | companyEmail : "", |
| | | companyDesc : "" |
| | | } |
| | | }; |
| | | |
| | | // 폼 체크 |
| | | function formCheck(formInvalid) { |
| | | if (formInvalid) { |
| | | return true; |
| | | } |
| | | |
| | | return false; |
| | | } |
| | | |
| | | // 폼 전송 |
| | | function formSubmit(condition) { |
| | | function formSubmit() { |
| | | $rootScope.spinner = true; |
| | | |
| | | var content = { |
| | | name : $rootScope.preventXss($scope.vm.form.name), // 업체명 |
| | | //companyType : $scope.vm.form.companyType, //업체분류 |
| | | //profitYN : $scope.vm.form.profitYN, //영리/비영리 |
| | | //industry : $scope.vm.form.industry, //산업분류 |
| | | //domain : $scope.vm.form.domain, //도메인 |
| | | manager : $scope.vm.form.manager, //담당자 |
| | | tel : $scope.vm.form.tel, //전화번호 |
| | | email : $scope.vm.form.email, //이메일 |
| | | memo : $scope.vm.form.memo //비고 |
| | | companyName : $rootScope.preventXss($scope.vm.form.companyName), |
| | | companyManager : $rootScope.preventXss($scope.vm.form.companyManager), |
| | | companyTel : $rootScope.preventXss($scope.vm.form.companyTel), |
| | | companyEmail : $rootScope.preventXss($scope.vm.form.companyEmail), |
| | | companyDesc : $rootScope.preventXss($scope.vm.form.companyDesc) |
| | | }; |
| | | |
| | | CompanyField.add($resourceProvider.getContent(content, |
| | | $resourceProvider.getPageContent(0, 10))).then(function (result) { |
| | | CompanyField.modify($resourceProvider.getContent( |
| | | content, |
| | | $resourceProvider.getPageContent(0, 0))).then(function (result) { |
| | | |
| | | if (result.data.message.status === "success") { |
| | | $scope.fn.cancel(); |
| | | |
| | | // 목록 화면 갱신 |
| | | $rootScope.$broadcast("getPageList", {}); |
| | | } |
| | | else { |
| | | SweetAlert.error($filter("translate")("companyField.failedCompanyFieldRegistration"), result.data.message.message); |
| | | SweetAlert.error($filter("translate")("companyField.failedCompanyFieldRegistration"), result.data.message.message); //업체 등록 실패 |
| | | } |
| | | |
| | | $rootScope.spinner = false; |
| | |
| | | $uibModalInstance.dismiss('cancel'); |
| | | $(document).unbind("keydown"); // 단축키 이벤트 제거 |
| | | } |
| | | |
| | | } |
| | | |
| | | ]); |
| | | } |
| | | ); |
| | | }]); |
| | | }); |
| | |
| | | <js-autocomplete-single data-input-name="companyField" |
| | | selected-model="vm.form.companyFields" |
| | | search="vm.companyName" |
| | | source="fn.getCompanyFieldList(vm.companyName, vm.form.companyFields, vm.autoCompletePage.companyField.page, fn.getCompanyFieldListCallBack)" |
| | | source="fn.getCompanyFieldList(vm.companyName, vm.form.companyFields, vm.autoCompletePage.companyField.page,fn.getCompanyFieldListCallBack)" |
| | | page="vm.autoCompletePage.companyField.page" |
| | | total-page="vm.autoCompletePage.companyField.totalPage" |
| | | input-disabled="false" |
| | |
| | | <button type="button" class="btn btn-md btn-grey" ng-click="fn.cancel()"><span translate="common.cancel">취소</span></button> |
| | | <button type="button" class="btn btn-md btn-primary bold" |
| | | js-short-cut |
| | | js-short-cut-action="(fn.formCheck(companyFieldModifyForm.$invalid) || $root.spinner) ? null : fn.formSubmit()" |
| | | js-short-cut-action="(fn.formCheck(companyFieldModifyForm.$invalid) || $root.spinner) ? null : fn.formSubmit2()" |
| | | ng-disabled="fn.formCheck(companyFieldImportForm.$invalid)" |
| | | ng-click="fn.formSubmit()"><span translate="common.save">저장</span> |
| | | ng-click="fn.formSubmit2()"><span translate="common.save">저장</span> |
| | | </button> |
| | | </div> |
| | | </form> |