생산관리의 생산계획생성 버튼 눌렀을때 품번, 품명도 드롭박스처럼 나오게
This commit is contained in:
@@ -35,6 +35,9 @@ $(function(){
|
||||
fnc_datepick();
|
||||
$(".select2").select2();
|
||||
|
||||
// 품번/품명 Select2 AJAX 초기화
|
||||
initPartSelect2();
|
||||
|
||||
// 저장 버튼
|
||||
$("#btnSave").click(function(){
|
||||
fn_save();
|
||||
@@ -74,6 +77,94 @@ $(function(){
|
||||
<% } %>
|
||||
});
|
||||
|
||||
// 품번/품명 Select2 AJAX 초기화
|
||||
function initPartSelect2() {
|
||||
// 품번 Select2
|
||||
$("#PART_NO").select2({
|
||||
placeholder: "품번 검색...",
|
||||
allowClear: true,
|
||||
width: '100%',
|
||||
minimumInputLength: 1,
|
||||
language: {
|
||||
inputTooShort: function() { return "1글자 이상 입력하세요"; },
|
||||
searching: function() { return "검색 중..."; },
|
||||
noResults: function() { return "검색 결과가 없습니다"; }
|
||||
},
|
||||
ajax: {
|
||||
url: '/contractMgmt/searchPartList.do',
|
||||
dataType: 'json',
|
||||
type: 'POST',
|
||||
delay: 250,
|
||||
data: function(params) { return { searchTerm: params.term }; },
|
||||
processResults: function(data) {
|
||||
return {
|
||||
results: $.map(data, function(item) {
|
||||
return {
|
||||
id: item.PART_NO || item.part_no,
|
||||
text: item.PART_NO || item.part_no,
|
||||
partName: item.PART_NAME || item.part_name,
|
||||
partObjid: item.OBJID || item.objid
|
||||
};
|
||||
})
|
||||
};
|
||||
},
|
||||
cache: true
|
||||
}
|
||||
}).on('select2:select', function(e) {
|
||||
var data = e.params.data;
|
||||
// 품명 자동 설정
|
||||
if(data.partName) {
|
||||
// 품명 Select2에 옵션 추가 및 선택
|
||||
var newOption = new Option(data.partName, data.partName, true, true);
|
||||
$("#PART_NAME").append(newOption).trigger('change');
|
||||
}
|
||||
// hidden 필드에 OBJID 저장
|
||||
$("#PART_OBJID").val(data.partObjid);
|
||||
});
|
||||
|
||||
// 품명 Select2
|
||||
$("#PART_NAME").select2({
|
||||
placeholder: "품명 검색...",
|
||||
allowClear: true,
|
||||
width: '100%',
|
||||
minimumInputLength: 1,
|
||||
language: {
|
||||
inputTooShort: function() { return "1글자 이상 입력하세요"; },
|
||||
searching: function() { return "검색 중..."; },
|
||||
noResults: function() { return "검색 결과가 없습니다"; }
|
||||
},
|
||||
ajax: {
|
||||
url: '/contractMgmt/searchPartList.do',
|
||||
dataType: 'json',
|
||||
type: 'POST',
|
||||
delay: 250,
|
||||
data: function(params) { return { searchTerm: params.term }; },
|
||||
processResults: function(data) {
|
||||
return {
|
||||
results: $.map(data, function(item) {
|
||||
return {
|
||||
id: item.PART_NAME || item.part_name,
|
||||
text: item.PART_NAME || item.part_name,
|
||||
partNo: item.PART_NO || item.part_no,
|
||||
partObjid: item.OBJID || item.objid
|
||||
};
|
||||
})
|
||||
};
|
||||
},
|
||||
cache: true
|
||||
}
|
||||
}).on('select2:select', function(e) {
|
||||
var data = e.params.data;
|
||||
// 품번 자동 설정
|
||||
if(data.partNo) {
|
||||
var newOption = new Option(data.partNo, data.partNo, true, true);
|
||||
$("#PART_NO").append(newOption).trigger('change');
|
||||
}
|
||||
// hidden 필드에 OBJID 저장
|
||||
$("#PART_OBJID").val(data.partObjid);
|
||||
});
|
||||
}
|
||||
|
||||
// 날짜 선택기 초기화
|
||||
function fnc_datepick(){
|
||||
var $dateinput = $("input.date_icon");
|
||||
@@ -136,11 +227,19 @@ function fn_loadProjectInfo(projectObjid){
|
||||
$("#CUSTOMER_OBJID").trigger("change.select2");
|
||||
}
|
||||
|
||||
// 품번
|
||||
$("#PART_NO").val(fnc_checkNull(info.part_no));
|
||||
// 품번 (Select2)
|
||||
var partNo = fnc_checkNull(info.part_no);
|
||||
if(partNo != "") {
|
||||
var newOption = new Option(partNo, partNo, true, true);
|
||||
$("#PART_NO").append(newOption).trigger('change');
|
||||
}
|
||||
|
||||
// 품명
|
||||
$("#PART_NAME").val(fnc_checkNull(info.part_name));
|
||||
// 품명 (Select2)
|
||||
var partName = fnc_checkNull(info.part_name);
|
||||
if(partName != "") {
|
||||
var newOption = new Option(partName, partName, true, true);
|
||||
$("#PART_NAME").append(newOption).trigger('change');
|
||||
}
|
||||
|
||||
// 요청납기
|
||||
$("#REQ_DEL_DATE").val(fnc_checkNull(info.req_del_date));
|
||||
@@ -171,8 +270,9 @@ function fn_clearProjectInfo(){
|
||||
$("#PRODUCT_CODE").val("").trigger("change");
|
||||
$("#CATEGORY_CODE").val("").trigger("change");
|
||||
$("#CUSTOMER_OBJID").val("").trigger("change");
|
||||
$("#PART_NO").val("");
|
||||
$("#PART_NAME").val("");
|
||||
$("#PART_NO").val(null).trigger("change");
|
||||
$("#PART_NAME").val(null).trigger("change");
|
||||
$("#PART_OBJID").val("");
|
||||
$("#REQ_DEL_DATE").val("");
|
||||
$("#SERIAL_NO").val("");
|
||||
$("#ORDER_QTY").val("");
|
||||
@@ -353,11 +453,22 @@ function fn_save(){
|
||||
<tr>
|
||||
<td class="input_title"><label>품번<span class="required-mark">*</span></label></td>
|
||||
<td>
|
||||
<input type="text" name="PART_NO" id="PART_NO" value="${resultMap.part_no}">
|
||||
<select name="PART_NO" id="PART_NO" style="width:100%;">
|
||||
<option value="">선택</option>
|
||||
<c:if test="${not empty resultMap.part_no}">
|
||||
<option value="${resultMap.part_no}" selected>${resultMap.part_no}</option>
|
||||
</c:if>
|
||||
</select>
|
||||
<input type="hidden" name="PART_OBJID" id="PART_OBJID" value="${resultMap.part_objid}">
|
||||
</td>
|
||||
<td class="input_title"><label>품명<span class="required-mark">*</span></label></td>
|
||||
<td>
|
||||
<input type="text" name="PART_NAME" id="PART_NAME" value="${resultMap.part_name}">
|
||||
<select name="PART_NAME" id="PART_NAME" style="width:100%;">
|
||||
<option value="">선택</option>
|
||||
<c:if test="${not empty resultMap.part_name}">
|
||||
<option value="${resultMap.part_name}" selected>${resultMap.part_name}</option>
|
||||
</c:if>
|
||||
</select>
|
||||
</td>
|
||||
<td class="input_title"><label>S/N</label></td>
|
||||
<td>
|
||||
|
||||
Reference in New Issue
Block a user