diff --git a/assets/scss/common.scss b/assets/scss/common.scss index bac9445..b0d4fa3 100644 --- a/assets/scss/common.scss +++ b/assets/scss/common.scss @@ -12,8 +12,7 @@ html, body { - overflow: auto; - + // overflow: auto; } a { @@ -119,7 +118,7 @@ a { .v-main, .v-main__wrap, .container { - height: 100%; + // height: 100%; } .v-main__wrap>.container { @@ -144,7 +143,9 @@ a { } & .router-tab__container { - min-height: calc(100% - 72px); + overflow-y: auto; + min-height: calc(100vh - 105px); + max-height: calc(100vh - 105px); padding: 20px; } @@ -484,6 +485,10 @@ a { .container--fluid { background-color: map-deep-get($config, #{$theme}, "container-fluid"); + .menu-container { + max-height:calc(100vh - 60px); + overflow-y: auto; + } } .v-icon { @@ -529,8 +534,6 @@ a { } } - - .router-tab { .router-tab__header { background-color: map-deep-get($config, #{$theme}, "router-header"); diff --git a/assets/scss/common/button.scss b/assets/scss/common/button.scss index c13c861..7528ba3 100644 --- a/assets/scss/common/button.scss +++ b/assets/scss/common/button.scss @@ -121,6 +121,9 @@ background: map-deep-get($config, #{$theme}, "ant-btn-primary-bg"); border-color:map-deep-get($config, #{$theme}, "ant-btn-primary-bg"); color:map-deep-get($config, #{$theme}, "ant-btn-primary-color"); + &.ant-btn-background-ghost{ + color:map-deep-get($config, #{$theme}, "ant-btn-primary-bg"); + } } &.ant-btn-default { diff --git a/assets/scss/common/text.scss b/assets/scss/common/text.scss index 448ec11..535a3be 100644 --- a/assets/scss/common/text.scss +++ b/assets/scss/common/text.scss @@ -63,6 +63,12 @@ line-height: 1.25 !important; } +.custom-title-7 { + font-size: 0.875rem !important; + font-weight: 400 !important; + line-height: 22px !important; +} + .custom-title-8 { font-size: 0.75rem !important; font-weight: 700 !important; @@ -76,15 +82,15 @@ .custom-text-2 { opacity: 0.6; - font-family: SpoqaHanSansNeo; font-size: 14px; - font-weight: normal; - font-stretch: normal; - font-style: normal; line-height: 2.17; - letter-spacing: normal; - text-align: right; - color: #fff; + // font-weight: normal; + // font-stretch: normal; + // font-style: normal; + // letter-spacing: normal; + // text-align: right; + // color: #fff; + // font-family: SpoqaHanSansNeo; } .text-color--white-0 { @@ -113,6 +119,14 @@ color: map-deep-get($config, #{$theme}, "h1-title"); } + + .custom-subtitle-tab { + font-size: 1.25rem !important; + font-weight: 600 !important; + line-height: 1.25 !important; + color: map-deep-get($config, #{$theme}, "subtitle-tab"); + } + .v-dialog { .custom-title-4 { font-size: 16px !important; diff --git a/assets/scss/var.scss b/assets/scss/var.scss index 0619caf..ec638ff 100644 --- a/assets/scss/var.scss +++ b/assets/scss/var.scss @@ -171,6 +171,7 @@ $config: ( ant-btn-default-border-outlined:#424242, btn-header-select-bg: #1F1F1F, btn-header-select-color:#FFFFFFD9, + subtitle-tab: #FFFFFFA6, ), light: (w-g5: $--color-gray_555, g5-w: $--color-white, @@ -306,5 +307,6 @@ $config: ( ant-btn-default-border-outlined:#D9D9D9, btn-header-select-color:#1F1F1F, btn-header-select-bg:#FFFFFF, + subtitle-tab: #000000A6, ), ); \ No newline at end of file diff --git a/components/common/Chart.vue b/components/common/Chart.vue index c9aa472..4dcc7c1 100644 --- a/components/common/Chart.vue +++ b/components/common/Chart.vue @@ -351,25 +351,25 @@ export default { tmpChrtOp.color = light_Col; } } - console.log('ops11:',tmpChrtOp) + // console.log('ops11:',tmpChrtOp) return tmpChrtOp; }, }), }, created() { - console.log('wd data:',this.widgetData) + // console.log('wd data:',this.widgetData) }, methods: { onClick(event, instance, ECharts) { - console.log('onClick : ', event); + // console.log('onClick : ', event); this.$emit('click', event); }, onDblClick(event, instance, ECharts) { - console.log('onDblClick : ', event); + // console.log('onDblClick : ', event); this.$emit('dblclick', event); }, onRightClick(event, instance, ECharts) { - console.log('onRightClick : ', event); + // console.log('onRightClick : ', event); this.$emit('rclick', event); }, onLegendSelect(params) { diff --git a/components/common/Datepicker.vue b/components/common/Datepicker.vue index a17ec0b..0a71957 100644 --- a/components/common/Datepicker.vue +++ b/components/common/Datepicker.vue @@ -30,7 +30,7 @@ - - - diff --git a/components/common/Grid.vue b/components/common/Grid.vue index 0270b89..34c3f4b 100644 --- a/components/common/Grid.vue +++ b/components/common/Grid.vue @@ -163,7 +163,7 @@ export default { }, created() {}, async mounted() { - console.log('--------------DEBUG----gridData: ', this.gridData); + // console.log('--------------DEBUG----gridData: ', this.gridData); if (this.gridName) { this.gridInstance = this.$refs['tuigrid' + this.gridName]; @@ -666,6 +666,8 @@ export default { store.dimension.offsetLeft = offsetLeft; }, setHeight(_a,height){ + return; // setting auto height + // console.log("setHeight"); var dimension = _a.dimension; var headerHeight = dimension.headerHeight, summaryHeight = dimension.summaryHeight, tableBorderWidth = dimension.tableBorderWidth; diff --git a/components/common/button/ActionButtons.vue b/components/common/button/ActionButtons.vue index 2b61640..c5baa1a 100644 --- a/components/common/button/ActionButtons.vue +++ b/components/common/button/ActionButtons.vue @@ -3,8 +3,7 @@ - - + - - + diff --git a/components/common/button/BtnExcelDownload.vue b/components/common/button/BtnExcelDownload.vue index 1fa3fd5..abdcc36 100644 --- a/components/common/button/BtnExcelDownload.vue +++ b/components/common/button/BtnExcelDownload.vue @@ -45,7 +45,7 @@ export default { size: { type: String, require: false, - default: "middle", // small, middle, large + default: "default", // small, middle, large } }, data() { diff --git a/components/common/modal/EnrgUsePlanModiPop.vue b/components/common/modal/EnrgUsePlanModiPop.vue index 05592d6..4fa2137 100644 --- a/components/common/modal/EnrgUsePlanModiPop.vue +++ b/components/common/modal/EnrgUsePlanModiPop.vue @@ -318,7 +318,7 @@ export default { // } }, mounted(){ - this.initTest(); return; + // this.initTest(); return; }, methods: { ...mapMutations({ @@ -478,10 +478,6 @@ export default { // }) }, async setChart(){ - // test - this.initTestChart(); return; - // end test - this.loadChart = false; let xAxisData = []; let seriesData = []; diff --git a/components/common/select/SelectBlocMstr.vue b/components/common/select/SelectBlocMstr.vue index 4791955..a94cc05 100644 --- a/components/common/select/SelectBlocMstr.vue +++ b/components/common/select/SelectBlocMstr.vue @@ -2,12 +2,7 @@ diff --git a/components/common/select/SelectMttList.vue b/components/common/select/SelectMttList.vue index 52fe3f6..270fe95 100644 --- a/components/common/select/SelectMttList.vue +++ b/components/common/select/SelectMttList.vue @@ -85,6 +85,11 @@ export default { type: String, require: false, }, + required: { + type: Boolean, + require: false, + default: false + }, }, data() { return { diff --git a/components/common/select/selectCodeList.vue b/components/common/select/selectCodeList.vue index 50a2bfe..eb62857 100644 --- a/components/common/select/selectCodeList.vue +++ b/components/common/select/selectCodeList.vue @@ -11,9 +11,11 @@ + diff --git a/components/pages/ems/DataSetInfo/DataSetTagRelTab.vue b/components/pages/ems/DataSetInfo/DataSetTagRelTab.vue index bb9b80d..a8792d1 100644 --- a/components/pages/ems/DataSetInfo/DataSetTagRelTab.vue +++ b/components/pages/ems/DataSetInfo/DataSetTagRelTab.vue @@ -5,7 +5,7 @@ -
+
@@ -66,7 +66,7 @@ export default { }, data() { return { - loadGrid: true, + loadGrid: false, gridName: 'rowDataSetTagRelGrid', detailDataSetTagList: myDataSetTagDetail, dataPathMock: { @@ -128,8 +128,6 @@ export default { const gridHeight = this.$refs['gridParent'].offsetHeight - 36; const myOptions = { - // bodyHeight: gridHeight, - // minBodyHeight: gridHeight, header: { height: 28, }, @@ -137,14 +135,9 @@ export default { minRowHeight: 29, selectionUnit: 'row', editingEvent: 'click', - // columnOptions: { - // resizable: true, - // minWidth: 100 - // } }; this.setGridOption({ gridKey: this.gridName, - // value: myOptions value: Object.assign(Utility.defaultGridOption(gridHeight), myOptions), }); @@ -204,16 +197,11 @@ export default { value: myColumns, }); - this.loadGrid = true; + this.$nextTick(() => { + this.loadGrid = true; + }) }, async getRowData(data, gridName) { - // if (data.rowStat === 'I') { - // this.detailDataSetTagList[0].disabled = false; - // this.detailDataSetTagList[1].disabled = false; - // } else { - // this.detailDataSetTagList[0].disabled = true; - // this.detailDataSetTagList[1].disabled = true; - // } this.setGridSelectData({ gridKey: gridName, gridSelect: true, diff --git a/components/pages/ems/EqpmInfo/EqpmAddInfoTab.vue b/components/pages/ems/EqpmInfo/EqpmAddInfoTab.vue index 88294ec..edd14e0 100644 --- a/components/pages/ems/EqpmInfo/EqpmAddInfoTab.vue +++ b/components/pages/ems/EqpmInfo/EqpmAddInfoTab.vue @@ -20,7 +20,6 @@ :editorGrid="true" :innerTabGridInfo="innerTabGridInfo" @getRowsData="getRowData" - :dataPath="dataPathMock" />
@@ -52,7 +51,7 @@ export default { }, data() { return { - loadGrid: true, + loadGrid: false, gridName: 'rowDetailGrid', rowKey: null, edtingFinishFlag: 'Y', @@ -343,7 +342,9 @@ export default { value: myColumns, }); - this.loadGrid = true; + this.$nextTick(() => { + this.loadGrid = true; + }); }, async btnActions(action) { let dataArr = []; diff --git a/components/pages/ems/EqpmInfo/EqpmConstTab.vue b/components/pages/ems/EqpmInfo/EqpmConstTab.vue index acce195..06d78f0 100644 --- a/components/pages/ems/EqpmInfo/EqpmConstTab.vue +++ b/components/pages/ems/EqpmInfo/EqpmConstTab.vue @@ -6,7 +6,7 @@
+ @getRowsData="getRowData" :innerTabGridInfo="innerTabGridInfo" />
{ + this.loadGrid = true; + }); }, async getRowData(data, gridName) { if (data.rowStat === 'I') { diff --git a/components/pages/ems/EqpmInfo/EqpmIaoTab.vue b/components/pages/ems/EqpmInfo/EqpmIaoTab.vue index de40290..0073f3b 100644 --- a/components/pages/ems/EqpmInfo/EqpmIaoTab.vue +++ b/components/pages/ems/EqpmInfo/EqpmIaoTab.vue @@ -19,7 +19,6 @@ :parentPrgmId="parentPrgmId" @getRowsData="getRowData" :innerTabGridInfo="innerTabGridInfo" - :dataPath="dataPathMock" />
@@ -60,7 +59,7 @@ export default { }, data() { return { - loadGrid: true, + loadGrid: false, gridName: 'rowEqpmIaoGrid', detailList: myEqpmIaoDetail, @@ -297,7 +296,9 @@ export default { value: myColumns, }); - this.loadGrid = true; + this.$nextTick(() => { + this.loadGrid = true; + }); }, async getRowData(data, gridName) { if (data.rowStat === 'I') { diff --git a/components/pages/ems/ReadObjInfo/ReadObjAddInfoTab.vue b/components/pages/ems/ReadObjInfo/ReadObjAddInfoTab.vue index 394f981..d009a7e 100644 --- a/components/pages/ems/ReadObjInfo/ReadObjAddInfoTab.vue +++ b/components/pages/ems/ReadObjInfo/ReadObjAddInfoTab.vue @@ -4,7 +4,7 @@ class="d-flex justify-space-between align-center" style="height: 80px;" > - 검침 대상 추가 정보 + 검침 대상 추가 정보
@@ -55,23 +53,10 @@ export default { }, data() { return { - loadGrid: true, + loadGrid: false, gridName: 'rowDetailGrid', rowKey: null, edtingFinishFlag: 'Y', - dataPathMock: { - "rowDetailGrid": { - column: [ - { header: '검침 대상 ID', name: 'readObjId', align: 'left' }, - { header: '검침 대상 명', name: 'readObjNm', align: 'left' }, - { header: '검침 대상 유형', name: 'readObjKind', align: 'left' }, - { header: '그룹', name: 'grpCd', align: 'left' }, - ], - data: dataPathDataExample, - defaultRow: dataPathDataExample, - option: {} - } - }, }; }, computed: { @@ -276,7 +261,7 @@ export default { { header: '검침 대상 ID', name: 'readObjId', hidden: true }, { header: '추가 정보', - name: 'addInfoId', + name: 'addInfoId', align: 'left', formatter({ value }) { let retVal = ''; @@ -461,25 +446,4 @@ export default { search() {}, }, }; -const dataPathDataExample = [ - { - readObjId: 'OBJ001', - readObjNm: '서울 본사', - readObjKind: 'TYPE01', - grpCd: 'GRP01', - }, - { - readObjId: 'OBJ002', - readObjNm: '부산 지사', - readObjKind: 'TYPE02', - grpCd: 'GRP02', - }, - { - readObjId: 'OBJ003', - readObjNm: '대전 공장', - readObjKind: 'TYPE03', - grpCd: 'GRP01', - } -]; - diff --git a/layouts/default.vue b/layouts/default.vue index e784ca0..87ee665 100644 --- a/layouts/default.vue +++ b/layouts/default.vue @@ -112,13 +112,6 @@ }" /> - @@ -148,14 +141,6 @@ - @@ -322,19 +307,6 @@ - diff --git a/layouts/default_bak.vue b/layouts/default_bak.vue deleted file mode 100644 index 6f7365d..0000000 --- a/layouts/default_bak.vue +++ /dev/null @@ -1,809 +0,0 @@ - - - - diff --git a/layouts/default_bk.vue b/layouts/default_bk.vue deleted file mode 100644 index ae0aae0..0000000 --- a/layouts/default_bk.vue +++ /dev/null @@ -1,928 +0,0 @@ - - - - diff --git a/mixin/global.js b/mixin/global.js index ae513fc..7631640 100644 --- a/mixin/global.js +++ b/mixin/global.js @@ -58,7 +58,7 @@ export default { layoutInit() { if (this.$refs.searchFilter) { const searchFilterHeight = this.$refs.searchFilter.offsetHeight; - this.$refs.contents.style.height = `calc(100% - ${searchFilterHeight}px)`; + this.$refs.contents.style.minHeight = `calc(100% - ${searchFilterHeight + 20}px)`; } }, //init() {} diff --git a/nuxt.config.js b/nuxt.config.js index d517910..0bd0350 100644 --- a/nuxt.config.js +++ b/nuxt.config.js @@ -49,7 +49,7 @@ module.exports = { // Auto import components: https://go.nuxtjs.dev/config-components components: true, - + // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules buildModules: [ // https://go.nuxtjs.dev/vuetify diff --git a/pages/comm/auth/MenuRoleMngPage.vue b/pages/comm/auth/MenuRoleMngPage.vue index 1721950..93a5135 100644 --- a/pages/comm/auth/MenuRoleMngPage.vue +++ b/pages/comm/auth/MenuRoleMngPage.vue @@ -22,8 +22,7 @@ customClass="input-large" /> - - + @@ -31,8 +30,8 @@ - - + + 역할 리스트 @@ -53,7 +52,7 @@ - + 역할 메뉴별 권한 @@ -70,7 +69,7 @@ :style="{ minHeight: '36px' }" >[미배정]메뉴리스트 -
+
-
+
{ + return ``; + } + }, { header: '메뉴명', name: 'menuNm', @@ -415,6 +425,17 @@ export default { }, ]; const myTreeColumns2 = [ + { + header: '', + name: '', + align: 'center', + width: 30, + formatter: (props) => { + return ``; + } + }, { header: '역할ID', name: 'roleId', hidden: true }, { header: '메뉴ID', name: 'menuId', hidden: true }, { header: '메뉴명', name: 'menuNm', minWidth: '235' }, diff --git a/pages/comm/auth/RoleMngPage.vue b/pages/comm/auth/RoleMngPage.vue index 1bb2763..930c5d7 100644 --- a/pages/comm/auth/RoleMngPage.vue +++ b/pages/comm/auth/RoleMngPage.vue @@ -67,7 +67,6 @@ :gridName="gridName" :parentPrgmId="myPrgmId" @getRowsData="getRowData" - :dataPath="dataPathMock" />
@@ -132,22 +131,8 @@ export default { return { myPrgmId: myPrgmId, gridName: 'rowGrid', - loadGrid: true, + loadGrid: false, detailList: myDetail, - dataPathMock : { - rowGrid: { - column: [ - { header: '추가 정보 그룹', name: 'addGrpId', align: 'left' }, - { header: '추가 정보 ID', name: 'addInfoId', align: 'left' }, - { header: '추가 정보 명', name: 'addInfoNm', align: 'left' }, - { header: 'Data 형식', name: 'addInfoDataKind', align: 'center' }, - { header: '사용여부', name: 'useFg', align: 'center' }, - ], - data: dataMockExample, - defaultRow: dataMockExample, - option: {}, - }, - }, }; }, computed: { @@ -518,43 +503,4 @@ const myDetail = [ placeholder: '시스템 자동입력', }, ]; - -const dataMockExample = [ - { - addGrpId: 'GRP001', - addInfoId: 'INFO001', - addInfoNm: '온도 센서', - addInfoDataKind: 'DATA01', - useFg: true, - }, - { - addGrpId: 'GRP002', - addInfoId: 'INFO002', - addInfoNm: '압력 센서', - addInfoDataKind: 'DATA02', - useFg: false, - }, - { - addGrpId: 'GRP003', - addInfoId: 'INFO003', - addInfoNm: '압력 센서', - addInfoDataKind: 'DATA03', - useFg: false, - }, - { - addGrpId: 'GRP004', - addInfoId: 'INFO004', - addInfoNm: '압력 센서', - addInfoDataKind: 'DATA04', - useFg: false, - }, - { - addGrpId: 'GRP005', - addInfoId: 'INFO005', - addInfoNm: '압력 센서', - addInfoDataKind: 'DATA05', - useFg: false, - }, -]; - diff --git a/pages/comm/base/BatchLogMngPage.vue b/pages/comm/base/BatchLogMngPage.vue index 53b73dc..f82e108 100644 --- a/pages/comm/base/BatchLogMngPage.vue +++ b/pages/comm/base/BatchLogMngPage.vue @@ -4,28 +4,24 @@ - - + + - + - + - + - - - + + + + @@ -63,11 +57,10 @@
@@ -140,56 +133,10 @@ export default { data() { return { myPrgmId: myPrgmId, - loadGrid: true, + loadGrid: false, gridName: 'rowGrid', // rowGridOrigin: [], detailList: myDetail, - dataPathMock : { - 'rowGrid': { - column: [ - { header: 'No.', name: 'batchLogSeq', align: 'center', width: 100 }, - { header: '배치ID', name: 'batchId', align: 'center', width: 100 }, - { header: '배치명', name: 'batchNm', align: 'left', width: 150 }, - { header: '실행 일자', name: 'execDt', align: 'center', width: 80 }, - { - header: '실행 결과', - name: 'execRsltCd', - align: 'center', - width: 80, - // formatter({ value }) { - // let retVal = ''; - // const newValue = _this.pageData.execRsltCdList.filter( - // item => item.commCd == value, - // ); - // if (newValue.length > 0) { - // retVal = newValue[0].commCdNm; - // } - // return retVal; - // }, - }, // "1": 프로그램, "2": 팝업 - { header: '실행 로그', name: 'execLogCont', minWidth: 150 }, - { - header: '배치 시작 일시', - name: 'batchStrtDttm', - align: 'center', - width: 160, - }, - { - header: '배치 종료 일시', - name: 'batchEndDttm', - align: 'center', - width: 160, - }, - { header: '등록자NO', name: 'regUserNo', width: 120 }, - { header: '등록일시', name: 'regDttm', align: 'center', width: 160 }, - { header: '수정자NO', name: 'procUserNo', width: 120 }, - { header: '수정일시', name: 'procDttm', align: 'center', width: 160 }, - ], - data: dataMockExample, - defaultRow: dataMockExample, - option: {}, - }, - }, }; }, computed: { @@ -248,14 +195,6 @@ export default { init() { // this.layoutInit(); this.gridInit(); - - // _this.pageData = { - // execRsltCdList: [ - // { commCd: '1', commCdNm: '성공' }, - // { commCd: '2', commCdNm: '실패' }, - // ], - // }; - }, // layoutInit() { // const searchFilterHeight = this.$refs.searchFilter.offsetHeight; @@ -368,13 +307,10 @@ export default { } }); }, - // async getRowData(data) { - async getRowData() { - console.log("something") + async getRowData(data) { this.setPageData({ - // rowGridSelectKey: data.rowKey, - rowGridSelectKey: 1, - rowGridSelectData: fakeRowData, + rowGridSelectKey: data.rowKey, + rowGridSelectData: data, }); }, compareData(type, newDt) { @@ -481,86 +417,16 @@ const defaultData = { }, }; -const dataMockExample = [ - { - batchLogSeq: 1, - batchId: 'BATCH001', - batchNm: '일일 데이터 백업', - execDt: '2025-07-15', - execRsltCd: '1', // sẽ được formatter thành "성공" hoặc tương tự - execLogCont: '백업 완료. 오류 없음.', - batchStrtDttm: '2025-07-15 01:00:00', - batchEndDttm: '2025-07-15 01:30:00', - regUserNo: 'admin01', - regDttm: '2025-07-15 01:00:00', - procUserNo: 'admin02', - procDttm: '2025-07-15 01:35:00', - }, - { - batchLogSeq: 2, - batchId: 'BATCH002', - batchNm: '월간 리포트 생성', - execDt: '2025-07-01', - execRsltCd: '2', - execLogCont: '리포트 생성 중 오류 발생: 파일 접근 실패.', - batchStrtDttm: '2025-07-01 03:00:00', - batchEndDttm: '2025-07-01 03:10:00', - regUserNo: 'reportUser', - regDttm: '2025-07-01 03:00:00', - procUserNo: 'admin03', - procDttm: '2025-07-01 03:15:00', - }, - { - batchLogSeq: 3, - batchId: 'BATCH003', - batchNm: '사용자 통계 갱신', - execDt: '2025-07-14', - execRsltCd: '1', - execLogCont: '통계 갱신 완료.', - batchStrtDttm: '2025-07-14 23:00:00', - batchEndDttm: '2025-07-14 23:20:00', - regUserNo: 'statUser', - regDttm: '2025-07-14 23:00:00', - procUserNo: 'admin01', - procDttm: '2025-07-14 23:25:00', - }, -]; - -const fakeRowData = { - rowKey: 1, - batchLogSeq: 1, - batchId: 'BATCH001', - batchNm: '일일 데이터 백업', - execDt: '2025-07-15', - execRsltCd: '1', - execLogCont: JSON.stringify({ - session: { - userNo: 'admin01', - userNm: '관리자', - comId: 'SKCC', - locale: 'ko_KR', - }, - batch: { - comId: 'SKCC', - totStdDt: '20230110', - }, - }), - batchStrtDttm: '2025-07-15 01:00:00', - batchEndDttm: '2025-07-15 01:30:00', - regUserNo: 'admin01', - regDttm: '2025-07-15 01:00:00', - procUserNo: 'admin02', - procDttm: '2025-07-15 01:35:00', -}; - - const myDetail = [ { type: 'TextArea', valueNm: 'execLogCont', readonly: true, cols: 12, - class: 'py-2 transparent', + class: 'py-2', }, ]; + diff --git a/pages/comm/base/NoticeMngPage.vue b/pages/comm/base/NoticeMngPage.vue index 4b80a90..e7ecfbb 100644 --- a/pages/comm/base/NoticeMngPage.vue +++ b/pages/comm/base/NoticeMngPage.vue @@ -1,5 +1,6 @@