fixbug screen 20

This commit is contained in:
Tran Van Dung/(Tran Van Dung)/현장대리인/SK
2025-07-31 13:52:28 +07:00
parent a85f9f98f6
commit a6e8e6cf86
8 changed files with 77 additions and 70 deletions

View File

@ -4,12 +4,12 @@
:data="chkGridData" :data="chkGridData"
:columns="chkGridColumns" :columns="chkGridColumns"
:options="chkGridOptions" :options="chkGridOptions"
@mousedown="onMousedown"
@click="startEditing" @click="startEditing"
@editingFinish="editingFinish" @editingFinish="editingFinish"
@dblclick="dblClick" @dblclick="dblClick"
@mouseover="mouseoverEvent" @mouseover="mouseoverEvent"
@mouseout="mouseoutEvent" @mouseout="mouseoutEvent"
@mousedown="onMousedown"
@focusChange="focusChangeEvt" @focusChange="focusChangeEvt"
/> />
</template> </template>
@ -271,11 +271,17 @@ export default {
}); });
}, },
onMousedown(evt) { onMousedown(evt) {
// console.log("------------------DEBUG-------onMousedown:", evt); console.log("------------------DEBUG-------onMousedown:", evt);
this.focusChangeEvt(evt); this.handleSelectedRow(evt);
}, },
focusChangeEvt(e) { focusChangeEvt(e) {
// console.log("------------------DEBUG-------focusChangeEvt:", e); console.log("------------------DEBUG-------focusChangeEvt:", e);
if(e.rowKey === 0) {
this.handleSelectedRow(e);
}
},
handleSelectedRow(e) {
console.log("------------------DEBUG-------handleSelectedRow:", e);
// console.log('focusChangeEvt1...') // console.log('focusChangeEvt1...')
if (this.preventFocusChangeEvent(e)) { if (this.preventFocusChangeEvent(e)) {
// console.log('prevent focusChangeEvt') // console.log('prevent focusChangeEvt')
@ -283,7 +289,7 @@ export default {
} }
// console.log('focusChangeEvt2...') // console.log('focusChangeEvt2...')
// cell 선택시 row 선택 method // cell 선택시 row 선택 method
if (e.rowKey >= 0) { if (e.rowKey > -1) {
this.$emit( this.$emit(
'getRowsData', 'getRowsData',
this.gridInstance.invoke('getRow', e.rowKey), this.gridInstance.invoke('getRow', e.rowKey),

View File

@ -280,52 +280,41 @@ export default {
modalKey: this.myModalKey, modalKey: this.myModalKey,
gridKey: this.grid_01, gridKey: this.grid_01,
modalDataKey: this.modalDataKey, modalDataKey: this.modalDataKey,
value: [{ header: '위치정보', name: 'eccNm' }], value: [
{
align: 'center',
width: 30,
minWidth: 60,
formatter: (props) => {
return `<span class="custom-radio"><span class="radio-mark"></span></span>`;
}
},
{ header: '위치정보', name: 'eccNm' }
],
}); });
}, },
async getGridData() { async getGridData() {
// this.loadGrid = false; this.loadGrid = false;
// const res = await this.postApiReturn({ const res = await this.postApiReturn({
// apiKey: 'selectEccBaseInfo', apiKey: 'selectEccBaseInfo',
// resKey: 'eccBaseInfoData', resKey: 'eccBaseInfoData',
// sendParam: { sendParam: {
// blocId: this.myBindingData.blocId, blocId: this.myBindingData.blocId,
// eqpmYn: '0', eqpmYn: '0',
// search: this.searchWord, search: this.searchWord,
// }, },
// }); });
// const setTreeData = await this.setTree({ const setTreeData = await this.setTree({
// gridKey: this.gridNameTree, gridKey: this.gridNameTree,
// treeKey: 'ECC_ID', treeKey: 'ECC_ID',
// value: res.map(item => ({ value: res.map(item => ({
// ...item,
// eccNm: item.eccNm,
// })),
// });
//mockdata eccNm
let res = [
{ ECC_ID: 'ECC001', eccNm: '서울 본사', iconShow: false, align: 'center' },
{ ECC_ID: 'ECC002', eccNm: '부산 지사', useIcon: false, align: 'center' },
{ ECC_ID: 'ECC003', eccNm: '대구 센터', useIcon: false, align: 'center' },
{ ECC_ID: 'ECC004', eccNm: '광주 사무소' , useIcon: false, align: 'center'},
{ ECC_ID: 'ECC005', eccNm: '인천 물류창고' , useIcon: false, align: 'center'},
];
const setTreeData = {
ROOT: res.map(item => ({
...item, ...item,
eccNm: item.eccNm, eccNm: item.eccNm,
})) })),
}; });
// console.log(res);
this.setModalGridData({ this.setModalGridData({
modalKey: this.myModalKey, modalKey: this.myModalKey,
gridKey: this.grid_01, gridKey: this.grid_01,

View File

@ -358,7 +358,6 @@ const myEqpmConstDetail = [
{ {
type: 'SelectBox', type: 'SelectBox',
label: '대상 유형', label: '대상 유형',
disabled: true,
cols: 6, cols: 6,
class: 'py-3 pr-4', class: 'py-3 pr-4',
list: 'emMapDivList2', list: 'emMapDivList2',

View File

@ -18,7 +18,7 @@
:innerTabGridInfo="innerTabGridInfo" :innerTabGridInfo="innerTabGridInfo"
/> />
</div> </div>
<div style="min-height: calc(100vh - 900px);"> <div style="min-height: calc(100vh - 900px);" class="mt-4">
<component <component
:is="'Form'" :is="'Form'"
:parentPrgmId="parentPrgmId" :parentPrgmId="parentPrgmId"
@ -108,18 +108,24 @@ export default {
}, },
watch: { watch: {
selectedObjId(val) { selectedObjId(val) {
// console.log('selectedObjId : ', val);
if (val === 'TAG') { if (val === 'TAG') {
// this.detailList[1].class = 'py-3 pl-4 pb-0';
this.detailList[1].class = 'py-3 d-none';
this.detailList[2].class = 'py-3 d-none'; this.detailList[2].class = 'py-3 d-none';
this.detailList[3].class = 'py-3 pl-4 pt-1 d-none'; this.detailList[3].class = 'py-3 pl-4 pt-1 d-none';
this.detailList[4].class = 'py-3'; this.detailList[4].class = 'py-3';
this.detailList[5].class = 'py-3'; this.detailList[5].class = 'py-3';
this.detailList[6].class = 'py-3 pl-4 pt-0';
} else { } else {
// }else if(val==="READ_PLC"){ // }else if(val==="READ_PLC"){
this.detailList[5].class = 'py-3 d-none'; this.detailList[1].class = 'py-3 pl-4';
this.detailList[4].class = 'py-3 d-none';
this.detailList[3].class = 'py-3 pl-4 pt-1';
this.detailList[2].class = 'py-3'; this.detailList[2].class = 'py-3';
this.detailList[3].class = 'py-3 pl-4 pt-0';
this.detailList[4].class = 'py-3 d-none';
this.detailList[5].class = 'py-3 d-none';
this.detailList[6].class = 'py-3 d-none';
} }
}, },
selectedCalcFg(val) { selectedCalcFg(val) {
@ -280,15 +286,16 @@ export default {
this.loadGrid = true; this.loadGrid = true;
}, },
async getRowData(data, gridName) { async getRowData(data, gridName) {
console.log("--------------------DEBUG-----getRowData---------------", {data, gridName});
if (data.rowStat === 'I') { if (data.rowStat === 'I') {
this.detailList[0].disabled = false; this.detailList[0].disabled = false;
this.detailList[2].disabled = false; this.detailList[1].disabled = false;
this.detailList[3].disabled = false; this.detailList[3].disabled = false;
this.detailList[4].disabled = false; this.detailList[4].disabled = false;
this.detailList[5].disabled = false; this.detailList[5].disabled = false;
} else { } else {
this.detailList[0].disabled = true; this.detailList[0].disabled = true;
this.detailList[2].disabled = true; this.detailList[1].disabled = true;
this.detailList[3].disabled = true; this.detailList[3].disabled = true;
this.detailList[4].disabled = true; this.detailList[4].disabled = true;
this.detailList[5].disabled = true; this.detailList[5].disabled = true;
@ -306,7 +313,7 @@ export default {
case 'add': case 'add':
this.$refs[this.gridName].addRow(); this.$refs[this.gridName].addRow();
this.detailList[0].disabled = false; this.detailList[0].disabled = false;
this.detailList[2].disabled = false; this.detailList[1].disabled = false;
this.detailList[3].disabled = false; this.detailList[3].disabled = false;
this.detailList[4].disabled = false; this.detailList[4].disabled = false;
this.detailList[5].disabled = false; this.detailList[5].disabled = false;
@ -315,7 +322,7 @@ export default {
case 'remove': case 'remove':
this.$refs[this.gridName].removeRow(); this.$refs[this.gridName].removeRow();
this.detailList[0].disabled = true; this.detailList[0].disabled = true;
this.detailList[2].disabled = true; this.detailList[1].disabled = true;
this.detailList[3].disabled = true; this.detailList[3].disabled = true;
this.detailList[4].disabled = true; this.detailList[4].disabled = true;
this.detailList[5].disabled = true; this.detailList[5].disabled = true;
@ -436,10 +443,10 @@ const myEqpmIaoDetail = [
type: 'ReadPlcPop', type: 'ReadPlcPop',
label: '대상 항목', label: '대상 항목',
valueNm: 'objId', valueNm: 'objId',
disabled: true,
cols: 6, cols: 6,
class: 'py-3 pl-4', class: 'py-3 pl-4 pb-0',
required: true, required: true,
disabled: true,
bindNm: 'objNm', bindNm: 'objNm',
textCols: 12, textCols: 12,
labelCols: 12, labelCols: 12,
@ -460,11 +467,12 @@ const myEqpmIaoDetail = [
readonly: true, readonly: true,
disabled: true, disabled: true,
cols: 6, cols: 6,
class: 'py-3 pl-4 pt-1', class: 'py-3 pl-4 pt-0',
textCols: 12, textCols: 12,
labelCols: 12, labelCols: 12,
iconShow: true iconShow: true
}, },
// ============
{ {
type: 'EvtObjPop', type: 'EvtObjPop',
labelContent: '대상 항목', labelContent: '대상 항목',
@ -474,16 +482,24 @@ const myEqpmIaoDetail = [
disabled: true, disabled: true,
required: true, required: true,
cols: 6, cols: 6,
class: 'py-3 d-none', class: 'py-3 pl-4 d-none',
disableContent: true, disableContent: true,
textCols: 12, textCols: 12,
labelCols: 12, labelCols: 12,
iconShow: true iconShow: true
}, },
{ {
type: 'InputText', type: 'Label',
cols: 6, cols: 6,
class: 'py-3 d-none', class: 'py-3 d-none',
disabled: true,
textCols: 12,
labelCols: 12,
},
{
type: 'InputText',
cols: 6,
class: 'py-3 pl-4 d-none',
valueNm: 'objNm', valueNm: 'objNm',
readonly: true, readonly: true,
disabled: true, disabled: true,
@ -491,6 +507,7 @@ const myEqpmIaoDetail = [
labelCols: 12, labelCols: 12,
iconShow: true iconShow: true
}, },
// --------------------------------------------
{ {
type: 'SelectBox', type: 'SelectBox',
label: '에너지원', label: '에너지원',

View File

@ -57,7 +57,7 @@ module.exports = {
], ],
// Modules: https://go.nuxtjs.dev/config-modules // Modules: https://go.nuxtjs.dev/config-modules
modules: ['@nuxtjs/axios', '@nuxtjs/dayjs', '@nuxtjs/style-resources','@nuxtjs/google-fonts'], modules: ['@nuxtjs/axios', '@nuxtjs/dayjs', '@nuxtjs/style-resources' ],
styleResources: { styleResources: {
scss: ['./assets/scss/*.scss'], scss: ['./assets/scss/*.scss'],
}, },

View File

@ -398,14 +398,11 @@ export default {
const myTreeColumns = [ const myTreeColumns = [
{ {
header: '',
name: '',
align: 'center', align: 'center',
width: 30, width: 30,
minWidth: 60,
formatter: (props) => { formatter: (props) => {
return `<span class="custom-radio"> return `<span class="custom-radio"><span class="radio-mark"></span></span>`;
<span class="radio-mark"></span>
</span>`;
} }
}, },
{ {
@ -421,14 +418,11 @@ export default {
]; ];
const myTreeColumns2 = [ const myTreeColumns2 = [
{ {
header: '',
name: '',
align: 'center', align: 'center',
width: 30, width: 30,
minWidth: 60,
formatter: (props) => { formatter: (props) => {
return `<span class="custom-radio"> return `<span class="custom-radio"><span class="radio-mark"></span></span>`;
<span class="radio-mark"></span>
</span>`;
} }
}, },
{ header: '역할ID', name: 'roleId', hidden: true }, { header: '역할ID', name: 'roleId', hidden: true },

View File

@ -1,5 +1,6 @@
<template> <template>
<div class="l-layout"> <div class="l-layout">
<CommonPageTitle />
<!-- 조회조견 --> <!-- 조회조견 -->
<v-row ref="searchFilter"> <v-row ref="searchFilter">
<v-col :cols="12"> <v-col :cols="12">

View File

@ -479,6 +479,7 @@ export default {
}); });
}, },
async getRowData(data) { async getRowData(data) {
console.log('-------------DEBUG-----getRowData-----------', data);
this.setEqpmAddInfo(data); this.setEqpmAddInfo(data);
this.setEqpmIao(data); this.setEqpmIao(data);
this.setEqpmConstIao(data); this.setEqpmConstIao(data);
@ -969,7 +970,7 @@ const myDetail = [
labelCols: 12, labelCols: 12,
textCols: 12, textCols: 12,
iconShow: true, iconShow: true,
class: 'py-3 pr-4', class: 'py-3 pr-4 pb-2',
}, },
{ {
type: 'CheckBox', type: 'CheckBox',