| | |
| | | </div> |
| | | |
| | | <div class="modal-body"> |
| | | <form role="form" name="issueAddForm"> |
| | | <form role="form" name="issueModifyForm"> |
| | | <div class="form-group mb10"> |
| | | <label for="issueAddForm1" class="issue-label"><span translate="issue.issueTitle">이슈 제목</span> <code |
| | | <label for="issueModifyForm1" class="issue-label"><span translate="issue.issueTitle">이슈 제목</span> <code |
| | | class="highlighter-rouge">*</code></label> |
| | | <input id="issueAddForm1" |
| | | <input id="issueModifyForm1" |
| | | class="form-control input-sm" |
| | | ng-model="vm.form.title" |
| | | name="title" |
| | |
| | | autofocus |
| | | owl-auto-focus> |
| | | <small class="help-block form-text text-danger" |
| | | ng-if="issueAddForm.title.$touched && issueAddForm.title.$error.required" |
| | | ng-if="issueModifyForm.title.$touched && issueModifyForm.title.$error.required" |
| | | translate="issue.requireIssueTitle">이슈 제목을 입력하세요. |
| | | </small> |
| | | </div> |
| | |
| | | source="fn.getProjectList(vm.projectName, vm.form.projects, vm.autoCompletePage.project.page, fn.getProjectListCallBack)" |
| | | page="vm.autoCompletePage.project.page" |
| | | total-page="vm.autoCompletePage.project.totalPage" |
| | | input-disabled="vm.form.projects != null ? vm.form.projects.length > 0 : false" |
| | | translation-texts="{ empty : 'common.emptyProject' }" |
| | | extra-settings="{ displayProp : 'name' , idProp : 'id', imageable : false, imagePathProp : '', |
| | | type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single> |
| | |
| | | <div class="row"> |
| | | <div class="col-md-4"> |
| | | <div class="form-group mb10"> |
| | | <label for="issueAddForm4" class="issue-label"> <span |
| | | <label for="issueModifyForm4" class="issue-label"> <span |
| | | translate="issue.issueType">이슈 타입</span> |
| | | <code class="highlighter-rouge">*</code></label> |
| | | <select id="issueAddForm4" |
| | | <select id="issueModifyForm4" |
| | | name="issueType" |
| | | class="form-control input-sm issue-select-label" |
| | | ng-model="vm.form.issueTypeId" |
| | |
| | | </div> |
| | | <div class="col-md-4"> |
| | | <div class="form-group mb10"> |
| | | <label for="issueAddForm2" class="issue-label"> |
| | | <label for="issueModifyForm2" class="issue-label"> |
| | | <span translate="common.priority">우선 순위</span> |
| | | <code class="highlighter-rouge">*</code> |
| | | </label> |
| | | <select id="issueAddForm2" |
| | | <select id="issueModifyForm2" |
| | | name="priority" |
| | | class="form-control input-sm issue-select-label" |
| | | ng-model="vm.form.priorityId" |
| | |
| | | </div> |
| | | <div class="col-md-4"> |
| | | <div class="form-group mb10"> |
| | | <label for="issueAddForm3" class="issue-label"> <span |
| | | <label for="issueModifyForm3" class="issue-label"> <span |
| | | translate="common.importance">중요도</span> <code |
| | | class="highlighter-rouge">*</code></label> |
| | | <select id="issueAddForm3" |
| | | <select id="issueModifyForm3" |
| | | name="severity" |
| | | class="form-control input-sm issue-select-label" |
| | | ng-model="vm.form.severityId" |
| | |
| | | <js-autocomplete-multi data-input-name="departments" |
| | | selected-model="vm.form.departments" |
| | | search="vm.departmentName" |
| | | source="fn.getIssueDepartmentList(vm.departmentName, vm.form.departments)" |
| | | source="fn.getIssueDepartmentList(vm.form.issueTypeId, vm.departmentName, vm.form.departments)" |
| | | input-disabled="false" |
| | | translation-texts="{ count : 'common.userNum', empty : 'common.emptyProjectDepartment'}" |
| | | extra-settings="{ displayProp : 'byName' , idProp : 'id', imageable : false, maxlength : 100, autoResize : true}"></js-autocomplete-multi> |
| | |
| | | |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mb10"> |
| | | <label for="issueAddForm5" class="issue-label"> <span translate="common.period">기간</span></label> |
| | | <input id="issueAddForm5" |
| | | <label for="issueModifyForm5" class="issue-label"> <span translate="common.period">기간</span></label> |
| | | <input id="issueModifyForm5" |
| | | tabindex="-1" |
| | | type="text" |
| | | readonly |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <hr> |
| | | <div class="row"> |
| | | <div class="col-lg-4 fontcolor_green"> |
| | |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="col-lg-8"> |
| | | <div class="col-lg-12"> |
| | | <div class="row"> |
| | | <div class="col-md-12"> |
| | | <div class="form-group mgb5" ng-show="vm.form.issueCustomFields.length < 1"> |
| | | <div class="form-group mgb5" ng-if="vm.form.issueCustomFields.length < 1"> |
| | | <label class="issue-label" translate="issue.notIssueTypeCustomFields">이슈 타입에 연결된 사용자 정의 |
| | | 필드가 없습니다.</label> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="col-md-6" ng-repeat="issueCustomField in vm.form.issueCustomFields"> |
| | | <div class="col-md-4" ng-repeat="issueCustomField in vm.form.issueCustomFields"> |
| | | <div class="form-group mgb5"> |
| | | <label class="issue-label">{{issueCustomField.customFieldVo.name}}</label> |
| | | <label class="issue-label">{{issueCustomField.customFieldVo.name}} <code ng-if="issueCustomField.customFieldVo.requiredData == 'Y'" class="highlighter-rouge">*</code> </label> |
| | | |
| | | <div ng-switch on="issueCustomField.customFieldVo.customFieldType"> |
| | | <!-- 기본 입력 --> |
| | | <div ng-switch-when="INPUT"> |
| | | <input type="text" class="form-control input-sm" |
| | | name="item_{{$index}}" |
| | | ng-model="issueCustomField.useValues" |
| | | maxlength="100" |
| | | autocomplete="off" |
| | | kr-input |
| | | ng-required="issueCustomField.fieldOption == '01'"> |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.inputValue.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자정의필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | </div> |
| | | |
| | | <div ng-switch-when="NUMBER"> |
| | | <input type="text" class="form-control input-sm" |
| | | name="item_{{$index}}" |
| | | ng-model="issueCustomField.useValues" |
| | | maxlength="100" |
| | | autocomplete="off" |
| | | kr-input |
| | | ng-required="issueCustomField.fieldOption == '01'"> |
| | | ng-pattern="/^[0-9]*$/" |
| | | placeholder="숫자만 입력 가능합니다." |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.numberType.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자 정의 필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | <div ng-if="issueModifyForm.numberType.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidNumberFormat">숫자만 입력 가능합니다. |
| | | </div> |
| | | </div> |
| | | |
| | | <div ng-switch-when="DATETIME"> |
| | | <input type="text" class="form-control input-sm" |
| | | <input class="form-control input-sm input-readonly" |
| | | name="item_{{$index}}" |
| | | ng-model="issueCustomField.useValues" |
| | | maxlength="100" |
| | | autocomplete="off" |
| | | placeholder="{{'issue.clickToSelectDate' | translate}}" |
| | | modal-form-auto-scroll |
| | | range-type="singleDate" |
| | | date-range-picker |
| | | kr-input |
| | | ng-required="issueCustomField.fieldOption == '01'"> |
| | | autocomplete="off" |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.dateTime.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자 정의 필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | </div> |
| | | |
| | | <div ng-switch-when="IP_ADDRESS"> |
| | | <input type="text" class="form-control input-sm" |
| | | name="item_{{$index}}" |
| | | ng-model="issueCustomField.useValues" |
| | | maxlength="100" |
| | | autocomplete="off" |
| | | kr-input |
| | | ng-required="issueCustomField.fieldOption == '01'"> |
| | | ng-pattern="/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/" |
| | | placeholder="IP 주소 형식만 입력 가능합니다." |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.ipAddress.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자 정의 필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | <div ng-if="issueModifyForm['item_' + $index].$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidipAdressFormat">IP주소 형식이 맞지 않습니다. |
| | | </div> |
| | | </div> |
| | | |
| | | <div ng-switch-when="EMAIL"> |
| | | <input type="email" class="form-control input-sm" |
| | | name="item_{{$index}}" |
| | | maxlength="30" |
| | | ng-model="issueCustomField.useValues" |
| | | kr-input |
| | | ng-pattern="/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/" |
| | | placeholder="이메일 형식만 입력 가능합니다." |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.ipAddress.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자 정의 필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | <div ng-if="issueModifyForm['item_' + $index].$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidEmailFormat">이메일 형식이 맞지 않습니다. |
| | | </div> |
| | | </div> |
| | | |
| | | <div ng-switch-when="SITE"> |
| | | <input type="text" class="form-control input-sm" |
| | | name="item_{{$index}}" |
| | | ng-model="issueCustomField.useValues" |
| | | maxlength="100" |
| | | autocomplete="off" |
| | | kr-input |
| | | ng-required="issueCustomField.fieldOption == '01'"> |
| | | ng-pattern="/(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/" |
| | | placeholder="홈페이지 주소 형식만 입력 가능합니다." |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.site.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자 정의 필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | <div ng-if="issueModifyForm['item_' + $index].$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidSiteFormat">홈페이지 주소 형식이 맞지 않습니다.(http://로 시작하셔야합니다) |
| | | </div> |
| | | </div> |
| | | |
| | | <div ng-switch-when="TEL"> |
| | | <input type="text" class="form-control input-sm" |
| | | name="item_{{$index}}" |
| | | ng-model="issueCustomField.useValues" |
| | | maxlength="100" |
| | | maxlength="30" |
| | | autocomplete="off" |
| | | kr-input |
| | | ng-required="issueCustomField.fieldOption == '01'"> |
| | | ng-pattern="/^\d{2,3}-\d{3,4}-\d{4}$/" |
| | | placeholder="연락처 형식만 입력 가능합니다." |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.tel.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자 정의 필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | <!--<div ng-if="issueModifyForm['item_' + $index].$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidTelFormat">전화번호 형식이 맞지 않습니다. |
| | | </div>--> |
| | | </div> |
| | | |
| | | <!-- 단일 셀렉트 --> |
| | | <div ng-switch-when="SINGLE_SELECT"> |
| | | <select class="form-control input-sm issue-select-label" |
| | | ng-required="issueCustomField.fieldOption == '01'" |
| | | name="item_{{$index}}" |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'" |
| | | ng-model="issueCustomField.useValues"> |
| | | <option value="" value="" translate="common.choose">선택하세요.</option> |
| | | <option ng-repeat="customFieldValueVo in issueCustomField.customFieldVo.customFieldValueVos" |
| | |
| | | {{customFieldValueVo.value}} |
| | | </option> |
| | | </select> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.singleSelect.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자 정의 필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | </div> |
| | | |
| | | <!-- 멀티 셀렉트 --> |
| | |
| | | selected-model="issueCustomField.useValues" |
| | | extra-settings="{ 'idProp' : 'value', 'externalIdProp' : 'value', 'displayProp' : 'value', 'stringTypeOption' : 'true', stopRemoveBodyEvent : true }" |
| | | options="issueCustomField.customFieldVo.customFieldValueVos"></ng-dropdown-multiselect> |
| | | <input class="form-control input-sm issue-select-label" |
| | | type="hidden" name="multiSelect" ng-model="issueCustomField.useValues[0]" |
| | | ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> |
| | | <!-- <small class="help-block form-text text-danger"--> |
| | | <!-- ng-show="issueCustomField.customFieldVo.requiredData == 'Y'"--> |
| | | <!-- ng-if="issueModifyForm.multiSelect.$error.required"--> |
| | | <!-- translate="issue.pleaseEnterIssueTypeCustomFields">해당 사용자 정의 필드는 필수 입력 값 입니다.--> |
| | | <!-- </small>--> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <div ng-show="fn.containsPartner('업체')" class="row"> |
| | | <div class="col-lg-8 fontcolor_green"> |
| | | <label class="issue-label"><span class="fontcolor_green" translate="companyField.info">업체정보</span> |
| | | <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> 업체 이름 클릭시 선택된 이름의 업체 정보가 조회됩니다.</span> |
| | | <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> |
| | | 업체 이름 클릭시 선택된 이름의 업체 정보가 조회되며, 업체정보에서 추가한 ISP, 호스팅 정보를 불러옵니다.</span> |
| | | </label> |
| | | </div> |
| | | </div> |
| | |
| | | <js-autocomplete-single data-input-name="issueCompanyField" |
| | | selected-model="vm.form.issueCompanyFields" |
| | | search="vm.companyName" |
| | | custom-input="true" |
| | | source="fn.getIssueCompanyFieldList(vm.companyName, vm.form.issueCompanyFields, vm.autoCompletePage.companyField.page, fn.getIssueCompanyFieldListCallBack)" |
| | | page="vm.autoCompletePage.companyField.page" |
| | | total-page="vm.autoCompletePage.companyField.totalPage" |
| | | total-page="vm.autoCompletePage.issueCompanyField.totalPage" |
| | | input-disabled="false" |
| | | translation-texts="{ empty : 'common.emptyCompany' }" |
| | | broad-cast="companyFieldEvent" |
| | |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | ng-pattern="/^\d{2,3}-\d{3,4}-\d{4}$/" |
| | | autocomplete="off" |
| | | ng-model="vm.companyTel" |
| | | maxlength="20"> |
| | | <div ng-show="issueAddForm.companyTel.$error.pattern" class="help-block form-text text-danger" |
| | | > |
| | | <!--<div ng-show="issueModifyForm.companyTel.$error.pattern" class="help-block form-text text-danger" |
| | | translate="companyField.invalidTelFormat">전화번호 형식이 맞지 않습니다. xxx-xxx-xxxx 형식으로 입력하세요. |
| | | </div> |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | |
| | | <label for="companyFieldEmailAddForm" class="issue-label"><span translate="companyField.email">이메일</span></label> |
| | | <input id="companyFieldEmailAddForm" |
| | | name="companyEmail" |
| | | type="email" |
| | | type="text" |
| | | class="form-control" |
| | | autocomplete="off" |
| | | maxLength="50" |
| | | ng-model="vm.companyEmail" |
| | | kr-input |
| | | ng-pattern="/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/"> |
| | | <div ng-show="issueAddForm.companyEmail.$error.pattern" class="help-block form-text text-danger" |
| | | kr-input> |
| | | <!--<div ng-show="issueModifyForm.companyEmail.$error.pattern" class="help-block form-text text-danger" |
| | | translate="users.invalidEmailFormat">이메일 형식이 맞지 않습니다. |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-3-2"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="companyFieldUrlAddForm" |
| | | name="companyUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.companyUrl" |
| | | maxlength="200"> |
| | | <!--<div ng-show="issueModifyForm.companyUrl.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidUrlFormat">url 형식이 맞지 않습니다. |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-2"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldIpStartAddForm" class="issue-label"><span translate="companyField.ipRange">ip 대역대</span></label> |
| | | <input id="companyFieldIpStartAddForm" |
| | | name="ipStart" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | ng-pattern="/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/" |
| | | placeholder="IP 주소 형식만 입력 가능합니다." |
| | | autocomplete="off" |
| | | ng-model="vm.ipStart" |
| | | > |
| | | <div ng-if="issueModifyForm.ipStart.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidipAdressFormat">IP주소 형식이 맞지 않습니다. |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="mt-30"> |
| | | <label class="issue-label">~</label> |
| | | </div> |
| | | <div class="col-lg-2 mt-1"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldIpEndAddForm"></label> |
| | | <input id="companyFieldIpEndAddForm" |
| | | name="ipEnd" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | ng-pattern="/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/" |
| | | placeholder="IP 주소 형식만 입력 가능합니다." |
| | | autocomplete="off" |
| | | ng-model="vm.ipEnd" |
| | | > |
| | | <div ng-if="issueModifyForm.ipEnd.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidipAdressFormat">IP주소 형식이 맞지 않습니다. |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | maxlength="200"> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label class="issue-label"> |
| | | <span translate="companyField.companyType">기업구분</span> |
| | | </label> |
| | | <js-autocomplete-single data-input-name="companyType" |
| | | selected-model="vm.form.companyTypes" |
| | | ng-model="vm.form.companyType" |
| | | custom-input="false" |
| | | search="vm.form.companyType" |
| | | source="fn.getCompanyTypeCategory(vm.typeCategory.companyType, vm.form.companyType, vm.form.companyTypes, vm.autoCompletePage.companyType.page, fn.getCompanyTypeListCallBack)" |
| | | page="vm.autoCompletePage.companyType.page" |
| | | total-page="vm.autoCompletePage.companyType.totalPage" |
| | | input-disabled="false" |
| | | broad-cast="companyTypeEvent" |
| | | translation-texts="{ empty : 'common.emptyCompanyType' }" |
| | | extra-settings="{ displayProp : 'useValue' , idProp : 'id', imageable : false, imagePathProp : '', |
| | | type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label class="issue-label"> |
| | | <span translate="companyField.parentSector">업종(대분류)</span> |
| | | </label> |
| | | <js-autocomplete-single data-input-name="parentSector" |
| | | selected-model="vm.form.parentSectors" |
| | | ng-model="vm.form.parentSector" |
| | | custom-input="false" |
| | | search="vm.form.parentSector" |
| | | source="fn.getCompanyTypeCategory(vm.typeCategory.parentSector, vm.form.parentSector, vm.form.parentSectors, vm.autoCompletePage.parentSector.page, fn.getParentSectorListCallBack)" |
| | | page="vm.autoCompletePage.parentSector.page" |
| | | total-page="vm.autoCompletePage.parentSector.totalPage" |
| | | input-disabled="false" |
| | | broad-cast="parentSectorEvent" |
| | | translation-texts="{ empty : 'common.emptyParentSector' }" |
| | | extra-settings="{ displayProp : 'useValue' , idProp : 'id', imageable : false, imagePathProp : '', |
| | | type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label class="issue-label"> |
| | | <span translate="companyField.childSector">업종(중분류)</span> |
| | | </label> |
| | | <js-autocomplete-single data-input-name="childSector" |
| | | selected-model="vm.form.childSectors" |
| | | ng-model="vm.form.childSector" |
| | | custom-input="false" |
| | | search="vm.form.childSector" |
| | | source="fn.getCompanyChildSector(vm.form.parentSectorId, vm.form.parentSectors[0].id, vm.typeCategory.childSector, vm.form.childSector, vm.form.childSectors, vm.autoCompletePage.childSector.page, fn.getChildSectorListCallBack)" |
| | | page="vm.autoCompletePage.childSector.page" |
| | | total-page="vm.autoCompletePage.childSector.totalPage" |
| | | input-disabled="false" |
| | | broad-cast="childSectorEvent" |
| | | translation-texts="{ empty : 'common.emptyChildSector' }" |
| | | extra-settings="{ displayProp : 'useValue' , idProp : 'id', imageable : false, imagePathProp : '', |
| | | type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label class="issue-label"> |
| | | <span translate="companyField.region">지역</span> |
| | | </label> |
| | | <js-autocomplete-single data-input-name="region" |
| | | selected-model="vm.form.regions" |
| | | ng-model="vm.form.region" |
| | | custom-input="false" |
| | | search="vm.form.region" |
| | | source="fn.getCompanyTypeCategory(vm.typeCategory.region, vm.form.region, vm.form.regions, vm.autoCompletePage.region.page, fn.getRegionListCallBack)" |
| | | page="vm.autoCompletePage.region.page" |
| | | total-page="vm.autoCompletePage.region.totalPage" |
| | | input-disabled="false" |
| | | broad-cast="regionEvent" |
| | | translation-texts="{ empty : 'common.emptyRegion' }" |
| | | extra-settings="{ displayProp : 'useValue' , idProp : 'id', imageable : false, imagePathProp : '', |
| | | type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label class="issue-label"> |
| | | <span translate="companyField.status">상태</span> |
| | | </label> |
| | | <js-autocomplete-single data-input-name="status" |
| | | selected-model="vm.form.statuses" |
| | | ng-model="vm.form.status" |
| | | custom-input="false" |
| | | search="vm.form.status" |
| | | source="fn.getCompanyTypeCategory(vm.typeCategory.status, vm.form.status, vm.form.statuses, vm.autoCompletePage.status.page, fn.getStatusListCallBack)" |
| | | page="vm.autoCompletePage.status.page" |
| | | total-page="vm.autoCompletePage.status.totalPage" |
| | | input-disabled="false" |
| | | broad-cast="statusEvent" |
| | | translation-texts="{ empty : 'common.emptyStatus' }" |
| | | extra-settings="{ displayProp : 'useValue' , idProp : 'id', imageable : false, imagePathProp : '', |
| | | type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <p></p> |
| | | <div ng-show="fn.containsPartner('ISP')" class="row"> |
| | | <div class="col-lg-8 fontcolor_green"> |
| | | <label class="issue-label"><span class="fontcolor_green" translate="ispField.info">ISP 정보</span> |
| | | <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> ISP 이름 클릭시 선택된 이름의 ISP 정보가 조회됩니다.</span> |
| | | <!-- <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> ISP 이름 클릭시 선택된 이름의 ISP 정보가 조회됩니다.</span>--> |
| | | </label> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mb10"> |
| | | <label class="issue-label"> <span translate="ispField.name">ISP 이름</span> </label> |
| | | <!--<input name="ispName" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-model="vm.ispName" |
| | | ng-maxlength="100" |
| | | maxlength="100">--> |
| | | <js-autocomplete-single data-input-name="ispField" |
| | | selected-model="vm.form.issueIspFields" |
| | | search="vm.ispName" |
| | |
| | | page="vm.autoCompletePage.ispField.page" |
| | | total-page="vm.autoCompletePage.ispField.totalPage" |
| | | input-disabled="false" |
| | | custom-input="true" |
| | | translation-texts="{ empty : 'common.emptyIsp' }" |
| | | broad-cast="ispFieldEvent" |
| | | extra-settings="{ displayProp : 'name' , idProp : 'id', imageable : false, imagePathProp : '', |
| | |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | ng-pattern="/^\d{2,3}-\d{3,4}-\d{4}$/" |
| | | autocomplete="off" |
| | | ng-model="vm.ispTel" |
| | | maxlength="20"> |
| | | <div ng-show="issueAddForm.ispTel.$error.pattern" class="help-block form-text text-danger" |
| | | > |
| | | <!--<div ng-show="issueModifyForm.ispTel.$error.pattern" class="help-block form-text text-danger" |
| | | translate="companyField.invalidTelFormat">전화번호 형식이 맞지 않습니다. xxx-xxx-xxxx 형식으로 입력하세요. |
| | | </div> |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | |
| | | <label for="ispFieldEmailAddForm" class="issue-label"><span translate="ispField.email">이메일</span></label> |
| | | <input id="ispFieldEmailAddForm" |
| | | name="ispEmail" |
| | | type="email" |
| | | type="text" |
| | | class="form-control" |
| | | autocomplete="off" |
| | | maxLength="50" |
| | | ng-model="vm.ispEmail" |
| | | kr-input |
| | | ng-pattern="/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/"> |
| | | <div ng-show="issueAddForm.ispEmail.$error.pattern" class="help-block form-text text-danger" |
| | | > |
| | | <!--<div ng-show="issueModifyForm.ispEmail.$error.pattern" class="help-block form-text text-danger" |
| | | translate="users.invalidEmailFormat">이메일 형식이 맞지 않습니다. |
| | | </div> |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="ispFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="ispFieldUrlAddForm" |
| | | name="ispUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.ispUrl" |
| | | maxlength="200"> |
| | | <!--<div ng-show="issueModifyForm.ispUrl.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidUrlFormat">url 형식이 맞지 않습니다. |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | |
| | | <div ng-show="fn.containsPartner('호스팅')" class="row"> |
| | | <div class="col-lg-8 fontcolor_green"> |
| | | <label class="issue-label"><span class="fontcolor_green" translate="hostingField.info">호스팅 정보</span> |
| | | <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> 호스팅 이름 클릭시 선택된 이름의 호스팅 정보가 조회됩니다.</span> |
| | | <!--<span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> 호스팅 이름 클릭시 선택된 이름의 호스팅 정보가 조회됩니다.</span>--> |
| | | </label> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mb10"> |
| | | <label class="issue-label"> <span translate="hostingField.name">호스팅 이름</span> </label> |
| | | <!--<input name="hostingName" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-model="vm.hostingName" |
| | | ng-maxlength="100" |
| | | maxlength="100">--> |
| | | <js-autocomplete-single data-input-name="hostingField" |
| | | selected-model="vm.form.issueHostingFields" |
| | | ng-model="vm.hostingName" |
| | | search="vm.hostingName" |
| | | source="fn.getIssueHostingFieldList(vm.hostingName, vm.form.issueHostingFields, vm.autoCompletePage.hostingField.page, fn.getIssueHostingFieldListCallBack)" |
| | | page="vm.autoCompletePage.hostingField.page" |
| | | total-page="vm.autoCompletePage.hostingField.totalPage" |
| | | input-disabled="false" |
| | | custom-input="true" |
| | | translation-texts="{ empty : 'common.emptyHosting' }" |
| | | broad-cast="hostingFieldEvent" |
| | | extra-settings="{ displayProp : 'name' , idProp : 'id', imageable : false, imagePathProp : '', |
| | |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mb10"> |
| | | <label for="hostingCodeManagerAdd" class="issue-label"><span translate="hostingField.code">담당자</span></label> |
| | | <label for="hostingCodeManagerAdd" class="issue-label"><span translate="hostingField.code">코드</span></label> |
| | | <input id="hostingCodeManagerAdd" |
| | | name="hostingCode" |
| | | type="text" |
| | |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | ng-pattern="/^\d{2,3}-\d{3,4}-\d{4}$/" |
| | | autocomplete="off" |
| | | ng-model="vm.hostingTel" |
| | | maxlength="20"> |
| | | <div ng-show="issueAddForm.hostingTel.$error.pattern" class="help-block form-text text-danger" |
| | | > |
| | | <!--<div ng-show="issueModifyForm.hostingTel.$error.pattern" class="help-block form-text text-danger" |
| | | translate="companyField.invalidTelFormat">전화번호 형식이 맞지 않습니다. xxx-xxx-xxxx 형식으로 입력하세요. |
| | | </div> |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | |
| | | <label for="hostingFieldEmailAdd" class="issue-label"><span translate="hostingField.email">이메일</span></label> |
| | | <input id="hostingFieldEmailAdd" |
| | | name="hostingEmail" |
| | | type="email" |
| | | type="text" |
| | | class="form-control" |
| | | autocomplete="off" |
| | | maxLength="50" |
| | | ng-model="vm.hostingEmail" |
| | | kr-input |
| | | ng-pattern="/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/"> |
| | | <div ng-show="issueAddForm.hostingEmail.$error.pattern" class="help-block form-text text-danger" |
| | | kr-input> |
| | | <!--div ng-show="issueModifyForm.hostingEmail.$error.pattern" class="help-block form-text text-danger" |
| | | translate="users.invalidEmailFormat">이메일 형식이 맞지 않습니다. |
| | | </div> |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="hostingFieldUrlAddForm" class="issue-label"><span translate="companyField.url">url</span></label> |
| | | <input id="hostingFieldUrlAddForm" |
| | | name="hostingUrl" |
| | | type="text" |
| | | class="form-control" |
| | | kr-input |
| | | autocomplete="off" |
| | | ng-maxlength="200" |
| | | ng-model="vm.hostingUrl" |
| | | maxlength="200"> |
| | | <!--<div ng-show="issueModifyForm.hostingUrl.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidUrlFormat">url 형식이 맞지 않습니다. |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | |
| | | translate="common.cancel">취소</span></button> |
| | | <button type="button" class="btn btn-md btn-primary bold" |
| | | js-short-cut |
| | | js-short-cut-action="(fn.formCheck(issueAddForm.$invalid) || $root.spinner) ? null : fn.formSubmit()" |
| | | ng-disabled="fn.formCheck(issueAddForm.$invalid)" |
| | | js-short-cut-action="(fn.formCheck(issueModifyForm.$invalid) || $root.spinner) ? null : fn.formSubmit()" |
| | | ng-disabled="fn.formCheck(issueModifyForm.$invalid)" |
| | | ng-click="fn.formSubmit()"><span translate="common.save">저장</span> |
| | | </button> |
| | | </div> |