Compare commits
1 Commits
85fc9a62af
...
dev-nghian
Author | SHA1 | Date | |
---|---|---|---|
7227d5d56c |
@ -433,10 +433,6 @@ a {
|
|||||||
.v-application.#{$theme}-mode {
|
.v-application.#{$theme}-mode {
|
||||||
min-width: 1000px;
|
min-width: 1000px;
|
||||||
|
|
||||||
.head-logo{
|
|
||||||
gap: 8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.v-navigation-drawer {
|
.v-navigation-drawer {
|
||||||
background: map-deep-get($config, #{$theme}, "menu-bg-color");
|
background: map-deep-get($config, #{$theme}, "menu-bg-color");
|
||||||
}
|
}
|
||||||
@ -478,7 +474,7 @@ a {
|
|||||||
|
|
||||||
.btn-header {
|
.btn-header {
|
||||||
background-color: map-deep-get($config, #{$theme}, "v-btn-header-background");
|
background-color: map-deep-get($config, #{$theme}, "v-btn-header-background");
|
||||||
border:1px solid map-deep-get($config, #{$theme}, "v-btn-header-border");
|
border: map-deep-get($config, #{$theme}, "v-btn-header-border");
|
||||||
color: map-deep-get($config, #{$theme}, "v-btn-header-text");
|
color: map-deep-get($config, #{$theme}, "v-btn-header-text");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -107,13 +107,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.ant-btn {
|
.ant-btn {
|
||||||
|
|
||||||
&.ant-btn-outlined {
|
|
||||||
color:map-deep-get($config, #{$theme}, "ant-btn-default-color");
|
|
||||||
border:1px solid map-deep-get($config, #{$theme}, "ant-btn-default-border-outlined");
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.ant-btn-primary {
|
&.ant-btn-primary {
|
||||||
background: map-deep-get($config, #{$theme}, "ant-btn-primary-bg");
|
background: map-deep-get($config, #{$theme}, "ant-btn-primary-bg");
|
||||||
border-color:map-deep-get($config, #{$theme}, "ant-btn-primary-bg");
|
border-color:map-deep-get($config, #{$theme}, "ant-btn-primary-bg");
|
||||||
|
@ -221,16 +221,6 @@
|
|||||||
|
|
||||||
.v-application.#{$theme}-mode {
|
.v-application.#{$theme}-mode {
|
||||||
|
|
||||||
.v-input-popup__custom {
|
|
||||||
.v-input__slot {
|
|
||||||
padding-left: 12px;
|
|
||||||
padding-right: 12px;
|
|
||||||
border: 1px solid map-deep-get($config,
|
|
||||||
#{$theme},
|
|
||||||
"v-input-popup-password-border"
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.v-textarea {
|
.v-textarea {
|
||||||
.v-input__slot{
|
.v-input__slot{
|
||||||
|
@ -72,11 +72,11 @@ $config: (
|
|||||||
v-btn-backgroundColor: #144985,
|
v-btn-backgroundColor: #144985,
|
||||||
v-box: #212224,
|
v-box: #212224,
|
||||||
v-banner-border-color: rgba(255, 255, 255, 0.1),
|
v-banner-border-color: rgba(255, 255, 255, 0.1),
|
||||||
v-treeview-node-root-backgroundColor: #212224,
|
v-treeview-node-root-backgroundColor: #18579e,
|
||||||
v-treeview-node-root-label-color: #FFFFFFD9,
|
v-treeview-node-root-label-color: #fff,
|
||||||
v-treeview-node-root-label-active-color: #FFFFFFD9,
|
v-treeview-node-root-label-active-color: #fff,
|
||||||
v-treeview-node-root-icon-color: #FFFFFFD9,
|
v-treeview-node-root-icon-color: #fff,
|
||||||
v-treeview-node-root-icon-active-color: #FFFFFFD9,
|
v-treeview-node-root-icon-active-color: #fff,
|
||||||
// v-treeview-node-subroot-backgroundColor: #FFFFFF0A,
|
// v-treeview-node-subroot-backgroundColor: #FFFFFF0A,
|
||||||
v-treeview-node-subroot-backgroundColor: transparent,
|
v-treeview-node-subroot-backgroundColor: transparent,
|
||||||
v-treeview-node-label-color: rgba(255, 255, 255, 0.6),
|
v-treeview-node-label-color: rgba(255, 255, 255, 0.6),
|
||||||
@ -152,7 +152,6 @@ $config: (
|
|||||||
search-btn-background: #1668DC,
|
search-btn-background: #1668DC,
|
||||||
v-btn-color-default: #FFFFFFD9,
|
v-btn-color-default: #FFFFFFD9,
|
||||||
v-btn-bg-default: #FFFFFF2E,
|
v-btn-bg-default: #FFFFFF2E,
|
||||||
v-input-popup-password-border: #424242,
|
|
||||||
v-input-textarea-border: #424242,
|
v-input-textarea-border: #424242,
|
||||||
v-input-textarea-bg: #212224,
|
v-input-textarea-bg: #212224,
|
||||||
v-input-textarea-color: #FFFFFFD9,
|
v-input-textarea-color: #FFFFFFD9,
|
||||||
@ -167,7 +166,6 @@ $config: (
|
|||||||
ant-btn-default-border:#FFFFFF2E,
|
ant-btn-default-border:#FFFFFF2E,
|
||||||
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,
|
|
||||||
),
|
),
|
||||||
light: (w-g5: $--color-gray_555,
|
light: (w-g5: $--color-gray_555,
|
||||||
g5-w: $--color-white,
|
g5-w: $--color-white,
|
||||||
@ -206,11 +204,11 @@ $config: (
|
|||||||
// v-btn-backgroundColor: #fff,
|
// v-btn-backgroundColor: #fff,
|
||||||
v-box: #FFFFFF,
|
v-box: #FFFFFF,
|
||||||
v-banner-border-color: #ddd,
|
v-banner-border-color: #ddd,
|
||||||
v-treeview-node-root-backgroundColor: #FFFFFF,
|
v-treeview-node-root-backgroundColor: #4777d9,
|
||||||
v-treeview-node-root-label-color: #000000E0,
|
v-treeview-node-root-label-color: #111,
|
||||||
v-treeview-node-root-label-active-color: #000000E0,
|
v-treeview-node-root-label-active-color: #fff,
|
||||||
v-treeview-node-root-icon-color: #000000E0,
|
v-treeview-node-root-icon-color: #555,
|
||||||
v-treeview-node-root-icon-active-color: #000000E0,
|
v-treeview-node-root-icon-active-color: #fff,
|
||||||
// v-treeview-node-subroot-backgroundColor: #00000005,
|
// v-treeview-node-subroot-backgroundColor: #00000005,
|
||||||
v-treeview-node-subroot-backgroundColor: transparent,
|
v-treeview-node-subroot-backgroundColor: transparent,
|
||||||
v-treeview-node-label-color: #555,
|
v-treeview-node-label-color: #555,
|
||||||
@ -284,7 +282,6 @@ $config: (
|
|||||||
search-btn-background: #1677FF,
|
search-btn-background: #1677FF,
|
||||||
v-btn-bg-default: #00000026,
|
v-btn-bg-default: #00000026,
|
||||||
v-btn-color-default: #000000E0,
|
v-btn-color-default: #000000E0,
|
||||||
v-input-popup-password-border: #D9D9D9,
|
|
||||||
v-input-textarea-border: #D9D9D9,
|
v-input-textarea-border: #D9D9D9,
|
||||||
v-input-textarea-bg: #FFFFFF,
|
v-input-textarea-bg: #FFFFFF,
|
||||||
v-input-textarea-color: #000000E0,
|
v-input-textarea-color: #000000E0,
|
||||||
@ -299,6 +296,5 @@ $config: (
|
|||||||
ant-btn-default-border:#00000026,
|
ant-btn-default-border:#00000026,
|
||||||
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,
|
|
||||||
),
|
),
|
||||||
);
|
);
|
@ -1,11 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<a-button
|
<v-switch
|
||||||
class="btn-header"
|
class="theme-switch"
|
||||||
:color="mode ? 'dark' : 'light'"
|
v-model="mode"
|
||||||
@click="themeChange"
|
@change="themeChange"
|
||||||
icon="bulb"
|
></v-switch>
|
||||||
>
|
|
||||||
</a-button>
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { mapState, mapMutations } from 'vuex';
|
import { mapState, mapMutations } from 'vuex';
|
||||||
@ -28,11 +26,8 @@ export default {
|
|||||||
setThemeChange: 'setThemeChange',
|
setThemeChange: 'setThemeChange',
|
||||||
}),
|
}),
|
||||||
themeChange() {
|
themeChange() {
|
||||||
this.mode = !this.mode;
|
|
||||||
this.$vuetify.theme.isDark = this.mode;
|
this.$vuetify.theme.isDark = this.mode;
|
||||||
this.setThemeChange(this.mode);
|
this.setThemeChange(this.mode);
|
||||||
console.log(this.mode)
|
|
||||||
console.log(this.$vuetify.theme.isDark)
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@ -74,14 +69,12 @@ export default {
|
|||||||
background-color: #f2f2f2;
|
background-color: #f2f2f2;
|
||||||
top: 2px;
|
top: 2px;
|
||||||
left: 0;
|
left: 0;
|
||||||
// background-image: url(../../assets/images/icon/ico-theme-light.png);
|
background-image: url(../../assets/images/icon/ico-theme-light.png);
|
||||||
content: "light";
|
|
||||||
background-size: 18px 18px;
|
background-size: 18px 18px;
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.v-input--is-label-active {
|
&.v-input--is-label-active {
|
||||||
::v-deep {
|
::v-deep {
|
||||||
.v-input--switch__track {
|
.v-input--switch__track {
|
||||||
@ -89,8 +82,7 @@ export default {
|
|||||||
}
|
}
|
||||||
.v-input--switch__thumb {
|
.v-input--switch__thumb {
|
||||||
// transform: translate(38px, 0);
|
// transform: translate(38px, 0);
|
||||||
// background-image: url(../../assets/images/icon/ico-theme-dark.png);
|
background-image: url(../../assets/images/icon/ico-theme-dark.png);
|
||||||
content: 'dark';
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<v-row class="search-box" align="center" no-gutters>
|
<v-row class="search-box" align="center" no-gutters>
|
||||||
<v-col v-if="item.label" :cols="item.labelCols !== undefined ? item.labelCols : item.cols == 12 ? 2 : 4">
|
<v-col v-if="item.label" :cols="item.cols == 12 ? 2 : 4">
|
||||||
<label for="" class="search-box-label">
|
<label for="" class="search-box-label">
|
||||||
<v-icon
|
<v-icon
|
||||||
x-small
|
x-small
|
||||||
@ -28,14 +28,10 @@
|
|||||||
></v-text-field>
|
></v-text-field>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
|
<v-btn :ripple="false" @click="dialog = !dialog">
|
||||||
<!-- <v-icon>mdi-content-save</v-icon> -->
|
<!-- <v-icon>mdi-content-save</v-icon> -->
|
||||||
<!-- <v-btn :ripple="false" @click="dialog = !dialog">
|
|
||||||
<span>비밀번호 {{ isPassword }}</span>
|
<span>비밀번호 {{ isPassword }}</span>
|
||||||
</v-btn> -->
|
</v-btn>
|
||||||
<a-button :ripple="false" @click="dialog = !dialog" class="ant-btn-outlined">
|
|
||||||
<!-- <v-icon>mdi-content-save</v-icon> -->
|
|
||||||
비밀번호 {{ isPassword }}
|
|
||||||
</a-button>
|
|
||||||
</template>
|
</template>
|
||||||
</v-col>
|
</v-col>
|
||||||
|
|
||||||
@ -52,7 +48,7 @@
|
|||||||
</label>
|
</label>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
v-model.trim="firstPswd"
|
v-model.trim="firstPswd"
|
||||||
class="v-input-popup__custom"
|
class="v-input__custom"
|
||||||
type="password"
|
type="password"
|
||||||
:readonly="!isFocused"
|
:readonly="!isFocused"
|
||||||
@focus="isFocused = true"
|
@focus="isFocused = true"
|
||||||
@ -65,7 +61,7 @@
|
|||||||
</label>
|
</label>
|
||||||
<v-text-field
|
<v-text-field
|
||||||
v-model.trim="secondPswd"
|
v-model.trim="secondPswd"
|
||||||
class="v-input-popup__custom"
|
class="v-input__custom"
|
||||||
type="password"
|
type="password"
|
||||||
:readonly="!isFocused"
|
:readonly="!isFocused"
|
||||||
@focus="isFocused = true"
|
@focus="isFocused = true"
|
||||||
@ -76,15 +72,8 @@
|
|||||||
<v-divider></v-divider>
|
<v-divider></v-divider>
|
||||||
<v-card-actions>
|
<v-card-actions>
|
||||||
<v-spacer></v-spacer>
|
<v-spacer></v-spacer>
|
||||||
<!-- <v-btn color="primary" dark @click="setUpdate()">확인</v-btn> -->
|
<v-btn color="primary" dark @click="setUpdate()">확인</v-btn>
|
||||||
<div>
|
<v-btn color="primary" dark @click="close()">닫기</v-btn>
|
||||||
<a-button @click="close()" class="btn-default">삭제</a-button>
|
|
||||||
<a-button type="primary" @click="setUpdate()" class="v-btn-add-text">
|
|
||||||
확인
|
|
||||||
</a-button>
|
|
||||||
</div>
|
|
||||||
<!-- <v-btn color="primary" dark @click="close()">닫기</v-btn> -->
|
|
||||||
|
|
||||||
</v-card-actions>
|
</v-card-actions>
|
||||||
</v-card>
|
</v-card>
|
||||||
</v-dialog>
|
</v-dialog>
|
||||||
@ -146,10 +135,8 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
console.log(value)
|
|
||||||
},
|
},
|
||||||
set(value) {
|
set(value) {
|
||||||
console.log(value)
|
|
||||||
return value;
|
return value;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
<fullscreen :fullscreen.sync="fullscreen">
|
<fullscreen :fullscreen.sync="fullscreen">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<v-row class="mx-0">
|
<v-row class="mx-0">
|
||||||
<div class="head-logo pl-4 d-flex gap-3">
|
<div class="head-logo pl-4">
|
||||||
<router-link class="home" :to="myHome.root">
|
<router-link class="home" :to="myHome.root">
|
||||||
<div class="lnb-logo">
|
<div class="lnb-logo">
|
||||||
<img v-if="isDarkMode" src="@/assets/images/logo_dm.png" />
|
<img v-if="isDarkMode" src="@/assets/images/logo_dm.png" />
|
||||||
@ -13,11 +13,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- <div class="lnb-logo">FEMS</div>-->
|
<!-- <div class="lnb-logo">FEMS</div>-->
|
||||||
</router-link>
|
</router-link>
|
||||||
<div class="align-center d-flex">
|
|
||||||
<ThemeSwitch style="margin-right: 20px" />
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<v-col col="1" class="d-flex justify-end py-4 px-6 flex-row" style="gap: 8px;">
|
<v-col col="1" class="d-flex justify-end py-4 px-6 flex-row" style="gap: 8px;">
|
||||||
|
<ThemeSwitch style="margin-right: 20px" />
|
||||||
<v-menu offset-y>
|
<v-menu offset-y>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<a-button :ripple="false" tile class="btn-header" v-bind="attrs" v-on="on">
|
<a-button :ripple="false" tile class="btn-header" v-bind="attrs" v-on="on">
|
||||||
@ -104,9 +102,7 @@
|
|||||||
<img v-else src="@/assets/images/logo_lm.png" />
|
<img v-else src="@/assets/images/logo_lm.png" />
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="lnb-logo">FEMS</div>-->
|
<!-- <div class="lnb-logo">FEMS</div>-->
|
||||||
|
|
||||||
</router-link>
|
</router-link>
|
||||||
<ThemeSwitch style="margin-right: 20px" />
|
|
||||||
<v-app-bar-nav-icon ref="appbarnavicon" id="appbarnavicon" @click.stop="miniVariant = !miniVariant"
|
<v-app-bar-nav-icon ref="appbarnavicon" id="appbarnavicon" @click.stop="miniVariant = !miniVariant"
|
||||||
@click="updateTreeview" :style="{
|
@click="updateTreeview" :style="{
|
||||||
backgroundColor: 'transparent',
|
backgroundColor: 'transparent',
|
||||||
@ -168,6 +164,7 @@
|
|||||||
<v-icon size="20" class="ml-2" v-if="closable" @click.stop="onCloseTab(to)">mdi-close</v-icon>
|
<v-icon size="20" class="ml-2" v-if="closable" @click.stop="onCloseTab(to)">mdi-close</v-icon>
|
||||||
</template>
|
</template>
|
||||||
<template #end v-if="false">
|
<template #end v-if="false">
|
||||||
|
<ThemeSwitch style="margin-right: 20px" />
|
||||||
<v-menu offset-y>
|
<v-menu offset-y>
|
||||||
<template v-slot:activator="{ on, attrs }">
|
<template v-slot:activator="{ on, attrs }">
|
||||||
<!-- <v-btn :ripple="false" tile class="btn-close" v-bind="attrs" v-on="on">
|
<!-- <v-btn :ripple="false" tile class="btn-close" v-bind="attrs" v-on="on">
|
||||||
@ -456,17 +453,15 @@ export default {
|
|||||||
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');
|
||||||
@ -475,18 +470,9 @@ export default {
|
|||||||
// console.log('if isLoading stmt1');
|
// console.log('if isLoading stmt1');
|
||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
console.log("this:", this.menuData[nv].url);
|
|
||||||
|
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
path: `/${this.menuData[nv].url}?prgmId=${nv}`,
|
path: `${this.menuData[nv].url}?prgmId=${nv}`,
|
||||||
});
|
});
|
||||||
// this.$router.replace("/").then(() => {
|
|
||||||
// alert("hihi");
|
|
||||||
// this.$router.push({
|
|
||||||
// path: `${this.menuData[nv].url}?prgmId=${nv}`,
|
|
||||||
// });
|
|
||||||
// });
|
|
||||||
|
|
||||||
// this.$router.beforeEach((to, from, next) => {
|
// this.$router.beforeEach((to, from, next) => {
|
||||||
// if(_this.isLoading == true){
|
// if(_this.isLoading == true){
|
||||||
// next(false);
|
// next(false);
|
||||||
@ -512,12 +498,14 @@ export default {
|
|||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
this.$refs.routerTab.openIframe(
|
this.$refs.routerTab.openIframe(
|
||||||
encodeURI(`http://localhost:9999${this.menuData[nv].url}?prgmId=${nv}`),
|
encodeURI(
|
||||||
this.menuData[nv].menuNm
|
`http://localhost:9999${this.menuData[nv].url}?prgmId=${nv}`,
|
||||||
|
),
|
||||||
|
this.menuData[nv].menuNm,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
this.$axios.get(`${this.menuData[nv].url}?$menuId=${menuId}`);
|
this.$axios.get(`${this.menuData[nv].url}?$menuId=${menuId}`);
|
||||||
} else alert("지정된 페이지 경로가 없습니다.");
|
} else alert('지정된 페이지 경로가 없습니다.');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -4,14 +4,13 @@
|
|||||||
<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="center" no-gutters>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
<!-- 사업장 -->
|
<!-- 사업장 -->
|
||||||
<component
|
<component
|
||||||
:is="'SelectBlocMstr'"
|
:is="'SelectBlocMstr'"
|
||||||
:parentPrgmId="myPrgmId"
|
:parentPrgmId="myPrgmId"
|
||||||
:sendParam="{ comId }"
|
:sendParam="{ comId }"
|
||||||
customClass="select-large"
|
|
||||||
/>
|
/>
|
||||||
<!-- <component
|
<!-- <component
|
||||||
:is="'selectCodeList'"
|
:is="'selectCodeList'"
|
||||||
@ -36,7 +35,6 @@
|
|||||||
label="로그인ID"
|
label="로그인ID"
|
||||||
valueNm="userLoginId"
|
valueNm="userLoginId"
|
||||||
:searchOption="true"
|
:searchOption="true"
|
||||||
customClass="input-large"
|
|
||||||
/>
|
/>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3">
|
<v-col :cols="3">
|
||||||
@ -45,11 +43,10 @@
|
|||||||
label="사용자명"
|
label="사용자명"
|
||||||
valueNm="userNm"
|
valueNm="userNm"
|
||||||
:searchOption="true"
|
:searchOption="true"
|
||||||
customClass="input-large"
|
|
||||||
/>
|
/>
|
||||||
</v-col>
|
</v-col>
|
||||||
<v-col :cols="3" class="text-right">
|
<v-col :cols="3" class="text-right">
|
||||||
<BtnSearch size="large"/>
|
<BtnSearch />
|
||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
</v-card>
|
</v-card>
|
||||||
@ -79,7 +76,6 @@
|
|||||||
@getRowsData="getRowData"
|
@getRowsData="getRowData"
|
||||||
@sendSelectedRowStatInfo="getSelectedRowStatInfo"
|
@sendSelectedRowStatInfo="getSelectedRowStatInfo"
|
||||||
:selectedRowDataWatchFlag="true"
|
:selectedRowDataWatchFlag="true"
|
||||||
:dataPath="dataPathMock"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -307,40 +303,10 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async init() {
|
async init() {
|
||||||
this.gridInit();
|
await this.gridInit();
|
||||||
},
|
},
|
||||||
|
|
||||||
gridInitTest() {
|
|
||||||
const rowGrid = {
|
|
||||||
column: [
|
|
||||||
{ header: '사용자No', name: 'userNo', align: 'center', hidden: true },
|
|
||||||
{ header: '사용자명', name: 'userNm' },
|
|
||||||
{ header: '사용자ID', name: 'userLoginId' },
|
|
||||||
{ header: '사용자비밀번호', name: 'userPswd', hidden: true },
|
|
||||||
{ header: '사업장', name: 'blocId', hidden: true },
|
|
||||||
{ header: 'email', name: 'email', hidden: true },
|
|
||||||
{ header: '등록자NO', name: 'regUserNo', hidden: true },
|
|
||||||
{ header: '등록일시', name: 'regDttm', hidden: true },
|
|
||||||
{ header: '수정자NO', name: 'procUserNo', hidden: true },
|
|
||||||
{ header: '수정일시', name: 'procDttm', hidden: true },
|
|
||||||
{ header: 'comId', name: 'comId', hidden: true },
|
|
||||||
{ header: 'deptId', name: 'deptId', hidden: true },
|
|
||||||
],
|
|
||||||
data: dataMockExample,
|
|
||||||
defaultRow: dataMockExample,
|
|
||||||
option: [],
|
|
||||||
}
|
|
||||||
this.dataPathMock = {rowGrid};
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.loadGrid = true;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
// 사용자 리스트 그리드 세팅
|
// 사용자 리스트 그리드 세팅
|
||||||
gridInit() {
|
gridInit() {
|
||||||
|
|
||||||
// this.gridInitTest(); return
|
|
||||||
|
|
||||||
const gridHeight = this.$refs.gridParent.offsetHeight - 90;
|
const gridHeight = this.$refs.gridParent.offsetHeight - 90;
|
||||||
|
|
||||||
const myOptions = {
|
const myOptions = {
|
||||||
@ -971,10 +937,7 @@ const myDetail = blocCdList => {
|
|||||||
elseDisabled: 'I', // 선택적 disabled => rowStat 상태가 해당 값이 아닐경우 true
|
elseDisabled: 'I', // 선택적 disabled => rowStat 상태가 해당 값이 아닐경우 true
|
||||||
readonly: true,
|
readonly: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
required: false,
|
required: false,
|
||||||
placeholder: '시스템 자동입력',
|
placeholder: '시스템 자동입력',
|
||||||
},
|
},
|
||||||
@ -983,10 +946,7 @@ const myDetail = blocCdList => {
|
|||||||
label: '사용자ID',
|
label: '사용자ID',
|
||||||
valueNm: 'userLoginId',
|
valueNm: 'userLoginId',
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
required: true,
|
required: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -996,10 +956,7 @@ const myDetail = blocCdList => {
|
|||||||
valueNm: 'userPswd',
|
valueNm: 'userPswd',
|
||||||
// disabled: true,
|
// disabled: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
required: true,
|
required: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -1007,10 +964,7 @@ const myDetail = blocCdList => {
|
|||||||
label: '사용자명',
|
label: '사용자명',
|
||||||
valueNm: 'userNm',
|
valueNm: 'userNm',
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
required: true,
|
required: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -1018,10 +972,7 @@ const myDetail = blocCdList => {
|
|||||||
label: '사업장',
|
label: '사업장',
|
||||||
valueNm: 'blocId',
|
valueNm: 'blocId',
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
list: blocCdList.map(item => ({
|
list: blocCdList.map(item => ({
|
||||||
text: item.blocNm,
|
text: item.blocNm,
|
||||||
value: item.blocId,
|
value: item.blocId,
|
||||||
@ -1033,10 +984,7 @@ const myDetail = blocCdList => {
|
|||||||
label: 'email',
|
label: 'email',
|
||||||
valueNm: 'email',
|
valueNm: 'email',
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'InputText',
|
type: 'InputText',
|
||||||
@ -1044,10 +992,7 @@ const myDetail = blocCdList => {
|
|||||||
valueNm: 'regUserNo',
|
valueNm: 'regUserNo',
|
||||||
disabled: true,
|
disabled: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
placeholder: '시스템 자동입력',
|
placeholder: '시스템 자동입력',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -1056,10 +1001,7 @@ const myDetail = blocCdList => {
|
|||||||
valueNm: 'regDttm',
|
valueNm: 'regDttm',
|
||||||
disabled: true,
|
disabled: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
placeholder: '시스템 자동입력',
|
placeholder: '시스템 자동입력',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -1068,10 +1010,7 @@ const myDetail = blocCdList => {
|
|||||||
valueNm: 'procUserNo',
|
valueNm: 'procUserNo',
|
||||||
disabled: true,
|
disabled: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
placeholder: '시스템 자동입력',
|
placeholder: '시스템 자동입력',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -1080,10 +1019,7 @@ const myDetail = blocCdList => {
|
|||||||
valueNm: 'procDttm',
|
valueNm: 'procDttm',
|
||||||
disabled: true,
|
disabled: true,
|
||||||
cols: 6,
|
cols: 6,
|
||||||
labelCols: 12,
|
class: 'py-2',
|
||||||
textCols: 12,
|
|
||||||
class: 'py-2 pr-4',
|
|
||||||
iconShow: true,
|
|
||||||
placeholder: '시스템 자동입력',
|
placeholder: '시스템 자동입력',
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
@ -1100,67 +1036,4 @@ function sha512(str) {
|
|||||||
.update(str)
|
.update(str)
|
||||||
.digest('hex');
|
.digest('hex');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const dataMockExample = [
|
|
||||||
{
|
|
||||||
userNo: 1,
|
|
||||||
userNm: '홍길동',
|
|
||||||
userLoginId: 'hong123',
|
|
||||||
userPswd: 'password123',
|
|
||||||
blocId: 'B001',
|
|
||||||
email: 'hong@example.com',
|
|
||||||
regUserNo: 100,
|
|
||||||
regDttm: '2025-07-01 10:00:00',
|
|
||||||
procUserNo: 101,
|
|
||||||
procDttm: '2025-07-15 14:30:00',
|
|
||||||
comId: 'C001',
|
|
||||||
deptId: 'D001'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
userNo: 2,
|
|
||||||
userNm: '김영희',
|
|
||||||
userLoginId: 'kimyh',
|
|
||||||
userPswd: 'securePass456',
|
|
||||||
blocId: 'B002',
|
|
||||||
email: 'kim@example.com',
|
|
||||||
regUserNo: 102,
|
|
||||||
regDttm: '2025-07-02 11:20:00',
|
|
||||||
procUserNo: 103,
|
|
||||||
procDttm: '2025-07-16 09:45:00',
|
|
||||||
comId: 'C002',
|
|
||||||
deptId: 'D002'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
userNo: 3,
|
|
||||||
userNm: '관리자',
|
|
||||||
userLoginId: 'user',
|
|
||||||
userPswd: 'securePass456',
|
|
||||||
blocId: 'B002',
|
|
||||||
email: 'kim@example.com',
|
|
||||||
regUserNo: 102,
|
|
||||||
regDttm: '2025-07-02 11:20:00',
|
|
||||||
procUserNo: 103,
|
|
||||||
procDttm: '2025-07-16 09:45:00',
|
|
||||||
comId: 'C002',
|
|
||||||
deptId: 'D002'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
userNo: 4,
|
|
||||||
userNm: '사용자',
|
|
||||||
userLoginId: 'admin',
|
|
||||||
userPswd: 'securePass456',
|
|
||||||
blocId: 'B002',
|
|
||||||
email: 'kim@example.com',
|
|
||||||
regUserNo: 102,
|
|
||||||
regDttm: '2025-07-02 11:20:00',
|
|
||||||
procUserNo: 103,
|
|
||||||
procDttm: '2025-07-16 09:45:00',
|
|
||||||
comId: 'C002',
|
|
||||||
deptId: 'D002'
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
Reference in New Issue
Block a user