Compare commits
2 Commits
dev-dungtv
...
b2e50837fd
Author | SHA1 | Date | |
---|---|---|---|
b2e50837fd | |||
88b59f5f33 |
@ -486,7 +486,7 @@ a {
|
|||||||
.container--fluid {
|
.container--fluid {
|
||||||
background-color: map-deep-get($config, #{$theme}, "container-fluid");
|
background-color: map-deep-get($config, #{$theme}, "container-fluid");
|
||||||
.menu-container {
|
.menu-container {
|
||||||
height:calc(100vh - 60px);
|
max-height:calc(100vh - 60px);
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -134,11 +134,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&-body-container{
|
&-body-container{
|
||||||
border-right: 0;
|
border-right: 1px solid;
|
||||||
// border-right-color: map-deep-get($config,
|
border-right-color: map-deep-get($config,
|
||||||
// #{$theme},
|
#{$theme},
|
||||||
// "tui-grid-cell-borderColor"
|
"tui-grid-cell-borderColor"
|
||||||
// );
|
);
|
||||||
width: auto !important;
|
width: auto !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -151,27 +151,24 @@
|
|||||||
width: $scrollbar-width !important;
|
width: $scrollbar-width !important;
|
||||||
height: $scrollbar-width !important;
|
height: $scrollbar-width !important;
|
||||||
-webkit-appearance: initial;
|
-webkit-appearance: initial;
|
||||||
// background-color: map-deep-get($config,
|
background-color: map-deep-get($config,
|
||||||
// #{$theme},
|
#{$theme},
|
||||||
// "tui-grid-cell-borderColor"
|
"scrollbar-track"
|
||||||
// ) !important;
|
) !important;
|
||||||
background-color: rgba(0, 0, 0, 0) !important;
|
|
||||||
border-radius: 3px !important;
|
border-radius: 3px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
& ::-webkit-scrollbar-track {
|
& ::-webkit-scrollbar-track {
|
||||||
// background-color: map-deep-get($config,
|
background-color: map-deep-get($config,
|
||||||
// #{$theme},
|
#{$theme},
|
||||||
// "tui-grid-cell-borderColor"
|
"scrollbar-track"
|
||||||
// ) !important;
|
) !important;
|
||||||
background-color: rgba(0, 0, 0, 0) !important;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
& ::-webkit-scrollbar-thumb {
|
& ::-webkit-scrollbar-thumb {
|
||||||
width: 50px !important;
|
width: 50px !important;
|
||||||
height: 50px !important;
|
height: 50px !important;
|
||||||
background-color: map-deep-get($config, #{$theme}, "scrollbar-thumb");
|
background-color: map-deep-get($config, #{$theme}, "scrollbar-thumb");
|
||||||
// background-color: rgba(0, 0, 0, 0);
|
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -198,7 +195,6 @@
|
|||||||
&-scrollbar-right-top {
|
&-scrollbar-right-top {
|
||||||
background-color: rgba(0, 0, 0, 0);
|
background-color: rgba(0, 0, 0, 0);
|
||||||
border: none;
|
border: none;
|
||||||
display: none;
|
|
||||||
// background-color: map-deep-get(
|
// background-color: map-deep-get(
|
||||||
// $config,
|
// $config,
|
||||||
// #{$theme},
|
// #{$theme},
|
||||||
@ -225,13 +221,12 @@
|
|||||||
width: $scrollbar-width !important;
|
width: $scrollbar-width !important;
|
||||||
height: $scrollbar-width !important;
|
height: $scrollbar-width !important;
|
||||||
// display: none !important;
|
// display: none !important;
|
||||||
border-color: map-deep-get($config, #{$theme}, "cardBackground");
|
border-color: map-deep-get($config, #{$theme}, "scrollbar-track");
|
||||||
background-color: map-deep-get($config, #{$theme}, "cardBackground");
|
background-color: map-deep-get($config, #{$theme}, "scrollbar-track");
|
||||||
// border: none !important;
|
// border: none !important;
|
||||||
// bottom: -1px;
|
// bottom: -1px;
|
||||||
// right: -2px;
|
// right: -2px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
// display: none;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&-scrollbar-frozen-border,
|
&-scrollbar-frozen-border,
|
||||||
@ -241,9 +236,13 @@
|
|||||||
border-color: transparent !important;
|
border-color: transparent !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
&-body-area,
|
// &-body-area {
|
||||||
|
// overflow: auto !important;
|
||||||
|
// }
|
||||||
|
|
||||||
&-container,
|
&-container,
|
||||||
&-layer-state,
|
&-layer-state,
|
||||||
|
&-body-area,
|
||||||
&-summary-area,
|
&-summary-area,
|
||||||
&-cell {
|
&-cell {
|
||||||
background-color: map-deep-get($config,
|
background-color: map-deep-get($config,
|
||||||
@ -255,36 +254,23 @@
|
|||||||
"tui-grid-border-vertical-color"
|
"tui-grid-border-vertical-color"
|
||||||
);
|
);
|
||||||
|
|
||||||
// &-current-row{
|
&-current-row{
|
||||||
// }
|
td {
|
||||||
td.row-selected {
|
.custom-radio {
|
||||||
.custom-radio {
|
.radio-mark{
|
||||||
background-color: map-deep-get($config,
|
border-color: #1677ff;
|
||||||
#{$theme},
|
background-color: #fff;
|
||||||
"ant-btn-primary-color"
|
&::after {
|
||||||
);
|
content: "";
|
||||||
.radio-mark{
|
position: absolute;
|
||||||
border-color: map-deep-get($config,
|
top: 50%;
|
||||||
#{$theme},
|
left: 50%;
|
||||||
"arow-line-color"
|
transform: translate(-50%, -50%);
|
||||||
);
|
height: 11px;
|
||||||
background-color: map-deep-get($config,
|
width: 11px;
|
||||||
#{$theme},
|
border-radius: 50%;
|
||||||
"arow-line-btn-bg-color"
|
background-color: #1677ff;
|
||||||
);
|
}
|
||||||
&::after {
|
|
||||||
content: "";
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
height: 11px;
|
|
||||||
width: 11px;
|
|
||||||
border-radius: 50%;
|
|
||||||
background-color: map-deep-get($config,
|
|
||||||
#{$theme},
|
|
||||||
"arow-line-color"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -316,8 +302,8 @@
|
|||||||
&-header-area,
|
&-header-area,
|
||||||
&-cell-header {
|
&-cell-header {
|
||||||
// font-family: inherit;
|
// font-family: inherit;
|
||||||
// font-style: Semi Bold;
|
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
|
font-style: Semi Bold;
|
||||||
background-color: map-deep-get($config,
|
background-color: map-deep-get($config,
|
||||||
#{$theme},
|
#{$theme},
|
||||||
"tui-grid-header-backgroundColor"
|
"tui-grid-header-backgroundColor"
|
||||||
@ -334,13 +320,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
&-header-area {
|
&-header-area {
|
||||||
// background-color: none;
|
background-color: none;
|
||||||
border: none;
|
border: none;
|
||||||
margin-right: 0 !important;
|
|
||||||
background-color: map-deep-get($config,
|
|
||||||
#{$theme},
|
|
||||||
"tui-grid-cell-backgroundColor"
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&-row-odd,
|
&-row-odd,
|
||||||
|
@ -188,7 +188,7 @@
|
|||||||
transform: translateY(-50%);
|
transform: translateY(-50%);
|
||||||
height: 18px;
|
height: 18px;
|
||||||
width: 18px;
|
width: 18px;
|
||||||
// background-color: white;
|
background-color: white;
|
||||||
border: 2px solid #ccc;
|
border: 2px solid #ccc;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
transition: all 0.2s ease;
|
transition: all 0.2s ease;
|
||||||
@ -263,6 +263,9 @@
|
|||||||
"v-input-backgroundColor"
|
"v-input-backgroundColor"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
&:not(.v-input--radio-group, .v-input--checkbox) {
|
&:not(.v-input--radio-group, .v-input--checkbox) {
|
||||||
.v-input__slot {
|
.v-input__slot {
|
||||||
background-color: map-deep-get($config,
|
background-color: map-deep-get($config,
|
||||||
@ -369,17 +372,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.radio-mark {
|
|
||||||
background-color: map-deep-get($config,
|
|
||||||
#{$theme},
|
|
||||||
"ant-btn-primary-color"
|
|
||||||
);
|
|
||||||
border-color: map-deep-get($config,
|
|
||||||
#{$theme},
|
|
||||||
"v-input-textarea-border"
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.v-radio {
|
.v-radio {
|
||||||
|
@ -106,7 +106,7 @@ $config: (
|
|||||||
tui-grid-header-backgroundColor: #2a2b2d,
|
tui-grid-header-backgroundColor: #2a2b2d,
|
||||||
tui-grid-header-color: #FFFFFFD9,
|
tui-grid-header-color: #FFFFFFD9,
|
||||||
tui-grid-border-horziontal-color: #212224,
|
tui-grid-border-horziontal-color: #212224,
|
||||||
tui-grid-border-vertical-color: #FFFFFF0F,
|
tui-grid-border-vertical-color: #212224,
|
||||||
tui-grid-cell-backgroundColor: #212224,
|
tui-grid-cell-backgroundColor: #212224,
|
||||||
tui-grid-cell-color: #fff,
|
tui-grid-cell-color: #fff,
|
||||||
tui-grid-cell-insert-color: #13636c,
|
tui-grid-cell-insert-color: #13636c,
|
||||||
|
@ -4,14 +4,14 @@
|
|||||||
:data="chkGridData"
|
:data="chkGridData"
|
||||||
:columns="chkGridColumns"
|
:columns="chkGridColumns"
|
||||||
:options="chkGridOptions"
|
:options="chkGridOptions"
|
||||||
@mousedown="onMousedown"
|
@mousedown="focusChangeEvt"
|
||||||
@click="startEditing"
|
@click="startEditing"
|
||||||
@editingFinish="editingFinish"
|
@editingFinish="editingFinish"
|
||||||
@dblclick="dblClick"
|
@dblclick="dblClick"
|
||||||
@mouseover="mouseoverEvent"
|
@mouseover="mouseoverEvent"
|
||||||
@mouseout="mouseoutEvent"
|
@mouseout="mouseoutEvent"
|
||||||
@focusChange="focusChangeEvt"
|
|
||||||
/>
|
/>
|
||||||
|
<!-- @focusChange="focusChangeEvt" -->
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { mapState, mapMutations } from 'vuex';
|
import { mapState, mapMutations } from 'vuex';
|
||||||
@ -184,13 +184,13 @@ export default {
|
|||||||
}),
|
}),
|
||||||
// true : 현재 행 혹은 연결된 그리드가 수정중인 상태
|
// true : 현재 행 혹은 연결된 그리드가 수정중인 상태
|
||||||
checkGridState() {
|
checkGridState() {
|
||||||
const rowStatList = ['I', 'U', 'D'];
|
var rowStatList = ['I', 'U', 'D'];
|
||||||
const row = this.gridInstance.invoke('getFocusedCell');
|
var row = this.gridInstance.invoke('getFocusedCell');
|
||||||
|
|
||||||
if (row) {
|
if (row) {
|
||||||
const rowData = this.gridInstance.invoke('getRow', row.rowKey);
|
var rowData = this.gridInstance.invoke('getRow', row.rowKey);
|
||||||
if (rowData) {
|
if (rowData) {
|
||||||
const rowStat = rowData['rowStat'];
|
var rowStat = rowData['rowStat'];
|
||||||
if (rowStatList.includes(rowStat)) {
|
if (rowStatList.includes(rowStat)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -198,8 +198,8 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (this.preventFocusChangeEventTargetGridList) {
|
if (this.preventFocusChangeEventTargetGridList) {
|
||||||
for (let gridInstance of this.preventFocusChangeEventTargetGridList) {
|
for (var gridInstance of this.preventFocusChangeEventTargetGridList) {
|
||||||
const dataArr = gridInstance.save();
|
var dataArr = gridInstance.save();
|
||||||
|
|
||||||
if (dataArr.length > 0) {
|
if (dataArr.length > 0) {
|
||||||
return true;
|
return true;
|
||||||
@ -251,11 +251,9 @@ export default {
|
|||||||
this.gridInstance.invoke('check', rowData.rowKey, instance);
|
this.gridInstance.invoke('check', rowData.rowKey, instance);
|
||||||
},
|
},
|
||||||
setSelectionRange(rowKey) {
|
setSelectionRange(rowKey) {
|
||||||
// console.log("------------------DEBUG-------setSelectionRange:", rowKey);
|
|
||||||
const rowDatas = this.gridInstance.invoke('getData');
|
const rowDatas = this.gridInstance.invoke('getData');
|
||||||
rowDatas.forEach(item => {
|
rowDatas.forEach(item => {
|
||||||
if (item.rowKey == rowKey) {
|
if (item.rowKey == rowKey) {
|
||||||
// console.log("------------------DEBUG-------setSelectionRange---item:", item);
|
|
||||||
this.gridInstance.invoke(
|
this.gridInstance.invoke(
|
||||||
'addRowClassName',
|
'addRowClassName',
|
||||||
item.rowKey,
|
item.rowKey,
|
||||||
@ -270,10 +268,6 @@ export default {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
onMousedown(evt) {
|
|
||||||
// console.log("------------------DEBUG-------onMousedown:", evt);
|
|
||||||
this.focusChangeEvt(evt);
|
|
||||||
},
|
|
||||||
focusChangeEvt(e) {
|
focusChangeEvt(e) {
|
||||||
// console.log("------------------DEBUG-------focusChangeEvt:", e);
|
// console.log("------------------DEBUG-------focusChangeEvt:", e);
|
||||||
// console.log('focusChangeEvt1...')
|
// console.log('focusChangeEvt1...')
|
||||||
@ -296,7 +290,7 @@ export default {
|
|||||||
this.sendSelectedRowData(e.rowKey);
|
this.sendSelectedRowData(e.rowKey);
|
||||||
},
|
},
|
||||||
startEditing(e) {
|
startEditing(e) {
|
||||||
// console.log("------------------DEBUG-------startEditing:", e);
|
// console.log("------------DEBUG-----startEditing----", e);
|
||||||
// console.log('startEditing1...')
|
// console.log('startEditing1...')
|
||||||
if (this.preventFocusChangeEvent(e)) {
|
if (this.preventFocusChangeEvent(e)) {
|
||||||
// console.log('prevent startEditing')
|
// console.log('prevent startEditing')
|
||||||
@ -323,7 +317,6 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
async editingFinish(e) {
|
async editingFinish(e) {
|
||||||
// console.log('------------------DEBUG-------editingFinish:', e);
|
|
||||||
// console.log("Editing END E::", e);
|
// console.log("Editing END E::", e);
|
||||||
// editor 간 이동시 수정되는 문제 수정
|
// editor 간 이동시 수정되는 문제 수정
|
||||||
// e.rowEditingFg: grid의 한 row를 한번에 수정할 시 각각의 cell 마다 click 이벤트가 발생하지 않아 this.editorStartKey값이 제대로 입력 되지 않는 경우를 대비하여 만든 Fg
|
// e.rowEditingFg: grid의 한 row를 한번에 수정할 시 각각의 cell 마다 click 이벤트가 발생하지 않아 this.editorStartKey값이 제대로 입력 되지 않는 경우를 대비하여 만든 Fg
|
||||||
@ -685,7 +678,6 @@ export default {
|
|||||||
? this.gridInstance.invoke('getFocusedCell').rowKey
|
? this.gridInstance.invoke('getFocusedCell').rowKey
|
||||||
: eventRowKey;
|
: eventRowKey;
|
||||||
var rowData = this.gridInstance.invoke('getRow', rowKey);
|
var rowData = this.gridInstance.invoke('getRow', rowKey);
|
||||||
// console.log('------------------DEBUG-------sendSelectedRowData:', {eventRowKey, rowKey});
|
|
||||||
this.$emit('sendSelectedRowStatInfo', rowData);
|
this.$emit('sendSelectedRowStatInfo', rowData);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -31,8 +31,8 @@ export default {
|
|||||||
this.mode = !this.mode;
|
this.mode = !this.mode;
|
||||||
this.$vuetify.theme.isDark = this.mode;
|
this.$vuetify.theme.isDark = this.mode;
|
||||||
this.setThemeChange(this.mode);
|
this.setThemeChange(this.mode);
|
||||||
// console.log(this.mode)
|
console.log(this.mode)
|
||||||
// console.log(this.$vuetify.theme.isDark)
|
console.log(this.$vuetify.theme.isDark)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -125,7 +125,7 @@ export default {
|
|||||||
modifyValue(e) {
|
modifyValue(e) {
|
||||||
let val = e.target.value.replace(/[^-.0-9]/g, '');
|
let val = e.target.value.replace(/[^-.0-9]/g, '');
|
||||||
|
|
||||||
// console.log('val : ', val);
|
console.log('val : ', val);
|
||||||
|
|
||||||
if(this.item.min != undefined && parseFloat(val) < this.item.min){
|
if(this.item.min != undefined && parseFloat(val) < this.item.min){
|
||||||
val = this.item.min;
|
val = this.item.min;
|
||||||
@ -134,7 +134,7 @@ export default {
|
|||||||
if(this.item.max != undefined && parseFloat(val) > this.item.max){
|
if(this.item.max != undefined && parseFloat(val) > this.item.max){
|
||||||
val = this.item.max;
|
val = this.item.max;
|
||||||
}
|
}
|
||||||
// console.log('val2 : ', val);
|
console.log('val2 : ', val);
|
||||||
|
|
||||||
this.textValue = val;
|
this.textValue = val;
|
||||||
// this.textValue = this.validateNumber(val);
|
// this.textValue = this.validateNumber(val);
|
||||||
|
@ -152,12 +152,12 @@ export default {
|
|||||||
const snarData = this.searchParam.isMulti
|
const snarData = this.searchParam.isMulti
|
||||||
? this.searchParam.snarInfoList
|
? this.searchParam.snarInfoList
|
||||||
: this.searchParam.snarInfo;
|
: this.searchParam.snarInfo;
|
||||||
// console.log('this.searchParam.isMulti', this.searchParam.isMulti);
|
console.log('this.searchParam.isMulti', this.searchParam.isMulti);
|
||||||
// console.log(
|
console.log(
|
||||||
// 'this.searchParam.snarInfoList',
|
'this.searchParam.snarInfoList',
|
||||||
// this.searchParam.snarInfoList,
|
this.searchParam.snarInfoList,
|
||||||
// );
|
);
|
||||||
// console.log('this.searchParam.snarInfo', this.searchParam.snarInfo);
|
console.log('this.searchParam.snarInfo', this.searchParam.snarInfo);
|
||||||
if (Array.isArray(snarData)) {
|
if (Array.isArray(snarData)) {
|
||||||
if (snarData.length > 0) {
|
if (snarData.length > 0) {
|
||||||
for (const item of snarData) {
|
for (const item of snarData) {
|
||||||
|
@ -394,7 +394,7 @@ export default {
|
|||||||
params: {},
|
params: {},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
// console.log('statusCd', statusCd);
|
console.log('statusCd', statusCd);
|
||||||
if (statusCd.data.retnCd == 0) {
|
if (statusCd.data.retnCd == 0) {
|
||||||
const params2 = {
|
const params2 = {
|
||||||
simulationId: statusCd.data.dataset.simulId,
|
simulationId: statusCd.data.dataset.simulId,
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
<span class="custom-title-4">{{ option.modalTitle }}</span>
|
<span class="custom-title-4">{{ option.modalTitle }}</span>
|
||||||
<a-button icon="close" type="text" @click="dialogOpenCloseEvent(dialog)"></a-button>
|
<a-button icon="close" type="text" @click="dialogOpenCloseEvent(dialog)"></a-button>
|
||||||
</v-card-title>
|
</v-card-title>
|
||||||
|
|
||||||
<div class="px-6 py-4 pt-0">
|
<div class="px-6 py-4 pt-0">
|
||||||
<v-row align="center">
|
<v-row align="center">
|
||||||
<v-col :cols="5">
|
<v-col :cols="5">
|
||||||
@ -47,10 +46,11 @@
|
|||||||
v-model="searchWord" @keyup.enter="search"><template v-slot:append>
|
v-model="searchWord" @keyup.enter="search"><template v-slot:append>
|
||||||
<!-- Custom SVG icon -->
|
<!-- Custom SVG icon -->
|
||||||
<v-icon>$icoSearch</v-icon>
|
<v-icon>$icoSearch</v-icon>
|
||||||
|
|
||||||
</template></v-text-field>
|
</template></v-text-field>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
<v-col :cols="3" class="text-right">
|
<v-col cols="3" class="text-right">
|
||||||
<a-button icon="search" type="primary" @click="search()"
|
<a-button icon="search" type="primary" @click="search()"
|
||||||
class="search-button">조회</a-button>
|
class="search-button">조회</a-button>
|
||||||
<!-- <v-btn :ripple="false" @click="initSearch()">
|
<!-- <v-btn :ripple="false" @click="initSearch()">
|
||||||
@ -59,27 +59,19 @@
|
|||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="12">
|
|
||||||
<div style="height: 50vh;">
|
|
||||||
<div ref="modalGridParent" class="h100 py-4">
|
|
||||||
<component :is="loadGrid && dialog ? 'Grid' : null" :gridName="grid_01"
|
|
||||||
:dataPath="searchParam.pyscModalData.egrpPysclQtyPop" :parentPrgmId="parentPrgmId"
|
|
||||||
@getRowsData="getRowData" @dblClick="setUpdate($event)" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</v-col>
|
|
||||||
</v-row>
|
</v-row>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- <div style="height: 50vh;">
|
<div :style="'height: calc(50vh)'">
|
||||||
<div ref="modalGridParent" class="h100 px-6 py-4">
|
<div ref="modalGridParent" class="h100 px-6 py-4">
|
||||||
<component :is="loadGrid && dialog ? 'Grid' : null" :gridName="grid_01"
|
<component :is="loadGrid && dialog ? 'Grid' : null" :gridName="grid_01"
|
||||||
:dataPath="searchParam.pyscModalData.egrpPysclQtyPop" :parentPrgmId="parentPrgmId"
|
:dataPath="searchParam.pyscModalData.egrpPysclQtyPop" :parentPrgmId="parentPrgmId"
|
||||||
@getRowsData="getRowData" @dblClick="setUpdate($event)" />
|
@getRowsData="getRowData" @dblClick="setUpdate($event)" />
|
||||||
</div>
|
</div>
|
||||||
</div> -->
|
</div>
|
||||||
|
|
||||||
<v-card-actions class="px-6 py-4 d-flex align-center justify-end">
|
<v-card-actions class="px-6 py-4 d-flex align-center justify-end">
|
||||||
|
|
||||||
<a-button :ripple="false" @click="dialogOpenCloseEvent(dialog)"
|
<a-button :ripple="false" @click="dialogOpenCloseEvent(dialog)"
|
||||||
class="mr-2">닫기</a-button>
|
class="mr-2">닫기</a-button>
|
||||||
<a-button v-if="item.closeBtnFg || false" :ripple="false" type="danger" ghost danger
|
<a-button v-if="item.closeBtnFg || false" :ripple="false" type="danger" ghost danger
|
||||||
|
@ -286,8 +286,8 @@ export default {
|
|||||||
// Row selection config
|
// Row selection config
|
||||||
rowSelection: {
|
rowSelection: {
|
||||||
onChange: (selectedRowKeys, selectedRows) => {
|
onChange: (selectedRowKeys, selectedRows) => {
|
||||||
// console.log('Selected Row Keys:', selectedRowKeys);
|
console.log('Selected Row Keys:', selectedRowKeys);
|
||||||
// console.log('Selected Rows:', selectedRows);
|
console.log('Selected Rows:', selectedRows);
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -332,7 +332,7 @@ export default {
|
|||||||
// this.getRowGridData();
|
// this.getRowGridData();
|
||||||
// },
|
// },
|
||||||
searchFab() {
|
searchFab() {
|
||||||
// console.log('tttttttttttt')
|
console.log('tttttttttttt')
|
||||||
// this.filteredData = this.data.filter(item => {
|
// this.filteredData = this.data.filter(item => {
|
||||||
// const matchGrp = this.eqpmGrpSelected ? item.group === this.eqpmGrpSelected : true;
|
// const matchGrp = this.eqpmGrpSelected ? item.group === this.eqpmGrpSelected : true;
|
||||||
// const matchFab = this.localFabSelected ? item.fab === this.localFabSelected : true;
|
// const matchFab = this.localFabSelected ? item.fab === this.localFabSelected : true;
|
||||||
|
@ -126,7 +126,7 @@ export default {
|
|||||||
async chkDialog(val) {
|
async chkDialog(val) {
|
||||||
if (val) {
|
if (val) {
|
||||||
// 열릴 때
|
// 열릴 때
|
||||||
// console.log('dsfafds');
|
console.log('dsfafds');
|
||||||
await this.getData();
|
await this.getData();
|
||||||
// console.log("chkDialog: ", val);
|
// console.log("chkDialog: ", val);
|
||||||
// if(this.searchParam.selecUserList.length > 0){
|
// if(this.searchParam.selecUserList.length > 0){
|
||||||
|
@ -22,29 +22,37 @@
|
|||||||
outlined
|
outlined
|
||||||
:hide-details="true"
|
:hide-details="true"
|
||||||
>
|
>
|
||||||
<!-- Custom SVG icon -->
|
|
||||||
<template v-slot:append>
|
<template v-slot:append>
|
||||||
<v-icon>$icoSearch</v-icon>
|
<!-- Custom SVG icon -->
|
||||||
|
<v-icon>$icoSearch</v-icon>
|
||||||
</template>
|
</template>
|
||||||
</v-text-field>
|
</v-text-field>
|
||||||
</v-col>
|
</v-col>
|
||||||
|
|
||||||
<v-dialog v-model="dialog" scrollable width="700px">
|
<v-dialog v-model="dialog" scrollable width="700px">
|
||||||
<v-card style="height: 100%">
|
<v-card style="height: 100%">
|
||||||
<v-card-title class="px-6 py-4 d-flex align-center justify-space-between">
|
<v-card-title class="pa-5 d-flex align-center justify-space-between">
|
||||||
<span class="custom-title-4">{{ option.modalTitle }}</span>
|
<span class="custom-title-4">{{ option.modalTitle }}</span>
|
||||||
<a-button icon="close" type="text" @click="dialogOpenCloseEvent(dialog)"></a-button>
|
<v-btn
|
||||||
|
icon
|
||||||
|
tile
|
||||||
|
:ripple="false"
|
||||||
|
@click="dialogOpenCloseEvent(dialog)"
|
||||||
|
>
|
||||||
|
<v-icon>mdi-close</v-icon>
|
||||||
|
</v-btn>
|
||||||
</v-card-title>
|
</v-card-title>
|
||||||
<div class="pa-5">
|
<div class="pa-5">
|
||||||
<v-row align="center" no-gutters>
|
<v-row align="center" no-gutters>
|
||||||
<v-col :cols="12">
|
<v-col :cols="3">
|
||||||
<label for="" class="search-box-label">
|
<label for="" class="search-box-label">
|
||||||
<!-- <v-icon x-small color="primary" class="mr-1">mdi-record-circle</v-icon> -->
|
<v-icon x-small color="primary" class="mr-1"
|
||||||
<v-icon small :class="['mr-1 icon-blue']">$icoBulletPoint</v-icon>
|
>mdi-record-circle</v-icon
|
||||||
|
>
|
||||||
검색
|
검색
|
||||||
</label>
|
</label>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="9">
|
<v-col :cols="5">
|
||||||
<v-text-field
|
<v-text-field
|
||||||
append-icon="mdi-magnify"
|
append-icon="mdi-magnify"
|
||||||
class="v-input__custom"
|
class="v-input__custom"
|
||||||
@ -55,19 +63,21 @@
|
|||||||
></v-text-field>
|
></v-text-field>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
<v-col :cols="3" class="text-right">
|
<v-col cols="4" class="text-right">
|
||||||
<a-button type="primary" @click="search()" icon="search">
|
<v-btn :ripple="false" @click="search()">
|
||||||
조회
|
조회
|
||||||
</a-button>
|
</v-btn>
|
||||||
<a-button @click="initSearch()">
|
<v-btn :ripple="false" @click="initSearch()">
|
||||||
초기화
|
초기화
|
||||||
</a-button>
|
</v-btn>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
</div>
|
</div>
|
||||||
<!-- <v-divider></v-divider> -->
|
<v-divider></v-divider>
|
||||||
<div style="height: 429px;" class="py-3 px-5">
|
<!-- <div :style="'height: calc(65vh)'"> -->
|
||||||
<div ref="modalGridParent" class="h100 w100">
|
<div :style="'height: 429px;'">
|
||||||
|
<!-- <div :style="{ height: 'calc(100% - 213px)' }"> -->
|
||||||
|
<div ref="modalGridParent" class="h100 w100 py-3">
|
||||||
<component
|
<component
|
||||||
:is="loadGrid && dialog ? 'Grid' : null"
|
:is="loadGrid && dialog ? 'Grid' : null"
|
||||||
:gridName="grid_01"
|
:gridName="grid_01"
|
||||||
@ -78,9 +88,11 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<v-card-actions class="pa-5 d-flex align-center justify-end">
|
<v-card-actions class="pa-5 d-flex align-center justify-center">
|
||||||
<a-button class="mr-2" @click="dialogOpenCloseEvent(dialog)">닫기</a-button>
|
<v-btn :ripple="false" @click="setUpdate($event)">확인</v-btn>
|
||||||
<a-button type="primary" @click="setUpdate($event)">확인</a-button>
|
<v-btn :ripple="false" @click="dialogOpenCloseEvent(dialog)"
|
||||||
|
>닫기</v-btn
|
||||||
|
>
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-dialog>
|
</v-dialog>
|
||||||
@ -324,7 +336,7 @@ export default {
|
|||||||
}))
|
}))
|
||||||
};
|
};
|
||||||
|
|
||||||
// console.log(res);
|
console.log(res);
|
||||||
|
|
||||||
this.setModalGridData({
|
this.setModalGridData({
|
||||||
modalKey: this.myModalKey,
|
modalKey: this.myModalKey,
|
||||||
@ -383,31 +395,7 @@ var FtnPlcFormPop = {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
// @each $theme in dark, light {
|
|
||||||
// @include theme($theme);
|
|
||||||
// .v-application.#{$theme}-mode {
|
|
||||||
// .v-input--is-readonly {
|
|
||||||
// border-color: map-deep-get($config,
|
|
||||||
// #{$theme},
|
|
||||||
// "v-input-readonly-border-color"
|
|
||||||
// );
|
|
||||||
// ::v-deep {
|
|
||||||
// &:not(.v-input--radio-group, .v-input--checkbox) {
|
|
||||||
// .v-input__slot {
|
|
||||||
// background-color: map-deep-get($config,
|
|
||||||
// #{$theme},
|
|
||||||
// "v-input-backgroundColor"
|
|
||||||
// ) !important;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
::v-deep {
|
::v-deep {
|
||||||
|
|
||||||
.v-dialog {
|
.v-dialog {
|
||||||
overflow-y: hidden !important;
|
overflow-y: hidden !important;
|
||||||
}
|
}
|
||||||
@ -430,4 +418,26 @@ var FtnPlcFormPop = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@each $theme in dark, light {
|
||||||
|
.v-application.#{$theme}-mode {
|
||||||
|
.v-dialog {
|
||||||
|
.v-card {
|
||||||
|
&__title {
|
||||||
|
color: map-deep-get($color, 'white', '0');
|
||||||
|
@if $theme == dark {
|
||||||
|
background-color: #2d3355;
|
||||||
|
.v-btn {
|
||||||
|
background-color: #2d3355;
|
||||||
|
}
|
||||||
|
} @else {
|
||||||
|
background-color: #3f4d7d;
|
||||||
|
.v-btn {
|
||||||
|
background-color: #3f4d7d;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
@ -294,10 +294,10 @@ export default {
|
|||||||
if (this.searchParam.energyCd < 0) {
|
if (this.searchParam.energyCd < 0) {
|
||||||
roiIdVal = null;
|
roiIdVal = null;
|
||||||
} else {
|
} else {
|
||||||
// console.log(
|
console.log(
|
||||||
// 'this.searchParam.energyList[this.searchParam.energyCd]',
|
'this.searchParam.energyList[this.searchParam.energyCd]',
|
||||||
// this.searchParam.energyList[this.searchParam.energyCd],
|
this.searchParam.energyList[this.searchParam.energyCd],
|
||||||
// );
|
);
|
||||||
roiIdVal = this.searchParam.energyList[this.searchParam.energyCd + 1]
|
roiIdVal = this.searchParam.energyList[this.searchParam.energyCd + 1]
|
||||||
.cd;
|
.cd;
|
||||||
}
|
}
|
||||||
|
@ -239,13 +239,13 @@ export default {
|
|||||||
this.selectedData.eccNm = '';
|
this.selectedData.eccNm = '';
|
||||||
|
|
||||||
if (this.bindOption === null) {
|
if (this.bindOption === null) {
|
||||||
// console.log('this.bindOption is null...');
|
console.log('this.bindOption is null...');
|
||||||
this.setPageData({
|
this.setPageData({
|
||||||
modalEccId: '',
|
modalEccId: '',
|
||||||
modalEccNm: '',
|
modalEccNm: '',
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
// console.log('this.bindOption is not null...');
|
console.log('this.bindOption is not null...');
|
||||||
this.setPageData({
|
this.setPageData({
|
||||||
[this.bindOption.eccId]: '',
|
[this.bindOption.eccId]: '',
|
||||||
[this.bindOption.eccNm]: '',
|
[this.bindOption.eccNm]: '',
|
||||||
@ -296,12 +296,12 @@ export default {
|
|||||||
? localStorage.getItem(this.parentPrgmId + 'ModalEccNm')
|
? localStorage.getItem(this.parentPrgmId + 'ModalEccNm')
|
||||||
: '',
|
: '',
|
||||||
});
|
});
|
||||||
// console.log(
|
console.log(
|
||||||
// 'localStorage.getItem(this.parentPrgmId + "ModalEccNm") : ',
|
'localStorage.getItem(this.parentPrgmId + "ModalEccNm") : ',
|
||||||
// localStorage.getItem(this.parentPrgmId + 'ModalEccNm') != null
|
localStorage.getItem(this.parentPrgmId + 'ModalEccNm') != null
|
||||||
// ? localStorage.getItem(this.parentPrgmId + 'ModalEccNm')
|
? localStorage.getItem(this.parentPrgmId + 'ModalEccNm')
|
||||||
// : '',
|
: '',
|
||||||
// );
|
);
|
||||||
this.textFieldData =
|
this.textFieldData =
|
||||||
localStorage.getItem(this.parentPrgmId + 'ModalEccNm') != null
|
localStorage.getItem(this.parentPrgmId + 'ModalEccNm') != null
|
||||||
? localStorage.getItem(this.parentPrgmId + 'ModalEccNm')
|
? localStorage.getItem(this.parentPrgmId + 'ModalEccNm')
|
||||||
|
@ -296,25 +296,25 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
strtDt(val) {
|
strtDt(val) {
|
||||||
// console.log('strtDt : ', val);
|
console.log('strtDt : ', val);
|
||||||
this.checkStrtAndEndDateTime('start');
|
this.checkStrtAndEndDateTime('start');
|
||||||
if (this.startDatepickerInstance3) {
|
if (this.startDatepickerInstance3) {
|
||||||
this.startDatepickerInstance3.setDate(new Date(this.endDt));
|
this.startDatepickerInstance3.setDate(new Date(this.endDt));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
endDt(val) {
|
endDt(val) {
|
||||||
// console.log('endDt : ', val);
|
console.log('endDt : ', val);
|
||||||
this.checkStrtAndEndDateTime('end');
|
this.checkStrtAndEndDateTime('end');
|
||||||
if (this.startDatepickerInstance) {
|
if (this.startDatepickerInstance) {
|
||||||
this.startDatepickerInstance.setDate(new Date(this.strtDt));
|
this.startDatepickerInstance.setDate(new Date(this.strtDt));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
strtHh(val) {
|
strtHh(val) {
|
||||||
// console.log('strtHh : ', val);
|
console.log('strtHh : ', val);
|
||||||
this.checkStrtAndEndDateTime('start');
|
this.checkStrtAndEndDateTime('start');
|
||||||
},
|
},
|
||||||
endHh(val) {
|
endHh(val) {
|
||||||
// console.log('endHh : ', val);
|
console.log('endHh : ', val);
|
||||||
this.checkStrtAndEndDateTime('end');
|
this.checkStrtAndEndDateTime('end');
|
||||||
},
|
},
|
||||||
strtMm(val) {
|
strtMm(val) {
|
||||||
|
@ -253,7 +253,7 @@ export default {
|
|||||||
readObjid: this.searchParam.energyCd,
|
readObjid: this.searchParam.energyCd,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
// console.log('getTreeData : ', res);
|
console.log('getTreeData : ', res);
|
||||||
// this.treeData = res;
|
// this.treeData = res;
|
||||||
// const ROOT = res[0].plcCd;
|
// const ROOT = res[0].plcCd;
|
||||||
const setTreeData = await this.setTree({
|
const setTreeData = await this.setTree({
|
||||||
@ -327,7 +327,7 @@ export default {
|
|||||||
// 공정/설비 트리 row 클릭이벤트
|
// 공정/설비 트리 row 클릭이벤트
|
||||||
async getRowData(data) {
|
async getRowData(data) {
|
||||||
// console.log("getRowData 시작...");
|
// console.log("getRowData 시작...");
|
||||||
// console.log('data', data);
|
console.log('data', data);
|
||||||
this.activeRowData = data;
|
this.activeRowData = data;
|
||||||
// if(data.enableFg == 1){
|
// if(data.enableFg == 1){
|
||||||
// this.activeRowData = data;
|
// this.activeRowData = data;
|
||||||
|
@ -70,7 +70,7 @@ export default {
|
|||||||
return this.searchParam[this.parentPrgmId][this.enrgCd];
|
return this.searchParam[this.parentPrgmId][this.enrgCd];
|
||||||
},
|
},
|
||||||
set(value) {
|
set(value) {
|
||||||
// console.log('value : ', value);
|
console.log('value : ', value);
|
||||||
return this.setPageData({ [this.enrgCd]: value });
|
return this.setPageData({ [this.enrgCd]: value });
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -270,8 +270,8 @@ export default {
|
|||||||
filteredData: [],
|
filteredData: [],
|
||||||
rowSelection: {
|
rowSelection: {
|
||||||
onChange: (selectedRowKeys, selectedRows) => {
|
onChange: (selectedRowKeys, selectedRows) => {
|
||||||
// console.log('Selected Row Keys:', selectedRowKeys);
|
console.log('Selected Row Keys:', selectedRowKeys);
|
||||||
// console.log('Selected Rows:', selectedRows);
|
console.log('Selected Rows:', selectedRows);
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -213,7 +213,7 @@ export default {
|
|||||||
let dataArr = [];
|
let dataArr = [];
|
||||||
switch (action) {
|
switch (action) {
|
||||||
case 'add':
|
case 'add':
|
||||||
// console.log('add this.pageData : '); // , this.pageData);
|
console.log('add this.pageData : '); // , this.pageData);
|
||||||
const defaultRow = {
|
const defaultRow = {
|
||||||
dataSetId: this.pageData.dataSetId,
|
dataSetId: this.pageData.dataSetId,
|
||||||
dataSetNm: this.pageData.dataSetNm,
|
dataSetNm: this.pageData.dataSetNm,
|
||||||
@ -296,7 +296,7 @@ export default {
|
|||||||
comId: this.selectedComId,
|
comId: this.selectedComId,
|
||||||
dataSetId: this.selectedDataSetId,
|
dataSetId: this.selectedDataSetId,
|
||||||
};
|
};
|
||||||
// console.log('data : ', data);
|
console.log('data : ', data);
|
||||||
this.$emit('jamoviClickEvent', 'view1', data);
|
this.$emit('jamoviClickEvent', 'view1', data);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
:editorGrid="true"
|
:editorGrid="true"
|
||||||
:innerTabGridInfo="innerTabGridInfo"
|
:innerTabGridInfo="innerTabGridInfo"
|
||||||
@getRowsData="getRowData"
|
@getRowsData="getRowData"
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -54,22 +53,10 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
loadGrid: true,
|
loadGrid: false,
|
||||||
gridName: 'rowDetailGrid',
|
gridName: 'rowDetailGrid',
|
||||||
rowKey: null,
|
rowKey: null,
|
||||||
edtingFinishFlag: 'Y',
|
edtingFinishFlag: 'Y',
|
||||||
dataPathMock: {
|
|
||||||
"rowDetailGrid": {
|
|
||||||
column: [
|
|
||||||
{ header: '추가 정보', name: 'readObjId', align: 'left' },
|
|
||||||
{ header: 'Data 구분', name: 'readObjNm', align: 'left' },
|
|
||||||
{ header: '추가 정보 값', name: 'readObjKind', align: 'left' },
|
|
||||||
],
|
|
||||||
data: dataPathDataExample,
|
|
||||||
defaultRow: dataPathDataExample,
|
|
||||||
option: {}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -444,22 +431,4 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const dataPathDataExample = [
|
|
||||||
{
|
|
||||||
readObjId: 'OBJ001',
|
|
||||||
readObjNm: '서울 본사',
|
|
||||||
readObjKind: 'TYPE01',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
readObjId: 'OBJ002',
|
|
||||||
readObjNm: '부산 지사',
|
|
||||||
readObjKind: 'TYPE02',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
readObjId: 'OBJ003',
|
|
||||||
readObjNm: '대전 공장',
|
|
||||||
readObjKind: 'TYPE03',
|
|
||||||
}
|
|
||||||
]
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -19,7 +19,6 @@
|
|||||||
:parentPrgmId="parentPrgmId"
|
:parentPrgmId="parentPrgmId"
|
||||||
@getRowsData="getRowData"
|
@getRowsData="getRowData"
|
||||||
:innerTabGridInfo="innerTabGridInfo"
|
:innerTabGridInfo="innerTabGridInfo"
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
@ -60,24 +59,11 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
loadGrid: true,
|
loadGrid: false,
|
||||||
gridName: 'rowEccIaoGrid',
|
gridName: 'rowEccIaoGrid',
|
||||||
inputList_emMapDiv: [],
|
inputList_emMapDiv: [],
|
||||||
inputList_cmInOut: [],
|
inputList_cmInOut: [],
|
||||||
detailList: myDetail,
|
detailList: myDetail,
|
||||||
dataPathMock: {
|
|
||||||
"rowEccIaoGrid": {
|
|
||||||
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: {
|
computed: {
|
||||||
@ -516,12 +502,4 @@ const myDetail = [
|
|||||||
iconShow: true,
|
iconShow: true,
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
const dataPathDataExample = [
|
|
||||||
{
|
|
||||||
readObjId: 'OBJ001',
|
|
||||||
readObjNm: '서울 본사',
|
|
||||||
readObjKind: 'TYPE01',
|
|
||||||
grpCd: 'GRP01',
|
|
||||||
},
|
|
||||||
]
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -1,7 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div class="d-flex justify-space-between align-center my-5" >
|
<div
|
||||||
<span class="txt custom-subtitle-tab">설비 추가 정보</span>
|
class="d-flex justify-space-between align-center"
|
||||||
|
style="height: 80px;"
|
||||||
|
>
|
||||||
|
<span class="txt custom-title-4-new">설비 추가 정보</span>
|
||||||
<Buttons
|
<Buttons
|
||||||
:parentPrgmId="parentPrgmId"
|
:parentPrgmId="parentPrgmId"
|
||||||
:bindingData="gridName"
|
:bindingData="gridName"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div class="d-flex justify-space-between align-center my-5" >
|
<div class="d-flex justify-space-between align-center" style="height: 80px;">
|
||||||
<span class="txt custom-subtitle-tab">설비 상수 정보</span>
|
<span class="txt custom-title-4-new">설비 상수 정보</span>
|
||||||
<Buttons :parentPrgmId="parentPrgmId" :bindingData="gridName" :btnActionsFnc="btnActions" />
|
<Buttons :parentPrgmId="parentPrgmId" :bindingData="gridName" :btnActionsFnc="btnActions" />
|
||||||
</div>
|
</div>
|
||||||
<div ref="gridParent" style="min-height: calc(100vh - 800px);">
|
<div ref="gridParent" style="min-height: calc(100vh - 800px);">
|
||||||
@ -291,8 +291,8 @@ export default {
|
|||||||
|
|
||||||
dataArr.map(item => {
|
dataArr.map(item => {
|
||||||
for (var key of Object.keys(item)) {
|
for (var key of Object.keys(item)) {
|
||||||
// console.log('key : ', key);
|
console.log('key : ', key);
|
||||||
// console.log('item[key] : ', item[key]);
|
console.log('item[key] : ', item[key]);
|
||||||
if (!item[key] && requiredKeyList.includes(key)) {
|
if (!item[key] && requiredKeyList.includes(key)) {
|
||||||
validCheck = false;
|
validCheck = false;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,10 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<div class="d-flex justify-space-between align-center my-5" >
|
<div
|
||||||
<span class="txt custom-subtitle-tab">설비 입출력 정보</span>
|
class="d-flex justify-space-between align-center"
|
||||||
|
style="height: 80px;"
|
||||||
|
>
|
||||||
|
<span class="txt">설비 입출력 정보</span>
|
||||||
<Buttons
|
<Buttons
|
||||||
:parentPrgmId="parentPrgmId"
|
:parentPrgmId="parentPrgmId"
|
||||||
:bindingData="gridName"
|
:bindingData="gridName"
|
||||||
@ -108,7 +111,7 @@ export default {
|
|||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
selectedObjId(val) {
|
selectedObjId(val) {
|
||||||
// console.log('selectedObjId : ', val);
|
console.log('selectedObjId : ', val);
|
||||||
if (val === 'TAG') {
|
if (val === 'TAG') {
|
||||||
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';
|
||||||
@ -335,7 +338,7 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (dataArr.length > 0) {
|
if (dataArr.length > 0) {
|
||||||
// console.log('dataArr : ', dataArr);
|
console.log('dataArr : ', dataArr);
|
||||||
|
|
||||||
var requiredKeyList = this.detailList
|
var requiredKeyList = this.detailList
|
||||||
.filter(item => {
|
.filter(item => {
|
||||||
|
@ -36,14 +36,19 @@
|
|||||||
<v-card-title>
|
<v-card-title>
|
||||||
<span class="custom-title-4">역할 리스트</span>
|
<span class="custom-title-4">역할 리스트</span>
|
||||||
</v-card-title>
|
</v-card-title>
|
||||||
<div ref="gridParent" class="px-5" style="height: 60vh;">
|
<div class="px-5" style="height:calc(100% - 100px)">
|
||||||
<component
|
<div
|
||||||
:is="loadGrid ? 'Grid' : null"
|
ref="gridParent"
|
||||||
:ref="gridName + myPrgmId"
|
class="w100 h100"
|
||||||
:gridName="gridName"
|
>
|
||||||
:parentPrgmId="myPrgmId"
|
<component
|
||||||
@getRowsData="getRowData"
|
:is="loadGrid ? 'Grid' : null"
|
||||||
/>
|
:ref="gridName + myPrgmId"
|
||||||
|
:gridName="gridName"
|
||||||
|
:parentPrgmId="myPrgmId"
|
||||||
|
@getRowsData="getRowData"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
@ -64,19 +69,19 @@
|
|||||||
:style="{ minHeight: '36px' }"
|
:style="{ minHeight: '36px' }"
|
||||||
>[미배정]메뉴리스트</span
|
>[미배정]메뉴리스트</span
|
||||||
>
|
>
|
||||||
<div ref="treeGridParent" class="px-0 mt-2" style="height: 60vh;">
|
<div class="px-0 mt-2" style="height:calc(100% - 64px)">
|
||||||
<!-- <div
|
<div
|
||||||
ref="treeGridParent"
|
ref="treeGridParent"
|
||||||
class="w100 h100"
|
class="w100 h100"
|
||||||
>
|
>
|
||||||
</div> -->
|
<component
|
||||||
<component
|
:is="loadTreeGrid ? 'Grid' : null"
|
||||||
:is="loadTreeGrid ? 'Grid' : null"
|
:ref="gridName2 + myPrgmId"
|
||||||
:ref="gridName2 + myPrgmId"
|
:gridName="gridName2"
|
||||||
:gridName="gridName2"
|
:parentPrgmId="myPrgmId"
|
||||||
:parentPrgmId="myPrgmId"
|
@getRowsData="getUnAsgnRowData"
|
||||||
@getRowsData="getUnAsgnRowData"
|
/>
|
||||||
/>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="1">
|
<v-col :cols="1">
|
||||||
@ -107,20 +112,20 @@
|
|||||||
/>
|
/>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
<div ref="treeGridParent2" class="px-0 mt-2" style="height: 60vh;">
|
<div class="px-0 mt-2" style="height:calc(100% - 64px)">
|
||||||
<!-- <div
|
<div
|
||||||
ref="treeGridParent2"
|
ref="treeGridParent2"
|
||||||
class="w100 h100"
|
class="w100 h100"
|
||||||
>
|
>
|
||||||
</div> -->
|
<component
|
||||||
<component
|
:is="loadTreeGrid2 ? 'Grid' : null"
|
||||||
:is="loadTreeGrid2 ? 'Grid' : null"
|
:ref="gridName3 + myPrgmId"
|
||||||
:ref="gridName3 + myPrgmId"
|
:gridName="gridName3"
|
||||||
:gridName="gridName3"
|
:parentPrgmId="myPrgmId"
|
||||||
:parentPrgmId="myPrgmId"
|
:editorGrid="true"
|
||||||
:editorGrid="true"
|
@getRowsData="getAsgnRowData"
|
||||||
@getRowsData="getAsgnRowData"
|
/>
|
||||||
/>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
@ -403,9 +408,9 @@ export default {
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 30,
|
width: 30,
|
||||||
formatter: (props) => {
|
formatter: (props) => {
|
||||||
return `<span class="custom-radio">
|
return `<label class="custom-radio">
|
||||||
<span class="radio-mark"></span>
|
<span class="radio-mark"></span>
|
||||||
</span>`;
|
</label>`;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -426,9 +431,9 @@ export default {
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: 30,
|
width: 30,
|
||||||
formatter: (props) => {
|
formatter: (props) => {
|
||||||
return `<span class="custom-radio">
|
return `<label class="custom-radio">
|
||||||
<span class="radio-mark"></span>
|
<span class="radio-mark"></span>
|
||||||
</span>`;
|
</label>`;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{ header: '역할ID', name: 'roleId', hidden: true },
|
{ header: '역할ID', name: 'roleId', hidden: true },
|
||||||
@ -568,7 +573,6 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
async getRowData(data) {
|
async getRowData(data) {
|
||||||
|
|
||||||
await this.setPageData({
|
await this.setPageData({
|
||||||
rowGridSelectKey: data.rowKey,
|
rowGridSelectKey: data.rowKey,
|
||||||
rowGridSelectData: {
|
rowGridSelectData: {
|
||||||
@ -674,8 +678,6 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
getUnAsgnRowData(data) {
|
getUnAsgnRowData(data) {
|
||||||
console.log("------------------DEBUG-------getUnAsgnRowData:", data);
|
|
||||||
|
|
||||||
const getRowData = data;
|
const getRowData = data;
|
||||||
this.leftSelectRowData = Object.assign({}, getRowData);
|
this.leftSelectRowData = Object.assign({}, getRowData);
|
||||||
},
|
},
|
||||||
|
@ -12,6 +12,8 @@
|
|||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
:sendParam="{ comId }"
|
:sendParam="{ comId }"
|
||||||
customClass="select-large"
|
customClass="select-large"
|
||||||
|
labelCols="12"
|
||||||
|
textCols="12"
|
||||||
/>
|
/>
|
||||||
<!-- <component
|
<!-- <component
|
||||||
:is="'selectCodeList'"
|
:is="'selectCodeList'"
|
||||||
@ -79,7 +81,6 @@
|
|||||||
@getRowsData="getRowData"
|
@getRowsData="getRowData"
|
||||||
@sendSelectedRowStatInfo="getSelectedRowStatInfo"
|
@sendSelectedRowStatInfo="getSelectedRowStatInfo"
|
||||||
:selectedRowDataWatchFlag="true"
|
:selectedRowDataWatchFlag="true"
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -128,7 +129,7 @@
|
|||||||
<template v-else-if="item.id == 'AsgnRoleByUser'">
|
<template v-else-if="item.id == 'AsgnRoleByUser'">
|
||||||
<v-col :cols="3" class="h100">
|
<v-col :cols="3" class="h100">
|
||||||
<v-card-title
|
<v-card-title
|
||||||
class="pa-0 custom-title-4"
|
class="pa-0 custom-subtitle-tab"
|
||||||
style="min-height:36px;"
|
style="min-height:36px;"
|
||||||
>역할리스트</v-card-title
|
>역할리스트</v-card-title
|
||||||
>
|
>
|
||||||
@ -154,7 +155,7 @@
|
|||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="8" class="h100">
|
<v-col :cols="8" class="h100">
|
||||||
<div class="d-flex align-center justify-space-between">
|
<div class="d-flex align-center justify-space-between">
|
||||||
<v-card-title class="pa-0 custom-title-4">
|
<v-card-title class="pa-0 custom-subtitle-tab">
|
||||||
사용자 역할</v-card-title
|
사용자 역할</v-card-title
|
||||||
>
|
>
|
||||||
<div>
|
<div>
|
||||||
@ -307,40 +308,10 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async init() {
|
async init() {
|
||||||
this.gridInit();
|
await this.gridInit();
|
||||||
},
|
},
|
||||||
|
|
||||||
gridInitTest() {
|
|
||||||
const rowGrid = {
|
|
||||||
column: [
|
|
||||||
{ header: '사용자No', name: 'userNo', align: 'center', hidden: true },
|
|
||||||
{ header: '사용자명', name: 'userNm' },
|
|
||||||
{ header: '사용자ID', name: 'userLoginId' },
|
|
||||||
{ header: '사용자비밀번호', name: 'userPswd', hidden: true },
|
|
||||||
{ header: '사업장', name: 'blocId', hidden: true },
|
|
||||||
{ header: 'email', name: 'email', hidden: true },
|
|
||||||
{ header: '등록자NO', name: 'regUserNo', hidden: true },
|
|
||||||
{ header: '등록일시', name: 'regDttm', hidden: true },
|
|
||||||
{ header: '수정자NO', name: 'procUserNo', hidden: true },
|
|
||||||
{ header: '수정일시', name: 'procDttm', hidden: true },
|
|
||||||
{ header: 'comId', name: 'comId', hidden: true },
|
|
||||||
{ header: 'deptId', name: 'deptId', hidden: true },
|
|
||||||
],
|
|
||||||
data: dataMockExample,
|
|
||||||
defaultRow: dataMockExample,
|
|
||||||
option: [],
|
|
||||||
}
|
|
||||||
this.dataPathMock = {rowGrid};
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.loadGrid = true;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
// 사용자 리스트 그리드 세팅
|
// 사용자 리스트 그리드 세팅
|
||||||
gridInit() {
|
gridInit() {
|
||||||
|
|
||||||
// this.gridInitTest(); return
|
|
||||||
|
|
||||||
const gridHeight = this.$refs.gridParent.offsetHeight - 90;
|
const gridHeight = this.$refs.gridParent.offsetHeight - 90;
|
||||||
|
|
||||||
const myOptions = {
|
const myOptions = {
|
||||||
@ -1100,67 +1071,4 @@ function sha512(str) {
|
|||||||
.update(str)
|
.update(str)
|
||||||
.digest('hex');
|
.digest('hex');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const dataMockExample = [
|
|
||||||
{
|
|
||||||
userNo: 1,
|
|
||||||
userNm: '홍길동',
|
|
||||||
userLoginId: 'hong123',
|
|
||||||
userPswd: 'password123',
|
|
||||||
blocId: 'B001',
|
|
||||||
email: 'hong@example.com',
|
|
||||||
regUserNo: 100,
|
|
||||||
regDttm: '2025-07-01 10:00:00',
|
|
||||||
procUserNo: 101,
|
|
||||||
procDttm: '2025-07-15 14:30:00',
|
|
||||||
comId: 'C001',
|
|
||||||
deptId: 'D001'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
userNo: 2,
|
|
||||||
userNm: '김영희',
|
|
||||||
userLoginId: 'kimyh',
|
|
||||||
userPswd: 'securePass456',
|
|
||||||
blocId: 'B002',
|
|
||||||
email: 'kim@example.com',
|
|
||||||
regUserNo: 102,
|
|
||||||
regDttm: '2025-07-02 11:20:00',
|
|
||||||
procUserNo: 103,
|
|
||||||
procDttm: '2025-07-16 09:45:00',
|
|
||||||
comId: 'C002',
|
|
||||||
deptId: 'D002'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
userNo: 3,
|
|
||||||
userNm: '관리자',
|
|
||||||
userLoginId: 'user',
|
|
||||||
userPswd: 'securePass456',
|
|
||||||
blocId: 'B002',
|
|
||||||
email: 'kim@example.com',
|
|
||||||
regUserNo: 102,
|
|
||||||
regDttm: '2025-07-02 11:20:00',
|
|
||||||
procUserNo: 103,
|
|
||||||
procDttm: '2025-07-16 09:45:00',
|
|
||||||
comId: 'C002',
|
|
||||||
deptId: 'D002'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
userNo: 4,
|
|
||||||
userNm: '사용자',
|
|
||||||
userLoginId: 'admin',
|
|
||||||
userPswd: 'securePass456',
|
|
||||||
blocId: 'B002',
|
|
||||||
email: 'kim@example.com',
|
|
||||||
regUserNo: 102,
|
|
||||||
regDttm: '2025-07-02 11:20:00',
|
|
||||||
procUserNo: 103,
|
|
||||||
procDttm: '2025-07-16 09:45:00',
|
|
||||||
comId: 'C002',
|
|
||||||
deptId: 'D002'
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
@ -4,24 +4,27 @@
|
|||||||
<v-row ref="searchFilter">
|
<v-row ref="searchFilter">
|
||||||
<v-col :cols="12">
|
<v-col :cols="12">
|
||||||
<v-card class="searchFilter">
|
<v-card class="searchFilter">
|
||||||
<v-row align="center" no-gutters>
|
<v-row align="end" no-gutters>
|
||||||
<v-col :cols="2">
|
<div></div>
|
||||||
|
<v-col :cols="2.5">
|
||||||
<InputText
|
<InputText
|
||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
label="배치ID"
|
label="배치ID"
|
||||||
valueNm="batchId"
|
valueNm="batchId"
|
||||||
:searchOption="true"
|
:searchOption="true"
|
||||||
|
customClass="input-large"
|
||||||
/>
|
/>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="2">
|
<v-col :cols="2.5">
|
||||||
<InputText
|
<InputText
|
||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
label="배치명"
|
label="배치명"
|
||||||
valueNm="batchNm"
|
valueNm="batchNm"
|
||||||
:searchOption="true"
|
:searchOption="true"
|
||||||
|
customClass="input-large"
|
||||||
/>
|
/>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="2">
|
<v-col :cols="2.5">
|
||||||
<component
|
<component
|
||||||
:is="'selectCodeList'"
|
:is="'selectCodeList'"
|
||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
@ -29,20 +32,20 @@
|
|||||||
:dataKey="'execRsltCd'"
|
:dataKey="'execRsltCd'"
|
||||||
:sendParam="{ commGrpCd: 'CO_BATCH_EXEC_RSLT', useFg: '1' }"
|
:sendParam="{ commGrpCd: 'CO_BATCH_EXEC_RSLT', useFg: '1' }"
|
||||||
:addAll="true"
|
:addAll="true"
|
||||||
|
customClass="select-large"
|
||||||
/>
|
/>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="2">
|
<v-col :cols="2.5">
|
||||||
<component
|
<component
|
||||||
:is="'Datepicker'"
|
:is="'Datepicker'"
|
||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
:label="'조회기간'"
|
:label="'조회기간'"
|
||||||
/>
|
/>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-spacer></v-spacer>
|
<div class="text-right d-flex align-end justify-end pl-9" style="gap: 8px">
|
||||||
<v-col :cols="4" class="text-right">
|
|
||||||
<BtnSearch />
|
<BtnSearch />
|
||||||
<BtnExcelDownload :parentPrgmId="myPrgmId" :gridName="gridName" />
|
<BtnExcelDownload :parentPrgmId="myPrgmId" :gridName="gridName" size="large" />
|
||||||
</v-col>
|
</div>
|
||||||
</v-row>
|
</v-row>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
@ -57,10 +60,11 @@
|
|||||||
<div ref="gridParent" class="px-5 h100">
|
<div ref="gridParent" class="px-5 h100">
|
||||||
<component
|
<component
|
||||||
:ref="gridName"
|
:ref="gridName"
|
||||||
:is="loadGrid ? 'Grid' : null"
|
:is=" 'Grid' "
|
||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
:gridName="gridName"
|
:gridName="gridName"
|
||||||
@getRowsData="getRowData"
|
@getRowsData="getRowData"
|
||||||
|
:dataPath="dataPathMock"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -50,7 +50,7 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div ref="gridParent" style="height: 60vh">
|
<div ref="gridParent" style="height: 100vh">
|
||||||
<!-- <div ref="gridParent" class="px-5 h100">
|
<!-- <div ref="gridParent" class="px-5 h100">
|
||||||
</div> -->
|
</div> -->
|
||||||
<component
|
<component
|
||||||
|
@ -64,7 +64,6 @@
|
|||||||
:gridName="gridName"
|
:gridName="gridName"
|
||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
@getRowsData="getRowData"
|
@getRowsData="getRowData"
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -137,24 +136,10 @@ export default {
|
|||||||
return {
|
return {
|
||||||
myPrgmId: myPrgmId,
|
myPrgmId: myPrgmId,
|
||||||
gridName: 'rowGrid',
|
gridName: 'rowGrid',
|
||||||
loadGrid: true,
|
loadGrid: false,
|
||||||
tab: null,
|
tab: null,
|
||||||
detailList: myDetail,
|
detailList: myDetail,
|
||||||
initedFlag: false,
|
initedFlag: false,
|
||||||
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: {
|
computed: {
|
||||||
@ -642,43 +627,7 @@ const myDetail = [
|
|||||||
placeholder: '시스템 자동입력',
|
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,
|
|
||||||
},
|
|
||||||
];
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
<style lang="scss">
|
||||||
|
@import '@/assets/scss/common.scss';
|
||||||
|
</style>
|
||||||
|
@ -91,7 +91,7 @@
|
|||||||
</a-button>
|
</a-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div ref="gridParent" class="px-5 w100" style="height: 55vh;">
|
<div ref="gridParent" class="px-5 w100" style="min-height: 60vh">
|
||||||
<component
|
<component
|
||||||
:is="loadGrid ? 'Grid' : null"
|
:is="loadGrid ? 'Grid' : null"
|
||||||
:ref="gridName"
|
:ref="gridName"
|
||||||
@ -242,10 +242,6 @@ export default {
|
|||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
pageOptions: {
|
|
||||||
useClient: true,
|
|
||||||
perPage: 13,
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
|
@ -865,7 +865,7 @@ export default {
|
|||||||
currentChartData["data"][j]["totVal"];
|
currentChartData["data"][j]["totVal"];
|
||||||
}
|
}
|
||||||
|
|
||||||
// console.log("text seri data", seriesData);
|
console.log("text seri data", seriesData);
|
||||||
|
|
||||||
this.$store.state.pageData[myPrgmId][chartKey]["xAxis"]["data"] = xAxisData;
|
this.$store.state.pageData[myPrgmId][chartKey]["xAxis"]["data"] = xAxisData;
|
||||||
this.$store.state.pageData[myPrgmId][chartKey]["series"][0]["data"] = seriesData;
|
this.$store.state.pageData[myPrgmId][chartKey]["series"][0]["data"] = seriesData;
|
||||||
|
@ -8,9 +8,16 @@
|
|||||||
<v-col :cols="2.5">
|
<v-col :cols="2.5">
|
||||||
<DatePicker :parentPrgmId="myPrgmId" :label="'조회연도'" />
|
<DatePicker :parentPrgmId="myPrgmId" :label="'조회연도'" />
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="2.5">
|
<v-col :cols="3">
|
||||||
<component :is="'SelectBox'" ref="SelectBox1" :propsValue="selectValue01" :itemList="selectValueList01"
|
<component
|
||||||
:label="'FAB'" @update:propsValue="selectValue01 = $event" :iconShow="false" customClass="select-large" />
|
:is="'SelectBox'"
|
||||||
|
ref="SelectBox1"
|
||||||
|
:propsValue="selectValue01"
|
||||||
|
:itemList="selectValueList01"
|
||||||
|
:label="'FAB'"
|
||||||
|
@update:propsValue="selectValue01 = $event"
|
||||||
|
customClass="select-large"
|
||||||
|
/>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="2.5">
|
<v-col :cols="2.5">
|
||||||
<component :is="'SelectBox'" ref="SelectBox2" :propsValue="selectValue02" :itemList="selectValueList02"
|
<component :is="'SelectBox'" ref="SelectBox2" :propsValue="selectValue02" :itemList="selectValueList02"
|
||||||
@ -44,12 +51,10 @@
|
|||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { mapState, mapActions, mapMutations } from 'vuex';
|
import { mapState, mapActions } from 'vuex';
|
||||||
import mixinGlobal from '@/mixin/global.js';
|
import mixinGlobal from '@/mixin/global.js';
|
||||||
import { resize } from '@/mixin/resize.js';
|
import { resize } from '@/mixin/resize.js';
|
||||||
import SelectBox from '@/components/common/select/SelectBox';
|
import SelectBox from '@/components/common/select/SelectBox';
|
||||||
@ -106,9 +111,6 @@ export default {
|
|||||||
fromDt: new Date().getFullYear(),
|
fromDt: new Date().getFullYear(),
|
||||||
rowKey: null,
|
rowKey: null,
|
||||||
edtingFinishFlag: 'Y',
|
edtingFinishFlag: 'Y',
|
||||||
dataPathMock: {
|
|
||||||
// "grid01": {}
|
|
||||||
},
|
|
||||||
// gridName: 'rowGrid',
|
// gridName: 'rowGrid',
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@ -166,12 +168,8 @@ export default {
|
|||||||
defaultData: defaultData,
|
defaultData: defaultData,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
created() { },
|
created() {},
|
||||||
async mounted() {
|
async mounted() {
|
||||||
// -------
|
|
||||||
// this.initTest();
|
|
||||||
// return;
|
|
||||||
// ========End test===========
|
|
||||||
await this.init();
|
await this.init();
|
||||||
this.initedFlag = true;
|
this.initedFlag = true;
|
||||||
},
|
},
|
||||||
@ -184,122 +182,6 @@ export default {
|
|||||||
getBlocMstrList: 'modules/search/getBlocMstrList',
|
getBlocMstrList: 'modules/search/getBlocMstrList',
|
||||||
getAddInfoList: 'modules/search/getAddInfoList',
|
getAddInfoList: 'modules/search/getAddInfoList',
|
||||||
}),
|
}),
|
||||||
...mapMutations({
|
|
||||||
setPageData: 'setPageData',
|
|
||||||
}),
|
|
||||||
initTest() {
|
|
||||||
let _this = this;
|
|
||||||
// _this.setPageData({ popupDialogFg: true });
|
|
||||||
|
|
||||||
class MockCustumButton {
|
|
||||||
constructor(props) {
|
|
||||||
const { grid, rowKey, columnInfo } = props;
|
|
||||||
const value = columnInfo.renderer.options.value;
|
|
||||||
|
|
||||||
const elDiv = document.createElement('div');
|
|
||||||
elDiv.innerHTML = `<span>${value}</span>`;
|
|
||||||
$(elDiv).addClass('tui-grid-cell-content d-flex justify-space-between');
|
|
||||||
const el = document.createElement('button');
|
|
||||||
$(el).addClass('edit-btn blue--text');
|
|
||||||
el.innerText = 'Edit';
|
|
||||||
|
|
||||||
el.addEventListener('click', function (event) {
|
|
||||||
// console.log("------DEBUG----_this:", _this);
|
|
||||||
// _this.setPageData({ eqpmNm: selectedGridData[0]?.eqpmNm });
|
|
||||||
_this.setPageData({ popupDialogFg: true });
|
|
||||||
});
|
|
||||||
|
|
||||||
elDiv.appendChild(el);
|
|
||||||
this.elDiv = elDiv;
|
|
||||||
}
|
|
||||||
|
|
||||||
getElement() {
|
|
||||||
return this.elDiv;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
const mockData = {
|
|
||||||
column: [
|
|
||||||
{ header: 'No', name: 'rowNum', align: 'center', width: 40 },
|
|
||||||
{ header: 'FAB', name: 'fab', align: 'left', width: 80 },
|
|
||||||
{ header: '설비 그룹', name: 'eqpmGrpNm', align: 'left', minWidth: 150 },
|
|
||||||
// {
|
|
||||||
// header: '설비명', name: 'eqpmNm', align: 'left', minWidth: 150,
|
|
||||||
// formatter: ({ value, row }) => {
|
|
||||||
// return `
|
|
||||||
// <div class="d-flex justify-space-between">
|
|
||||||
// <span>${value}</span>
|
|
||||||
// <button class="edit-btn blue--text" data-row='${JSON.stringify(row)}'>Edit</button
|
|
||||||
// </div>
|
|
||||||
// `;
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
{
|
|
||||||
header: '설비명',
|
|
||||||
name: 'eqpmNm',
|
|
||||||
width: 70,
|
|
||||||
align: 'left',
|
|
||||||
minWidth: 150,
|
|
||||||
renderer: {
|
|
||||||
type: MockCustumButton,
|
|
||||||
options: {
|
|
||||||
value: '계획수정',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '구분', name: 'gubun', align: 'left', width: 80,
|
|
||||||
formatter({ value }) {
|
|
||||||
let retVal = '';
|
|
||||||
if (value == '1RSLT') {
|
|
||||||
retVal = '전년실적';
|
|
||||||
} else if (value == '2PLAN') {
|
|
||||||
retVal = '계획';
|
|
||||||
} else {
|
|
||||||
retVal = value;
|
|
||||||
}
|
|
||||||
return retVal;
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
{ header: '1월', name: 'jan', align: 'right', width: 80 },
|
|
||||||
{ header: '2월', name: 'feb', align: 'right', width: 80 },
|
|
||||||
{ header: '3월', name: 'mar', align: 'right', width: 80 },
|
|
||||||
{ header: '4월', name: 'apr', align: 'right', width: 80 },
|
|
||||||
{ header: '5월', name: 'may', align: 'right', width: 80 },
|
|
||||||
{ header: '6월', name: 'jun', align: 'right', width: 80 },
|
|
||||||
{ header: '7월', name: 'jul', align: 'right', width: 80 },
|
|
||||||
{ header: '8월', name: 'aug', align: 'right', width: 80 },
|
|
||||||
{ header: '9월', name: 'sep', align: 'right', width: 80 },
|
|
||||||
{ header: '10월', name: 'oct', align: 'right', width: 80 },
|
|
||||||
{ header: '11월', name: 'nov', align: 'right', width: 80 },
|
|
||||||
{ header: '12월', name: 'dec', align: 'right', width: 80 }
|
|
||||||
],
|
|
||||||
data: dataPathDataExample,
|
|
||||||
defaultRow: dataPathDataExample,
|
|
||||||
option: {
|
|
||||||
columnOptions: {
|
|
||||||
resizable: true,
|
|
||||||
},
|
|
||||||
header: {
|
|
||||||
height: 65,
|
|
||||||
complexColumns: [
|
|
||||||
{
|
|
||||||
header: '2025 년',
|
|
||||||
name: 'yyyyCol',
|
|
||||||
childNames: [
|
|
||||||
'jan', 'feb', 'mar', 'apr', 'may', 'jun',
|
|
||||||
'jul', 'aug', 'sep', 'oct', 'nov', 'dec'
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
this.dataPathMock[this.gridName] = mockData;
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.loadGrid = true;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
async init() {
|
async init() {
|
||||||
await this.getFab();
|
await this.getFab();
|
||||||
await this.getEqpmKind();
|
await this.getEqpmKind();
|
||||||
@ -418,25 +300,53 @@ export default {
|
|||||||
|
|
||||||
class CustumButton {
|
class CustumButton {
|
||||||
constructor(props) {
|
constructor(props) {
|
||||||
|
// v-btn v-btn--is-elevated v-btn--has-bg theme--dark v-size--default
|
||||||
|
const el = document.createElement('button');
|
||||||
const { grid, rowKey, columnInfo } = props;
|
const { grid, rowKey, columnInfo } = props;
|
||||||
|
|
||||||
const gridData = grid.store.data.rawData;
|
$(el).addClass('tui-grid-cell-content');
|
||||||
const value = gridData[rowKey][columnInfo.name];
|
// $(el).css('text-align', 'center');
|
||||||
|
el.classList.add('v-btn');
|
||||||
|
// el.style.width = '80%';
|
||||||
|
// el.style.height = '80%';
|
||||||
|
// el.style.boxShadow = '0px 0px 0px 2px #cbced6';
|
||||||
|
// el.style.background = 'linear-gradient(to bottom, #242940 5%, #476e9e 100%)';
|
||||||
|
// el.style.backgroundColor = '#144985';
|
||||||
|
el.style.borderRadius = '7px';
|
||||||
|
el.style.border = '1px solid #4e6096';
|
||||||
|
// el.style.display = 'inline-block';
|
||||||
|
// el.style.cursor = 'pointer';
|
||||||
|
el.style.color = '#ffffff';
|
||||||
|
// el.style.fontFamily = 'Arial';
|
||||||
|
el.style.padding = '6% 3%';
|
||||||
|
|
||||||
|
// el.style.textDecoration = 'none';
|
||||||
|
// el.style.textShadow = '0px 1px 0px #283966';
|
||||||
|
|
||||||
|
el.innerText = columnInfo.renderer.options.value;
|
||||||
|
this.el = el;
|
||||||
this.disabled = columnInfo.renderer.options.disabled || false;
|
this.disabled = columnInfo.renderer.options.disabled || false;
|
||||||
const elDiv = document.createElement('div');
|
|
||||||
elDiv.innerHTML = `<span>${value}</span>`;
|
|
||||||
$(elDiv).addClass('tui-grid-cell-content d-flex justify-space-between');
|
|
||||||
const el2 = document.createElement('button');
|
|
||||||
$(el2).addClass('edit-btn blue--text');
|
|
||||||
el2.innerText = 'Edit';
|
|
||||||
elDiv.appendChild(el2);
|
|
||||||
|
|
||||||
this.el = elDiv;
|
|
||||||
|
|
||||||
if (!this.disabled) {
|
if (!this.disabled) {
|
||||||
|
// hover 기능 구현
|
||||||
|
this.el.addEventListener('mouseover', function(event) {
|
||||||
|
// console.log('darkModeFg', _this.darkModeFg);
|
||||||
|
// console.log('event',event.fromElement);
|
||||||
|
// console.log('event',document.defaultView.getComputedStyle(el).getPropertyValue('background-color'));
|
||||||
|
// rgb(85, 130, 220) // light
|
||||||
|
// el.style.backgroundColor = '#26578F'; // rgb(20, 73, 133) // dark
|
||||||
|
// let btnColor = _this.darkModeFg? {mouseOver: '#26578F', mouseOut: '#144985'} : {mouseOver: 'rgb(85, 130, 220)', mouseOut: 'rgb(71, 119, 217)'};
|
||||||
|
// el.style.backgroundColor = btnColor['mouseOver'];
|
||||||
|
});
|
||||||
|
this.el.addEventListener('mouseout', function(event) {
|
||||||
|
// rgb(71, 119, 217) // light
|
||||||
|
// el.style.backgroundColor = '#144985'; // dark
|
||||||
|
// console.log('event',event.fromElement);
|
||||||
|
// let btnColor = _this.darkModeFg? {mouseOver: '#26578F', mouseOut: '#144985'} : {mouseOver: 'rgb(85, 130, 220)', mouseOut: 'rgb(71, 119, 217)'};
|
||||||
|
// el.style.backgroundColor = btnColor['mouseOut'];
|
||||||
|
});
|
||||||
// click 이벤트
|
// click 이벤트
|
||||||
el2.addEventListener('click', function (event) {
|
this.el.addEventListener('click', function(event) {
|
||||||
let gridData = grid.store.data.rawData;
|
let gridData = grid.store.data.rawData;
|
||||||
let rowNum = gridData[rowKey].rowNum;
|
let rowNum = gridData[rowKey].rowNum;
|
||||||
let selectedGridData = gridData.filter(item => {
|
let selectedGridData = gridData.filter(item => {
|
||||||
@ -799,8 +709,8 @@ export default {
|
|||||||
dataArr[i][qty] == ''
|
dataArr[i][qty] == ''
|
||||||
? null
|
? null
|
||||||
: parseInt(dataArr[i][qty]) == 0
|
: parseInt(dataArr[i][qty]) == 0
|
||||||
? 0
|
? 0
|
||||||
: dataArr[i][qty];
|
: dataArr[i][qty];
|
||||||
dataList.push(temp);
|
dataList.push(temp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -942,110 +852,18 @@ const defaultData = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const dataPathDataExample = [
|
|
||||||
{
|
|
||||||
rowNum: 1,
|
|
||||||
fab: 'B01',
|
|
||||||
eqpmGrpNm: '방송기술운',
|
|
||||||
eqpmNm: 'U/T_LT_CH101',
|
|
||||||
gubun: '전력량',
|
|
||||||
jan: 110000,
|
|
||||||
feb: 112000,
|
|
||||||
mar: 115000,
|
|
||||||
apr: 117000,
|
|
||||||
may: 120000,
|
|
||||||
jun: 118000,
|
|
||||||
jul: 119000,
|
|
||||||
aug: 121000,
|
|
||||||
sep: 122000,
|
|
||||||
oct: 123000,
|
|
||||||
nov: 124000,
|
|
||||||
dec: 125000
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 2,
|
|
||||||
fab: 'B02',
|
|
||||||
eqpmGrpNm: '방송기술운',
|
|
||||||
eqpmNm: 'U/T_LT_CH102',
|
|
||||||
gubun: '전력량',
|
|
||||||
jan: 81000,
|
|
||||||
feb: 82000,
|
|
||||||
mar: 83000,
|
|
||||||
apr: 84000,
|
|
||||||
may: 85000,
|
|
||||||
jun: 86000,
|
|
||||||
jul: 87000,
|
|
||||||
aug: 88000,
|
|
||||||
sep: 89000,
|
|
||||||
oct: 90000,
|
|
||||||
nov: 91000,
|
|
||||||
dec: 92000
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 3, fab: 'C01', eqpmGrpNm: '방송기술운', eqpmNm: 'U/T_LT_CH124', gubun: '수도량',
|
|
||||||
jan: 106178, feb: 104740, mar: 92283, apr: 116081, may: 98945, jun: 126579,
|
|
||||||
jul: 90690, aug: 124243, sep: 97524, oct: 84072, nov: 88160, dec: 118183
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 4, fab: 'B01', eqpmGrpNm: '방송기술운', eqpmNm: 'U/T_LT_CH103', gubun: '가스량',
|
|
||||||
jan: 80442, feb: 102867, mar: 114939, apr: 106335, may: 81743, jun: 83711,
|
|
||||||
jul: 86114, aug: 97432, sep: 84146, oct: 84775, nov: 117921, dec: 119417
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 5, fab: 'B01', eqpmGrpNm: '설비운영팀', eqpmNm: 'U/T_LT_CH156', gubun: '전력량',
|
|
||||||
jan: 90341, feb: 94072, mar: 122754, apr: 85471, may: 90813, jun: 116831,
|
|
||||||
jul: 90856, aug: 109437, sep: 94029, oct: 96075, nov: 127067, dec: 102503
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 6, fab: 'B03', eqpmGrpNm: '방송기술운', eqpmNm: 'U/T_LT_CH183', gubun: '가스량',
|
|
||||||
jan: 104163, feb: 107012, mar: 104631, apr: 83055, may: 106311, jun: 117306,
|
|
||||||
jul: 86434, aug: 117087, sep: 118414, oct: 91499, nov: 93829, dec: 94192
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 7, fab: 'C01', eqpmGrpNm: '전력관리부', eqpmNm: 'U/T_LT_CH158', gubun: '가스량',
|
|
||||||
jan: 84821, feb: 128234, mar: 116883, apr: 116718, may: 114738, jun: 88297,
|
|
||||||
jul: 93840, aug: 84700, sep: 98360, oct: 87021, nov: 113098, dec: 94734
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 8, fab: 'B02', eqpmGrpNm: '방송기술운', eqpmNm: 'U/T_LT_CH179', gubun: '가스량',
|
|
||||||
jan: 128714, feb: 88797, mar: 124808, apr: 109283, may: 113141, jun: 82873,
|
|
||||||
jul: 114993, aug: 129108, sep: 100885, oct: 125730, nov: 92127, dec: 122286
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 9, fab: 'C01', eqpmGrpNm: '전력관리부', eqpmNm: 'U/T_LT_CH191', gubun: '전력량',
|
|
||||||
jan: 107258, feb: 108424, mar: 113604, apr: 116648, may: 124149, jun: 129978,
|
|
||||||
jul: 112215, aug: 129602, sep: 93551, oct: 111272, nov: 89736, dec: 128423
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 10, fab: 'B02', eqpmGrpNm: '방송기술운', eqpmNm: 'U/T_LT_CH104', gubun: '전력량',
|
|
||||||
jan: 82089, feb: 102793, mar: 96784, apr: 85238, may: 86153, jun: 123849,
|
|
||||||
jul: 115095, aug: 129484, sep: 102109, oct: 80976, nov: 119841, dec: 106309
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 11, fab: 'C02', eqpmGrpNm: '전력관리부', eqpmNm: 'U/T_LT_CH139', gubun: '전력량',
|
|
||||||
jan: 128592, feb: 95647, mar: 85982, apr: 126824, may: 87928, jun: 128967,
|
|
||||||
jul: 94637, aug: 107530, sep: 122533, oct: 97546, nov: 112110, dec: 126250
|
|
||||||
},
|
|
||||||
{
|
|
||||||
rowNum: 12, fab: 'C01', eqpmGrpNm: '설비운영팀', eqpmNm: 'U/T_LT_CH109', gubun: '전력량',
|
|
||||||
jan: 106530, feb: 91716, mar: 111104, apr: 102663, may: 108912, jun: 91464,
|
|
||||||
jul: 121245, aug: 90785, sep: 120586, oct: 105718, nov: 96191, dec: 111513
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss">
|
||||||
|
// @import '@/assets/scss/common.scss';
|
||||||
@import '@/assets/scss/var.scss';
|
@import '@/assets/scss/var.scss';
|
||||||
|
|
||||||
@each $theme in dark, light {
|
@each $theme in dark, light {
|
||||||
.v-application.#{$theme}-mode {
|
.v-application.#{$theme}-mode {
|
||||||
.tui-grid {
|
.tui-grid {
|
||||||
|
|
||||||
&-row-odd,
|
&-row-odd,
|
||||||
&-row-even {
|
&-row-even {
|
||||||
&:hover>.colrowspan {
|
&:hover > .colrowspan {
|
||||||
background-color: map-deep-get($config,
|
background-color: map-deep-get(
|
||||||
|
$config,
|
||||||
#{$theme},
|
#{$theme},
|
||||||
'tui-grid-cell-backgroundColor'
|
'tui-grid-cell-backgroundColor'
|
||||||
) !important;
|
) !important;
|
||||||
@ -1055,10 +873,10 @@ const dataPathDataExample = [
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&-cell {
|
&-cell {
|
||||||
&.row-selected.colrowspan {
|
&.row-selected.colrowspan {
|
||||||
background-color: map-deep-get($config,
|
background-color: map-deep-get(
|
||||||
|
$config,
|
||||||
#{$theme},
|
#{$theme},
|
||||||
'tui-grid-cell-backgroundColor'
|
'tui-grid-cell-backgroundColor'
|
||||||
) !important;
|
) !important;
|
||||||
|
Reference in New Issue
Block a user