- api 이슈 추가 시 입력한 ip에 속해있는 업체정보를 가진 이슈의 하위로 입력되도록 수정
- issue_company 테이블에 ip 컬럼 추가 및 이슈 추가/수정 시 ip 대역대 항목 추가
| | |
| | | private String email; |
| | | private String url; |
| | | private String memo; |
| | | private String ipStart; |
| | | private String ipEnd; |
| | | |
| | | private Long companyTypeId; |
| | | private Long parentSectorId; |
| | |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getIpStart() { |
| | | return ipStart; |
| | | } |
| | | |
| | | public void setIpStart(String ipStart) { |
| | | this.ipStart = ipStart; |
| | | } |
| | | |
| | | public String getIpEnd() { |
| | | return ipEnd; |
| | | } |
| | | |
| | | public void setIpEnd(String ipEnd) { |
| | | this.ipEnd = ipEnd; |
| | | } |
| | | |
| | | public Issue getIssue() { |
| | | return issue; |
| | | } |
| | |
| | | Long countByDepartment(IssueCondition issueCondition); |
| | | |
| | | List<Map<String, Object>> findNotCompleteByParentIssueId(IssueCondition issueCondition); |
| | | |
| | | List<Map<String, Object>> findByCustomFieldValueOfIp(IssueCustomFieldValueCondition issueCustomFieldValueCondition); |
| | | } |
| | | |
| | |
| | | companyFieldForm.setName(issueForm.getCompanyName()); |
| | | companyFieldForm.setEmail(issueForm.getCompanyEmail()); |
| | | companyFieldForm.setUrl(issueForm.getCompanyUrl()); |
| | | companyFieldForm.setIpStart(issueForm.getIpStart()); |
| | | companyFieldForm.setIpEnd(issueForm.getIpEnd()); |
| | | companyFieldForm.setManager(issueForm.getCompanyManager()); |
| | | companyFieldForm.setTel(issueForm.getCompanyTel()); |
| | | companyFieldForm.setMemo(issueForm.getCompanyMemo()); |
| | |
| | | issueCompany.setName(MapUtil.getString(param, "name")); |
| | | issueCompany.setEmail(MapUtil.getString(param, "email")); |
| | | issueCompany.setUrl(MapUtil.getString(param, "url")); |
| | | issueCompany.setIpStart(MapUtil.getString(param, "ipStart")); |
| | | issueCompany.setIpEnd(MapUtil.getString(param, "ipEnd")); |
| | | issueCompany.setManager(MapUtil.getString(param, "manager")); |
| | | issueCompany.setTel(MapUtil.getString(param, "tel")); |
| | | issueCompany.setMemo(MapUtil.getString(param, "memo")); |
| | |
| | | |
| | | if (issueCustomFieldValueForms.size() > 0) { |
| | | String concatUseValue = ""; |
| | | String customFieldType = ""; |
| | | int useIdx = 0; |
| | | int cntIp = 0; |
| | | int cntSite = 0; |
| | |
| | | |
| | | if (customFieldApiOverlap.getCustomField().getCustomFieldType().equals(IP_ADDRESS)) { |
| | | long ip = ConvertUtil.ipToLong(useValue); |
| | | customFieldType = IP_ADDRESS.toString(); |
| | | if (cntIp == 0){ |
| | | condition.setIp(ip); |
| | | } |
| | |
| | | issueCustomFieldValueCondition.setUseValue(concatUseValue); |
| | | issueCustomFieldValueCondition.setUseValues(userValues); |
| | | issueCustomFieldValueCondition.setIssueTypeId(issueApiform.getIssueTypeId()); |
| | | issueCustomFieldValueCondition.setCustomFieldType(customFieldType); |
| | | // issueCustomFieldValueCondition.setIssueStatusType("CLOSE"); |
| | | List<Map<String, Object>> results = this.issueMapper.findByCustomFieldValue(issueCustomFieldValueCondition); |
| | | List<Map<String, Object>> results = Lists.newArrayList(); |
| | | if (customFieldType.equals(IP_ADDRESS.toString()) && issueForm.getIssueCompanyFields() != null && issueForm.getIssueCompanyFields().size() > 0) { |
| | | long ipValue = ConvertUtil.ipToLong(concatUseValue); |
| | | issueCustomFieldValueCondition.setUseValue(String.valueOf(ipValue)); |
| | | // 하위이슈조건의 타입이 IP일 경우 같은 업체정보인 이슈 찾기 |
| | | results = this.issueMapper.findByCustomFieldValueOfIp(issueCustomFieldValueCondition); |
| | | } else { |
| | | results = this.issueMapper.findByCustomFieldValue(issueCustomFieldValueCondition); |
| | | } |
| | | |
| | | if (results != null && results.size() > 0) { |
| | | for (Map<String, Object> result : results) { |
| | | resultIssueVos.add(this.getIssue(MapUtil.getLong(result, "id"))); |
| | |
| | | private String tel; |
| | | private String email; |
| | | private String memo; |
| | | private String ipStart; |
| | | private String ipEnd; |
| | | |
| | | private Long companyTypeId; |
| | | private Long parentSectorId; |
| | |
| | | this.memo = memo; |
| | | } |
| | | |
| | | public String getIpStart() { |
| | | return ipStart; |
| | | } |
| | | |
| | | public void setIpStart(String ipStart) { |
| | | this.ipStart = ipStart; |
| | | } |
| | | |
| | | public String getIpEnd() { |
| | | return ipEnd; |
| | | } |
| | | |
| | | public void setIpEnd(String ipEnd) { |
| | | this.ipEnd = ipEnd; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | |
| | | private String email; |
| | | private List<String> url; |
| | | private long ip; |
| | | private String ipStart; |
| | | private String ipEnd; |
| | | private String memo; |
| | | private Long ispId; |
| | | private Long hostingId; |
| | |
| | | this.ip = ip; |
| | | } |
| | | |
| | | public String getIpStart() { |
| | | return ipStart; |
| | | } |
| | | |
| | | public void setIpStart(String ipStart) { |
| | | this.ipStart = ipStart; |
| | | } |
| | | |
| | | public String getIpEnd() { |
| | | return ipEnd; |
| | | } |
| | | |
| | | public void setIpEnd(String ipEnd) { |
| | | this.ipEnd = ipEnd; |
| | | } |
| | | |
| | | public Long getIspId() { |
| | | return ispId; |
| | | } |
| | |
| | | private String companyManager; |
| | | private String companyTel; |
| | | private String companyUrl; |
| | | private String ipStart; |
| | | private String ipEnd; |
| | | private String companyEmail; |
| | | private String companyMemo; |
| | | private String companyTypeName; |
| | |
| | | } |
| | | if (MapUtil.getString(params, "companyUrl") != null) { |
| | | form.setCompanyUrl(MapUtil.getString(params, "companyUrl")); |
| | | } |
| | | if (MapUtil.getString(params, "ipStart") != null) { |
| | | form.setIpStart(MapUtil.getString(params, "ipStart")); |
| | | } |
| | | if (MapUtil.getString(params, "ipEnd") != null) { |
| | | form.setIpEnd(MapUtil.getString(params, "ipEnd")); |
| | | } |
| | | if (MapUtil.getString(params, "companyEmail") != null) { |
| | | form.setCompanyEmail(MapUtil.getString(params, "companyEmail")); |
| | |
| | | this.companyUrl = companyUrl; |
| | | } |
| | | |
| | | public String getIpStart() { |
| | | return ipStart; |
| | | } |
| | | |
| | | public void setIpStart(String ipStart) { |
| | | this.ipStart = ipStart; |
| | | } |
| | | |
| | | public String getIpEnd() { |
| | | return ipEnd; |
| | | } |
| | | |
| | | public void setIpEnd(String ipEnd) { |
| | | this.ipEnd = ipEnd; |
| | | } |
| | | |
| | | public String getCompanyEmail() { |
| | | return companyEmail; |
| | | } |
New file |
| | |
| | | |
| | | /* 업체 IP 대역대 컬럼 추가 */ |
| | | ALTER TABLE `issue_company` ADD COLUMN `ip_start` varchar(15) NULL; |
| | | ALTER TABLE `issue_company` ADD COLUMN `ip_end` varchar(15) NULL; |
| | |
| | | HAVING concatUseValue LIKE CONCAT('%', #{useValue}, '%') |
| | | </select> |
| | | |
| | | <!-- 특정 사용자 정의 필드 IP 값이 업체와 동일한 이슈를 조회 --> |
| | | <select id="findByCustomFieldValueOfIp" resultType="java.util.HashMap" parameterType="kr.wisestone.owl.web.condition.IssueCustomFieldValueCondition"> |
| | | SELECT |
| | | issue.id as id, |
| | | issue.title as title, |
| | | customFieldValue.customFieldType AS customFieldType, |
| | | GROUP_CONCAT(customFieldValue.useValue ORDER BY customFieldValue.customFieldId ASC) AS concatUseValue |
| | | FROM issue issue FORCE INDEX(reverseIndex) |
| | | INNER JOIN issue_status as issStatus ON issue.issue_status_id = issStatus.id |
| | | LEFT OUTER JOIN ( |
| | | SELECT cf.id AS customFieldId, cf.custom_field_type AS customFieldType, issue_custom.use_value AS useValue, issue_custom.issue_id AS issueId |
| | | FROM issue_custom_field_value issue_custom |
| | | INNER JOIN custom_field cf ON cf.id = issue_custom.custom_field_id |
| | | ) customFieldValue ON customFieldValue.issueId = issue.id |
| | | INNER JOIN issue_company issc ON issc.issue_id = issue.id |
| | | WHERE issue.issue_type_id = #{issueTypeId} |
| | | <if test="customFieldType != '' and customFieldType != null"> |
| | | AND customFieldValue.customFieldType = #{customFieldType} |
| | | </if> |
| | | <if test="useValue != '' and useValue != null"> |
| | | AND INET_ATON(issc.ip_start) <![CDATA[ <= ]]> #{useValue} AND INET_ATON(issc.ip_end) >= #{useValue} |
| | | </if> |
| | | <choose> |
| | | <when test="issueStatusType != null"> |
| | | AND issStatus.issue_status_type != #{issueStatusType} |
| | | </when> |
| | | </choose> |
| | | GROUP BY issue.id |
| | | </select> |
| | | |
| | | |
| | | <!-- 종료 안된 하위 이슈 가져오기 --> |
| | | <select id="findNotCompleteByParentIssueId" resultType="java.util.HashMap" parameterType="kr.wisestone.owl.web.condition.IssueCondition"> |
| | |
| | | max-width: 25%; |
| | | } |
| | | |
| | | .col-lg-3-2 { |
| | | -webkit-box-flex: 0; |
| | | -ms-flex: 0 0 25%; |
| | | flex: 0 0 32.4%; |
| | | max-width: 32.4%; |
| | | } |
| | | |
| | | .col-lg-4 { |
| | | -webkit-box-flex: 0; |
| | | -ms-flex: 0 0 33.3333333333%; |
| | |
| | | companyTel : "", // 업체 전화번호 |
| | | companyEmail : "", // 업체 이메일 |
| | | companyUrl : "", // 업체 url |
| | | ipStart : "", //ip시작주소 |
| | | ipEnd : "", //ip종료주소 |
| | | companyMemo : "", // 업체 비고 |
| | | ispId : -1, // ISP ID |
| | | ispName : "", // ISP 명 |
| | |
| | | $scope.vm.companyTel = result[0].tel; |
| | | $scope.vm.companyEmail = result[0].email; |
| | | $scope.vm.companyUrl = result[0].url; |
| | | $scope.vm.ipStart = result[0].ipStart; |
| | | $scope.vm.ipEnd = result[0].ipEnd; |
| | | $scope.vm.companyMemo = result[0].memo; |
| | | $scope.vm.form.companyTypeId = result[0].companyTypeId; |
| | | $scope.vm.form.parentSectorId = result[0].parentSectorId; |
| | |
| | | tel : $scope.vm.companyTel, |
| | | email :$scope.vm.companyEmail, |
| | | url :$scope.vm.companyUrl, |
| | | ipStart :$scope.vm.ipStart, |
| | | ipEnd :$scope.vm.ipEnd, |
| | | memo : $scope.vm.companyMemo, |
| | | companyTypeId : $scope.vm.form.companyTypeId, |
| | | parentSectorId : $scope.vm.form.parentSectorId, |
| | |
| | | companyTel : $scope.vm.companyTel, |
| | | companyEmail :$scope.vm.companyEmail, |
| | | companyUrl :$scope.vm.companyUrl, |
| | | ipStart :$scope.vm.ipStart, |
| | | ipEnd :$scope.vm.ipEnd, |
| | | companyMemo : $scope.vm.companyMemo, |
| | | companyTypeId : (function () { |
| | | var companyTypeId = null; |
| | |
| | | companyTel : "", // 업체 전화번호 |
| | | companyEmail : "", // 업체 이메일 |
| | | companyUrl : "", // 업체 url |
| | | ipStart : "", //ip시작주소 |
| | | ipEnd : "", //ip종료주소 |
| | | companyMemo : "", // 업체 비고 |
| | | ispId : -1, // ISP ID |
| | | ispName : "", // ISP 명 |
| | |
| | | $scope.vm.companyTel = result[0].tel; |
| | | $scope.vm.companyEmail = result[0].email; |
| | | $scope.vm.companyUrl = result[0].url; |
| | | $scope.vm.ipStart = result[0].ipStart; |
| | | $scope.vm.ipEnd = result[0].ipEnd; |
| | | $scope.vm.companyMemo = result[0].memo; |
| | | $scope.vm.form.companyTypeId = result[0].companyTypeId; |
| | | $scope.vm.form.parentSectorId = result[0].parentSectorId; |
| | |
| | | companyTel : $scope.vm.companyTel, |
| | | companyEmail :$scope.vm.companyEmail, |
| | | companyUrl : $scope.vm.companyUrl, |
| | | ipStart :$scope.vm.ipStart, |
| | | ipEnd :$scope.vm.ipEnd, |
| | | companyMemo : $scope.vm.companyMemo, |
| | | companyTypeId : (function () { |
| | | var companyTypeId = -1; |
| | |
| | | tel : $scope.vm.companyTel, |
| | | email :$scope.vm.companyEmail, |
| | | url :$scope.vm.companyUrl, |
| | | ipStart :$scope.vm.ipStart, |
| | | ipEnd :$scope.vm.ipEnd, |
| | | memo : $scope.vm.companyMemo, |
| | | companyTypeId : $scope.vm.form.companyTypeId, |
| | | parentSectorId : $scope.vm.form.parentSectorId, |
| | |
| | | companyTel : "", // 업체 전화번호 |
| | | companyEmail : "", // 업체 이메일 |
| | | companyUrl : "", // 업체 url |
| | | ipStart : "", //ip시작주소 |
| | | ipEnd : "", //ip종료주소 |
| | | companyMemo : "", // 업체 비고 |
| | | ispId : -1, // ISP ID |
| | | ispName : "", // ISP 명 |
| | |
| | | $scope.vm.companyTel = result[0].tel; |
| | | $scope.vm.companyEmail = result[0].email; |
| | | $scope.vm.companyUrl = result[0].url; |
| | | $scope.vm.ipStart = result[0].ipStart; |
| | | $scope.vm.ipEnd = result[0].ipEnd; |
| | | $scope.vm.companyMemo = result[0].memo; |
| | | $scope.vm.form.companyTypeId = result[0].companyTypeId; |
| | | $scope.vm.form.parentSectorId = result[0].parentSectorId; |
| | |
| | | companyTel : $scope.vm.companyTel, |
| | | companyEmail :$scope.vm.companyEmail, |
| | | companyUrl : $scope.vm.companyUrl, |
| | | ipStart :$scope.vm.ipStart, |
| | | ipEnd :$scope.vm.ipEnd, |
| | | companyMemo : $scope.vm.companyMemo, |
| | | companyTypeId : (function () { |
| | | var companyTypeId = -1; |
| | |
| | | tel : $scope.vm.companyTel, |
| | | email :$scope.vm.companyEmail, |
| | | url :$scope.vm.companyUrl, |
| | | ipStart :$scope.vm.ipStart, |
| | | ipEnd :$scope.vm.ipEnd, |
| | | memo : $scope.vm.companyMemo, |
| | | companyTypeId : $scope.vm.form.companyTypeId, |
| | | parentSectorId : $scope.vm.form.parentSectorId, |
| | |
| | | |
| | | // 파트너를 조회한 후 표시할 이슈 테이블 컬럼을 준비한다. |
| | | $scope.fn.getUsePartner().then(function (result) { |
| | | var count = 9; |
| | | let count = 9; |
| | | angular.forEach(result, function (partner) { |
| | | $scope.vm.issueTableConfigs.push({ |
| | | name : partner.name, |
| | |
| | | checkboxShow : true, |
| | | position : count |
| | | }); |
| | | count++; |
| | | count ++; |
| | | }); |
| | | // 사용자 정의 필드를 조회한 후 표시할 이슈 테이블 컬럼을 준비한다. |
| | | $scope.fn.getCustomFields().then(function (result) { |
| | |
| | | companyTel : "", // 업체 전화번호 |
| | | companyEmail : "", // 업체 이메일 |
| | | companyUrl : "", // 업체 url |
| | | ipStart : "", //ip시작주소 |
| | | ipEnd : "", //ip종료주소 |
| | | companyMemo : "", // 업체 비고 |
| | | ispId : -1, |
| | | ispName : "", // ISP 명 |
| | |
| | | $scope.vm.companyTel = result[0].tel; |
| | | $scope.vm.companyEmail = result[0].email; |
| | | $scope.vm.companyUrl = result[0].url; |
| | | $scope.vm.ipStart = result[0].ipStart; |
| | | $scope.vm.ipEnd = result[0].ipEnd; |
| | | $scope.vm.companyMemo = result[0].memo; |
| | | $scope.vm.form.companyTypeId = result[0].companyTypeId; |
| | | $scope.vm.form.parentSectorId = result[0].parentSectorId; |
| | |
| | | companyTel : $scope.vm.companyTel, |
| | | companyEmail :$scope.vm.companyEmail, |
| | | companyUrl : $scope.vm.companyUrl, |
| | | ipStart :$scope.vm.ipStart, |
| | | ipEnd :$scope.vm.ipEnd, |
| | | companyMemo : $scope.vm.companyMemo, |
| | | |
| | | companyTypeId : (function () { |
| | |
| | | tel : $scope.vm.companyTel, |
| | | email :$scope.vm.companyEmail, |
| | | url :$scope.vm.companyUrl, |
| | | ipStart :$scope.vm.ipStart, |
| | | ipEnd :$scope.vm.ipEnd, |
| | | memo : $scope.vm.companyMemo, |
| | | companyTypeId : $scope.vm.form.companyTypeId, |
| | | parentSectorId : $scope.vm.form.parentSectorId, |
| | |
| | | $scope.vm.companyTel = issueCompanyFieldValue.tel; |
| | | $scope.vm.companyEmail = issueCompanyFieldValue.email; |
| | | $scope.vm.companyUrl = issueCompanyFieldValue.url; |
| | | $scope.vm.ipStart = issueCompanyFieldValue.ipStart; |
| | | $scope.vm.ipEnd = issueCompanyFieldValue.ipEnd; |
| | | $scope.vm.companyMemo = issueCompanyFieldValue.memo; |
| | | $scope.vm.form.companyTypeId = issueCompanyFieldValue.companyTypeId; |
| | | $scope.vm.form.companyType = issueCompanyFieldValue.companyTypeName; |
| | |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <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" |
| | |
| | | </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="issueAddForm.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="issueAddForm.ipEnd.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidipAdressFormat">IP주소 형식이 맞지 않습니다. |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldDescAddForm" class="issue-label"><span translate="companyField.memo">비고</span></label> |
| | |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <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" |
| | |
| | | </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="issueAddDownForm.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="issueAddDownForm.ipEnd.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidipAdressFormat">IP주소 형식이 맞지 않습니다. |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldDescAddForm" class="issue-label"><span translate="companyField.memo">비고</span></label> |
| | |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <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" |
| | |
| | | </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="issueAddRelationForm.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="issueAddRelationForm.ipEnd.$error.pattern" class="help-block form-text text-danger" |
| | | translate="common.invalidipAdressFormat">IP주소 형식이 맞지 않습니다. |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldDescAddForm" class="issue-label"><span translate="companyField.memo">비고</span></label> |
| | |
| | | <div class="col-sm-2"> |
| | | <div class="form-group"> |
| | | <div class=""> |
| | | <span translate="companyField.ipRange">IP 대역대</span>: |
| | | <span>{{vm.viewer.issueCompanyVos[0].ipStart}} ~ {{vm.viewer.issueCompanyVos[0].ipEnd}}</span> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="col-sm-2"> |
| | | <div class="form-group"> |
| | | <div class=""> |
| | | <span translate="companyField.memo">비고</span>: |
| | | <span>{{vm.viewer.issueCompanyVos[0].memo}}</span> |
| | | </div> |
| | |
| | | </div>--> |
| | | </div> |
| | | </div> |
| | | <div class="col-lg-4"> |
| | | <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" |
| | |
| | | </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> |
| | | <div class="col-lg-4"> |
| | | <div class="form-group mgb5"> |
| | | <label for="companyFieldDescAddForm" class="issue-label"><span translate="companyField.memo">비고</span></label> |