diff --git a/assets/scss/common.scss b/assets/scss/common.scss index 0fac17b..705e75a 100644 --- a/assets/scss/common.scss +++ b/assets/scss/common.scss @@ -691,6 +691,43 @@ a { } &>.v-treeview-node { + + .v-treeview-node--active { + background-color: map-deep-get($config, + #{$theme}, + "v-treeview-node-label-active-bg" + ); + border: 1px solid map-deep-get($config, + #{$theme}, + "v-treeview-node-label-active-border" + ); + border-radius: 8px; + + &:before { + background-color: map-deep-get($config, + #{$theme}, + "v-treeview-node-subroot-backgroundColor" + ); + } + + &>.v-treeview-node__content { + .v-treeview-node__label { + color: map-deep-get($config, + #{$theme}, + "v-treeview-node-label-active-color" + ); + } + + .v-icon { + color: map-deep-get($config, + #{$theme}, + "v-treeview-icon-active-color" + ); + } + } + + } + &>.v-treeview-node__root { &:before { background-color: map-deep-get($config, @@ -736,6 +773,7 @@ a { &>.v-treeview-node__children { &>.v-treeview-node { + &>.v-treeview-node__root { &:before { background-color: map-deep-get($config, @@ -793,117 +831,6 @@ a { ); } - &>.v-treeview-node--active { - &:before { - background-color: map-deep-get($config, - #{$theme}, - "v-treeview-node-subroot-backgroundColor" - ); - } - - &>.v-treeview-node__content { - .v-treeview-node__label { - color: map-deep-get($config, - #{$theme}, - "v-treeview-node-label-active-color" - ); - } - - .v-icon { - color: map-deep-get($config, - #{$theme}, - "v-treeview-icon-active-color" - ); - } - } - } - - &>.v-treeview-node__children { - & .v-treeview-node { - &>.v-treeview-node__root { - &:before { - background-color: map-deep-get($config, - #{$theme}, - "v-treeview-node-subroot-backgroundColor" - ); - } - - &>.v-treeview-node__content { - .v-treeview-node__label { - color: map-deep-get($config, - #{$theme}, - "v-treeview-node-label-color" - ); - } - - .v-icon { - color: map-deep-get($config, - #{$theme}, - "v-treeview-icon-color" - ); - } - } - - &:not(.v-treeview-node--active):hover { - &:before { - background-color: map-deep-get($config, - #{$theme}, - "v-treeview-leaf-active-backgroundColor" - ); - } - - &>.v-treeview-node__content { - .v-treeview-node__label { - color: map-deep-get($config, - #{$theme}, - "v-treeview-leaf-active-color" - ); - } - - .v-icon { - color: map-deep-get($config, - #{$theme}, - "v-treeview-leaf-active-color" - ); - } - } - } - } - - &>.v-treeview-node--active { - background-color: map-deep-get($config, - #{$theme}, - "v-treeview-node-label-active-bg" - ); - border: 1px solid map-deep-get($config, - #{$theme}, - "v-treeview-node-label-active-border" - ); - border-radius: 8px; - - &:before { - opacity: 0 !important; - } - - &>.v-treeview-node__content { - .v-treeview-node__label { - color: map-deep-get($config, - #{$theme}, - "v-treeview-node-label-active-color" - ); - } - - .v-icon { - color: map-deep-get($config, - #{$theme}, - "v-treeview-node-label-active-color" - ); - } - } - } - } - } - &[aria-expanded="true"] { & .v-treeview-node__root>.v-treeview-node__content { .v-treeview-node__label { diff --git a/components/common/Grid.vue b/components/common/Grid.vue index 4efae23..1641bd4 100644 --- a/components/common/Grid.vue +++ b/components/common/Grid.vue @@ -4,12 +4,12 @@ :data="chkGridData" :columns="chkGridColumns" :options="chkGridOptions" - @mousedown="onMousedown" @click="startEditing" @editingFinish="editingFinish" @dblclick="dblClick" @mouseover="mouseoverEvent" @mouseout="mouseoutEvent" + @mousedown="onMousedown" @focusChange="focusChangeEvt" /> @@ -251,11 +251,9 @@ export default { this.gridInstance.invoke('check', rowData.rowKey, instance); }, setSelectionRange(rowKey) { - // console.log("------------------DEBUG-------setSelectionRange:", rowKey); const rowDatas = this.gridInstance.invoke('getData'); rowDatas.forEach(item => { if (item.rowKey == rowKey) { - // console.log("------------------DEBUG-------setSelectionRange---item:", item); this.gridInstance.invoke( 'addRowClassName', item.rowKey, @@ -271,11 +269,14 @@ export default { }); }, onMousedown(evt) { - // console.log("------------------DEBUG-------onMousedown:", evt); - this.focusChangeEvt(evt); + this.handleSelectedRow(evt); }, focusChangeEvt(e) { - // console.log("------------------DEBUG-------focusChangeEvt:", e); + if(e.rowKey === 0) { + this.handleSelectedRow(e); + } + }, + handleSelectedRow(e) { // console.log('focusChangeEvt1...') if (this.preventFocusChangeEvent(e)) { // console.log('prevent focusChangeEvt') @@ -283,7 +284,7 @@ export default { } // console.log('focusChangeEvt2...') // cell 선택시 row 선택 method - if (e.rowKey >= 0) { + if (e.rowKey > -1) { this.$emit( 'getRowsData', this.gridInstance.invoke('getRow', e.rowKey), @@ -296,7 +297,6 @@ export default { this.sendSelectedRowData(e.rowKey); }, startEditing(e) { - // console.log("------------------DEBUG-------startEditing:", e); // console.log('startEditing1...') if (this.preventFocusChangeEvent(e)) { // console.log('prevent startEditing') @@ -323,7 +323,6 @@ export default { } }, async editingFinish(e) { - // console.log('------------------DEBUG-------editingFinish:', e); // console.log("Editing END E::", e); // editor 간 이동시 수정되는 문제 수정 // e.rowEditingFg: grid의 한 row를 한번에 수정할 시 각각의 cell 마다 click 이벤트가 발생하지 않아 this.editorStartKey값이 제대로 입력 되지 않는 경우를 대비하여 만든 Fg @@ -685,7 +684,6 @@ export default { ? this.gridInstance.invoke('getFocusedCell').rowKey : eventRowKey; var rowData = this.gridInstance.invoke('getRow', rowKey); - // console.log('------------------DEBUG-------sendSelectedRowData:', {eventRowKey, rowKey}); this.$emit('sendSelectedRowStatInfo', rowData); } }, diff --git a/components/common/modal/FtnPlcFormPop.vue b/components/common/modal/FtnPlcFormPop.vue index 7ccbe47..f577a6e 100644 --- a/components/common/modal/FtnPlcFormPop.vue +++ b/components/common/modal/FtnPlcFormPop.vue @@ -280,52 +280,41 @@ export default { modalKey: this.myModalKey, gridKey: this.grid_01, modalDataKey: this.modalDataKey, - value: [{ header: '위치정보', name: 'eccNm' }], + value: [ + { + align: 'center', + width: 30, + minWidth: 60, + formatter: (props) => { + return ``; + } + }, + { header: '위치정보', name: 'eccNm' } + ], }); }, async getGridData() { - // this.loadGrid = false; + this.loadGrid = false; - // const res = await this.postApiReturn({ - // apiKey: 'selectEccBaseInfo', - // resKey: 'eccBaseInfoData', - // sendParam: { - // blocId: this.myBindingData.blocId, - // eqpmYn: '0', - // search: this.searchWord, - // }, - // }); + const res = await this.postApiReturn({ + apiKey: 'selectEccBaseInfo', + resKey: 'eccBaseInfoData', + sendParam: { + blocId: this.myBindingData.blocId, + eqpmYn: '0', + search: this.searchWord, + }, + }); - // const setTreeData = await this.setTree({ - // gridKey: this.gridNameTree, - // treeKey: 'ECC_ID', - // 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 => ({ + const setTreeData = await this.setTree({ + gridKey: this.gridNameTree, + treeKey: 'ECC_ID', + value: res.map(item => ({ ...item, eccNm: item.eccNm, - })) - }; + })), + }); - // console.log(res); - this.setModalGridData({ modalKey: this.myModalKey, gridKey: this.grid_01, diff --git a/components/pages/ems/EqpmInfo/EqpmConstTab.vue b/components/pages/ems/EqpmInfo/EqpmConstTab.vue index 892b426..b68a035 100644 --- a/components/pages/ems/EqpmInfo/EqpmConstTab.vue +++ b/components/pages/ems/EqpmInfo/EqpmConstTab.vue @@ -96,20 +96,20 @@ export default { watch: { selectedEqpmKindId(val) { if (val) { - this.detailList[2].eqpmKindId = val; + this.detailList[1].eqpmKindId = val; } }, selectedEqpmGrpId(val) { // if(!val){ - // this.detailList[2].eqpmGrpId = ''; + // this.detailList[1].eqpmGrpId = ''; // }else{ - // this.detailList[2].eqpmGrpId = val; + // this.detailList[1].eqpmGrpId = val; // } // if(val){ - // this.detailList[2].eqpmGrpId = val; + // this.detailList[1].eqpmGrpId = val; // } // else if(val == null || val == ''){ - // this.detailList[2].eqpmGrpId = ''; + // this.detailList[1].eqpmGrpId = ''; // } }, }, @@ -238,10 +238,10 @@ export default { }, async getRowData(data, gridName) { if (data.rowStat === 'I') { - this.detailList[2].disabled = false; + this.detailList[1].disabled = false; this.detailList[3].disabled = false; } else { - this.detailList[2].disabled = true; + this.detailList[1].disabled = true; this.detailList[3].disabled = true; } @@ -257,12 +257,12 @@ export default { switch (action) { case 'add': this.$refs[this.gridName].addRow(); - this.detailList[2].disabled = false; + this.detailList[1].disabled = false; this.detailList[3].disabled = false; break; case 'remove': - this.detailList[2].disabled = true; + this.detailList[1].disabled = true; this.detailList[3].disabled = true; this.$refs[this.gridName].removeRow(); break; @@ -358,7 +358,6 @@ const myEqpmConstDetail = [ { type: 'SelectBox', label: '대상 유형', - disabled: true, cols: 6, class: 'py-3 pr-4', list: 'emMapDivList2', @@ -371,6 +370,7 @@ const myEqpmConstDetail = [ textCols: 12, iconShow: true, }, + // ================== { type: 'EgrpPysclQtyPop', labelContent: '물리량', @@ -382,7 +382,7 @@ const myEqpmConstDetail = [ pysclQtyNm: 'pysclQtyNm', }, valueNm: 'objId', - disabled: false, + disabled: true, required: true, openMode: 'CONST', cols: 6, @@ -413,6 +413,7 @@ const myEqpmConstDetail = [ textCols: 12, iconShow: true, }, + // ------------ { type: 'InputText', label: '물리량 값', diff --git a/components/pages/ems/EqpmInfo/EqpmIaoTab.vue b/components/pages/ems/EqpmInfo/EqpmIaoTab.vue index 688214a..3945a72 100644 --- a/components/pages/ems/EqpmInfo/EqpmIaoTab.vue +++ b/components/pages/ems/EqpmInfo/EqpmIaoTab.vue @@ -18,7 +18,7 @@ :innerTabGridInfo="innerTabGridInfo" /> -
+
{ - return ` - - `; + return ``; } }, { @@ -421,14 +418,11 @@ export default { ]; const myTreeColumns2 = [ { - header: '', - name: '', align: 'center', width: 30, + minWidth: 60, formatter: (props) => { - return ` - - `; + return ``; } }, { header: '역할ID', name: 'roleId', hidden: true }, @@ -674,8 +668,6 @@ export default { }, getUnAsgnRowData(data) { - console.log("------------------DEBUG-------getUnAsgnRowData:", data); - const getRowData = data; this.leftSelectRowData = Object.assign({}, getRowData); }, diff --git a/pages/comm/base/PrgmMngPage.vue b/pages/comm/base/PrgmMngPage.vue index e6d4479..7aa0ce8 100644 --- a/pages/comm/base/PrgmMngPage.vue +++ b/pages/comm/base/PrgmMngPage.vue @@ -1,5 +1,6 @@