Compare commits
15 Commits
85fc9a62af
...
2dd0c6a72c
Author | SHA1 | Date | |
---|---|---|---|
2dd0c6a72c | |||
631637a8e1 | |||
3ff87852e5 | |||
117e0adeb9 | |||
402b09440f | |||
71f7cf4d30 | |||
d3984182e8 | |||
933d4b751f | |||
020432d5ac | |||
3f99958fe3 | |||
898df6743a | |||
dd559629ab | |||
d45d141c3c | |||
1453e75f9a | |||
7227d5d56c |
@ -1259,19 +1259,11 @@ a {
|
|||||||
opacity: 0;
|
opacity: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.v-list-item__content {
|
|
||||||
background-color: currentColor;
|
|
||||||
}
|
|
||||||
|
|
||||||
.v-list-item__title {
|
.v-list-item__title {
|
||||||
color: map-deep-get($config,
|
color: map-deep-get($config,
|
||||||
#{$theme},
|
#{$theme},
|
||||||
"tui-datepicker-calendar-color"
|
"tui-datepicker-calendar-color"
|
||||||
);
|
);
|
||||||
|
|
||||||
@if $theme ==light {
|
|
||||||
color: #fff !important;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1314,18 +1306,24 @@ a {
|
|||||||
.btn-close-menu-list {
|
.btn-close-menu-list {
|
||||||
min-width: 100px;
|
min-width: 100px;
|
||||||
border-color: transparent;
|
border-color: transparent;
|
||||||
|
background-color: map-deep-get($config, #{$theme}, "btn-header-select-bg") !important;
|
||||||
|
|
||||||
.v-list-item {
|
.v-list-item {
|
||||||
min-height: 30px;
|
min-height: 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.v-list-item__title {
|
.v-list-item__title {
|
||||||
color: #fff;
|
color: map-deep-get($config, #{$theme}, "btn-header-select-color");
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
color: #46c0ff;
|
color: #46c0ff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.v-btn {
|
||||||
|
background-color: transparent !important;
|
||||||
|
color: map-deep-get($config, #{$theme}, "btn-header-select-color") !important;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[hover-tooltip] {
|
[hover-tooltip] {
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
.v-select__custom {
|
.v-select__custom {
|
||||||
|
padding: 0.125rem;
|
||||||
|
|
||||||
&.v-text-field.v-text-field--solo:not(.v-text-field--solo-flat)>.v-input__control>.v-input__slot {
|
&.v-text-field.v-text-field--solo:not(.v-text-field--solo-flat)>.v-input__control>.v-input__slot {
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
@ -42,6 +44,10 @@
|
|||||||
legend {
|
legend {
|
||||||
width: 0;
|
width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.v-select-list {
|
||||||
|
padding: 0 1rem;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.v-input__custom {
|
.v-input__custom {
|
||||||
|
@ -168,6 +168,8 @@ $config: (
|
|||||||
ant-btn-default-bg:#FFFFFF2E,
|
ant-btn-default-bg:#FFFFFF2E,
|
||||||
ant-btn-default-color:#FFFFFFD9,
|
ant-btn-default-color:#FFFFFFD9,
|
||||||
ant-btn-default-border-outlined:#424242,
|
ant-btn-default-border-outlined:#424242,
|
||||||
|
btn-header-select-bg: #1F1F1F,
|
||||||
|
btn-header-select-color:#FFFFFFD9,
|
||||||
),
|
),
|
||||||
light: (w-g5: $--color-gray_555,
|
light: (w-g5: $--color-gray_555,
|
||||||
g5-w: $--color-white,
|
g5-w: $--color-white,
|
||||||
@ -300,5 +302,7 @@ $config: (
|
|||||||
ant-btn-default-bg:#00000026,
|
ant-btn-default-bg:#00000026,
|
||||||
ant-btn-default-color:#000000E0,
|
ant-btn-default-color:#000000E0,
|
||||||
ant-btn-default-border-outlined:#D9D9D9,
|
ant-btn-default-border-outlined:#D9D9D9,
|
||||||
|
btn-header-select-color:#1F1F1F,
|
||||||
|
btn-header-select-bg:#FFFFFF,
|
||||||
),
|
),
|
||||||
);
|
);
|
@ -27,7 +27,7 @@
|
|||||||
/> -->
|
/> -->
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<v-list class="pa-2">
|
<v-list class="pa-2 btn-close-menu-list" >
|
||||||
<!-- <v-list-item class="mb-1">-->
|
<!-- <v-list-item class="mb-1">-->
|
||||||
<!-- <div class="d-flex align-center">-->
|
<!-- <div class="d-flex align-center">-->
|
||||||
<!-- <v-avatar class="mr-1" size="20">-->
|
<!-- <v-avatar class="mr-1" size="20">-->
|
||||||
|
@ -1,19 +1,26 @@
|
|||||||
<template>
|
<template>
|
||||||
<h1 class="h1-title">
|
<h1 class="h1-title">
|
||||||
<v-avatar size="12" :style="{ backgroundColor: 'currentColor' }"></v-avatar>
|
<v-avatar size="12" :style="{ backgroundColor: 'currentColor' }"></v-avatar>
|
||||||
{{ text }}
|
{{ text ? text : menuNm}}
|
||||||
</h1>
|
</h1>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import { mapState } from 'vuex';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "PageTitle",
|
name: "PageTitle",
|
||||||
props: {
|
props: {
|
||||||
text: {
|
text: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true,
|
required: false,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
computed: {
|
||||||
|
...mapState({
|
||||||
|
menuNm: state => state.activeMenuInfo.menuNm,
|
||||||
|
}),
|
||||||
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -71,14 +71,12 @@
|
|||||||
</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">
|
||||||
<!-- <v-btn :ripple="false" @click="setUpdate($event)">확인</v-btn>
|
|
||||||
<v-btn :ripple="false" @click="dialogOpenCloseEvent(dialog)">닫기</v-btn> -->
|
<a-button :ripple="false" @click="dialogOpenCloseEvent(dialog)"
|
||||||
<!-- <v-btn v-if="item.closeBtnFg || false" :ripple="false" @click="deleteBtnAction($event)">삭제</v-btn> -->
|
|
||||||
<a-button :ripple="false" @click="setUpdate($event)" class="mr-2">확인</a-button>
|
|
||||||
<a-button :ripple="false" type="primary" @click="dialogOpenCloseEvent(dialog)"
|
|
||||||
class="mr-2">닫기</a-button>
|
class="mr-2">닫기</a-button>
|
||||||
<a-button v-if="item.closeBtnFg || false" :ripple="false" icon="delete" type="danger" ghost danger
|
<a-button v-if="item.closeBtnFg || false" :ripple="false" type="danger" ghost danger
|
||||||
@click="deleteBtnAction($event)">삭제</a-button>
|
@click="deleteBtnAction($event)" class="mr-2">삭제</a-button>
|
||||||
|
<a-button :ripple="false" type="primary" @click="setUpdate($event)" >확인</a-button>
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-dialog>
|
</v-dialog>
|
||||||
@ -298,46 +296,46 @@ export default {
|
|||||||
},
|
},
|
||||||
async setSelectValueList01() {
|
async setSelectValueList01() {
|
||||||
// form으로 popup 사용할 때 인자로 eqpmKindId, eqpmGrpId 보내줘야한다.
|
// form으로 popup 사용할 때 인자로 eqpmKindId, eqpmGrpId 보내줘야한다.
|
||||||
// let res = await this.postApiReturn({
|
let res = await this.postApiReturn({
|
||||||
// apiKey: 'selectEqpmGrpCodeList',
|
apiKey: 'selectEqpmGrpCodeList',
|
||||||
// resKey: 'eqpmGrpCodeLists',
|
resKey: 'eqpmGrpCodeLists',
|
||||||
// sendParam: {
|
sendParam: {
|
||||||
// eqpmKindId:
|
eqpmKindId:
|
||||||
// this.item.eqpmKindId != undefined
|
this.item.eqpmKindId != undefined
|
||||||
// ? this.item.eqpmKindId
|
? this.item.eqpmKindId
|
||||||
// : this.searchParam.eqpmKindId,
|
: this.searchParam.eqpmKindId,
|
||||||
// },
|
},
|
||||||
// // form을 통해 popup을 사용할 경우 -> this.item.eqpmKindId 사용
|
// form을 통해 popup을 사용할 경우 -> this.item.eqpmKindId 사용
|
||||||
// // 부모 페이지에서 설비종류인 eqpmKindId 값을 꼭 가져와야한다.
|
// 부모 페이지에서 설비종류인 eqpmKindId 값을 꼭 가져와야한다.
|
||||||
// });
|
});
|
||||||
// if (res.length > 0) {
|
if (res.length > 0) {
|
||||||
// this.selectValueList01 = await res.map(obj => {
|
this.selectValueList01 = await res.map(obj => {
|
||||||
// return {
|
return {
|
||||||
// text: obj.eqpmGrpNm,
|
text: obj.eqpmGrpNm,
|
||||||
// value: obj.eqpmGrpId,
|
value: obj.eqpmGrpId,
|
||||||
// };
|
};
|
||||||
// });
|
});
|
||||||
// // form을 통해 popup을 사용할 경우 -> this.item.eqpmGrpId 사용
|
// form을 통해 popup을 사용할 경우 -> this.item.eqpmGrpId 사용
|
||||||
// // 부모 페이지에서 설비그룹을 선택한 값이 있다면(eqpmGrpId) 그 값으로 바인딩 아닐 경우 조회한 데이터의 첫번째 값으로 선택
|
// 부모 페이지에서 설비그룹을 선택한 값이 있다면(eqpmGrpId) 그 값으로 바인딩 아닐 경우 조회한 데이터의 첫번째 값으로 선택
|
||||||
// // console.log('this.item.eqpmGrpId : ', this.item.eqpmGrpId);
|
// console.log('this.item.eqpmGrpId : ', this.item.eqpmGrpId);
|
||||||
// // console.log('this.searchParam.eqpmGrpId : ', this.searchParam.eqpmGrpId);
|
// console.log('this.searchParam.eqpmGrpId : ', this.searchParam.eqpmGrpId);
|
||||||
// this.selectValue01 =
|
this.selectValue01 =
|
||||||
// this.item.eqpmGrpId != undefined
|
this.item.eqpmGrpId != undefined
|
||||||
// ? this.item.eqpmGrpId
|
? this.item.eqpmGrpId
|
||||||
// : this.searchParam.eqpmGrpId != undefined
|
: this.searchParam.eqpmGrpId != undefined
|
||||||
// ? this.searchParam.eqpmGrpId
|
? this.searchParam.eqpmGrpId
|
||||||
// : this.selectValueList01[0].value;
|
: this.selectValueList01[0].value;
|
||||||
// } else {
|
} else {
|
||||||
// this.selectValueList01 = [];
|
this.selectValueList01 = [];
|
||||||
// this.selectValue01 = null;
|
this.selectValue01 = null;
|
||||||
// }
|
}
|
||||||
|
|
||||||
this.selectValueList01 = [
|
// this.selectValueList01 = [
|
||||||
{ label: '냉동기고온', value: '냉동기고온' },
|
// { label: '냉동기고온', value: '냉동기고온' },
|
||||||
{ label: '냉동기저온', value: '냉동기저온' },
|
// { label: '냉동기저온', value: '냉동기저온' },
|
||||||
{ label: '공조기', value: '공조기' },
|
// { label: '공조기', value: '공조기' },
|
||||||
{ label: '보일러', value: '보일러' }
|
// { label: '보일러', value: '보일러' }
|
||||||
];
|
// ];
|
||||||
},
|
},
|
||||||
search() {
|
search() {
|
||||||
this.getGridData();
|
this.getGridData();
|
||||||
@ -388,44 +386,35 @@ export default {
|
|||||||
this.loadGrid = false;
|
this.loadGrid = false;
|
||||||
|
|
||||||
let res = [];
|
let res = [];
|
||||||
// res = await this.postApiReturn({
|
res = await this.postApiReturn({
|
||||||
// apiKey: 'selectEgrpPysclQtyPop',
|
apiKey: 'selectEgrpPysclQtyPop',
|
||||||
// resKey: 'egrpPysclQtyData',
|
resKey: 'egrpPysclQtyData',
|
||||||
// sendParam: {
|
sendParam: {
|
||||||
// searchWord: this.searchWord,
|
searchWord: this.searchWord,
|
||||||
// eqpmGrpId: this.selectValue01,
|
eqpmGrpId: this.selectValue01,
|
||||||
// openMode: this.item.openMode,
|
openMode: this.item.openMode,
|
||||||
// },
|
},
|
||||||
// });
|
});
|
||||||
// let newRes = [];
|
let newRes = [];
|
||||||
// let tempTagList = this.pyscPopVal.split('/*wq2a/');
|
let tempTagList = this.pyscPopVal.split('/*wq2a/');
|
||||||
// let tagList = tempTagList.filter(item => item != '');
|
let tagList = tempTagList.filter(item => item != '');
|
||||||
// if (tagList.length > 0) {
|
if (tagList.length > 0) {
|
||||||
// newRes = res.filter(item => {
|
newRes = res.filter(item => {
|
||||||
// return !tagList.includes(item.pysclQtyId);
|
return !tagList.includes(item.pysclQtyId);
|
||||||
// });
|
});
|
||||||
// res = newRes;
|
res = newRes;
|
||||||
// }
|
}
|
||||||
|
|
||||||
// //이미 선택된 값들 제거(배열)
|
|
||||||
// if (this.item.dataList) {
|
|
||||||
// if (this.item.dataList.length > 0) {
|
|
||||||
// newRes = res.filter(item => {
|
|
||||||
// return !this.item.dataList.includes(item.pysclQtyId);
|
|
||||||
// });
|
|
||||||
// res = newRes;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
res = [
|
|
||||||
{
|
|
||||||
'pysclQtyId': 'PYSCL00001',
|
|
||||||
'pysclQtyCd': 'AMP_1A',
|
|
||||||
'pysclQtyNm': '회로1 전류A',
|
|
||||||
'pysclQtyTpNm': 'TAG'
|
|
||||||
|
|
||||||
|
//이미 선택된 값들 제거(배열)
|
||||||
|
if (this.item.dataList) {
|
||||||
|
if (this.item.dataList.length > 0) {
|
||||||
|
newRes = res.filter(item => {
|
||||||
|
return !this.item.dataList.includes(item.pysclQtyId);
|
||||||
|
});
|
||||||
|
res = newRes;
|
||||||
}
|
}
|
||||||
]
|
}
|
||||||
|
|
||||||
this.setModalGridData({
|
this.setModalGridData({
|
||||||
modalKey: this.myModalKey,
|
modalKey: this.myModalKey,
|
||||||
gridKey: this.grid_01,
|
gridKey: this.grid_01,
|
||||||
|
@ -2,12 +2,8 @@
|
|||||||
<v-row class="search-box" align="center">
|
<v-row class="search-box" align="center">
|
||||||
<v-col :cols="option.labelCols" class="py-0">
|
<v-col :cols="option.labelCols" class="py-0">
|
||||||
<label for="" class="search-box-label">
|
<label for="" class="search-box-label">
|
||||||
<v-icon
|
<v-icon v-if="item.iconShow" small
|
||||||
v-if="item.iconShow"
|
:class="['mr-1', item.required ? 'icon-orange' : 'icon-blue']">$icoBulletPoint</v-icon>
|
||||||
small
|
|
||||||
:class="['mr-1', item.required ? 'icon-orange' : 'icon-blue']"
|
|
||||||
>$icoBulletPoint</v-icon
|
|
||||||
>
|
|
||||||
{{ option.labelContent }}
|
{{ option.labelContent }}
|
||||||
</label>
|
</label>
|
||||||
</v-col>
|
</v-col>
|
||||||
@ -30,9 +26,9 @@
|
|||||||
<div class="pa-6 pt-0">
|
<div class="pa-6 pt-0">
|
||||||
<v-row align="center">
|
<v-row align="center">
|
||||||
<v-col :cols="5">
|
<v-col :cols="5">
|
||||||
<component :is="'SelectBox'" ref="SelectBox1" :labelCols="12" :textCols="12" :iconShow="true"
|
<component :is="'SelectBox'" ref="SelectBox1" :labelCols="12" :textCols="12"
|
||||||
:propsValue="selectValue01" :itemList="selectValueList01" :label="'설비그룹'"
|
:iconShow="true" :propsValue="selectValue01" :itemList="selectValueList01"
|
||||||
@update:propsValue="selectValue01 = $event" :readonly="item.openMode == undefined
|
:label="'설비그룹'" @update:propsValue="selectValue01 = $event" :readonly="item.openMode == undefined
|
||||||
? openMode
|
? openMode
|
||||||
: item.openMode == 'ALL'
|
: item.openMode == 'ALL'
|
||||||
? false
|
? false
|
||||||
@ -47,14 +43,14 @@
|
|||||||
물리량명
|
물리량명
|
||||||
</label>
|
</label>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="9"> <v-text-field append-icon="" class="v-input__custom"
|
<v-col :cols="9"> <v-text-field append-icon="" class="v-input__custom" outlined
|
||||||
outlined :hide-details="true" v-model="searchWord"
|
:hide-details="true" v-model="searchWord" @keyup.enter="search"><template
|
||||||
@keyup.enter="search"><template v-slot:append>
|
v-slot:append>
|
||||||
<!-- Custom SVG icon -->
|
<!-- Custom SVG icon -->
|
||||||
<v-icon>$icoSearch</v-icon>
|
<v-icon>$icoSearch</v-icon>
|
||||||
|
|
||||||
|
|
||||||
</template></v-text-field></v-col>
|
</template></v-text-field></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()"
|
||||||
@ -76,9 +72,9 @@
|
|||||||
</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="setUpdate($event)" class="mr-2">확인</a-button>
|
<a-button :ripple="false" @click="dialogOpenCloseEvent(dialog)" class="mr-2">닫기</a-button>
|
||||||
<a-button :ripple="false" type="primary" @click="dialogOpenCloseEvent(dialog)"
|
<a-button :ripple="false" type="primary" @click="setUpdate($event)">확인</a-button>
|
||||||
class="mr-2">닫기</a-button>
|
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-dialog>
|
</v-dialog>
|
||||||
@ -274,36 +270,30 @@ export default {
|
|||||||
this.gridInit();
|
this.gridInit();
|
||||||
},
|
},
|
||||||
async setSelectValueList01() {
|
async setSelectValueList01() {
|
||||||
// let res = await this.postApiReturn({
|
let res = await this.postApiReturn({
|
||||||
// apiKey: 'selectEqpmGrpCodeList',
|
apiKey: 'selectEqpmGrpCodeList',
|
||||||
// resKey: 'eqpmGrpCodeLists',
|
resKey: 'eqpmGrpCodeLists',
|
||||||
// sendParam: { eqpmKindId: this.searchParam.eqpmKindId },
|
sendParam: { eqpmKindId: this.searchParam.eqpmKindId },
|
||||||
// // 부모 페이지에서 설비종류인 eqpmKindId 값을 꼭 가져와야한다.
|
// 부모 페이지에서 설비종류인 eqpmKindId 값을 꼭 가져와야한다.
|
||||||
// });
|
});
|
||||||
// if (res.length > 0) {
|
if (res.length > 0) {
|
||||||
// this.selectValueList01 = await res.map(obj => {
|
this.selectValueList01 = await res.map(obj => {
|
||||||
// return {
|
return {
|
||||||
// text: obj.eqpmGrpNm,
|
text: obj.eqpmGrpNm,
|
||||||
// value: obj.eqpmGrpId,
|
value: obj.eqpmGrpId,
|
||||||
// };
|
};
|
||||||
// });
|
});
|
||||||
// // 부모 페이지에서 설비그룹을 선택한 값이 있다면(eqpmGrpId) 그 값으로 바인딩 아닐 경우 조회한 데이터의 첫번째 값으로 선택
|
// 부모 페이지에서 설비그룹을 선택한 값이 있다면(eqpmGrpId) 그 값으로 바인딩 아닐 경우 조회한 데이터의 첫번째 값으로 선택
|
||||||
// this.selectValue01 =
|
this.selectValue01 =
|
||||||
// this.searchParam.eqpmGrpId != undefined
|
this.searchParam.eqpmGrpId != undefined
|
||||||
// ? this.searchParam.eqpmGrpId
|
? this.searchParam.eqpmGrpId
|
||||||
// : this.selectValueList01[0].value;
|
: this.selectValueList01[0].value;
|
||||||
// // this.selectValue01 = this.selectValueList01[0].value;
|
// this.selectValue01 = this.selectValueList01[0].value;
|
||||||
// } else {
|
} else {
|
||||||
// this.selectValueList01 = [];
|
this.selectValueList01 = [];
|
||||||
// this.selectValue01 = null;
|
this.selectValue01 = null;
|
||||||
// }
|
}
|
||||||
|
|
||||||
this.selectValueList01 = [
|
|
||||||
{ label: '냉동기고온', value: '냉동기고온' },
|
|
||||||
{ label: '냉동기저온', value: '냉동기저온' },
|
|
||||||
{ label: '공조기', value: '공조기' },
|
|
||||||
{ label: '보일러', value: '보일러' }
|
|
||||||
];
|
|
||||||
},
|
},
|
||||||
search() {
|
search() {
|
||||||
this.getGridData();
|
this.getGridData();
|
||||||
@ -341,34 +331,26 @@ export default {
|
|||||||
},
|
},
|
||||||
async getGridData() {
|
async getGridData() {
|
||||||
this.loadGrid = false;
|
this.loadGrid = false;
|
||||||
// let res = [];
|
|
||||||
// let res = await this.postApiReturn({
|
let res = await this.postApiReturn({
|
||||||
// apiKey: 'selectEqpmBaseInfoPop',
|
apiKey: 'selectEqpmBaseInfoPop',
|
||||||
// resKey: 'epqmBaseInfoData',
|
resKey: 'epqmBaseInfoData',
|
||||||
// sendParam: {
|
sendParam: {
|
||||||
// eqpmGrpId: this.selectValue01,
|
eqpmGrpId: this.selectValue01,
|
||||||
// searchWord: this.searchWord,
|
searchWord: this.searchWord,
|
||||||
// // openMode : this.item.openMode == undefined ? this.openMode : this.item.openMode
|
// openMode : this.item.openMode == undefined ? this.openMode : this.item.openMode
|
||||||
// },
|
},
|
||||||
// });
|
});
|
||||||
// // grid와 popup eqpmId 값 중복되는 것 제거하는 로직 - 시작
|
// grid와 popup eqpmId 값 중복되는 것 제거하는 로직 - 시작
|
||||||
// let newRes = [];
|
let newRes = [];
|
||||||
// if (this.bindingGridEqpmIdList.length > 0) {
|
if (this.bindingGridEqpmIdList.length > 0) {
|
||||||
// newRes = res.filter(item => {
|
newRes = res.filter(item => {
|
||||||
// return !this.bindingGridEqpmIdList.includes(item.eqpmId);
|
return !this.bindingGridEqpmIdList.includes(item.eqpmId);
|
||||||
// });
|
});
|
||||||
// res = newRes;
|
res = newRes;
|
||||||
// }
|
}
|
||||||
// grid와 popup eqpmId 값 중복되는 것 제거하는 로직 - 끝
|
// grid와 popup eqpmId 값 중복되는 것 제거하는 로직 - 끝
|
||||||
|
|
||||||
const res = [
|
|
||||||
{
|
|
||||||
'eqpmId': 'PYSCL00001',
|
|
||||||
'eqpmNm': 'AMP_1A',
|
|
||||||
|
|
||||||
}
|
|
||||||
]
|
|
||||||
|
|
||||||
this.setModalGridData({
|
this.setModalGridData({
|
||||||
modalKey: this.myModalKey,
|
modalKey: this.myModalKey,
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
@ -441,9 +423,9 @@ export default {
|
|||||||
// this.dialog = false;
|
// this.dialog = false;
|
||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
// if (this.myBindingData.length <= 0) {
|
if (this.myBindingData.length <= 0) {
|
||||||
// return alert('설비상세 리스트를 먼저 선택해주세요.');
|
return alert('설비상세 리스트를 먼저 선택해주세요.');
|
||||||
// }
|
}
|
||||||
this.dialog = !val;
|
this.dialog = !val;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -481,7 +463,7 @@ var eqpmBaseInfoPop = {
|
|||||||
// .v-dialog {
|
// .v-dialog {
|
||||||
// .v-card {
|
// .v-card {
|
||||||
// &__title {
|
// &__title {
|
||||||
|
|
||||||
|
|
||||||
// @if $theme ==dark {
|
// @if $theme ==dark {
|
||||||
// background-color: #2d3355;
|
// background-color: #2d3355;
|
||||||
|
@ -36,7 +36,7 @@
|
|||||||
계산설명
|
계산설명
|
||||||
</label>
|
</label>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="10" class="mr-4 py-0" >
|
<v-col :cols="11" class="pr-8 py-0" >
|
||||||
<v-text-field append-icon="" class="v-input__custom" outlined
|
<v-text-field append-icon="" class="v-input__custom" outlined
|
||||||
:hide-details="true" v-model="searchWord" @keyup.enter="search"><template v-slot:append>
|
:hide-details="true" v-model="searchWord" @keyup.enter="search"><template v-slot:append>
|
||||||
<!-- Custom SVG icon -->
|
<!-- Custom SVG icon -->
|
||||||
@ -45,7 +45,7 @@
|
|||||||
|
|
||||||
</template></v-text-field>
|
</template></v-text-field>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col cols="1" class="py-0">
|
<v-col cols="1" class="py-0" style="display: flex; justify-content: flex-end;">
|
||||||
<a-button icon="search" type="primary" @click="search()" class="search-button">조회</a-button>
|
<a-button icon="search" type="primary" @click="search()" class="search-button">조회</a-button>
|
||||||
<!-- <v-btn :ripple="false" @click="initSearch()">
|
<!-- <v-btn :ripple="false" @click="initSearch()">
|
||||||
초기화
|
초기화
|
||||||
@ -63,10 +63,8 @@
|
|||||||
</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-end">
|
||||||
<!-- <v-btn :ripple="false" @click="setUpdate($event)">확인</v-btn>
|
<a-button :ripple="false" @click="dialogOpenCloseEvent(dialog)" class="mr-2">닫기</a-button>
|
||||||
<v-btn :ripple="false" @click="dialogOpenCloseEvent(dialog)">닫기</v-btn> -->
|
<a-button :ripple="false" type="primary" @click="setUpdate($event)" >확인</a-button>
|
||||||
<a-button :ripple="false" @click="setUpdate($event)" class="mr-2">확인</a-button>
|
|
||||||
<a-button :ripple="false" type="primary" @click="dialogOpenCloseEvent(dialog)">닫기</a-button>
|
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-dialog>
|
</v-dialog>
|
||||||
@ -306,38 +304,22 @@ export default {
|
|||||||
},
|
},
|
||||||
async getGridData() {
|
async getGridData() {
|
||||||
this.loadGrid = false;
|
this.loadGrid = false;
|
||||||
// let res = await this.postApiReturn({
|
let res = await this.postApiReturn({
|
||||||
// apiKey: 'selectEqpmCalcPop',
|
apiKey: 'selectEqpmCalcPop',
|
||||||
// resKey: 'eqpmCalcPopData',
|
resKey: 'eqpmCalcPopData',
|
||||||
// sendParam: {
|
sendParam: {
|
||||||
// calcDescLike: this.searchWord,
|
calcDescLike: this.searchWord,
|
||||||
// openMode: this.item.openMode != undefined ? this.item.openMode : this.openMode
|
openMode: this.item.openMode != undefined ? this.item.openMode : this.openMode
|
||||||
// },
|
|
||||||
// });
|
|
||||||
// if (this.myBindingData['calcProc'] != '' || this.myBindingData['calcProc'] != null || this.myBindingData['calcProc'] != undefined) {
|
|
||||||
// let newRes = [];
|
|
||||||
// newRes = res.filter(item => {
|
|
||||||
// return item.calcProc != this.myBindingData['calcProc']
|
|
||||||
// });
|
|
||||||
// res = newRes;
|
|
||||||
// }
|
|
||||||
|
|
||||||
const res = [
|
|
||||||
{
|
|
||||||
'calcProc': 'AVG_CNT2',
|
|
||||||
'argCnt': '2',
|
|
||||||
'calcDesc': '두개 변수에 대한 평균'
|
|
||||||
|
|
||||||
},
|
},
|
||||||
|
});
|
||||||
{ 'calcProc': 'PROC001', argCnt: 2, 'calcDesc': '덧셈 연산' },
|
if (this.myBindingData['calcProc'] != '' || this.myBindingData['calcProc'] != null || this.myBindingData['calcProc'] != undefined) {
|
||||||
{ 'calcProc': 'PROC002', argCnt: 1, 'calcDesc': '제곱 연산' },
|
let newRes = [];
|
||||||
{ 'calcProc': 'PROC003', argCnt: 2, 'calcDesc': '곱셈 연산' },
|
newRes = res.filter(item => {
|
||||||
{ 'calcProc': 'PROC004', argCnt: 1, 'calcDesc': '루트 연산' },
|
return item.calcProc != this.myBindingData['calcProc']
|
||||||
{ 'calcProc': 'PROC005', argCnt: 3, 'calcDesc': '최대값 계산' },
|
});
|
||||||
{ 'calcProc': 'PROC006', argCnt: 3, 'calcDesc': '최소값 계산' },
|
res = newRes;
|
||||||
|
}
|
||||||
]
|
|
||||||
this.setModalGridData({
|
this.setModalGridData({
|
||||||
modalKey: this.myModalKey,
|
modalKey: this.myModalKey,
|
||||||
gridKey: this.grid_01,
|
gridKey: this.grid_01,
|
||||||
|
@ -124,7 +124,7 @@ export default {
|
|||||||
return {
|
return {
|
||||||
dialog: false,
|
dialog: false,
|
||||||
|
|
||||||
loadGrid: true,
|
loadGrid: false,
|
||||||
grid_01: 'grid_01',
|
grid_01: 'grid_01',
|
||||||
myModalKey: 'evtObjPop',
|
myModalKey: 'evtObjPop',
|
||||||
modalDataKey: 'modalData2',
|
modalDataKey: 'modalData2',
|
||||||
@ -165,35 +165,6 @@ export default {
|
|||||||
computed: {
|
computed: {
|
||||||
...mapState({
|
...mapState({
|
||||||
searchParam(state) {
|
searchParam(state) {
|
||||||
const myOptions = {
|
|
||||||
columnOptions: {
|
|
||||||
resizable: true,
|
|
||||||
},
|
|
||||||
treeColumnOptions: {
|
|
||||||
name: 'readPlcNm', // Showing tree table
|
|
||||||
useIcon: false, // Not using icon
|
|
||||||
indentWidth: 10,
|
|
||||||
},
|
|
||||||
};
|
|
||||||
const dataPathMock = {
|
|
||||||
'grid_01': {
|
|
||||||
column: [
|
|
||||||
{ header: '검침개소명', name: 'readPlcNm', align: 'left', minWidth: 400, },
|
|
||||||
{ header: '검침개소', name: 'plcKind', minWidth: 100, align: 'center', },
|
|
||||||
// {
|
|
||||||
// header: '사용 여부', name: 'useFg', minWidth: 100, align: 'center',
|
|
||||||
// },
|
|
||||||
],
|
|
||||||
data: sampleData,
|
|
||||||
option: myOptions
|
|
||||||
}
|
|
||||||
};
|
|
||||||
return {
|
|
||||||
modalData2: {
|
|
||||||
evtObjPop: dataPathMock
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// end test
|
|
||||||
return state.pageData[this.parentPrgmId];
|
return state.pageData[this.parentPrgmId];
|
||||||
},
|
},
|
||||||
myBindingData(state) {
|
myBindingData(state) {
|
||||||
@ -277,6 +248,9 @@ export default {
|
|||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
|
header: {
|
||||||
|
height: 38,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
this.setModalGridOption({
|
this.setModalGridOption({
|
||||||
modalKey: this.myModalKey,
|
modalKey: this.myModalKey,
|
||||||
@ -300,7 +274,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
async getGridData() {
|
async getGridData() {
|
||||||
// this.loadGrid = false;
|
this.loadGrid = false;
|
||||||
|
|
||||||
const res = await this.postApiReturn({
|
const res = await this.postApiReturn({
|
||||||
apiKey: 'selectTagBaseInfo',
|
apiKey: 'selectTagBaseInfo',
|
||||||
@ -376,7 +350,6 @@ export default {
|
|||||||
// this.dialog = false;
|
// this.dialog = false;
|
||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
console.log("this.dialog: ", this.dialog);
|
|
||||||
this.dialog = !val;
|
this.dialog = !val;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -389,50 +362,6 @@ var evtObjPop = {
|
|||||||
option: {},
|
option: {},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const sampleData = [
|
|
||||||
{
|
|
||||||
readPlcNm: '서울 본사',
|
|
||||||
plcKind: '본사',
|
|
||||||
useFg: '사용',
|
|
||||||
_children: [
|
|
||||||
{
|
|
||||||
readPlcNm: '서울 본사 - 1층',
|
|
||||||
plcKind: '층',
|
|
||||||
useFg: '사용',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
readPlcNm: '서울 본사 - 2층',
|
|
||||||
plcKind: '층',
|
|
||||||
useFg: '미사용',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
readPlcNm: '부산 지사',
|
|
||||||
plcKind: '지사',
|
|
||||||
useFg: '사용',
|
|
||||||
_children: [
|
|
||||||
{
|
|
||||||
readPlcNm: '부산 지사 - A동',
|
|
||||||
plcKind: '건물',
|
|
||||||
useFg: '사용',
|
|
||||||
_children: [
|
|
||||||
{
|
|
||||||
readPlcNm: '부산 지사 - A동 1층',
|
|
||||||
plcKind: '층',
|
|
||||||
useFg: '사용',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
readPlcNm: '대전 창고',
|
|
||||||
plcKind: '창고',
|
|
||||||
useFg: '미사용',
|
|
||||||
},
|
|
||||||
];
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
@ -20,10 +20,10 @@
|
|||||||
outlined
|
outlined
|
||||||
:multiple="multiple"
|
:multiple="multiple"
|
||||||
:hide-details="true"
|
:hide-details="true"
|
||||||
append-icon=""
|
|
||||||
:class="['v-select__custom', customClass]"
|
:class="['v-select__custom', customClass]"
|
||||||
:disabled="disabled"
|
:disabled="disabled"
|
||||||
:readonly="readonly"
|
:readonly="readonly"
|
||||||
|
append-icon=""
|
||||||
><template v-slot:append>
|
><template v-slot:append>
|
||||||
<v-icon>$icoChevronDown</v-icon>
|
<v-icon>$icoChevronDown</v-icon>
|
||||||
</template></v-select>
|
</template></v-select>
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div ref="gridParent">
|
<div ref="gridParent">
|
||||||
<Grid :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName" :parentPrgmId="parentPrgmId"
|
<Grid :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName" :parentPrgmId="parentPrgmId"
|
||||||
@getRowsData="getRowData" :innerTabGridInfo="innerTabGridInfo" :dataPath="dataPathMock" />
|
@getRowsData="getRowData" :innerTabGridInfo="innerTabGridInfo" />
|
||||||
</div>
|
</div>
|
||||||
<div ref="formParent" class="mt-4">
|
<div ref="formParent" class="mt-4">
|
||||||
<component :is="'Form'" :parentPrgmId="parentPrgmId" :bindingData="gridName" :detailList="detailDataSetTagList"
|
<component :is="'Form'" :parentPrgmId="parentPrgmId" :bindingData="gridName" :detailList="detailDataSetTagList"
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
:editorGrid="true"
|
:editorGrid="true"
|
||||||
:innerTabGridInfo="innerTabGridInfo"
|
:innerTabGridInfo="innerTabGridInfo"
|
||||||
@getRowsData="getRowData"
|
@getRowsData="getRowData"
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
@ -51,22 +50,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: 'addInfoId'},
|
|
||||||
{header: 'Data 구분',name: 'addInfoDataKind',align: 'center'},
|
|
||||||
{header: '추가 정보 값',name: 'addInfoVal',align: 'center', renderer: {type: NewCustomRenderer},editor: {type: NewCustomEditor},formatter(data) {return data.row.addInfoDataKind;},}
|
|
||||||
],
|
|
||||||
data: dataPathDataExample,
|
|
||||||
option: {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -444,37 +431,4 @@ export default {
|
|||||||
search() {},
|
search() {},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
const dataPathDataExample =
|
|
||||||
[
|
|
||||||
{
|
|
||||||
addInfoId:"경보 여부",
|
|
||||||
addInfoDataKind:"FG",
|
|
||||||
addInfoVal:"1"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
addInfoId:"예상 피크전력 여부",
|
|
||||||
addInfoDataKind:"FG",
|
|
||||||
addInfoVal:"0"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
addInfoId:"피크전력 여부",
|
|
||||||
addInfoDataKind:"FG",
|
|
||||||
addInfoVal:"1"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
addInfoId:"TAG 채널",
|
|
||||||
addInfoDataKind:"숫자",
|
|
||||||
addInfoVal:"채널"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
addInfoId:"PLC IP",
|
|
||||||
addInfoDataKind:"문자",
|
|
||||||
addInfoVal:"채널"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
addInfoId:"PLC 포트",
|
|
||||||
addInfoDataKind:"숫자",
|
|
||||||
addInfoVal:"채널"
|
|
||||||
},
|
|
||||||
]
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -28,9 +28,7 @@
|
|||||||
<span class="body-2">닫기</span>
|
<span class="body-2">닫기</span>
|
||||||
<v-icon size="20">mdi-chevron-down</v-icon></a-button> -->
|
<v-icon size="20">mdi-chevron-down</v-icon></a-button> -->
|
||||||
</template>
|
</template>
|
||||||
<v-list class="py-2 btn-close-menu-list" :style="{
|
<v-list class="py-2 btn-close-menu-list">
|
||||||
backgroundColor: isDarkMode ? '#144985' : '#3f4d7d',
|
|
||||||
}">
|
|
||||||
<v-list-item class="px-2">
|
<v-list-item class="px-2">
|
||||||
<v-list-item-title @click="delAllTabsData()" class="body-2">전체 닫기</v-list-item-title>
|
<v-list-item-title @click="delAllTabsData()" class="body-2">전체 닫기</v-list-item-title>
|
||||||
</v-list-item>
|
</v-list-item>
|
||||||
@ -56,9 +54,7 @@
|
|||||||
<span class="body-2">즐겨찾기</span>
|
<span class="body-2">즐겨찾기</span>
|
||||||
<v-icon size="20">mdi-chevron-down</v-icon></a-button> -->
|
<v-icon size="20">mdi-chevron-down</v-icon></a-button> -->
|
||||||
</template>
|
</template>
|
||||||
<v-list v-if="myMenuList.length > 0" class="py-2 btn-close-menu-list" :style="{
|
<v-list v-if="myMenuList.length > 0" class="py-2 btn-close-menu-list">
|
||||||
backgroundColor: isDarkMode ? '#144985' : '#3f4d7d',
|
|
||||||
}">
|
|
||||||
<v-list-item v-for="item in myMenuList" :key="item.menuId" class="px-2" style="cursor: pointer">
|
<v-list-item v-for="item in myMenuList" :key="item.menuId" class="px-2" style="cursor: pointer">
|
||||||
<v-list-item-title @click="moveToMyMenu(item.url, item.menuId, item.prgmId)" class="body-2">{{
|
<v-list-item-title @click="moveToMyMenu(item.url, item.menuId, item.prgmId)" class="body-2">{{
|
||||||
item.menuNm
|
item.menuNm
|
||||||
@ -69,7 +65,9 @@
|
|||||||
<a-button id="refresh" class="btn-header" @click="removeBookMark" v-if="bookmarkBtn == 1">
|
<a-button id="refresh" class="btn-header" @click="removeBookMark" v-if="bookmarkBtn == 1">
|
||||||
<span class="material-icons" style="font-size: 17px">star</span>
|
<span class="material-icons" style="font-size: 17px">star</span>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button id="refresh" class="btn-header" @click="addBookMark" v-if="bookmarkBtn == 0">
|
<a-button id="refresh" class="btn-header" :style="{
|
||||||
|
display: 'flex',
|
||||||
|
alignItems: 'center'}" @click="addBookMark" v-if="bookmarkBtn == 0">
|
||||||
<span class="material-icons" style="font-size: 17px">star_border</span>
|
<span class="material-icons" style="font-size: 17px">star_border</span>
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button
|
<a-button
|
||||||
@ -178,9 +176,7 @@
|
|||||||
<span class="body-2">닫기</span>
|
<span class="body-2">닫기</span>
|
||||||
<v-icon size="20">mdi-chevron-down</v-icon></a-button>
|
<v-icon size="20">mdi-chevron-down</v-icon></a-button>
|
||||||
</template>
|
</template>
|
||||||
<v-list class="py-2 btn-close-menu-list" :style="{
|
<v-list class="py-2 btn-close-menu-list" >
|
||||||
backgroundColor: isDarkMode ? '#144985' : '#3f4d7d',
|
|
||||||
}">
|
|
||||||
<v-list-item class="px-2">
|
<v-list-item class="px-2">
|
||||||
<v-list-item-title @click="delAllTabsData()" class="body-2">전체 닫기</v-list-item-title>
|
<v-list-item-title @click="delAllTabsData()" class="body-2">전체 닫기</v-list-item-title>
|
||||||
</v-list-item>
|
</v-list-item>
|
||||||
@ -206,9 +202,7 @@
|
|||||||
<span class="body-2">즐겨찾기</span>
|
<span class="body-2">즐겨찾기</span>
|
||||||
<v-icon size="20">mdi-chevron-down</v-icon></a-button>
|
<v-icon size="20">mdi-chevron-down</v-icon></a-button>
|
||||||
</template>
|
</template>
|
||||||
<v-list v-if="myMenuList.length > 0" class="py-2 btn-close-menu-list" :style="{
|
<v-list v-if="myMenuList.length > 0" class="py-2 btn-close-menu-list" >
|
||||||
backgroundColor: isDarkMode ? '#144985' : '#3f4d7d',
|
|
||||||
}">
|
|
||||||
<v-list-item v-for="item in myMenuList" :key="item.menuId" class="px-2" style="cursor: pointer">
|
<v-list-item v-for="item in myMenuList" :key="item.menuId" class="px-2" style="cursor: pointer">
|
||||||
<v-list-item-title @click="moveToMyMenu(item.url, item.menuId, item.prgmId)" class="body-2">{{
|
<v-list-item-title @click="moveToMyMenu(item.url, item.menuId, item.prgmId)" class="body-2">{{
|
||||||
item.menuNm
|
item.menuNm
|
||||||
@ -447,80 +441,71 @@ export default {
|
|||||||
activeTree: {
|
activeTree: {
|
||||||
deep: true,
|
deep: true,
|
||||||
handler(newVal, oldVal) {
|
handler(newVal, oldVal) {
|
||||||
var _this = this;
|
var _this = this;
|
||||||
const nv = newVal[0];
|
const nv = newVal[0];
|
||||||
const ov = oldVal[0];
|
const ov = oldVal[0];
|
||||||
if (nv !== ov) {
|
if (nv !== ov) {
|
||||||
if (!nv) {
|
if (!nv) {
|
||||||
// 중복클릭 시 발생 상황 기존 값을 다시 넣어줌
|
// 중복클릭 시 발생 상황 기존 값을 다시 넣어줌
|
||||||
this.activeTree.push(ov);
|
this.activeTree.push(ov);
|
||||||
} else {
|
} else {
|
||||||
this.myPrgmId = nv;
|
this.myPrgmId = nv;
|
||||||
console.log("menu:", this.menuData);
|
if (this.menuData[nv].url) {
|
||||||
if (this.menuData[nv].url) {
|
const menuUrl = this.menuData[nv].url;
|
||||||
const menuUrl = this.menuData[nv].url;
|
const menuId = this.menuData[nv].menuId;
|
||||||
const menuId = this.menuData[nv].menuId;
|
|
||||||
|
|
||||||
const isCommMenu = menuUrl.indexOf("comm/");
|
const isCommMenu = menuUrl.indexOf('comm/');
|
||||||
const isEmsMenu = menuUrl.indexOf("ems/");
|
const isEmsMenu = menuUrl.indexOf('ems/');
|
||||||
const isCmmsMenu = menuUrl.indexOf("cmms/");
|
const isCmmsMenu = menuUrl.indexOf('cmms/');
|
||||||
|
|
||||||
// console.log('activeTree...');
|
// console.log('activeTree...');
|
||||||
console.log(isEmsMenu);
|
|
||||||
|
|
||||||
if (isCommMenu > -1 || isEmsMenu > -1 || isCmmsMenu > -1) {
|
if (isCommMenu > -1 || isEmsMenu > -1 || isCmmsMenu > -1) {
|
||||||
// console.log('activeTree if stmt1');
|
// console.log('activeTree if stmt1');
|
||||||
// console.log('this.isLoading : ', this.isLoading);
|
// console.log('this.isLoading : ', this.isLoading);
|
||||||
// if(this.isLoading == true){
|
// if(this.isLoading == true){
|
||||||
// console.log('if isLoading stmt1');
|
// console.log('if isLoading stmt1');
|
||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
console.log("this:", this.menuData[nv].url);
|
this.$router.push({
|
||||||
|
path: `${this.menuData[nv].url}?prgmId=${nv}`,
|
||||||
this.$router.push({
|
});
|
||||||
path: `/${this.menuData[nv].url}?prgmId=${nv}`,
|
// this.$router.beforeEach((to, from, next) => {
|
||||||
});
|
// if(_this.isLoading == true){
|
||||||
// this.$router.replace("/").then(() => {
|
// next(false);
|
||||||
// alert("hihi");
|
// }
|
||||||
// this.$router.push({
|
// if (!to.matched.length) {
|
||||||
// path: `${this.menuData[nv].url}?prgmId=${nv}`,
|
// next(false);
|
||||||
// });
|
// } else {
|
||||||
// });
|
// next();
|
||||||
|
// }
|
||||||
// this.$router.beforeEach((to, from, next) => {
|
// });
|
||||||
// if(_this.isLoading == true){
|
var tmp = 0;
|
||||||
// next(false);
|
for (var i = 0; i < this.myMenuList.length; i++) {
|
||||||
// }
|
if (this.myMenuList[i].menuId == menuId) {
|
||||||
// if (!to.matched.length) {
|
tmp = 1;
|
||||||
// next(false);
|
}
|
||||||
// } else {
|
}
|
||||||
// next();
|
this.bookmarkBtn = tmp;
|
||||||
// }
|
} else {
|
||||||
// });
|
// console.log('activeTree if stmt2');
|
||||||
var tmp = 0;
|
// console.log('this.isLoading : ', this.isLoading);
|
||||||
for (var i = 0; i < this.myMenuList.length; i++) {
|
// if(this.isLoading == true){
|
||||||
if (this.myMenuList[i].menuId == menuId) {
|
// console.log('if isLoading stmt2');
|
||||||
tmp = 1;
|
// return;
|
||||||
}
|
// }
|
||||||
}
|
this.$refs.routerTab.openIframe(
|
||||||
this.bookmarkBtn = tmp;
|
encodeURI(
|
||||||
} else {
|
`http://localhost:9999${this.menuData[nv].url}?prgmId=${nv}`,
|
||||||
// console.log('activeTree if stmt2');
|
),
|
||||||
// console.log('this.isLoading : ', this.isLoading);
|
this.menuData[nv].menuNm,
|
||||||
// if(this.isLoading == true){
|
);
|
||||||
// console.log('if isLoading stmt2');
|
}
|
||||||
// return;
|
this.$axios.get(`${this.menuData[nv].url}?$menuId=${menuId}`);
|
||||||
// }
|
} else alert('지정된 페이지 경로가 없습니다.');
|
||||||
this.$refs.routerTab.openIframe(
|
}
|
||||||
encodeURI(`http://localhost:9999${this.menuData[nv].url}?prgmId=${nv}`),
|
}
|
||||||
this.menuData[nv].menuNm
|
},
|
||||||
);
|
|
||||||
}
|
|
||||||
this.$axios.get(`${this.menuData[nv].url}?$menuId=${menuId}`);
|
|
||||||
} else alert("지정된 페이지 경로가 없습니다.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
menuData: {
|
menuData: {
|
||||||
deep: true,
|
deep: true,
|
||||||
|
@ -16,8 +16,8 @@
|
|||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
<v-row ref="contents">
|
<v-row ref="contents" class="pt-2">
|
||||||
<v-col :cols="5" style="height:100%">
|
<v-col :cols="5" style="height:100%" class="pr-2">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<div class="d-flex align-center justify-space-between pa-4">
|
<div class="d-flex align-center justify-space-between pa-4">
|
||||||
<v-card-title class="pa-0 custom-title-4">효율지표 리스트</v-card-title>
|
<v-card-title class="pa-0 custom-title-4">효율지표 리스트</v-card-title>
|
||||||
@ -32,7 +32,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="7" style="height:100%">
|
<v-col :cols="7" style="height:100%" class="pl-2">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<v-card-title class="custom-title-4 pa-4 pb-2">효율지표 상세
|
<v-card-title class="custom-title-4 pa-4 pb-2">효율지표 상세
|
||||||
</v-card-title>
|
</v-card-title>
|
||||||
|
@ -29,10 +29,10 @@
|
|||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
<v-row ref="contents">
|
<v-row ref="contents" class="mt-3">
|
||||||
<v-col :cols="5" class="h100">
|
<v-col :cols="5" class="h100 pr-2">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<v-card-title class="d-flex align-center justify-space-between pa-4">
|
<v-card-title class="d-flex align-center justify-space-between pa-5">
|
||||||
물리량 리스트
|
물리량 리스트
|
||||||
|
|
||||||
<Buttons :parentPrgmId="myPrgmId" :bindingData="gridName" :detailList="detailList"
|
<Buttons :parentPrgmId="myPrgmId" :bindingData="gridName" :detailList="detailList"
|
||||||
@ -44,12 +44,12 @@
|
|||||||
:parentPrgmId="myPrgmId" @getRowsData="getRowData"
|
:parentPrgmId="myPrgmId" @getRowsData="getRowData"
|
||||||
@sendSelectedRowStatInfo="getSelectedRowStatInfo" :selectedRowDataWatchFlag="true"
|
@sendSelectedRowStatInfo="getSelectedRowStatInfo" :selectedRowDataWatchFlag="true"
|
||||||
:preventFocusChangeEventFlag="true"
|
:preventFocusChangeEventFlag="true"
|
||||||
:preventFocusChangeEventTargetGridList="editingGridList" :dataPath="dataPathExample" />
|
:preventFocusChangeEventTargetGridList="editingGridList" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="7" class="h100">
|
<v-col :cols="7" class="h100 pl-2">
|
||||||
<v-card class="pb-5 px-4">
|
<v-card class="pb-5 px-4">
|
||||||
<v-card-title class="px-0">물리량 상세</v-card-title>
|
<v-card-title class="px-0">물리량 상세</v-card-title>
|
||||||
<v-row no-gutters>
|
<v-row no-gutters>
|
||||||
@ -136,7 +136,7 @@
|
|||||||
<v-col :cols="12" style="height:100%">
|
<v-col :cols="12" style="height:100%">
|
||||||
<div ref="gridParent2" style="height:100%">
|
<div ref="gridParent2" style="height:100%">
|
||||||
<component :ref="gridName2" :is="loadGrid2 ? 'Grid' : null" :gridName="gridName2"
|
<component :ref="gridName2" :is="loadGrid2 ? 'Grid' : null" :gridName="gridName2"
|
||||||
:parentPrgmId="myPrgmId" @getRowsData="getRowData2" :dataPath="dataPathExample2" />
|
:parentPrgmId="myPrgmId" @getRowsData="getRowData2" />
|
||||||
</div>
|
</div>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
@ -223,7 +223,7 @@ export default {
|
|||||||
formatterSelectList01: [],
|
formatterSelectList01: [],
|
||||||
formatterSelectList02: [],
|
formatterSelectList02: [],
|
||||||
|
|
||||||
loadGrid: true,
|
loadGrid: false,
|
||||||
dataPathExample: {
|
dataPathExample: {
|
||||||
"rowGrid": {
|
"rowGrid": {
|
||||||
data: [
|
data: [
|
||||||
@ -279,59 +279,7 @@ export default {
|
|||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
dataPathExample2: {
|
loadGrid2: false,
|
||||||
"rowGrid2": {
|
|
||||||
data:
|
|
||||||
[
|
|
||||||
{
|
|
||||||
"argSeq": "1",
|
|
||||||
"argPysclQtyId": "001",
|
|
||||||
"eqpmGrpId": "EQPM-GRP-A",
|
|
||||||
"pysclQtyCd": "TEMP001"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"argSeq": "2",
|
|
||||||
"argPysclQtyId": "002",
|
|
||||||
"eqpmGrpId": "EQPM-GRP-B",
|
|
||||||
"pysclQtyCd": "PRESS001"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"argSeq": "3",
|
|
||||||
"argPysclQtyId": "003",
|
|
||||||
"eqpmGrpId": "EQPM-GRP-C",
|
|
||||||
"pysclQtyCd": "FLOW001"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"argSeq": "4",
|
|
||||||
"argPysclQtyId": "004",
|
|
||||||
"eqpmGrpId": "EQPM-GRP-D",
|
|
||||||
"pysclQtyCd": "HUMID001"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"argSeq": "5",
|
|
||||||
"argPysclQtyId": "005",
|
|
||||||
"eqpmGrpId": "EQPM-GRP-E",
|
|
||||||
"pysclQtyCd": "VOLT001"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
,
|
|
||||||
column: [
|
|
||||||
{ header: '순번', name: 'argSeq', editor: 'text' },
|
|
||||||
{ header: '물리량 ID', name: 'argPysclQtyId' },
|
|
||||||
{
|
|
||||||
header: '설비그룹',
|
|
||||||
name: 'eqpmGrpId',
|
|
||||||
|
|
||||||
},
|
|
||||||
{ header: '물리량 코드', name: 'pysclQtyCd' },
|
|
||||||
|
|
||||||
],
|
|
||||||
|
|
||||||
}
|
|
||||||
},
|
|
||||||
loadGrid2: true,
|
|
||||||
detailList: myDetail,
|
detailList: myDetail,
|
||||||
|
|
||||||
readOnlyValueList: [
|
readOnlyValueList: [
|
||||||
@ -1001,6 +949,10 @@ export default {
|
|||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
|
header: {
|
||||||
|
height: 37,
|
||||||
|
},
|
||||||
|
rowHeight: 'auto',
|
||||||
};
|
};
|
||||||
|
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
@ -1066,6 +1018,10 @@ export default {
|
|||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
|
header: {
|
||||||
|
height: 37,
|
||||||
|
},
|
||||||
|
rowHeight: 'auto',
|
||||||
};
|
};
|
||||||
|
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
|
@ -1,19 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<div ref="mainDiv" class="l-layout">
|
<div ref="mainDiv" class="l-layout">
|
||||||
|
<PageTitle/>
|
||||||
<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="end" no-gutters>
|
<v-row align="end" no-gutters>
|
||||||
<v-col :cols="5">
|
<v-col :cols="5">
|
||||||
<InputText
|
<InputText :parentPrgmId="myPrgmId" label="설비종류명" valueNm="eqpmKindNm" :searchOption="true"
|
||||||
:parentPrgmId="myPrgmId"
|
:textCols="12" :labelCols="12" customClass="input-large" />
|
||||||
label="설비종류명"
|
|
||||||
valueNm="eqpmKindNm"
|
|
||||||
:searchOption="true"
|
|
||||||
:textCols="12"
|
|
||||||
:labelCols="12"
|
|
||||||
customClass="input-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="7" class="text-right">
|
<v-col :cols="7" class="text-right">
|
||||||
<BtnSearch @click="search" size="large" />
|
<BtnSearch @click="search" size="large" />
|
||||||
@ -25,41 +19,27 @@
|
|||||||
<v-row ref="contents">
|
<v-row ref="contents">
|
||||||
<v-col :cols="5" class="h100">
|
<v-col :cols="5" class="h100">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<div class="d-flex align-center justify-space-between pa-5">
|
<div class="d-flex align-center justify-space-between pa-4" style="padding-bottom: 30px !important;">
|
||||||
<v-card-title class="pa-0">설비종류</v-card-title>
|
<v-card-title class="pa-0">설비종류</v-card-title>
|
||||||
<Buttons
|
<Buttons :parentPrgmId="myPrgmId" :bindingData="gridName" :btnActionsFnc="btnActions" />
|
||||||
:parentPrgmId="myPrgmId"
|
|
||||||
:bindingData="gridName"
|
|
||||||
:btnActionsFnc="btnActions"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="h100 px-5" style="height:calc(100% - 70px)">
|
<div class="h100 px-5" style="height:calc(100% - 70px)">
|
||||||
<div ref="gridParent" class="w100 h100">
|
<div ref="gridParent" class="w100 h100">
|
||||||
<component
|
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName"
|
||||||
:ref="gridName"
|
:parentPrgmId="myPrgmId" @getRowsData="getRowData"
|
||||||
:is="loadGrid ? 'Grid' : null"
|
:preventFocusChangeEventFlag="false" />
|
||||||
:gridName="gridName"
|
|
||||||
:parentPrgmId="myPrgmId"
|
|
||||||
@getRowsData="getRowData"
|
|
||||||
:preventFocusChangeEventFlag="false"
|
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="7" class="h100">
|
<v-col :cols="7" class="h100">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<div class="d-flex align-center justify-space-between pa-5">
|
<div class="d-flex align-center justify-space-between pa-4" style="padding-bottom: 30px !important;">
|
||||||
<v-card-title class="pa-0">설비종류 상세</v-card-title>
|
<v-card-title class="pa-0">설비종류 상세</v-card-title>
|
||||||
</div>
|
</div>
|
||||||
<div class="px-5" style="height:calc(100% - 76px)">
|
<div class="px-5" style="height:calc(100% - 76px)">
|
||||||
<component
|
<component :is="'Form'" :parentPrgmId="myPrgmId" :detailList="detailList"
|
||||||
:is="'Form'"
|
@gridEditingFinish="gridEditingFinish" />
|
||||||
:parentPrgmId="myPrgmId"
|
|
||||||
:detailList="detailList"
|
|
||||||
@gridEditingFinish="gridEditingFinish"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
@ -78,6 +58,8 @@ import Form from '~/components/common/form/Form';
|
|||||||
import Grid from '~/components/common/Grid';
|
import Grid from '~/components/common/Grid';
|
||||||
import Utility from '~/plugins/utility';
|
import Utility from '~/plugins/utility';
|
||||||
import SelectBox from '@/components/common/select/SelectBox';
|
import SelectBox from '@/components/common/select/SelectBox';
|
||||||
|
import PageTitle from "~/components/common/PageTitle";
|
||||||
|
|
||||||
let myTitle;
|
let myTitle;
|
||||||
// const myPrgmId = "PRG0013";
|
// const myPrgmId = "PRG0013";
|
||||||
let myPrgmId;
|
let myPrgmId;
|
||||||
@ -108,6 +90,7 @@ export default {
|
|||||||
Grid,
|
Grid,
|
||||||
Utility,
|
Utility,
|
||||||
SelectBox,
|
SelectBox,
|
||||||
|
PageTitle,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -118,21 +101,6 @@ export default {
|
|||||||
detailList: myDetail,
|
detailList: myDetail,
|
||||||
selectValueList01: [],
|
selectValueList01: [],
|
||||||
selectValue01: null,
|
selectValue01: null,
|
||||||
dataPathMock: {
|
|
||||||
'eqpmKindGrid': {
|
|
||||||
column: [
|
|
||||||
{ header: '설비종류ID', name: 'eqpmKindId', headerAlign: 'center' },
|
|
||||||
{ header: '설비종류명', name: 'eqpmKindNm', headerAlign: 'left' },
|
|
||||||
{ header: '등록자NO', name: 'regUserNo', hidden: true},
|
|
||||||
{ header: '등록일시', name: 'regDttm', hidden: true },
|
|
||||||
{ header: '수정자NO', name: 'procUserNo', hidden: true },
|
|
||||||
{ header: '수정일시', name: 'procDttm', hidden: true}
|
|
||||||
],
|
|
||||||
data: dataPathDataExample,
|
|
||||||
defaultRow: dataPathDataExample,
|
|
||||||
option: {}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -164,7 +132,7 @@ export default {
|
|||||||
defaultData: defaultData,
|
defaultData: defaultData,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
created() {},
|
created() { },
|
||||||
mounted() {
|
mounted() {
|
||||||
this.gridInit();
|
this.gridInit();
|
||||||
// this.init();
|
// this.init();
|
||||||
@ -184,6 +152,8 @@ export default {
|
|||||||
const myOptions = {
|
const myOptions = {
|
||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
|
}, header: {
|
||||||
|
height: 38,
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
@ -255,12 +225,12 @@ export default {
|
|||||||
//rowKey: 0,
|
//rowKey: 0,
|
||||||
rowKey:
|
rowKey:
|
||||||
this.pageData.rowGridSelectKey == '' ||
|
this.pageData.rowGridSelectKey == '' ||
|
||||||
this.pageData.rowGridSelectKey == null
|
this.pageData.rowGridSelectKey == null
|
||||||
? 0
|
? 0
|
||||||
: this.pageData.rowGridSelectKey ==
|
: this.pageData.rowGridSelectKey ==
|
||||||
this.$refs[this.gridName].getData().length - 1
|
this.$refs[this.gridName].getData().length - 1
|
||||||
? this.pageData.rowGridSelectKey
|
? this.pageData.rowGridSelectKey
|
||||||
: 0,
|
: 0,
|
||||||
setScroll: true,
|
setScroll: true,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -398,7 +368,7 @@ const myDetail = [
|
|||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'InputTextReg',
|
type: 'InputText',
|
||||||
label: '설비종류명',
|
label: '설비종류명',
|
||||||
valueNm: 'eqpmKindNm',
|
valueNm: 'eqpmKindNm',
|
||||||
disabled: false,
|
disabled: false,
|
||||||
@ -458,14 +428,4 @@ const myDetail = [
|
|||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
import { getPathDataExample } from '@/const/const'
|
|
||||||
const dataPathDataExample = getPathDataExample({
|
|
||||||
eqpmKindId: 'EKIND0005',
|
|
||||||
eqpmKindNm: 'VCB',
|
|
||||||
regUserNo: '사용',
|
|
||||||
regDttm: 'EQP_HVAC_LT_CH001',
|
|
||||||
procUserNo: '사용',
|
|
||||||
procDttm: 'EQP_HVAC_LT_CH001',
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
@ -1,41 +1,23 @@
|
|||||||
<template>
|
<template>
|
||||||
<div ref="mainDiv" class="l-layout">
|
<div ref="mainDiv" class="l-layout">
|
||||||
|
<PageTitle />
|
||||||
<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="end" no-gutters>
|
<v-row align="end" no-gutters>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<component
|
<component :is="'selectCodeList'" :parentPrgmId="myPrgmId" :label="'사용여부'" dataKey="useFg"
|
||||||
:is="'selectCodeList'"
|
:sendParam="{ commGrpCd: 'CO_USEFG', useFg: '1' }" :addAll="true"
|
||||||
:parentPrgmId="myPrgmId"
|
customClass="select-large" />
|
||||||
:label="'사용여부'"
|
|
||||||
dataKey="useFg"
|
|
||||||
:sendParam="{ commGrpCd: 'CO_USEFG', useFg: '1' }"
|
|
||||||
:addAll="true"
|
|
||||||
customClass="select-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<component
|
<component :is="'SelectBox'" ref="SelectBox1" :propsValue="selectValue01"
|
||||||
:is="'SelectBox'"
|
:itemList="selectValueList01" :label="'설비종류'"
|
||||||
ref="SelectBox1"
|
@update:propsValue="selectValue01 = $event" customClass="select-large" />
|
||||||
:propsValue="selectValue01"
|
|
||||||
:itemList="selectValueList01"
|
|
||||||
:label="'설비종류'"
|
|
||||||
@update:propsValue="selectValue01 = $event"
|
|
||||||
customClass="select-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<InputText
|
<InputText :parentPrgmId="myPrgmId" label="설비 그룹 명" valueNm="eqpmGrpNm" :searchOption="true"
|
||||||
:parentPrgmId="myPrgmId"
|
:textCols="12" :labelCols="12" customClass="input-large" />
|
||||||
label="설비 그룹 명"
|
|
||||||
valueNm="eqpmGrpNm"
|
|
||||||
:searchOption="true"
|
|
||||||
:textCols="12"
|
|
||||||
:labelCols="12"
|
|
||||||
customClass="input-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3" class="text-right">
|
<v-col :cols="3" class="text-right">
|
||||||
<BtnSearch @click="search" size="large" />
|
<BtnSearch @click="search" size="large" />
|
||||||
@ -47,41 +29,28 @@
|
|||||||
<v-row ref="contents">
|
<v-row ref="contents">
|
||||||
<v-col :cols="5" class="h100">
|
<v-col :cols="5" class="h100">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<v-card-title class="d-flex justify-space-between align-end">
|
<div class="d-flex align-center justify-space-between pa-4"
|
||||||
<span class="tit ft-size_20 ft-weight_600">설비 그룹</span>
|
style="padding-bottom: 30px !important;">
|
||||||
<Buttons
|
<v-card-title class="pa-0">설비 그룹</v-card-title>
|
||||||
:parentPrgmId="myPrgmId"
|
<Buttons :parentPrgmId="myPrgmId" :bindingData="gridName" :btnActionsFnc="btnActions" />
|
||||||
:bindingData="gridName"
|
</div>
|
||||||
:btnActionsFnc="btnActions"
|
|
||||||
/>
|
|
||||||
</v-card-title>
|
|
||||||
|
|
||||||
<div class="h100 px-5" style="height:calc(100% - 70px)">
|
<div class="h100 px-5" style="height:calc(100% - 70px)">
|
||||||
<div ref="gridParent" class="w100 h100">
|
<div ref="gridParent" class="w100 h100">
|
||||||
<component
|
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName"
|
||||||
:ref="gridName"
|
:parentPrgmId="myPrgmId" @getRowsData="getRowData" />
|
||||||
:is="loadGrid ? 'Grid' : null"
|
|
||||||
:gridName="gridName"
|
|
||||||
:parentPrgmId="myPrgmId"
|
|
||||||
@getRowsData="getRowData"
|
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="7" class="h100">
|
<v-col :cols="7" class="h100">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<div class="d-flex align-center justify-space-between pa-5">
|
<div class="d-flex align-center justify-space-between pa-4"
|
||||||
|
style="padding-bottom: 30px !important;">
|
||||||
<v-card-title class="pa-0">설비 그룹 상세</v-card-title>
|
<v-card-title class="pa-0">설비 그룹 상세</v-card-title>
|
||||||
</div>
|
</div>
|
||||||
<div class="px-5" style="height:calc(100% - 76px)">
|
<div class="px-5" style="height:calc(100% - 76px)">
|
||||||
<component
|
<component :is="'Form'" :parentPrgmId="myPrgmId" :detailList="detailList"
|
||||||
:is="'Form'"
|
@gridEditingFinish="gridEditingFinish" />
|
||||||
:parentPrgmId="myPrgmId"
|
|
||||||
:detailList="detailList"
|
|
||||||
@gridEditingFinish="gridEditingFinish"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
@ -100,6 +69,8 @@ import Form from '~/components/common/form/Form';
|
|||||||
import Grid from '~/components/common/Grid';
|
import Grid from '~/components/common/Grid';
|
||||||
import Utility from '~/plugins/utility';
|
import Utility from '~/plugins/utility';
|
||||||
import SelectBox from '@/components/common/select/SelectBox';
|
import SelectBox from '@/components/common/select/SelectBox';
|
||||||
|
import PageTitle from "~/components/common/PageTitle";
|
||||||
|
|
||||||
let myTitle;
|
let myTitle;
|
||||||
// const myPrgmId = "PRG0013";
|
// const myPrgmId = "PRG0013";
|
||||||
let myPrgmId;
|
let myPrgmId;
|
||||||
@ -130,34 +101,17 @@ export default {
|
|||||||
Grid,
|
Grid,
|
||||||
Utility,
|
Utility,
|
||||||
SelectBox,
|
SelectBox,
|
||||||
|
PageTitle,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
myPrgmId: myPrgmId,
|
myPrgmId: myPrgmId,
|
||||||
gridName: 'rowGrid',
|
gridName: 'rowGrid',
|
||||||
loadGrid: true,
|
loadGrid: false,
|
||||||
tab: null,
|
tab: null,
|
||||||
detailList: myDetail,
|
detailList: myDetail,
|
||||||
selectValueList01: [],
|
selectValueList01: [],
|
||||||
selectValue01: null,
|
selectValue01: null,
|
||||||
dataPathMock: {
|
|
||||||
'rowGrid': {
|
|
||||||
column: [
|
|
||||||
{ header: '회사 ID', name: 'comId', hidden: true },
|
|
||||||
{ header: '설비 그룹 ID', name: 'eqpmGrpId'},
|
|
||||||
{ header: '설비 그룹 명', name: 'eqpmGrpNm'},
|
|
||||||
{ header: '설비종류', name: 'eqpmKindId'},
|
|
||||||
{ header: '사용여부', name: 'useFg'},
|
|
||||||
{ header: '등록자NO', name: 'regUserNo', hidden: true},
|
|
||||||
{ header: '등록일시', name: 'regDttm', hidden: true },
|
|
||||||
{ header: '수정자NO', name: 'procUserNo', hidden: true },
|
|
||||||
{ header: '수정일시', name: 'procDttm', hidden: true}
|
|
||||||
],
|
|
||||||
data: dataPathDataExample,
|
|
||||||
defaultRow: dataPathDataExample,
|
|
||||||
options:{}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -203,7 +157,7 @@ export default {
|
|||||||
defaultData: defaultData,
|
defaultData: defaultData,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
created() {},
|
created() { },
|
||||||
mounted() {
|
mounted() {
|
||||||
this.setSelectValueList01();
|
this.setSelectValueList01();
|
||||||
// if (this.loadFlag) {
|
// if (this.loadFlag) {
|
||||||
@ -252,12 +206,15 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
gridInit() {
|
gridInit() {
|
||||||
const gridHeight = this.$refs.gridParent.offsetHeight - 70;
|
const gridHeight = this.$refs.gridParent.offsetHeight - 30;
|
||||||
|
|
||||||
const myOptions = {
|
const myOptions = {
|
||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
|
header: {
|
||||||
|
height: 38,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
@ -365,12 +322,12 @@ export default {
|
|||||||
//rowKey: 0,
|
//rowKey: 0,
|
||||||
rowKey:
|
rowKey:
|
||||||
this.pageData.rowGridSelectKey == '' ||
|
this.pageData.rowGridSelectKey == '' ||
|
||||||
this.pageData.rowGridSelectKey == null
|
this.pageData.rowGridSelectKey == null
|
||||||
? 0
|
? 0
|
||||||
: this.pageData.rowGridSelectKey ==
|
: this.pageData.rowGridSelectKey ==
|
||||||
this.$refs[this.gridName].getData().length - 1
|
this.$refs[this.gridName].getData().length - 1
|
||||||
? this.pageData.rowGridSelectKey
|
? this.pageData.rowGridSelectKey
|
||||||
: 0,
|
: 0,
|
||||||
setScroll: true,
|
setScroll: true,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -512,7 +469,7 @@ const myDetail = [
|
|||||||
placeholder: '시스템 자동입력',
|
placeholder: '시스템 자동입력',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'InputTextReg',
|
type: 'InputText',
|
||||||
label: '설비 그룹 명',
|
label: '설비 그룹 명',
|
||||||
valueNm: 'eqpmGrpNm',
|
valueNm: 'eqpmGrpNm',
|
||||||
disabled: false,
|
disabled: false,
|
||||||
@ -600,18 +557,4 @@ const myDetail = [
|
|||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
import { getPathDataExample } from '@/const/const'
|
|
||||||
const dataPathDataExample = getPathDataExample({
|
|
||||||
comId: 'EKIND0005',
|
|
||||||
eqpmGrpId: 'EQG000010',
|
|
||||||
eqpmGrpNm:'냉수파이프고온',
|
|
||||||
eqpmKindId:'냉동파이프',
|
|
||||||
useFg:'1',
|
|
||||||
regUserNo: '사용',
|
|
||||||
regDttm: 'EQP_HVAC_LT_CH001',
|
|
||||||
procUserNo: '사용',
|
|
||||||
procDttm: 'EQP_HVAC_LT_CH001',
|
|
||||||
});
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -37,11 +37,11 @@
|
|||||||
:btnActionsFnc="btnActions" />
|
:btnActionsFnc="btnActions" />
|
||||||
</div>
|
</div>
|
||||||
<div class="h100 px-4" style="height:calc(100% - 70px)">
|
<div class="h100 px-4" style="height:calc(100% - 70px)">
|
||||||
<div ref="gridParent" >
|
<div ref="gridParent" style="height: 30%">
|
||||||
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName"
|
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName"
|
||||||
:parentPrgmId="myPrgmId" @getRowsData="getRowData" :dataPath="dataPathExample" />
|
:parentPrgmId="myPrgmId" @getRowsData="getRowData" :dataPath="dataPathExample" />
|
||||||
</div>
|
</div>
|
||||||
<div class="d-flex py-4">
|
<div class="d-flex py-4" >
|
||||||
<component :is="'Form'" :parentPrgmId="myPrgmId" :detailList="detailList"
|
<component :is="'Form'" :parentPrgmId="myPrgmId" :detailList="detailList"
|
||||||
@gridEditingFinish="gridEditingFinish" />
|
@gridEditingFinish="gridEditingFinish" />
|
||||||
</div>
|
</div>
|
||||||
@ -112,7 +112,7 @@ export default {
|
|||||||
myPrgmId: myPrgmId,
|
myPrgmId: myPrgmId,
|
||||||
initedFlag: false,
|
initedFlag: false,
|
||||||
gridName: 'rowGrid',
|
gridName: 'rowGrid',
|
||||||
loadGrid: true,
|
loadGrid: false,
|
||||||
detailList: myDetail,
|
detailList: myDetail,
|
||||||
selectValue01: null,
|
selectValue01: null,
|
||||||
selectValueList01: [],
|
selectValueList01: [],
|
||||||
@ -125,102 +125,102 @@ export default {
|
|||||||
// pysclQtyId3 : null,
|
// pysclQtyId3 : null,
|
||||||
// pysclQtyId4 : null
|
// pysclQtyId4 : null
|
||||||
// }
|
// }
|
||||||
dataPathExample: {
|
// dataPathExample: {
|
||||||
"rowGrid": {
|
// "rowGrid": {
|
||||||
data: [
|
// data: [
|
||||||
|
|
||||||
{
|
// {
|
||||||
gdIdxId: 'GD001',
|
// gdIdxId: 'GD001',
|
||||||
gdIdxNm: '온도 가이드',
|
// gdIdxNm: '온도 가이드',
|
||||||
eqpmGrpId: 'EQ001',
|
// eqpmGrpId: 'EQ001',
|
||||||
upTotMeth: 'AVG',
|
// upTotMeth: 'AVG',
|
||||||
careStndVal: 50,
|
// careStndVal: 50,
|
||||||
warnStndVal: 70,
|
// warnStndVal: 70,
|
||||||
alrmMsg: '온도가 기준치를 초과했습니다.',
|
// alrmMsg: '온도가 기준치를 초과했습니다.',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
gdIdxId: 'GD002',
|
// gdIdxId: 'GD002',
|
||||||
gdIdxNm: '습도 가이드',
|
// gdIdxNm: '습도 가이드',
|
||||||
eqpmGrpId: 'EQ002',
|
// eqpmGrpId: 'EQ002',
|
||||||
upTotMeth: 'MAX',
|
// upTotMeth: 'MAX',
|
||||||
careStndVal: 30,
|
// careStndVal: 30,
|
||||||
warnStndVal: 60,
|
// warnStndVal: 60,
|
||||||
alrmMsg: '습도가 기준치를 초과했습니다.',
|
// alrmMsg: '습도가 기준치를 초과했습니다.',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
gdIdxId: 'GD003',
|
// gdIdxId: 'GD003',
|
||||||
gdIdxNm: '압력 가이드',
|
// gdIdxNm: '압력 가이드',
|
||||||
eqpmGrpId: 'EQ003',
|
// eqpmGrpId: 'EQ003',
|
||||||
upTotMeth: 'SUM',
|
// upTotMeth: 'SUM',
|
||||||
careStndVal: 100,
|
// careStndVal: 100,
|
||||||
warnStndVal: 150,
|
// warnStndVal: 150,
|
||||||
alrmMsg: '압력이 기준치를 초과했습니다.',
|
// alrmMsg: '압력이 기준치를 초과했습니다.',
|
||||||
}
|
// }
|
||||||
|
|
||||||
],
|
// ],
|
||||||
column: [
|
// column: [
|
||||||
{
|
// {
|
||||||
header: '가이드',
|
// header: '가이드',
|
||||||
name: 'gdIdxId',
|
// name: 'gdIdxId',
|
||||||
width: 100,
|
// width: 100,
|
||||||
align: 'center',
|
// align: 'center',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
header: '가이드명',
|
// header: '가이드명',
|
||||||
name: 'gdIdxNm',
|
// name: 'gdIdxNm',
|
||||||
width: 210,
|
// width: 210,
|
||||||
align: 'left',
|
// align: 'left',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
header: '설비그룹ID',
|
// header: '설비그룹ID',
|
||||||
name: 'eqpmGrpId',
|
// name: 'eqpmGrpId',
|
||||||
width: 100,
|
// width: 100,
|
||||||
align: 'center',
|
// align: 'center',
|
||||||
// formatter({ value }) {
|
// // formatter({ value }) {
|
||||||
// let retVal = '';
|
// // let retVal = '';
|
||||||
// const newValue = _this.pageData.eqpmGrpList.filter(item => item.value == value);
|
// // const newValue = _this.pageData.eqpmGrpList.filter(item => item.value == value);
|
||||||
// if (newValue.length > 0) {
|
// // if (newValue.length > 0) {
|
||||||
// retVal = newValue[0].text;
|
// // retVal = newValue[0].text;
|
||||||
// }
|
// // }
|
||||||
// return retVal;
|
// // return retVal;
|
||||||
// },
|
// // },
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
header: '상위집계방법',
|
// header: '상위집계방법',
|
||||||
name: 'upTotMeth',
|
// name: 'upTotMeth',
|
||||||
width: 100,
|
// width: 100,
|
||||||
align: 'center',
|
// align: 'center',
|
||||||
// formatter({ value }) {
|
// // formatter({ value }) {
|
||||||
// let retVal = '';
|
// // let retVal = '';
|
||||||
// const newValue = _this.pageData.upTotMethList.filter(item => item.commCd == value);
|
// // const newValue = _this.pageData.upTotMethList.filter(item => item.commCd == value);
|
||||||
// if (newValue.length > 0) {
|
// // if (newValue.length > 0) {
|
||||||
// retVal = newValue[0].commCdNm;
|
// // retVal = newValue[0].commCdNm;
|
||||||
// }
|
// // }
|
||||||
// return retVal;
|
// // return retVal;
|
||||||
// },
|
// // },
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
header: '주의기준',
|
// header: '주의기준',
|
||||||
name: 'careStndVal',
|
// name: 'careStndVal',
|
||||||
width: 100,
|
// width: 100,
|
||||||
align: 'right',
|
// align: 'right',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
header: '경고기준',
|
// header: '경고기준',
|
||||||
name: 'warnStndVal',
|
// name: 'warnStndVal',
|
||||||
width: 100,
|
// width: 100,
|
||||||
align: 'right',
|
// align: 'right',
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
header: '알람메세지',
|
// header: '알람메세지',
|
||||||
name: 'alrmMsg',
|
// name: 'alrmMsg',
|
||||||
minWidth: 860,
|
// minWidth: 860,
|
||||||
align: 'left',
|
// align: 'left',
|
||||||
}
|
// }
|
||||||
]
|
// ]
|
||||||
|
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -352,60 +352,46 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
async getEqpmKind() {
|
async getEqpmKind() {
|
||||||
// let res = await this.postApiReturn({
|
let res = await this.postApiReturn({
|
||||||
// apiKey: 'selectEqpmKindCodeList',
|
apiKey: 'selectEqpmKindCodeList',
|
||||||
// resKey: 'eqpmKindCodeLists',
|
resKey: 'eqpmKindCodeLists',
|
||||||
// sendParam: {},
|
sendParam: {},
|
||||||
// });
|
});
|
||||||
// if (res.length > 0) {
|
if (res.length > 0) {
|
||||||
// this.selectValueList01 = await res.map(item => {
|
this.selectValueList01 = await res.map(item => {
|
||||||
// return {
|
return {
|
||||||
// text: item.eqpmKindNm,
|
text: item.eqpmKindNm,
|
||||||
// value: item.eqpmKindId,
|
value: item.eqpmKindId,
|
||||||
// };
|
};
|
||||||
// });
|
});
|
||||||
// this.selectValue01 = this.selectValueList01[0].value;
|
this.selectValue01 = this.selectValueList01[0].value;
|
||||||
// } else {
|
} else {
|
||||||
// this.selectValueList01 = [];
|
this.selectValueList01 = [];
|
||||||
// this.selectValue01 = null;
|
this.selectValue01 = null;
|
||||||
// }
|
}
|
||||||
|
|
||||||
this.selectValueList01 = [
|
|
||||||
{ label: 'Etcher', value: 'EQK001' },
|
|
||||||
{ label: 'Deposition', value: 'EQK002' },
|
|
||||||
{ label: 'Inspection', value: 'EQK003' },
|
|
||||||
];
|
|
||||||
|
|
||||||
this.selectValue01 = 'EQK001';
|
|
||||||
this.setPageData({
|
this.setPageData({
|
||||||
eqpmKindList: this.selectValueList01,
|
eqpmKindList: this.selectValueList01,
|
||||||
eqpmKindId: this.selectValue01,
|
eqpmKindId: this.selectValue01,
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
async getEqpmGrp() {
|
async getEqpmGrp() {
|
||||||
// let res = await this.postApiReturn({
|
let res = await this.postApiReturn({
|
||||||
// apiKey: 'selectEqpmGrpCodeList',
|
apiKey: 'selectEqpmGrpCodeList',
|
||||||
// resKey: 'eqpmGrpCodeLists',
|
resKey: 'eqpmGrpCodeLists',
|
||||||
// sendParam: { eqpmKindId: this.selectValue01 },
|
sendParam: { eqpmKindId: this.selectValue01 },
|
||||||
// });
|
});
|
||||||
// if (res.length > 0) {
|
if (res.length > 0) {
|
||||||
// this.selectValueList02 = await res.map(item => {
|
this.selectValueList02 = await res.map(item => {
|
||||||
// return {
|
return {
|
||||||
// text: item.eqpmGrpNm,
|
text: item.eqpmGrpNm,
|
||||||
// value: item.eqpmGrpId,
|
value: item.eqpmGrpId,
|
||||||
// };
|
};
|
||||||
// });
|
});
|
||||||
// this.selectValue02 = this.selectValueList02[0].value;
|
this.selectValue02 = this.selectValueList02[0].value;
|
||||||
// } else {
|
} else {
|
||||||
// this.selectValueList02 = [];
|
this.selectValueList02 = [];
|
||||||
// this.selectValue02 = null;
|
this.selectValue02 = null;
|
||||||
// }
|
}
|
||||||
this.selectValueList02 = [
|
|
||||||
{ label: '냉동기고온', value: '냉동기고온' },
|
|
||||||
{ label: '냉동기저온', value: '냉동기저온' },
|
|
||||||
{ label: '공조기', value: '공조기' },
|
|
||||||
{ label: '보일러', value: '보일러' }
|
|
||||||
];
|
|
||||||
|
|
||||||
this.setPageData({
|
this.setPageData({
|
||||||
eqpmGrpList: this.selectValueList02,
|
eqpmGrpList: this.selectValueList02,
|
||||||
@ -419,6 +405,10 @@ export default {
|
|||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
|
header: {
|
||||||
|
height: 37,
|
||||||
|
},
|
||||||
|
rowHeight: 'auto',
|
||||||
};
|
};
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
@ -636,100 +626,100 @@ export default {
|
|||||||
async getRowGridData() {
|
async getRowGridData() {
|
||||||
this.loadGrid = false;
|
this.loadGrid = false;
|
||||||
let res = [];
|
let res = [];
|
||||||
const newRes = [
|
// const newRes = [
|
||||||
{
|
// {
|
||||||
comId: 'COM001',
|
// comId: 'COM001',
|
||||||
gdIdxId: 'GD001',
|
// gdIdxId: 'GD001',
|
||||||
gdIdxNm: '온도 가이드',
|
// gdIdxNm: '온도 가이드',
|
||||||
eqpmGrpId: 'EQ001',
|
// eqpmGrpId: 'EQ001',
|
||||||
upTotMeth: 'AVG',
|
// upTotMeth: 'AVG',
|
||||||
sortSeq: 1,
|
// sortSeq: 1,
|
||||||
pysclQtyId1: 'TEMP',
|
// pysclQtyId1: 'TEMP',
|
||||||
pysclQtyId2: null,
|
// pysclQtyId2: null,
|
||||||
pysclQtyId3: null,
|
// pysclQtyId3: null,
|
||||||
pysclQtyId4: null,
|
// pysclQtyId4: null,
|
||||||
ctgr1: '환경',
|
// ctgr1: '환경',
|
||||||
ctgr2: '내부',
|
// ctgr2: '내부',
|
||||||
careStndVal: 50,
|
// careStndVal: 50,
|
||||||
warnStndVal: 70,
|
// warnStndVal: 70,
|
||||||
gdMeth: '자동',
|
// gdMeth: '자동',
|
||||||
useFg: '1',
|
// useFg: '1',
|
||||||
alrmMsg: '온도가 기준치를 초과했습니다.',
|
// alrmMsg: '온도가 기준치를 초과했습니다.',
|
||||||
calcProc: 'PROC001',
|
// calcProc: 'PROC001',
|
||||||
calcDesc: '평균 계산',
|
// calcDesc: '평균 계산',
|
||||||
calcMeth: '(A+B)/2',
|
// calcMeth: '(A+B)/2',
|
||||||
unit: 'C',
|
// unit: 'C',
|
||||||
argCnt: 2,
|
// argCnt: 2,
|
||||||
rowStat: null,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
comId: 'COM002',
|
|
||||||
gdIdxId: 'GD002',
|
|
||||||
gdIdxNm: '습도 가이드',
|
|
||||||
eqpmGrpId: 'EQ002',
|
|
||||||
upTotMeth: 'MAX',
|
|
||||||
sortSeq: 2,
|
|
||||||
pysclQtyId1: 'HUMID',
|
|
||||||
pysclQtyId2: null,
|
|
||||||
pysclQtyId3: null,
|
|
||||||
pysclQtyId4: null,
|
|
||||||
ctgr1: '환경',
|
|
||||||
ctgr2: '외부',
|
|
||||||
careStndVal: 30,
|
|
||||||
warnStndVal: 60,
|
|
||||||
gdMeth: '수동',
|
|
||||||
useFg: '0',
|
|
||||||
alrmMsg: '습도가 기준치를 초과했습니다.',
|
|
||||||
calcProc: 'PROC002',
|
|
||||||
calcDesc: '최대값 계산',
|
|
||||||
calcMeth: 'MAX(A,B)',
|
|
||||||
unit: '%',
|
|
||||||
argCnt: 2,
|
|
||||||
rowStat: null,
|
|
||||||
},
|
|
||||||
];
|
|
||||||
|
|
||||||
// res = await this.postApiReturn({
|
|
||||||
// apiKey: 'selectEqpmGdIdxDataList',
|
|
||||||
// resKey: 'eqpmGdIdxDataList',
|
|
||||||
// sendParam: {
|
|
||||||
// eqpmGrpId: this.selectValue02,
|
|
||||||
// gdIdxNmLike: this.pageData.gdIdxNm,
|
|
||||||
// },
|
|
||||||
// });
|
|
||||||
// const newRes = res.map(item => {
|
|
||||||
// const newObj = {
|
|
||||||
// ...item,
|
|
||||||
// rowStat: null,
|
// rowStat: null,
|
||||||
// };
|
// },
|
||||||
// return newObj;
|
// {
|
||||||
// });
|
// comId: 'COM002',
|
||||||
|
// gdIdxId: 'GD002',
|
||||||
|
// gdIdxNm: '습도 가이드',
|
||||||
|
// eqpmGrpId: 'EQ002',
|
||||||
|
// upTotMeth: 'MAX',
|
||||||
|
// sortSeq: 2,
|
||||||
|
// pysclQtyId1: 'HUMID',
|
||||||
|
// pysclQtyId2: null,
|
||||||
|
// pysclQtyId3: null,
|
||||||
|
// pysclQtyId4: null,
|
||||||
|
// ctgr1: '환경',
|
||||||
|
// ctgr2: '외부',
|
||||||
|
// careStndVal: 30,
|
||||||
|
// warnStndVal: 60,
|
||||||
|
// gdMeth: '수동',
|
||||||
|
// useFg: '0',
|
||||||
|
// alrmMsg: '습도가 기준치를 초과했습니다.',
|
||||||
|
// calcProc: 'PROC002',
|
||||||
|
// calcDesc: '최대값 계산',
|
||||||
|
// calcMeth: 'MAX(A,B)',
|
||||||
|
// unit: '%',
|
||||||
|
// argCnt: 2,
|
||||||
|
// rowStat: null,
|
||||||
|
// },
|
||||||
|
// ];
|
||||||
|
|
||||||
|
res = await this.postApiReturn({
|
||||||
|
apiKey: 'selectEqpmGdIdxDataList',
|
||||||
|
resKey: 'eqpmGdIdxDataList',
|
||||||
|
sendParam: {
|
||||||
|
eqpmGrpId: this.selectValue02,
|
||||||
|
gdIdxNmLike: this.pageData.gdIdxNm,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
const newRes = res.map(item => {
|
||||||
|
const newObj = {
|
||||||
|
...item,
|
||||||
|
rowStat: null,
|
||||||
|
};
|
||||||
|
return newObj;
|
||||||
|
});
|
||||||
this.setGridData({
|
this.setGridData({
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
value: newRes,
|
value: newRes,
|
||||||
});
|
});
|
||||||
//this.loadGrid = true;
|
//this.loadGrid = true;
|
||||||
// this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
// if (newRes.length > 0) {
|
if (newRes.length > 0) {
|
||||||
// try {
|
try {
|
||||||
// this.$refs[this.gridName].focus({
|
this.$refs[this.gridName].focus({
|
||||||
// //rowKey: 0,
|
//rowKey: 0,
|
||||||
// rowKey:
|
rowKey:
|
||||||
// this.pageData.rowGridSelectKey == '' ||
|
this.pageData.rowGridSelectKey == '' ||
|
||||||
// this.pageData.rowGridSelectKey == null
|
this.pageData.rowGridSelectKey == null
|
||||||
// ? 0
|
? 0
|
||||||
// : this.pageData.rowGridSelectKey ==
|
: this.pageData.rowGridSelectKey ==
|
||||||
// this.$refs[this.gridName].getData().length - 1
|
this.$refs[this.gridName].getData().length - 1
|
||||||
// ? this.pageData.rowGridSelectKey
|
? this.pageData.rowGridSelectKey
|
||||||
// : 0,
|
: 0,
|
||||||
// columnName: 'gdIdxId',
|
columnName: 'gdIdxId',
|
||||||
// setScroll: true,
|
setScroll: true,
|
||||||
// });
|
});
|
||||||
// } catch (error) { }
|
} catch (error) { }
|
||||||
// } else {
|
} else {
|
||||||
// this.detailDataInit();
|
this.detailDataInit();
|
||||||
// }
|
}
|
||||||
// });
|
});
|
||||||
this.loadGrid = true;
|
this.loadGrid = true;
|
||||||
},
|
},
|
||||||
async getRowData(data) {
|
async getRowData(data) {
|
||||||
|
@ -29,7 +29,7 @@
|
|||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
<v-row ref="contents" class="mt-4">
|
<v-row ref="contents" class="mt-3">
|
||||||
<v-col :cols="12" style="height: 100%">
|
<v-col :cols="12" style="height: 100%">
|
||||||
<!-- <v-card class="py-5"> -->
|
<!-- <v-card class="py-5"> -->
|
||||||
<v-card style="height: 60%">
|
<v-card style="height: 60%">
|
||||||
@ -115,8 +115,8 @@
|
|||||||
|
|
||||||
</v-card>
|
</v-card>
|
||||||
|
|
||||||
<v-row style="height: 40%" class="mt-4">
|
<v-row style="height: 40%" class="mt-3">
|
||||||
<v-col :cols="6" style="height: 100%">
|
<v-col :cols="6" style="height: 100%" class="pr-2">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<div class="d-flex align-center justify-space-between pa-4">
|
<div class="d-flex align-center justify-space-between pa-4">
|
||||||
<v-card-title class="pa-0 custom-title-4 ">설비상세 리스트</v-card-title>
|
<v-card-title class="pa-0 custom-title-4 ">설비상세 리스트</v-card-title>
|
||||||
@ -126,12 +126,12 @@
|
|||||||
<div ref="gridParent" class="w100 h100">
|
<div ref="gridParent" class="w100 h100">
|
||||||
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName"
|
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName"
|
||||||
:parentPrgmId="myPrgmId" @getRowsData="getRowData"
|
:parentPrgmId="myPrgmId" @getRowsData="getRowData"
|
||||||
:dataPath="dataPathExample" />
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="6" style="height: 100%">
|
<v-col :cols="6" style="height: 100%" class="pl-2">
|
||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<div class="d-flex align-center justify-space-between pa-4">
|
<div class="d-flex align-center justify-space-between pa-4">
|
||||||
<v-card-title class="pa-0 custom-title-4">설비가이드 기준 정보</v-card-title>
|
<v-card-title class="pa-0 custom-title-4">설비가이드 기준 정보</v-card-title>
|
||||||
@ -201,7 +201,7 @@ export default {
|
|||||||
readonlyFg: true,
|
readonlyFg: true,
|
||||||
initedFlag: false,
|
initedFlag: false,
|
||||||
gridName: 'rowGrid',
|
gridName: 'rowGrid',
|
||||||
loadGrid: true,
|
loadGrid: false,
|
||||||
detailList: myDetail,
|
detailList: myDetail,
|
||||||
selectValue01: null,
|
selectValue01: null,
|
||||||
selectValueList01: [],
|
selectValueList01: [],
|
||||||
@ -209,62 +209,62 @@ export default {
|
|||||||
selectValueList02: [],
|
selectValueList02: [],
|
||||||
selectValue03: null,
|
selectValue03: null,
|
||||||
selectValueList03: [],
|
selectValueList03: [],
|
||||||
dataPathExample: {
|
// dataPathExample: {
|
||||||
"rowGrid": {
|
// "rowGrid": {
|
||||||
data: [
|
// data: [
|
||||||
|
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ001',
|
// eqpmId: 'EQ001',
|
||||||
originEqpmId: 'ORIG001',
|
// originEqpmId: 'ORIG001',
|
||||||
eqpmNm: '냉각기 A',
|
// eqpmNm: '냉각기 A',
|
||||||
careStndVal: 75,
|
// careStndVal: 75,
|
||||||
warnStndVal: 90,
|
// warnStndVal: 90,
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ002',
|
// eqpmId: 'EQ002',
|
||||||
originEqpmId: 'ORIG002',
|
// originEqpmId: 'ORIG002',
|
||||||
eqpmNm: '펌프 B',
|
// eqpmNm: '펌프 B',
|
||||||
careStndVal: 60,
|
// careStndVal: 60,
|
||||||
warnStndVal: 80,
|
// warnStndVal: 80,
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ003',
|
// eqpmId: 'EQ003',
|
||||||
originEqpmId: 'ORIG003',
|
// originEqpmId: 'ORIG003',
|
||||||
eqpmNm: '모터 C',
|
// eqpmNm: '모터 C',
|
||||||
careStndVal: 50,
|
// careStndVal: 50,
|
||||||
warnStndVal: 70,
|
// warnStndVal: 70,
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ004',
|
// eqpmId: 'EQ004',
|
||||||
originEqpmId: 'ORIG004',
|
// originEqpmId: 'ORIG004',
|
||||||
eqpmNm: '밸브 D',
|
// eqpmNm: '밸브 D',
|
||||||
careStndVal: 65,
|
// careStndVal: 65,
|
||||||
warnStndVal: 85,
|
// warnStndVal: 85,
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ005',
|
// eqpmId: 'EQ005',
|
||||||
originEqpmId: 'ORIG005',
|
// originEqpmId: 'ORIG005',
|
||||||
eqpmNm: '컨트롤러 E',
|
// eqpmNm: '컨트롤러 E',
|
||||||
careStndVal: 55,
|
// careStndVal: 55,
|
||||||
warnStndVal: 75,
|
// warnStndVal: 75,
|
||||||
},
|
// },
|
||||||
|
|
||||||
],
|
// ],
|
||||||
column: [
|
// column: [
|
||||||
{ header: '설비', name: 'eqpmId', align: 'left' },
|
// { header: '설비', name: 'eqpmId', align: 'left' },
|
||||||
{
|
// {
|
||||||
header: 'origin설비',
|
// header: 'origin설비',
|
||||||
name: 'originEqpmId',
|
// name: 'originEqpmId',
|
||||||
align: 'center',
|
// align: 'center',
|
||||||
hidden: true,
|
// hidden: true,
|
||||||
},
|
// },
|
||||||
{ header: '설비명', name: 'eqpmNm', align: 'left' },
|
// { header: '설비명', name: 'eqpmNm', align: 'left' },
|
||||||
{ header: '주의기준', name: 'careStndVal', align: 'right' },
|
// { header: '주의기준', name: 'careStndVal', align: 'right' },
|
||||||
{ header: '심각기준', name: 'warnStndVal', align: 'right' },
|
// { header: '심각기준', name: 'warnStndVal', align: 'right' },
|
||||||
]
|
// ]
|
||||||
|
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -408,6 +408,10 @@ export default {
|
|||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
|
header: {
|
||||||
|
height: 37,
|
||||||
|
},
|
||||||
|
rowHeight: 'auto',
|
||||||
};
|
};
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
@ -511,69 +515,69 @@ export default {
|
|||||||
this.loadGrid = false;
|
this.loadGrid = false;
|
||||||
let res = [];
|
let res = [];
|
||||||
|
|
||||||
// if (this.selectValue01 && this.selectValue02 && this.selectValue03) {
|
if (this.selectValue01 && this.selectValue02 && this.selectValue03) {
|
||||||
// res = await this.postApiReturn({
|
res = await this.postApiReturn({
|
||||||
// apiKey: 'selectEqpmGdDetl',
|
apiKey: 'selectEqpmGdDetl',
|
||||||
// resKey: 'eqpmGdDetlData',
|
resKey: 'eqpmGdDetlData',
|
||||||
// sendParam: {
|
sendParam: {
|
||||||
// gdIdxId: this.selectValue03,
|
gdIdxId: this.selectValue03,
|
||||||
// },
|
},
|
||||||
// });
|
});
|
||||||
// }
|
}
|
||||||
|
|
||||||
// // grid에서 eqpmId를 기억해서 popup에서 중복되는 값을 제거하는데 사용하기위해 저장 - 시작
|
// grid에서 eqpmId를 기억해서 popup에서 중복되는 값을 제거하는데 사용하기위해 저장 - 시작
|
||||||
// let eqpmIdList = res.map(item => {
|
let eqpmIdList = res.map(item => {
|
||||||
// return item.eqpmId;
|
return item.eqpmId;
|
||||||
// });
|
});
|
||||||
// this.setPageData({ nowGridEqpmIdList: eqpmIdList });
|
this.setPageData({ nowGridEqpmIdList: eqpmIdList });
|
||||||
// // grid에서 eqpmId를 기억해서 popup에서 중복되는 값을 제거하는데 사용하기위해 저장 - 끝
|
// grid에서 eqpmId를 기억해서 popup에서 중복되는 값을 제거하는데 사용하기위해 저장 - 끝
|
||||||
// const newRes = res.map(item => {
|
const newRes = res.map(item => {
|
||||||
// const newObj = {
|
const newObj = {
|
||||||
// ...item,
|
...item,
|
||||||
// rowStat: null,
|
rowStat: null,
|
||||||
// };
|
};
|
||||||
// return newObj;
|
return newObj;
|
||||||
// });
|
});
|
||||||
const newRes = [
|
// const newRes = [
|
||||||
|
|
||||||
|
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ001',
|
// eqpmId: 'EQ001',
|
||||||
originEqpmId: 'ORIG001',
|
// originEqpmId: 'ORIG001',
|
||||||
eqpmNm: '냉각기 A',
|
// eqpmNm: '냉각기 A',
|
||||||
careStndVal: 75,
|
// careStndVal: 75,
|
||||||
warnStndVal: 90,
|
// warnStndVal: 90,
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ002',
|
// eqpmId: 'EQ002',
|
||||||
originEqpmId: 'ORIG002',
|
// originEqpmId: 'ORIG002',
|
||||||
eqpmNm: '펌프 B',
|
// eqpmNm: '펌프 B',
|
||||||
careStndVal: 60,
|
// careStndVal: 60,
|
||||||
warnStndVal: 80,
|
// warnStndVal: 80,
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ003',
|
// eqpmId: 'EQ003',
|
||||||
originEqpmId: 'ORIG003',
|
// originEqpmId: 'ORIG003',
|
||||||
eqpmNm: '모터 C',
|
// eqpmNm: '모터 C',
|
||||||
careStndVal: 50,
|
// careStndVal: 50,
|
||||||
warnStndVal: 70,
|
// warnStndVal: 70,
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ004',
|
// eqpmId: 'EQ004',
|
||||||
originEqpmId: 'ORIG004',
|
// originEqpmId: 'ORIG004',
|
||||||
eqpmNm: '밸브 D',
|
// eqpmNm: '밸브 D',
|
||||||
careStndVal: 65,
|
// careStndVal: 65,
|
||||||
warnStndVal: 85,
|
// warnStndVal: 85,
|
||||||
},
|
// },
|
||||||
{
|
// {
|
||||||
eqpmId: 'EQ005',
|
// eqpmId: 'EQ005',
|
||||||
originEqpmId: 'ORIG005',
|
// originEqpmId: 'ORIG005',
|
||||||
eqpmNm: '컨트롤러 E',
|
// eqpmNm: '컨트롤러 E',
|
||||||
careStndVal: 55,
|
// careStndVal: 55,
|
||||||
warnStndVal: 75,
|
// warnStndVal: 75,
|
||||||
},
|
// },
|
||||||
|
|
||||||
]
|
// ]
|
||||||
this.setGridData({
|
this.setGridData({
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
value: newRes,
|
value: newRes,
|
||||||
|
@ -73,10 +73,8 @@
|
|||||||
:is="loadGrid ? 'Grid' : null"
|
:is="loadGrid ? 'Grid' : null"
|
||||||
:gridName="gridName"
|
:gridName="gridName"
|
||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
@ -154,53 +152,6 @@ export default {
|
|||||||
required: false,
|
required: false,
|
||||||
formFg: false,
|
formFg: false,
|
||||||
},
|
},
|
||||||
dataPathMock: {
|
|
||||||
"rowGrid": {
|
|
||||||
column: [
|
|
||||||
{
|
|
||||||
header: 'TAG ID',
|
|
||||||
name: 'tagId',
|
|
||||||
minWidth: 500,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: 'TAG명',
|
|
||||||
name: 'tagNm',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '대상일시',
|
|
||||||
name: 'readDttm',
|
|
||||||
align:"center",
|
|
||||||
width: 200,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '값',
|
|
||||||
name: 'readVal',
|
|
||||||
width: 100,
|
|
||||||
align:"center"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '취득일시',
|
|
||||||
name: 'regDttm',
|
|
||||||
width: 200,
|
|
||||||
align:"center"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '적재일시',
|
|
||||||
name: 'procDttm',
|
|
||||||
width: 200,
|
|
||||||
align:"center"
|
|
||||||
},
|
|
||||||
],
|
|
||||||
data: dataPathDataExample,
|
|
||||||
defaultRow: dataPathDataExample,
|
|
||||||
option: {
|
|
||||||
pageOptions: {
|
|
||||||
useClient: true,
|
|
||||||
perPage: 10,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -316,13 +267,15 @@ export default {
|
|||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
|
header: {
|
||||||
|
height: 38,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
value: Object.assign(Utility.defaultGridOption(gridHeight), myOptions),
|
value: Object.assign(Utility.defaultGridOption(gridHeight), myOptions),
|
||||||
});
|
});
|
||||||
|
|
||||||
let myColumns = [
|
let myColumns = [
|
||||||
{
|
{
|
||||||
header: 'TAG ID',
|
header: 'TAG ID',
|
||||||
@ -569,13 +522,4 @@ const defaultData = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
import { getPathDataExample } from '@/const/const'
|
|
||||||
const dataPathDataExample = getPathDataExample({
|
|
||||||
"tagId": "ICHEON.ELEC.EQID101.VCB_111A_ACC_WH_PV",
|
|
||||||
"tagNm": "ICHEON VCB_111A 적산 전력",
|
|
||||||
"readDttm": "2023-01-10 00:00:00",
|
|
||||||
"readVal": "581.27",
|
|
||||||
"regDttm": "2023-01-09 15:03:08",
|
|
||||||
"procDttm": "2023-01-10 00:03:09",
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
|
@ -1,80 +1,40 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="l-layout">
|
<div class="l-layout">
|
||||||
|
<PageTitle/>
|
||||||
<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="center" no-gutters>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<!-- 사업장 -->
|
<!-- 사업장 -->
|
||||||
<component
|
<component :is="'SelectBlocMstr'" ref="SelectBlocMstr" :parentPrgmId="myPrgmId"
|
||||||
:is="'SelectBlocMstr'"
|
:textCols="12" customClass="select-large" />
|
||||||
ref="SelectBlocMstr"
|
|
||||||
:parentPrgmId="myPrgmId"
|
|
||||||
:textCols="12"
|
|
||||||
customClass="select-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<component
|
<component :is="'selectCodeList'" :parentPrgmId="myPrgmId" :label="'측정 Data 유형'"
|
||||||
:is="'selectCodeList'"
|
dataKey="searchReadDataType" :sendParam="{ commGrpCd: 'EM_READ_DATA_TYPE', useFg: '1' }"
|
||||||
:parentPrgmId="myPrgmId"
|
:addAll="true" :textCols="12" customClass="select-large" />
|
||||||
:label="'측정 Data 유형'"
|
|
||||||
dataKey="searchReadDataType"
|
|
||||||
:sendParam="{ commGrpCd: 'EM_READ_DATA_TYPE', useFg: '1' }"
|
|
||||||
:addAll="true"
|
|
||||||
:textCols="12"
|
|
||||||
customClass="select-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<component
|
<component :is="'SelectReadObj'" :parentPrgmId="myPrgmId" :label="'측정대상'"
|
||||||
:is="'SelectReadObj'"
|
dataKey="searchReadObj" :sendParam="{ useFg: '1' }" :labelCols="12" :textCols="12"
|
||||||
:parentPrgmId="myPrgmId"
|
:addAll="true" customClass="select-large" />
|
||||||
:label="'측정대상'"
|
|
||||||
dataKey="searchReadObj"
|
|
||||||
:sendParam="{ useFg: '1' }"
|
|
||||||
:labelCols="12"
|
|
||||||
:textCols="12"
|
|
||||||
:addAll="true"
|
|
||||||
customClass="select-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
|
|
||||||
</v-row>
|
</v-row>
|
||||||
<v-row align="end" no-gutters>
|
<v-row align="end" no-gutters>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<component
|
<component :is="'selectCodeList'" :parentPrgmId="myPrgmId" :label="'사용여부'" dataKey="useFg"
|
||||||
:is="'selectCodeList'"
|
:sendParam="{ commGrpCd: 'CO_USEFG', useFg: '1' }" :addAll="true" :textCols="12"
|
||||||
:parentPrgmId="myPrgmId"
|
customClass="select-large" />
|
||||||
:label="'사용여부'"
|
|
||||||
dataKey="useFg"
|
|
||||||
:sendParam="{ commGrpCd: 'CO_USEFG', useFg: '1' }"
|
|
||||||
:addAll="true"
|
|
||||||
:textCols="12"
|
|
||||||
customClass="select-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<InputText
|
<InputText :parentPrgmId="myPrgmId" label="TAG ID" valueNm="tagId" :labelCols="12"
|
||||||
:parentPrgmId="myPrgmId"
|
:textCols="12" :searchOption="true" customClass="input-large" />
|
||||||
label="TAG ID"
|
|
||||||
valueNm="tagId"
|
|
||||||
:labelCols="12"
|
|
||||||
:textCols="12"
|
|
||||||
:searchOption="true"
|
|
||||||
customClass="input-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<InputText
|
<InputText :parentPrgmId="myPrgmId" label="TAG명" valueNm="tagNm" :labelCols="12"
|
||||||
:parentPrgmId="myPrgmId"
|
:textCols="12" :searchOption="true" customClass="input-large" />
|
||||||
label="TAG명"
|
|
||||||
valueNm="tagNm"
|
|
||||||
:labelCols="12"
|
|
||||||
:textCols="12"
|
|
||||||
:searchOption="true"
|
|
||||||
customClass="input-large"
|
|
||||||
/>
|
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3" class="d-flex align-end justify-end text-right">
|
<v-col :cols="3" class="d-flex align-end justify-end text-right">
|
||||||
<BtnSearch @click="search" size="large" />
|
<BtnSearch @click="search" size="large" />
|
||||||
@ -88,29 +48,14 @@
|
|||||||
<v-card class="pb-5">
|
<v-card class="pb-5">
|
||||||
<v-card-title class="d-flex justify-space-between align-end">
|
<v-card-title class="d-flex justify-space-between align-end">
|
||||||
<span class="tit ft-size_20 ft-weight_600">TAG 정보</span>
|
<span class="tit ft-size_20 ft-weight_600">TAG 정보</span>
|
||||||
<Buttons
|
<Buttons :parentPrgmId="myPrgmId" :bindingData="gridName" :detailList="detailList"
|
||||||
:parentPrgmId="myPrgmId"
|
:btnActionsFnc="btnActions" />
|
||||||
:bindingData="gridName"
|
|
||||||
:detailList="detailList"
|
|
||||||
:btnActionsFnc="btnActions"
|
|
||||||
/>
|
|
||||||
</v-card-title>
|
</v-card-title>
|
||||||
<v-card-actions>
|
<v-card-actions>
|
||||||
<div
|
<div ref="gridParent" class="w100" style="height: calc(100vh - 400px)">
|
||||||
ref="gridParent"
|
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName"
|
||||||
class="w100"
|
:parentPrgmId="myPrgmId" @getRowsData="getRowData"
|
||||||
style="height: calc(100vh - 400px)"
|
@sendSelectedRowStatInfo="getSelectedRowStatInfo" :selectedRowDataWatchFlag="true" />
|
||||||
>
|
|
||||||
<component
|
|
||||||
:ref="gridName"
|
|
||||||
:is="loadGrid ? 'Grid' : null"
|
|
||||||
:gridName="gridName"
|
|
||||||
:parentPrgmId="myPrgmId"
|
|
||||||
@getRowsData="getRowData"
|
|
||||||
@sendSelectedRowStatInfo="getSelectedRowStatInfo"
|
|
||||||
:selectedRowDataWatchFlag="true"
|
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
<!-- <div class="d-flex align-center justify-space-between">
|
<!-- <div class="d-flex align-center justify-space-between">
|
||||||
@ -129,32 +74,16 @@
|
|||||||
<v-card-title>TAG 상세</v-card-title>
|
<v-card-title>TAG 상세</v-card-title>
|
||||||
<div class="px-5" style="height:calc(100% - 70px)">
|
<div class="px-5" style="height:calc(100% - 70px)">
|
||||||
<v-tabs v-model="tab">
|
<v-tabs v-model="tab">
|
||||||
<v-tab
|
<v-tab v-for="item in items" :key="item.id" :disabled="item.disabledFlag">
|
||||||
v-for="item in items"
|
|
||||||
:key="item.id"
|
|
||||||
:disabled="item.disabledFlag"
|
|
||||||
>
|
|
||||||
{{ item.name }}
|
{{ item.name }}
|
||||||
</v-tab>
|
</v-tab>
|
||||||
</v-tabs>
|
</v-tabs>
|
||||||
<v-tabs-items
|
<v-tabs-items v-model="tab" style="height: calc(100% - 65px);" class="py-6">
|
||||||
v-model="tab"
|
|
||||||
style="height: calc(100% - 65px);"
|
|
||||||
class="py-6"
|
|
||||||
>
|
|
||||||
<v-tab-item v-for="(item, idx) in items" :key="item.id">
|
<v-tab-item v-for="(item, idx) in items" :key="item.id">
|
||||||
<component
|
<component v-if="item.id == 'tagBaseInfoTab'" :is="'Form'" :parentPrgmId="myPrgmId"
|
||||||
v-if="item.id == 'tagBaseInfoTab'"
|
:detailList="detailList" @gridEditingFinish="gridEditingFinish" />
|
||||||
:is="'Form'"
|
<TagAddInfoTab v-if="item.id == 'tagAddInfoTab'" :parentPrgmId="myPrgmId"
|
||||||
:parentPrgmId="myPrgmId"
|
:innerTabGridInfo="{ tab, idx }" />
|
||||||
:detailList="detailList"
|
|
||||||
@gridEditingFinish="gridEditingFinish"
|
|
||||||
/>
|
|
||||||
<TagAddInfoTab
|
|
||||||
v-if="item.id == 'tagAddInfoTab'"
|
|
||||||
:parentPrgmId="myPrgmId"
|
|
||||||
:innerTabGridInfo="{ tab, idx }"
|
|
||||||
/>
|
|
||||||
</v-tab-item>
|
</v-tab-item>
|
||||||
</v-tabs-items>
|
</v-tabs-items>
|
||||||
</div>
|
</div>
|
||||||
@ -166,7 +95,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import { mapState, mapMutations, mapActions } from 'vuex';
|
import { mapState, mapMutations, 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 BtnSearch from '~/components/common/button/BtnSearch';
|
import BtnSearch from '~/components/common/button/BtnSearch';
|
||||||
import Buttons from '~/components/common/button/Buttons';
|
import Buttons from '~/components/common/button/Buttons';
|
||||||
import SelectBlocMstr from '@/components/common/select/SelectBlocMstr';
|
import SelectBlocMstr from '@/components/common/select/SelectBlocMstr';
|
||||||
@ -178,12 +107,13 @@ import TagAddInfoTab from '@/components/pages/ems/TagInfo/TagAddInfoTab';
|
|||||||
import Grid from '~/components/common/Grid';
|
import Grid from '~/components/common/Grid';
|
||||||
import Utility from '~/plugins/utility';
|
import Utility from '~/plugins/utility';
|
||||||
import pagination from '~/components/Pagination';
|
import pagination from '~/components/Pagination';
|
||||||
|
import PageTitle from "~/components/common/PageTitle";
|
||||||
|
|
||||||
let myTitle;
|
let myTitle;
|
||||||
// const myPrgmId = "PRG0051";
|
// const myPrgmId = "PRG0051";
|
||||||
let myPrgmId;
|
let myPrgmId;
|
||||||
export default {
|
export default {
|
||||||
mixins: [mixinGlobal,resize],
|
mixins: [mixinGlobal, resize],
|
||||||
async asyncData(context) {
|
async asyncData(context) {
|
||||||
const myState = context.store.state;
|
const myState = context.store.state;
|
||||||
// context.store.commit("setActiveMenuInfo", myState.menuData[myPrgmId]);
|
// context.store.commit("setActiveMenuInfo", myState.menuData[myPrgmId]);
|
||||||
@ -210,6 +140,7 @@ export default {
|
|||||||
TagAddInfoTab,
|
TagAddInfoTab,
|
||||||
Grid,
|
Grid,
|
||||||
pagination,
|
pagination,
|
||||||
|
PageTitle
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -223,123 +154,11 @@ export default {
|
|||||||
],
|
],
|
||||||
detailList: myDetail,
|
detailList: myDetail,
|
||||||
alrmFg: null,
|
alrmFg: null,
|
||||||
dataPathMock: {
|
itemsPerPage: 10,
|
||||||
"rowGrid": {
|
itemsPerPageArray: [10, 20, 30],
|
||||||
column: [
|
limit: 20,
|
||||||
{ header: '회사 ID', name: 'comId', hidden: true },
|
page: 1,
|
||||||
{
|
totalCount: 0,
|
||||||
header: 'TAG ID',
|
|
||||||
name: 'tagId',
|
|
||||||
width: 'auto',
|
|
||||||
minWidth: 340,
|
|
||||||
align: 'left',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: 'TAG 명',
|
|
||||||
name: 'tagNm',
|
|
||||||
width: 'auto',
|
|
||||||
minWidth: 220,
|
|
||||||
align: 'left',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '측정 값 유형',
|
|
||||||
name: 'readDataTypeCd',
|
|
||||||
width: 90,
|
|
||||||
align: 'left',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '측정대상',
|
|
||||||
name: 'readObjId',
|
|
||||||
width: 100,
|
|
||||||
align: 'left',
|
|
||||||
},
|
|
||||||
{ header: '배율', name: 'mgnf', width: 80, align: 'right' },
|
|
||||||
{
|
|
||||||
header: '단위',
|
|
||||||
name: 'unitCd',
|
|
||||||
width: 80,
|
|
||||||
align: 'left',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '최소값',
|
|
||||||
name: 'rangMin',
|
|
||||||
width: 100,
|
|
||||||
align: 'right',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '최대값',
|
|
||||||
name: 'rangMax',
|
|
||||||
width: 100,
|
|
||||||
align: 'right',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '경고 상상',
|
|
||||||
name: 'alrmHihi',
|
|
||||||
width: 100,
|
|
||||||
align: 'right',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '경고 상',
|
|
||||||
name: 'alrmHi',
|
|
||||||
width: 100,
|
|
||||||
align: 'right',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '경고 하',
|
|
||||||
name: 'alrmLo',
|
|
||||||
width: 100,
|
|
||||||
align: 'right',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '경고 하하',
|
|
||||||
name: 'alrmLolo',
|
|
||||||
width: 100,
|
|
||||||
align: 'right',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '사업장',
|
|
||||||
name: 'blocId',
|
|
||||||
width: 100,
|
|
||||||
align: 'center',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '집계 여부',
|
|
||||||
name: 'totFg',
|
|
||||||
width: 80,
|
|
||||||
align: 'center',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
header: '사용 여부',
|
|
||||||
name: 'useFg',
|
|
||||||
width: 80,
|
|
||||||
align: 'center',
|
|
||||||
hidden: true,
|
|
||||||
},
|
|
||||||
],
|
|
||||||
data: dataPathDataExample,
|
|
||||||
defaultRow: dataPathDataExample,
|
|
||||||
option: {
|
|
||||||
pageOptions: {
|
|
||||||
useClient: true,
|
|
||||||
perPage: 10,
|
|
||||||
},
|
|
||||||
scrollX: true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// itemsPerPage: 10,
|
|
||||||
// itemsPerPageArray: [10, 20, 30],
|
|
||||||
// limit: 20,
|
|
||||||
// page: 1,
|
|
||||||
// totalCount: 0,
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -456,12 +275,20 @@ export default {
|
|||||||
this.gridInit();
|
this.gridInit();
|
||||||
},
|
},
|
||||||
gridInit() {
|
gridInit() {
|
||||||
const gridHeight = this.$refs.gridParent.offsetHeight - 16;
|
const gridHeight = this.$refs.gridParent.offsetHeight - 180;
|
||||||
|
|
||||||
const myOptions = {
|
const myOptions = {
|
||||||
columnOptions: {
|
columnOptions: {
|
||||||
resizable: true,
|
resizable: true,
|
||||||
},
|
},
|
||||||
|
pageOptions: {
|
||||||
|
useClient: true,
|
||||||
|
perPage: 10,
|
||||||
|
},
|
||||||
|
scrollX: true,
|
||||||
|
header: {
|
||||||
|
height: 38,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
this.setGridOption({
|
this.setGridOption({
|
||||||
gridKey: this.gridName,
|
gridKey: this.gridName,
|
||||||
@ -700,16 +527,16 @@ export default {
|
|||||||
//rowKey: 0,
|
//rowKey: 0,
|
||||||
rowKey:
|
rowKey:
|
||||||
this.pageData.rowGridSelectKey == '' ||
|
this.pageData.rowGridSelectKey == '' ||
|
||||||
this.pageData.rowGridSelectKey == null
|
this.pageData.rowGridSelectKey == null
|
||||||
? 0
|
? 0
|
||||||
: this.pageData.rowGridSelectKey ==
|
: this.pageData.rowGridSelectKey ==
|
||||||
this.$refs[this.gridName].getData().length - 1
|
this.$refs[this.gridName].getData().length - 1
|
||||||
? this.pageData.rowGridSelectKey
|
? this.pageData.rowGridSelectKey
|
||||||
: 0,
|
: 0,
|
||||||
columnName: 'tagId',
|
columnName: 'tagId',
|
||||||
setScroll: true,
|
setScroll: true,
|
||||||
});
|
});
|
||||||
} catch (error) {}
|
} catch (error) { }
|
||||||
// this.$refs[this.gridName].focus({
|
// this.$refs[this.gridName].focus({
|
||||||
// rowKey: 0,
|
// rowKey: 0,
|
||||||
// columnName: "tagId",
|
// columnName: "tagId",
|
||||||
@ -946,7 +773,7 @@ export default {
|
|||||||
gridEditingFinish(data) {
|
gridEditingFinish(data) {
|
||||||
this.$refs[this.gridName].editingFinish(data);
|
this.$refs[this.gridName].editingFinish(data);
|
||||||
},
|
},
|
||||||
changeGrid: async function(pageNum, limit) {
|
changeGrid: async function (pageNum, limit) {
|
||||||
this.page = pageNum;
|
this.page = pageNum;
|
||||||
this.limit = limit;
|
this.limit = limit;
|
||||||
|
|
||||||
@ -990,9 +817,9 @@ function isValidAlrmVal(obj) {
|
|||||||
if (Number(obj[keyList[i]]) >= Number(obj[keyList[j]])) {
|
if (Number(obj[keyList[i]]) >= Number(obj[keyList[j]])) {
|
||||||
alert(
|
alert(
|
||||||
nameList[j] +
|
nameList[j] +
|
||||||
'값은 ' +
|
'값은 ' +
|
||||||
nameList[i] +
|
nameList[i] +
|
||||||
'값보다 큰 숫자를 입력해야 합니다.',
|
'값보다 큰 숫자를 입력해야 합니다.',
|
||||||
);
|
);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -1094,7 +921,7 @@ const myDetail = [
|
|||||||
label: 'TAG ID',
|
label: 'TAG ID',
|
||||||
valueNm: 'tagId',
|
valueNm: 'tagId',
|
||||||
disabled: false,
|
disabled: false,
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pr-4',
|
class: 'py-2 pr-4',
|
||||||
required: false,
|
required: false,
|
||||||
@ -1106,7 +933,7 @@ const myDetail = [
|
|||||||
label: 'TAG 명',
|
label: 'TAG 명',
|
||||||
valueNm: 'tagNm',
|
valueNm: 'tagNm',
|
||||||
disabled: false,
|
disabled: false,
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pl-4',
|
class: 'py-2 pl-4',
|
||||||
required: false,
|
required: false,
|
||||||
@ -1118,7 +945,7 @@ const myDetail = [
|
|||||||
label: '측정 값 유형',
|
label: '측정 값 유형',
|
||||||
valueNm: 'readDataTypeCd',
|
valueNm: 'readDataTypeCd',
|
||||||
disabled: false,
|
disabled: false,
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pr-4 pt-5',
|
class: 'py-2 pr-4 pt-5',
|
||||||
list: 'readDataTypeCdList',
|
list: 'readDataTypeCdList',
|
||||||
@ -1139,7 +966,7 @@ const myDetail = [
|
|||||||
itemText: 'readObjNm',
|
itemText: 'readObjNm',
|
||||||
itemValue: 'readObjId',
|
itemValue: 'readObjId',
|
||||||
required: true,
|
required: true,
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1151,7 +978,7 @@ const myDetail = [
|
|||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pr-4 pt-5',
|
class: 'py-2 pr-4 pt-5',
|
||||||
required: true,
|
required: true,
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1165,7 +992,7 @@ const myDetail = [
|
|||||||
list: 'unitCdList',
|
list: 'unitCdList',
|
||||||
itemText: 'commCdNm',
|
itemText: 'commCdNm',
|
||||||
itemValue: 'commCd',
|
itemValue: 'commCd',
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1176,7 +1003,7 @@ const myDetail = [
|
|||||||
disabled: false,
|
disabled: false,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pr-4 pt-5',
|
class: 'py-2 pr-4 pt-5',
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1187,7 +1014,7 @@ const myDetail = [
|
|||||||
disabled: false,
|
disabled: false,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pl-4 pt-5',
|
class: 'py-2 pl-4 pt-5',
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1198,7 +1025,7 @@ const myDetail = [
|
|||||||
disabled: false,
|
disabled: false,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pr-4 pt-5',
|
class: 'py-2 pr-4 pt-5',
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1209,7 +1036,7 @@ const myDetail = [
|
|||||||
disabled: false,
|
disabled: false,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pl-4 pt-5',
|
class: 'py-2 pl-4 pt-5',
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1220,7 +1047,7 @@ const myDetail = [
|
|||||||
disabled: false,
|
disabled: false,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pr-4 pt-5',
|
class: 'py-2 pr-4 pt-5',
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1231,7 +1058,7 @@ const myDetail = [
|
|||||||
disabled: false,
|
disabled: false,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pl-4 pt-5',
|
class: 'py-2 pl-4 pt-5',
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1243,7 +1070,7 @@ const myDetail = [
|
|||||||
cols: 6,
|
cols: 6,
|
||||||
class: 'py-2 pr-4 pt-5',
|
class: 'py-2 pr-4 pt-5',
|
||||||
value: { '1': true, '0': false },
|
value: { '1': true, '0': false },
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1256,7 +1083,7 @@ const myDetail = [
|
|||||||
class: 'py-2 pl-4 pt-5',
|
class: 'py-2 pl-4 pt-5',
|
||||||
value: { '1': true, '0': false },
|
value: { '1': true, '0': false },
|
||||||
required: false,
|
required: false,
|
||||||
iconShow:true,
|
iconShow: true,
|
||||||
labelCols: 12,
|
labelCols: 12,
|
||||||
textCols: 12,
|
textCols: 12,
|
||||||
},
|
},
|
||||||
@ -1285,25 +1112,4 @@ const myDetail = [
|
|||||||
class: 'py-2',
|
class: 'py-2',
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
import { getPathDataExample } from '@/const/const'
|
|
||||||
const dataPathDataExample = getPathDataExample({
|
|
||||||
"comId": "",
|
|
||||||
"tagId": "INCHEON.ELEC.EQID.VCB_111A_ACCWH_PV",
|
|
||||||
"tagNm": "ICHEON VCB_111A - 적산 전력",
|
|
||||||
"readDataTypeCd": "적산",
|
|
||||||
"readObjId": "적산",
|
|
||||||
"mgnf": "적산",
|
|
||||||
"unitCd":"적산",
|
|
||||||
"rangMin":"1",
|
|
||||||
"rangMax":"10",
|
|
||||||
"alrmHihi":"1",
|
|
||||||
"alrmHi":"10",
|
|
||||||
"alrmLo":"1",
|
|
||||||
"alrmLolo":"10",
|
|
||||||
"blocId":"1",
|
|
||||||
"totFg":"1",
|
|
||||||
"useFg":"1",
|
|
||||||
});
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@
|
|||||||
<div class="px-5" style="min-height:calc(100% - 76px)">
|
<div class="px-5" style="min-height:calc(100% - 76px)">
|
||||||
<div ref="gridParent" class="w100 h100">
|
<div ref="gridParent" class="w100 h100">
|
||||||
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName" :parentPrgmId="myPrgmId"
|
<component :ref="gridName" :is="loadGrid ? 'Grid' : null" :gridName="gridName" :parentPrgmId="myPrgmId"
|
||||||
@getRowsData="getRowData" @sendSelectedRowStatInfo="getSelectedRowStatInfo" :dataPath="dataPathMock"
|
@getRowsData="getRowData" @sendSelectedRowStatInfo="getSelectedRowStatInfo"
|
||||||
:selectedRowDataWatchFlag="true" />
|
:selectedRowDataWatchFlag="true" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -266,8 +266,8 @@ export default {
|
|||||||
},
|
},
|
||||||
created() { },
|
created() { },
|
||||||
async mounted() {
|
async mounted() {
|
||||||
console.log('----DEBUG---');
|
// console.log('----DEBUG---');
|
||||||
await this.initTest();
|
// await this.initTest();
|
||||||
// End Debug Test---
|
// End Debug Test---
|
||||||
await this.init();
|
await this.init();
|
||||||
this.initedFlag = true;
|
this.initedFlag = true;
|
||||||
|
@ -275,11 +275,11 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.v-btn {
|
.v-btn {
|
||||||
@if $theme == dark {
|
// @if $theme == dark {
|
||||||
background-color: #18579e;
|
// background-color: #18579e;
|
||||||
} @else {
|
// } @else {
|
||||||
background-color: #3f4d7d;
|
// background-color: #3f4d7d;
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user