From 7e9bd540ed87ab6494be50ff349c3dd2660eda32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguyen=20Van=20Luan/=28Nguyen=20Van=20Luan=29/=ED=98=84?= =?UTF-8?q?=EC=9E=A5=EB=8C=80=EB=A6=AC=EC=9D=B8/SK?= <20074472@skcc.com> Date: Tue, 19 Aug 2025 12:32:34 +0900 Subject: [PATCH 1/6] update code --- assets/scss/common.scss | 7 +++++- components/common/Grid.vue | 27 ---------------------- components/common/ThemeSwitch.vue | 2 ++ components/common/modal/EvtObjPop.vue | 22 +++++++++++++----- components/pages/ems/EccInfo/EccIaoTab.vue | 10 +++++--- 5 files changed, 31 insertions(+), 37 deletions(-) diff --git a/assets/scss/common.scss b/assets/scss/common.scss index 8a7fb6d..0ae7289 100644 --- a/assets/scss/common.scss +++ b/assets/scss/common.scss @@ -231,12 +231,17 @@ a { .v-application.#{$theme}-mode { min-width: 1000px; - .ant-checkbox-wrapper.ant-checkbox-wrapper-disabled, + .ant-checkbox-wrapper.ant-checkbox-wraBapper-disabled, .ant-checkbox-disabled .ant-checkbox-input { cursor: default !important; } + .ant-checkbox-disabled .ant-checkbox-inner + { + background-color: #f5f5f5 !important; + } + .v-list-item__title { font-family: var(--desktop-normal-font-family, "Inter-Regular", sans-serif) !important; } diff --git a/components/common/Grid.vue b/components/common/Grid.vue index f36a390..bed541b 100644 --- a/components/common/Grid.vue +++ b/components/common/Grid.vue @@ -160,7 +160,6 @@ export default { }, created() { }, async mounted() { - // console.log(this.dataPath); if (this.gridName) { this.gridInstance = this.$refs['tuigrid' + this.gridName]; @@ -272,12 +271,9 @@ export default { }); }, focusChangeEvt(e) { - // console.log('focusChangeEvt1...') if (this.preventFocusChangeEvent(e)) { - // console.log('prevent focusChangeEvt') return; } - // console.log('focusChangeEvt2...') // cell 선택시 row 선택 method if (e.rowKey > -1) { this.$emit( @@ -292,7 +288,6 @@ export default { this.sendSelectedRowData(e.rowKey); }, startEditing(e) { - // console.log('startEditing1...') if (this.preventFocusChangeEvent(e)) { return; } @@ -302,7 +297,6 @@ export default { return; } - // console.log('startEditing2...') if (this.editorGrid && e.rowKey >= 0) { this.editorStartKey = e.rowKey; this.gridInstance.invoke('startEditing', e.rowKey, e.columnName, 'row-modify'); @@ -316,7 +310,6 @@ export default { } }, async editingFinish(e) { - // console.log("Editing END E::", e); // editor 간 이동시 수정되는 문제 수정 // e.rowEditingFg: grid의 한 row를 한번에 수정할 시 각각의 cell 마다 click 이벤트가 발생하지 않아 this.editorStartKey값이 제대로 입력 되지 않는 경우를 대비하여 만든 Fg if (this.editorGrid) { @@ -339,7 +332,6 @@ export default { rowKey: rowIdxKey, }; const isBaseRow = this.isBaseDataRow(rowIdxKey); - // console.log("END E::", rowIdxKey, e); const rowStat = this.gridInstance.invoke('getRow', rowIdxKey).rowStat; if (rowStat == 'D') { this.gridInstance.invoke( @@ -520,10 +512,7 @@ export default { return item.rowKey == data.rowKey; }); let count = 0; - // console.log("dataKeyArr", dataKeyArr); - // console.log("selectedRowData", selectedRowData); for (let i = 0; i < dataKeyArr.length; i++) { - // console.log(dataKeyArr[i], selectedRowData[dataKeyArr[i]], rowData[dataKeyArr[i]]); if (selectedRowData[dataKeyArr[i]] == rowData[dataKeyArr[i]]) { count++; } @@ -593,7 +582,6 @@ export default { delete item.rowKey; return item; }); - // console.log("dataArr::", dataArr, saveTargetRows); return dataArr; }, getData() { @@ -606,7 +594,6 @@ export default { return this.gridInstance.invoke('getCheckedRowKeys'); }, setCheck(list) { - // console.log("setCheck:: ", list); list.map(item => this.gridInstance.invoke('check', item)); }, refreshLayout() { @@ -616,14 +603,11 @@ export default { // this.gridInstance.invoke('refreshLayout'); }, refreshGrid() { - // console.log("refreshLayout",this.$refs['tuigrid' + this.gridName]) var store = this.$refs['tuigrid' + this.gridName].gridInstance.store; var containerEl = this.$refs['tuigrid' + this.gridName].$el; // var containerEl = document.querySelector('.tui-grid-container') var parentEl = containerEl.parentElement; - // console.log("---------DEBUG---containerEl: ",containerEl); - // console.log('---------DEBUG---parentEl: ', parentEl) // function refreshLayout(store, containerEl, parentEl) { var dimension = store.dimension; var autoWidth = dimension.autoWidth, fitToParentHeight = dimension.fitToParentHeight; @@ -636,11 +620,6 @@ export default { this.setWidth(store, clientWidth, autoWidth); // store.dimension.autoWidth = autoWidth; // store.dimension.width = clientWidth; - // console.log("###",getComputedStyle(parentEl)); - // console.log("fitToParentHeight : ",fitToParentHeight); - // console.log("parentEl : ",parentEl) - // console.log("parentEl.clientHeight" , parentEl.clientHeight) - // console.log("clientHeight : ",clientHeight); if (parentEl && parentEl.clientHeight !== clientHeight) { var _b = getComputedStyle(parentEl), paddingTop = _b.paddingTop, paddingBottom = _b.paddingBottom; this.setHeight(store, parentEl.clientHeight - (parseFloat(paddingTop) + parseFloat(paddingBottom))); @@ -648,25 +627,20 @@ export default { // } }, setOffsetTop(store, offsetTop) { - // console.log("---------DEBUG---setOffsetTop: "); store.dimension.offsetTop = offsetTop; }, setWidth(_a, width, autoWidth) { - // console.log("---------DEBUG---setWidth: "); var dimension = _a.dimension; dimension.autoWidth = autoWidth; dimension.width = width; }, setHeaderHeight(store, height) { - // console.log("---------DEBUG---setHeaderHeight: "); store.dimension.headerHeight = height; }, setOffsetLeft(store, offsetLeft) { - // console.log("---------DEBUG---setOffsetLeft: "); store.dimension.offsetLeft = offsetLeft; }, setHeight(_a, height) { - // console.log("---------DEBUG---setHeight: "); var dimension = _a.dimension; var headerHeight = dimension.headerHeight, summaryHeight = dimension.summaryHeight, tableBorderWidth = dimension.tableBorderWidth; dimension.bodyHeight = height - headerHeight - summaryHeight - tableBorderWidth; @@ -695,7 +669,6 @@ export default { }); }, // resetData() { - // // console.log("resetData = ", this.tuigridProps.data); // this.$refs.tuigrid.invoke("resetData", this.tuigridProps.data); // }, }, diff --git a/components/common/ThemeSwitch.vue b/components/common/ThemeSwitch.vue index d976a9d..53edd9c 100644 --- a/components/common/ThemeSwitch.vue +++ b/components/common/ThemeSwitch.vue @@ -13,6 +13,7 @@ export default { data() { return { mode: null, + isLoading: false }; }, computed: { @@ -28,6 +29,7 @@ export default { setThemeChange: 'setThemeChange', }), themeChange() { + this.isLoading = true; this.mode = !this.mode; this.$vuetify.theme.isDark = this.mode; this.setThemeChange(this.mode); diff --git a/components/common/modal/EvtObjPop.vue b/components/common/modal/EvtObjPop.vue index 1b8ba9f..c9b3b47 100644 --- a/components/common/modal/EvtObjPop.vue +++ b/components/common/modal/EvtObjPop.vue @@ -8,12 +8,22 @@ - + + + diff --git a/components/pages/ems/EccInfo/EccIaoTab.vue b/components/pages/ems/EccInfo/EccIaoTab.vue index 1698c59..c3cf2ab 100644 --- a/components/pages/ems/EccInfo/EccIaoTab.vue +++ b/components/pages/ems/EccInfo/EccIaoTab.vue @@ -97,6 +97,7 @@ export default { }, watch: { selectedObjId(val) { + console.log(val); if (val === 'TAG') { this.detailList[1].class = 'd-none '; this.detailList[2].class = 'd-block pl-4 mt-2'; @@ -270,12 +271,14 @@ export default { async getRowData(data, gridName) { if (data.rowStat === 'I') { this.detailList[0].disabled = false; + this.detailList[1].disabled = false; this.detailList[2].disabled = false; this.detailList[3].disabled = false; this.detailList[4].disabled = false; this.detailList[5].disabled = false; } else { this.detailList[0].disabled = true; + this.detailList[1].disabled = true; this.detailList[2].disabled = true; this.detailList[3].disabled = true; this.detailList[4].disabled = true; @@ -294,6 +297,7 @@ export default { case 'add': this.$refs[this.gridName].addRow(); this.detailList[0].disabled = false; + this.detailList[1].disabled = false; this.detailList[2].disabled = false; this.detailList[3].disabled = false; this.detailList[4].disabled = false; @@ -376,7 +380,6 @@ const myDetail = [ { type: 'SelectBox', label: '대상 유형', - disabled: false, cols: 6, class: 'pr-4 py-2 mt-1', list: 'emMapDivList', @@ -392,6 +395,7 @@ const myDetail = [ { type: 'ReadPlcPop', label: '대상 항목', + modalTitle:'대상 항목', valueNm: 'objId', disabled: true, cols: 6, @@ -400,8 +404,7 @@ const myDetail = [ bindNm: 'objNm', labelCols: 12, textCols: 12, - iconShow: true, - noText: true, + disableContent: true, iconShow: true, }, { @@ -480,6 +483,7 @@ const myDetail = [ disabledFg: 'objKind', labelCols: 12, textCols: 12, + iconShow: true, }, { type: 'InputText', From a5c35809fabbd567655a4aeaa0e48c1f8e2e7484 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguyen=20Van=20Luan/=28Nguyen=20Van=20Luan=29/=ED=98=84?= =?UTF-8?q?=EC=9E=A5=EB=8C=80=EB=A6=AC=EC=9D=B8/SK?= <20074472@skcc.com> Date: Tue, 19 Aug 2025 12:45:19 +0900 Subject: [PATCH 2/6] refactor code --- components/common/ThemeSwitch.vue | 6 ++---- components/pages/ems/EccInfo/EccIaoTab.vue | 1 - 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/components/common/ThemeSwitch.vue b/components/common/ThemeSwitch.vue index 53edd9c..4c0f31f 100644 --- a/components/common/ThemeSwitch.vue +++ b/components/common/ThemeSwitch.vue @@ -13,7 +13,7 @@ export default { data() { return { mode: null, - isLoading: false + // isLoading: false }; }, computed: { @@ -29,12 +29,10 @@ export default { setThemeChange: 'setThemeChange', }), themeChange() { - this.isLoading = true; + // this.isLoading = true; this.mode = !this.mode; this.$vuetify.theme.isDark = this.mode; this.setThemeChange(this.mode); - // console.log(this.mode) - // console.log(this.$vuetify.theme.isDark) }, }, }; diff --git a/components/pages/ems/EccInfo/EccIaoTab.vue b/components/pages/ems/EccInfo/EccIaoTab.vue index c3cf2ab..9f01994 100644 --- a/components/pages/ems/EccInfo/EccIaoTab.vue +++ b/components/pages/ems/EccInfo/EccIaoTab.vue @@ -97,7 +97,6 @@ export default { }, watch: { selectedObjId(val) { - console.log(val); if (val === 'TAG') { this.detailList[1].class = 'd-none '; this.detailList[2].class = 'd-block pl-4 mt-2'; From 06f16f82ffc3b7c6993bbd8c61bdf33cf4234b15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguyen=20Van=20Luan/=28Nguyen=20Van=20Luan=29/=ED=98=84?= =?UTF-8?q?=EC=9E=A5=EB=8C=80=EB=A6=AC=EC=9D=B8/SK?= <20074472@skcc.com> Date: Tue, 19 Aug 2025 16:41:01 +0900 Subject: [PATCH 3/6] update code --- assets/scss/common.scss | 3 ++- assets/scss/var.scss | 6 ++++++ pages/comm/base/BatchLogMngPage.vue | 9 ++++++++- pages/ems/base/EnrgCostCenterMngPage.vue | 2 +- 4 files changed, 17 insertions(+), 3 deletions(-) diff --git a/assets/scss/common.scss b/assets/scss/common.scss index 0ae7289..d9d9ee8 100644 --- a/assets/scss/common.scss +++ b/assets/scss/common.scss @@ -239,7 +239,8 @@ a { .ant-checkbox-disabled .ant-checkbox-inner { - background-color: #f5f5f5 !important; + background-color: map-deep-get($config, #{$theme}, "ant-checkbox-disabled-bg") !important; + border: map-deep-get($config, #{$theme}, "ant-checkbox-disabled-border") !important; } .v-list-item__title { diff --git a/assets/scss/var.scss b/assets/scss/var.scss index 01242e8..8433246 100644 --- a/assets/scss/var.scss +++ b/assets/scss/var.scss @@ -185,6 +185,9 @@ $config: ( paging-background: #212224, paging-text: #FFFFFFD9, icon-datepicker-color: #FFFFFF73, + ant-checkbox-disabled-bg: #FFFFFF14, + ant-checkbox-disabled-border: #424242, + ant-checkbox-border-hover: #1668DC ), light: (w-g5: $--color-gray_555, g5-w: $--color-white, @@ -333,5 +336,8 @@ $config: ( paging-background: #FFFFFF, paging-text: #000000E0, icon-datepicker-color: #00000073, + ant-checkbox-disabled-bg: #0000000A, + ant-checkbox-disabled-border: #D9D9D9, + ant-checkbox-border-hover: #1677FF, ), ); \ No newline at end of file diff --git a/pages/comm/base/BatchLogMngPage.vue b/pages/comm/base/BatchLogMngPage.vue index e2e7ec4..c38d89e 100644 --- a/pages/comm/base/BatchLogMngPage.vue +++ b/pages/comm/base/BatchLogMngPage.vue @@ -441,4 +441,11 @@ const myDetail = [ rows: 3 }, ]; - \ No newline at end of file + + \ No newline at end of file diff --git a/pages/ems/base/EnrgCostCenterMngPage.vue b/pages/ems/base/EnrgCostCenterMngPage.vue index 93d7f58..9695026 100644 --- a/pages/ems/base/EnrgCostCenterMngPage.vue +++ b/pages/ems/base/EnrgCostCenterMngPage.vue @@ -1028,4 +1028,4 @@ const myDetail = [ value: { '1': true, '0': false }, }, ]; - \ No newline at end of file + From 2fcc719721ec0640fed2d8e0d754b12019185485 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nguyen=20Van=20Luan/=28Nguyen=20Van=20Luan=29/=ED=98=84?= =?UTF-8?q?=EC=9E=A5=EB=8C=80=EB=A6=AC=EC=9D=B8/SK?= <20074472@skcc.com> Date: Tue, 19 Aug 2025 16:44:01 +0900 Subject: [PATCH 4/6] update --- assets/scss/var.scss | 2 -- 1 file changed, 2 deletions(-) diff --git a/assets/scss/var.scss b/assets/scss/var.scss index 8433246..0de4a20 100644 --- a/assets/scss/var.scss +++ b/assets/scss/var.scss @@ -187,7 +187,6 @@ $config: ( icon-datepicker-color: #FFFFFF73, ant-checkbox-disabled-bg: #FFFFFF14, ant-checkbox-disabled-border: #424242, - ant-checkbox-border-hover: #1668DC ), light: (w-g5: $--color-gray_555, g5-w: $--color-white, @@ -338,6 +337,5 @@ $config: ( icon-datepicker-color: #00000073, ant-checkbox-disabled-bg: #0000000A, ant-checkbox-disabled-border: #D9D9D9, - ant-checkbox-border-hover: #1677FF, ), ); \ No newline at end of file From d405e5bf6d2be17d669eb6954e7dfa43d141636d Mon Sep 17 00:00:00 2001 From: Michael <20074391@skcc.com> Date: Tue, 19 Aug 2025 17:27:35 +0900 Subject: [PATCH 5/6] Update paging disable style + Fix bug line chart + Fix paging function hide grid --- assets/scss/common/pagination.scss | 14 +++++++++++++- assets/scss/var.scss | 2 ++ pages/ems/base/DashboardPage.vue | 21 +++++++++++++-------- pages/ems/effc/EqpmIndMntrPage.vue | 12 +++++++----- 4 files changed, 35 insertions(+), 14 deletions(-) diff --git a/assets/scss/common/pagination.scss b/assets/scss/common/pagination.scss index 052c243..423503a 100644 --- a/assets/scss/common/pagination.scss +++ b/assets/scss/common/pagination.scss @@ -10,13 +10,25 @@ margin-top: 10px; } + .ant-pagination-disabled { + color: map-deep-get($config, #{$theme}, "paging-disable") !important;; + cursor: not-allowed !important; + pointer-events: none; /* disables hover and click */ + background-color: transparent; + } + + .ant-pagination-disabled:hover { + color: map-deep-get($config, #{$theme}, "paging-disable") !important;; + background-color: transparent !important; + } + .ant-pagination-item, .ant-pagination-prev, .ant-pagination-next { // border: none !important; // box-shadow: none !important; background-color: map-deep-get($config, #{$theme}, "paging-background") !important; - color: map-deep-get($config, #{$theme}, "paging-text") !important; + color: map-deep-get($config, #{$theme}, "paging-text"); border: none; .ant-pagination-item-link { diff --git a/assets/scss/var.scss b/assets/scss/var.scss index 0de4a20..26df9e4 100644 --- a/assets/scss/var.scss +++ b/assets/scss/var.scss @@ -184,6 +184,7 @@ $config: ( ant-btn-popup-border: #424242, paging-background: #212224, paging-text: #FFFFFFD9, + paging-disable: #FFFFFF40, icon-datepicker-color: #FFFFFF73, ant-checkbox-disabled-bg: #FFFFFF14, ant-checkbox-disabled-border: #424242, @@ -334,6 +335,7 @@ $config: ( ant-btn-popup-border: #D9D9D9, paging-background: #FFFFFF, paging-text: #000000E0, + paging-disable: #00000040, icon-datepicker-color: #00000073, ant-checkbox-disabled-bg: #0000000A, ant-checkbox-disabled-border: #D9D9D9, diff --git a/pages/ems/base/DashboardPage.vue b/pages/ems/base/DashboardPage.vue index f3425cc..50956fd 100644 --- a/pages/ems/base/DashboardPage.vue +++ b/pages/ems/base/DashboardPage.vue @@ -635,15 +635,15 @@ export default { this.setChart04Data(chart04Dat); let chartOption2 = getLineChartOption({ - xAxisData: this.$store.state.pageData[myPrgmId][this.chart_02].xAxisData, - seriesData: this.$store.state.pageData[myPrgmId][this.chart_02].seriesData, + xAxisData: this.$store.state.pageData[myPrgmId][this.chart_02].xAxis.data, + seriesData: this.$store.state.pageData[myPrgmId][this.chart_02].series, isDarkMode: this.isDarkMode, }); this.$store.state.pageData[myPrgmId][this.chart_02] = chartOption2 let chartOption5 = getLineChartOption({ - xAxisData: this.$store.state.pageData[myPrgmId][this.chart_05].xAxisData, - seriesData: this.$store.state.pageData[myPrgmId][this.chart_05].seriesData, + xAxisData: this.$store.state.pageData[myPrgmId][this.chart_05].xAxis.data, + seriesData: this.$store.state.pageData[myPrgmId][this.chart_05].series, isDarkMode: this.isDarkMode, }); this.$store.state.pageData[myPrgmId][this.chart_05] = chartOption5 @@ -754,7 +754,7 @@ export default { changeGrid: async function (pageNum, limit) { this.page = pageNum; this.limit = limit; - await this.getGridData(); + await this.getGridData(true); }, async search() { await new Promise((resolve) => setTimeout(resolve, 1500)); @@ -766,7 +766,7 @@ export default { await this.getTodayEfficiencyStatus(); await this.getTodayNgTopTen(); await this.getCompareEqpmTGdChart(); - await this.getGridData(); + await this.getGridData(false); } }, async gridInit() { @@ -944,8 +944,13 @@ export default { this.loadGrid = true; // this.getGridData(); }, - async getGridData() { - this.loadGrid = false; + async getGridData(isPaging) { + + // Do not hide grid when trigger paging function + if (!isPaging) { + this.loadGrid = false; + } + // Get total records of grid const totalRes = await this.postApiReturn({ apiKey: "selectIssueGdIdxDataPageTotal", diff --git a/pages/ems/effc/EqpmIndMntrPage.vue b/pages/ems/effc/EqpmIndMntrPage.vue index b1ba5f4..0c00d5e 100644 --- a/pages/ems/effc/EqpmIndMntrPage.vue +++ b/pages/ems/effc/EqpmIndMntrPage.vue @@ -282,13 +282,13 @@ export default { changeGrid: async function (pageNum, limit) { this.page = pageNum; this.limit = limit; - this.search(); + this.getGridData(true); }, async init() { await this.getSelectValueList(); await this.setQueryParams(); this.gridInit(); - await this.getGridData(); + await this.getGridData(false); this.initedFlag = true; }, @@ -588,8 +588,10 @@ export default { value: columnList, }); }, - async getGridData() { - this.loadGrid = false; + async getGridData(isPaging) { + if(!isPaging) { + this.loadGrid = false; + } this.enrgUseMainIdxDesc = []; var apiKey = null; var apiKey2 = null; @@ -651,7 +653,7 @@ export default { this.makeTooltip(); }, async search() { - await this.getGridData(); + await this.getGridData(false); }, async makeTooltip() { var gdIdxList = [ From c1911f2ebcb2747acd6613dc5adc0f4202b62ab5 Mon Sep 17 00:00:00 2001 From: Michael <20074391@skcc.com> Date: Tue, 19 Aug 2025 18:09:24 +0900 Subject: [PATCH 6/6] Rename default s11 card when there're no data --- pages/ems/effc/TagTrndPage.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/ems/effc/TagTrndPage.vue b/pages/ems/effc/TagTrndPage.vue index ed7e0a6..560c545 100644 --- a/pages/ems/effc/TagTrndPage.vue +++ b/pages/ems/effc/TagTrndPage.vue @@ -153,7 +153,7 @@
{{ - "ICHEON.HVAC.EQP_HT_CH004.UT_HT_CH201.CHI_AMP_1A_PV" + 'TAG를 선택해주세요' }}