This commit is contained in:
@@ -33,6 +33,8 @@
|
||||
const LAYOUT_ITEM_TYPE_FIELD = "Field";
|
||||
const LAYOUT_ITEM_TYPE_ARRAY = "Array";
|
||||
|
||||
var srcItemComboOptionFormat = '"["+this.data[index]["LOUTITEMPATH"]+"] "+this.data[index]["loutItemDesc"]';
|
||||
|
||||
var isDetail = false;
|
||||
|
||||
var srcGroup;
|
||||
@@ -230,6 +232,13 @@
|
||||
}
|
||||
}
|
||||
|
||||
// 변환명령에서 매핑 가능한(필드 유형) 소스 항목만 콤보로 표시
|
||||
var srcFieldRows = data.filter(function (rowData) {
|
||||
return rowData['loutItemType'] == LAYOUT_ITEM_TYPE_FIELD;
|
||||
});
|
||||
$("#srcItemComboDialog").empty();
|
||||
new makeOptions("id","LOUTITEMPATH").setObj($("#srcItemComboDialog")).setData(srcFieldRows).setFormat(srcItemComboOptionFormat).rendering();
|
||||
|
||||
sourceGrid.find('.jqgrow').mouseover(function (e) {
|
||||
var rowId = $(this).attr('id');
|
||||
const loutItemName = sourceGrid.getRowData(rowId)['loutItemName']
|
||||
@@ -499,6 +508,17 @@
|
||||
},
|
||||
onSelectRow: function (rowId) {
|
||||
var rowData = sourceGrid.getRowData(rowId);
|
||||
|
||||
// 매핑 불가능한 유형(필드가 아닌 행)을 선택하면 타겟 그리드 선택 해제 및 하단 상세 초기화
|
||||
if (rowData['loutItemType'] != LAYOUT_ITEM_TYPE_FIELD) {
|
||||
targetGrid.jqGrid('resetSelection');
|
||||
$('textarea[name=CNVSNRSULTITEMPATHNAME]').val('');
|
||||
$('textarea[name=CNVSNCMDNAME]').val('');
|
||||
$('input[name=CNVSNITEMBASCVAL]').val('');
|
||||
$('input[name=CNVSNITEMSERNO]').val('');
|
||||
return;
|
||||
}
|
||||
|
||||
// 소스 항목과 이미 매핑된 타겟 항목을 강조 표시
|
||||
tgtGridSelect(rowData['LOUTITEMPATH'], rowId);
|
||||
}
|
||||
@@ -576,6 +596,17 @@
|
||||
},
|
||||
onSelectRow: function (rowId) {
|
||||
var rowData = targetGrid.getRowData(rowId);
|
||||
|
||||
// 매핑 불가능한 유형(필드가 아닌 행)을 선택하면 소스 그리드 선택 해제 및 하단 상세 초기화
|
||||
if (rowData['loutItemType'] != LAYOUT_ITEM_TYPE_FIELD) {
|
||||
sourceGrid.jqGrid('resetSelection');
|
||||
$('textarea[name=CNVSNRSULTITEMPATHNAME]').val('');
|
||||
$('textarea[name=CNVSNCMDNAME]').val('');
|
||||
$('input[name=CNVSNITEMBASCVAL]').val('');
|
||||
$('input[name=CNVSNITEMSERNO]').val('');
|
||||
return;
|
||||
}
|
||||
|
||||
$('textarea[name=CNVSNRSULTITEMPATHNAME]').val(rowData['CNVSNRSULTITEMPATHNAME']);
|
||||
$('textarea[name=CNVSNCMDNAME]').val(rowData['CNVSNCMDNAME']);
|
||||
$('input[name=CNVSNITEMBASCVAL]').val(rowData['CNVSNITEMBASCVAL']);
|
||||
@@ -703,11 +734,15 @@
|
||||
return ;
|
||||
}
|
||||
|
||||
targetGrid.jqGrid('setCell',tgtRowId,'CNVSNCMDNAME',addArrayTag(sourceRow['loutItemType'], addGroupTag(srcGroup,sourceRow['LOUTITEMPATH'])));
|
||||
var cnvsnCmdName = addArrayTag(sourceRow['loutItemType'], addGroupTag(srcGroup,sourceRow['LOUTITEMPATH']));
|
||||
targetGrid.jqGrid('setCell',tgtRowId,'CNVSNCMDNAME',cnvsnCmdName);
|
||||
targetGrid.jqGrid('setCell',tgtRowId,'CNVSNRSULTITEMPATHNAME',addArrayTag(targetRow['loutItemType'], addGroupTag(tgtGroup,targetRow['LOUTITEMPATH'])));
|
||||
targetGrid.jqGrid('setCell',tgtRowId,'CNVSNITEMSERNO',targetRow['loutItemSerno']);
|
||||
|
||||
// 하단 CNVSNCMDNAME 값 갱신 (함수 적용 상태로 남아있던 값이 그대로 표시되는 것 방지)
|
||||
$('textarea[name=CNVSNCMDNAME]').val(cnvsnCmdName);
|
||||
});
|
||||
|
||||
|
||||
$("#remove").click(function(){
|
||||
var tgtRowId = targetGrid.getGridParam( "selrow" );
|
||||
if (tgtRowId == null) {alert("타겟레이아웃을 선택하여 주십시요.");return;}
|
||||
@@ -820,22 +855,25 @@
|
||||
return;
|
||||
}
|
||||
|
||||
var srcRowId = sourceGrid.getGridParam( "selrow" );
|
||||
if (isNull(srcRowId)){
|
||||
var srcItemIds = $('#srcItemComboDialog').val();
|
||||
if (isNull(srcItemIds) || srcItemIds.length == 0){
|
||||
alert('<%=localeMessage.getString("transformManDetail.alert5")%>');
|
||||
return;
|
||||
}
|
||||
|
||||
var targetRow = targetGrid.getRowData( tgtRowId ); // 타겟 그리드에서 선택된 ROW 값
|
||||
var sourceRow = sourceGrid.getRowData( srcRowId ); // 소스 그리드에서 선택된 ROW 값
|
||||
|
||||
var cnvsnCmdName = addArrayTag(sourceRow['loutItemType'], addGroupTag(srcGroup, sourceRow['LOUTITEMPATH']));
|
||||
var itemNames = srcItemIds.map(function (srcItemId) {
|
||||
var sourceRow = sourceGrid.getRowData( srcItemId ); // 소스 항목 콤보에서 선택된 ROW 값
|
||||
return addArrayTag(sourceRow['loutItemType'], addGroupTag(srcGroup, sourceRow['LOUTITEMPATH']));
|
||||
});
|
||||
|
||||
var cnvsnCmdName = itemNames.join(", ");
|
||||
if ($('#functionComboDialog').val() != "") {
|
||||
cnvsnCmdName = $('#functionComboDialog').val() + "(" + cnvsnCmdName + ")";
|
||||
}
|
||||
|
||||
var existingCmdName = $('textarea[name=CNVSNCMDNAME]').val();
|
||||
$('textarea[name=CNVSNCMDNAME]').val(existingCmdName ? existingCmdName + ' ' + cnvsnCmdName : cnvsnCmdName);
|
||||
$('textarea[name=CNVSNCMDNAME]').val(cnvsnCmdName);
|
||||
$('textarea[name=CNVSNRSULTITEMPATHNAME]').val(addArrayTag(targetRow['loutItemType'], addGroupTag(tgtGroup, targetRow['LOUTITEMPATH'])));
|
||||
$('input[name=CNVSNITEMSERNO]').val(targetRow['loutItemSerno']);
|
||||
|
||||
@@ -1243,8 +1281,11 @@
|
||||
<tr>
|
||||
<th style="width:13%; min-width:130px;"><%=localeMessage.getString("transformManDetail.transCmdName")%></th>
|
||||
<td>
|
||||
<div class="select-style" style="display:inline-block; width:calc((100% - 70px)*0.3);">
|
||||
<select id="functionComboDialog" name="functionComboDialog" style="width:100%; box-sizing:border-box; padding-right:15px;"></select>
|
||||
</div>
|
||||
<div class="select-style" style="display:inline-block; width:calc((100% - 70px)*0.7);">
|
||||
<select id="functionComboDialog" name="functionComboDialog" style="width:120%;"></select>
|
||||
<select id="srcItemComboDialog" name="srcItemComboDialog" multiple size="1" style="width:100%; box-sizing:border-box; padding-right:15px;"></select>
|
||||
</div>
|
||||
<button type="button" class="cssbtn smallBtn2" id="addCmd" name="addCmd" style="vertical-align:middle; font-weight:bold;"><i class="material-icons">add</i><%= localeMessage.getString("button.add") %></button>
|
||||
</td>
|
||||
|
||||
Reference in New Issue
Block a user