This commit is contained in:
@@ -144,6 +144,11 @@
|
|||||||
LIST_TRANSFORM_ITEM = listTransformItem(tgt, cnvsnName, tgtLoutIoId, tgtLoutType, src);
|
LIST_TRANSFORM_ITEM = listTransformItem(tgt, cnvsnName, tgtLoutIoId, tgtLoutType, src);
|
||||||
LIST_LAYOUT_ITEM = listLayoutItem(src, srcLoutIoId, srcLoutType);
|
LIST_LAYOUT_ITEM = listLayoutItem(src, srcLoutIoId, srcLoutType);
|
||||||
|
|
||||||
|
// 소스/타겟 그리드가 모두 로드된 후, 소스에 없는 아이템이 매핑된 타겟 항목을 표시
|
||||||
|
$.when(LIST_TRANSFORM_ITEM, LIST_LAYOUT_ITEM).done(function () {
|
||||||
|
validateMapping();
|
||||||
|
});
|
||||||
|
|
||||||
console.debug('LIST_TRANSFORM_SOURCE_RESULT done');
|
console.debug('LIST_TRANSFORM_SOURCE_RESULT done');
|
||||||
}).fail(function (e) {
|
}).fail(function (e) {
|
||||||
alert(e.responseText);
|
alert(e.responseText);
|
||||||
@@ -342,6 +347,50 @@
|
|||||||
return LIST_TRANSFORM_ITEM;
|
return LIST_TRANSFORM_ITEM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 소스에 없는(삭제/변경된) 아이템이 타겟에 매핑되어 있으면 빨간색으로 표시하고 ISVALIDMAPPING을 false로 체크
|
||||||
|
function validateMapping() {
|
||||||
|
var sourceData = sourceGrid.getRowData();
|
||||||
|
var validPaths = {};
|
||||||
|
for (var i = 0; i < sourceData.length; i++) {
|
||||||
|
validPaths[sourceData[i]['LOUTITEMPATH'].replace(/\[\*\]/g, "")] = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
var targetData = targetGrid.getRowData();
|
||||||
|
for (var j = 0; j < targetData.length; j++) {
|
||||||
|
var rowData = targetData[j];
|
||||||
|
var cnvsnSrcItems = $.trim(rowData['CNVSNSRCITEMS']);
|
||||||
|
if (cnvsnSrcItems == "") continue;
|
||||||
|
|
||||||
|
var invalid = false;
|
||||||
|
var srcItems = cnvsnSrcItems.split(',');
|
||||||
|
for (var k = 0; k < srcItems.length; k++) {
|
||||||
|
var matchPath = srcItems[k].replace(/\[\*\]/g, "");
|
||||||
|
if (!validPaths[matchPath]) {
|
||||||
|
invalid = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (invalid) {
|
||||||
|
// 연결 정보가 없음 (jqGridOnConnection의 미연결 처리와 동일하게 매핑 데이터를 초기화)
|
||||||
|
targetGrid.jqGrid('setCell', rowData['id'], 'CNVSNCMDNAME', null);
|
||||||
|
targetGrid.jqGrid('setCell', rowData['id'], 'CNVSNRSULTITEMPATHNAME', null);
|
||||||
|
targetGrid.jqGrid('setCell', rowData['id'], 'CNVSNITEMSERNO', null);
|
||||||
|
targetGrid.jqGrid('setCell', rowData['id'], 'CNVSNITEMBASCVAL', null);
|
||||||
|
targetGrid.jqGrid('setCell', rowData['id'], 'CNVSNSRCITEMS', null);
|
||||||
|
targetGrid.jqGrid('setCell', rowData['id'], 'ISVALIDMAPPING', false);
|
||||||
|
targetGrid.jqGrid('setCell', rowData['id'], 'loutItemName', '', {color:'red'});
|
||||||
|
if (isValidMapping) {
|
||||||
|
isValidMapping = false;
|
||||||
|
// alert은 1회
|
||||||
|
alert('<%=localeMessage.getString("transformManDetail.alert8")%>');
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
targetGrid.jqGrid('setCell', rowData['id'], 'ISVALIDMAPPING', true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
function addGroupTag(group, data) {
|
function addGroupTag(group, data) {
|
||||||
Object.keys(group)
|
Object.keys(group)
|
||||||
@@ -874,12 +923,19 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
$('textarea[name=CNVSNCMDNAME]').val(cnvsnCmdName);
|
$('textarea[name=CNVSNCMDNAME]').val(cnvsnCmdName);
|
||||||
|
|
||||||
$('textarea[name=CNVSNRSULTITEMPATHNAME]').val(addArrayTag(targetRow['loutItemType'], addGroupTag(tgtGroup, targetRow['LOUTITEMPATH'])));
|
$('textarea[name=CNVSNRSULTITEMPATHNAME]').val(addArrayTag(targetRow['loutItemType'], addGroupTag(tgtGroup, targetRow['LOUTITEMPATH'])));
|
||||||
$('input[name=CNVSNITEMSERNO]').val(targetRow['loutItemSerno']);
|
$('input[name=CNVSNITEMSERNO]').val(targetRow['loutItemSerno']);
|
||||||
|
|
||||||
setTgtCell();
|
setTgtCell();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#resetCmd").click(function(){
|
||||||
|
$('#functionComboDialog').val('');
|
||||||
|
$('#srcItemComboDialog').val([]);
|
||||||
|
$('textarea[name=CNVSNCMDNAME]').val('');
|
||||||
|
});
|
||||||
|
|
||||||
$("#btn_delete").click(function(){
|
$("#btn_delete").click(function(){
|
||||||
if(!confirm("삭제하시겠습니까?")){
|
if(!confirm("삭제하시겠습니까?")){
|
||||||
return;
|
return;
|
||||||
@@ -1281,13 +1337,14 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<th style="width:13%; min-width:130px;"><%=localeMessage.getString("transformManDetail.transCmdName")%></th>
|
<th style="width:13%; min-width:130px;"><%=localeMessage.getString("transformManDetail.transCmdName")%></th>
|
||||||
<td>
|
<td>
|
||||||
<div class="select-style" style="display:inline-block; width:calc((100% - 70px)*0.3);">
|
<div class="select-style" style="display:inline-block; width:calc((100% - 130px)*0.3);">
|
||||||
<select id="functionComboDialog" name="functionComboDialog" style="width:100%; box-sizing:border-box; padding-right:15px;"></select>
|
<select id="functionComboDialog" name="functionComboDialog" style="width:100%; box-sizing:border-box; padding-right:15px;"></select>
|
||||||
</div>
|
</div>
|
||||||
<div class="select-style" style="display:inline-block; width:calc((100% - 70px)*0.7);">
|
<div class="select-style" style="display:inline-block; width:calc((100% - 130px)*0.7);">
|
||||||
<select id="srcItemComboDialog" name="srcItemComboDialog" multiple size="1" style="width:100%; box-sizing:border-box; padding-right:15px;"></select>
|
<select id="srcItemComboDialog" name="srcItemComboDialog" multiple size="1" style="width:100%; box-sizing:border-box; padding-right:15px;"></select>
|
||||||
</div>
|
</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>
|
<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>
|
||||||
|
<button type="button" class="cssbtn smallBtn2" id="resetCmd" name="resetCmd" style="vertical-align:middle; font-weight:bold;"><i class="material-icons">refresh</i><%= localeMessage.getString("button.reset") %></button>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr height="40px">
|
<tr height="40px">
|
||||||
|
|||||||
Reference in New Issue
Block a user