Commit 22b5101a2e7e47c47c8f58535ac8256e8fe5b237
1 parent
0f94839d
2024.04.18
Showing
7 changed files
with
76 additions
and
40 deletions
Show diff stats
babylon-vue-4.0.0/src/layout/AppBreadcrumb.vue
@@ -5,24 +5,44 @@ | @@ -5,24 +5,44 @@ | ||
5 | <li> | 5 | <li> |
6 | <button class="p-link" @click="home"><i class="pi pi-home"></i></button> | 6 | <button class="p-link" @click="home"><i class="pi pi-home"></i></button> |
7 | </li> | 7 | </li> |
8 | + <span v-if="breadcrumb && breadcrumb[0]"> | ||
9 | + <li>/</li> | ||
10 | + <li>{{ breadcrumb[0].parent }}</li> | ||
11 | + <template v-for="item in breadcrumb" v-bind:key="item.id"> | ||
12 | + <li>/</li> | ||
13 | + <li>{{ item.label }}</li> | ||
14 | + </template> | ||
15 | + </span> | ||
16 | + </ul> | ||
17 | + <!-- <ul> | ||
18 | + <li> | ||
19 | + <button class="p-link" @click="home"><i class="pi pi-home"></i></button> | ||
20 | + </li> | ||
8 | <template v-if="$route.meta.breadcrumb"> | 21 | <template v-if="$route.meta.breadcrumb"> |
9 | <li v-if="$route.meta.breadcrumb[0].parent">/</li> | 22 | <li v-if="$route.meta.breadcrumb[0].parent">/</li> |
10 | <li v-if="$route.meta.breadcrumb[0].parent">{{ $route.meta.breadcrumb[0].parent }}</li> | 23 | <li v-if="$route.meta.breadcrumb[0].parent">{{ $route.meta.breadcrumb[0].parent }}</li> |
11 | <li>/</li> | 24 | <li>/</li> |
12 | <li>{{ $route.meta.breadcrumb[0].label }}</li> | 25 | <li>{{ $route.meta.breadcrumb[0].label }}</li> |
13 | </template> | 26 | </template> |
14 | - </ul> | 27 | + </ul> --> |
15 | </div> | 28 | </div> |
16 | </div> | 29 | </div> |
17 | </template> | 30 | </template> |
18 | 31 | ||
19 | <script> | 32 | <script> |
33 | +import router from '../router'; | ||
34 | + | ||
20 | export default { | 35 | export default { |
21 | methods: { | 36 | methods: { |
22 | home() { | 37 | home() { |
23 | window.location = '/#/'; | 38 | window.location = '/#/'; |
24 | }, | 39 | }, |
25 | }, | 40 | }, |
41 | + computed: { | ||
42 | + breadcrumb() { | ||
43 | + return router.currentRoute.value.meta.breadcrumb | ||
44 | + } | ||
45 | + }, | ||
26 | }; | 46 | }; |
27 | </script> | 47 | </script> |
28 | 48 |
babylon-vue-4.0.0/src/layout/AppTopbar.vue
@@ -28,9 +28,9 @@ | @@ -28,9 +28,9 @@ | ||
28 | </button> | 28 | </button> |
29 | </li> | 29 | </li> |
30 | <li role="menuitem"> | 30 | <li role="menuitem"> |
31 | - <button class="p-link"> | ||
32 | - <i class="pi pi-cog"></i> | ||
33 | - <span>Settings</span> | 31 | + <button class="p-link" @click="logout"> |
32 | + <i class="pi pi-sign-out"></i> | ||
33 | + <span>Logout</span> | ||
34 | </button> | 34 | </button> |
35 | </li> | 35 | </li> |
36 | <li role="menuitem"> | 36 | <li role="menuitem"> |
@@ -114,6 +114,11 @@ export default { | @@ -114,6 +114,11 @@ export default { | ||
114 | togeulSamples(event) { | 114 | togeulSamples(event) { |
115 | let blnSamples = !this.store.state.samplePages; | 115 | let blnSamples = !this.store.state.samplePages; |
116 | this.store.commit("setSamplePages", blnSamples); | 116 | this.store.commit("setSamplePages", blnSamples); |
117 | + }, | ||
118 | + logout(event) { | ||
119 | + router.push({ | ||
120 | + path: "/logout", | ||
121 | + }); | ||
117 | } | 122 | } |
118 | }, | 123 | }, |
119 | computed: { | 124 | computed: { |
babylon-vue-4.0.0/src/router/index.js
@@ -177,7 +177,11 @@ const routes = [ | @@ -177,7 +177,11 @@ const routes = [ | ||
177 | path: '/samples/menu/payment', | 177 | path: '/samples/menu/payment', |
178 | component: () => import('@/views/samples/uikit/menu/PaymentDemo.vue'), | 178 | component: () => import('@/views/samples/uikit/menu/PaymentDemo.vue'), |
179 | meta: { | 179 | meta: { |
180 | - breadcrumb: [{ parent: 'UI Kit(Samples)', label: 'PaymentDemo' }], | 180 | + breadcrumb: [ |
181 | + { parent: 'UI Kit(Samples)1', label: 'UI Kit(Samples)2' }, | ||
182 | + { label: 'UI Kit(Samples)3' }, | ||
183 | + { label: 'PaymentDemo' } | ||
184 | + ], | ||
181 | }, | 185 | }, |
182 | }, | 186 | }, |
183 | { | 187 | { |
babylon-vue-4.0.0/src/service/AgGridService.js
@@ -102,6 +102,22 @@ const agGridService = { | @@ -102,6 +102,22 @@ const agGridService = { | ||
102 | }); | 102 | }); |
103 | 103 | ||
104 | return res; | 104 | return res; |
105 | + }, | ||
106 | + | ||
107 | + /** | ||
108 | + * 디폴트 셀 스타일 적용 | ||
109 | + * @param {*} pGridApi | ||
110 | + * @returns | ||
111 | + */ | ||
112 | + agGridDefaultCellStyle: (params) => { | ||
113 | + console.log("agGridDefaultCellStyle"); | ||
114 | + // 셀이 읽기 전용인 경우 배경색을 회색으로 변경 | ||
115 | + if (params.node && params.node.rowPinned) { | ||
116 | + return { background: "lightgray" }; | ||
117 | + } else { | ||
118 | + return null; | ||
119 | + } | ||
105 | } | 120 | } |
121 | + | ||
106 | } | 122 | } |
107 | export default agGridService; | 123 | export default agGridService; |
108 | \ No newline at end of file | 124 | \ No newline at end of file |
babylon-vue-4.0.0/src/service/MenuDataService.js
@@ -65,7 +65,7 @@ export const menuSamples = | @@ -65,7 +65,7 @@ export const menuSamples = | ||
65 | { label: 'File', icon: 'pi pi-fw pi-file', to: '/samples/file', authrity: 'CURD', ord: 14 }, | 65 | { label: 'File', icon: 'pi pi-fw pi-file', to: '/samples/file', authrity: 'CURD', ord: 14 }, |
66 | { label: 'Chart', icon: 'pi pi-fw pi-chart-bar', to: '/samples/chart', authrity: 'CURD', ord: 15 }, | 66 | { label: 'Chart', icon: 'pi pi-fw pi-chart-bar', to: '/samples/chart', authrity: 'CURD', ord: 15 }, |
67 | { label: 'Misc', icon: 'pi pi-fw pi-circle-off', to: '/samples/misc', authrity: 'CURD', ord: 16 }, | 67 | { label: 'Misc', icon: 'pi pi-fw pi-circle-off', to: '/samples/misc', authrity: 'CURD', ord: 16 }, |
68 | - { label: 'Misc', icon: 'pi pi-fw pi-circle-off', to: '/samples/menu/payment', authrity: 'CURD', ord: 16 }, | 68 | + { label: 'menus', icon: 'pi pi-fw pi-circle-off', to: '/samples/menu/payment', authrity: 'CURD', ord: 16 }, |
69 | ], | 69 | ], |
70 | }, | 70 | }, |
71 | { | 71 | { |
babylon-vue-4.0.0/src/views/common/Login.vue
1 | <template> | 1 | <template> |
2 | - <body class="login-body"> | ||
3 | - <div class="mobile-banner"> | ||
4 | - <img src="/layout/images/logo-mobile.svg" alt="prestige-layout" /> | ||
5 | - </div> | ||
6 | - <div class="login-panel"> | ||
7 | - <div class="logo"> | ||
8 | - <img src="/layout/images/logo.svg" alt="prestige-layout" /> | 2 | + <div class="login-body"> |
3 | + <div class="login-panel"></div> | ||
4 | + | ||
5 | + <div class="login-content"> | ||
6 | + <img src="/layout/images/logo-black.png" alt="babylon-layout" /> | ||
7 | + | ||
8 | + <h1><span>SIGN IN</span> TO SYSTEM</h1> | ||
9 | + <p>Welcome, please use the form to sign-in.</p> | ||
10 | + | ||
11 | + <div class="login-input-wrapper"> | ||
12 | + <InputText placeholder="Username" v-model="username" @keypress="onkeypress" /> | ||
13 | + <i class="pi pi-user"></i> | ||
9 | </div> | 14 | </div> |
10 | - </div> | ||
11 | - <div class="login-card"> | ||
12 | - <div class="top-border"></div> | ||
13 | - <div class="login-content"> | ||
14 | - <h1>Login</h1> | ||
15 | - <p>Welcome, please use the form to sign-in.</p> | ||
16 | - <div class="username-container"> | ||
17 | - <label>Username</label> | ||
18 | - <div class="login-input"> | ||
19 | - <InputText placeholder="Username" v-model="username" @keypress="onkeypress" /> | ||
20 | - </div> | ||
21 | - </div> | ||
22 | - <div class="password-container"> | ||
23 | - <label>Password</label> | ||
24 | - <div class="login-input"> | ||
25 | - <InputText type="password" placeholder="Password" v-model="password" @keypress="onkeypress" /> | ||
26 | - </div> | ||
27 | - </div> | ||
28 | - <div class="forgetpassword-container"> | ||
29 | - <a href="#" class="forget-password">Forget Password?</a> | ||
30 | - </div> | ||
31 | - <div> | ||
32 | - <Button label="Sign In" @click="formLogin" /> | ||
33 | - </div> | 15 | + |
16 | + <div class="login-input-wrapper"> | ||
17 | + <InputText type="password" placeholder="Password" v-model="password" @keypress="onkeypress" /> | ||
18 | + <i class="pi pi-lock"></i> | ||
34 | </div> | 19 | </div> |
20 | + | ||
21 | + <Button label="Sign In" @click="formLogin" /> | ||
35 | </div> | 22 | </div> |
36 | - </body> | 23 | + </div> |
37 | </template> | 24 | </template> |
38 | 25 | ||
39 | <script> | 26 | <script> |
babylon-vue-4.0.0/src/views/system/SystemCode.vue
@@ -26,7 +26,7 @@ | @@ -26,7 +26,7 @@ | ||
26 | <div class="grid"> | 26 | <div class="grid"> |
27 | <div class="col-12 md:col-4" style="padding: 0; padding-right: 10px;"> | 27 | <div class="col-12 md:col-4" style="padding: 0; padding-right: 10px;"> |
28 | <ag-grid-vue | 28 | <ag-grid-vue |
29 | - style="width: 100%; height: 350px;" | 29 | + style="width: 100%; height: 500px;" |
30 | class="ag-theme-quartz" | 30 | class="ag-theme-quartz" |
31 | :columnDefs="columnsType" | 31 | :columnDefs="columnsType" |
32 | :rowData="codeTypeItems" | 32 | :rowData="codeTypeItems" |
@@ -39,7 +39,7 @@ | @@ -39,7 +39,7 @@ | ||
39 | 39 | ||
40 | <div class="col-12 md:col-8" style="padding: 0"> | 40 | <div class="col-12 md:col-8" style="padding: 0"> |
41 | <ag-grid-vue | 41 | <ag-grid-vue |
42 | - style="width: 100%; height: 350px;" | 42 | + style="width: 100%; height: 500px;" |
43 | class="ag-theme-quartz" | 43 | class="ag-theme-quartz" |
44 | :columnDefs="columns" | 44 | :columnDefs="columns" |
45 | :rowData="codeItems" | 45 | :rowData="codeItems" |
@@ -90,10 +90,14 @@ const columnsType = [ | @@ -90,10 +90,14 @@ const columnsType = [ | ||
90 | { | 90 | { |
91 | headerName: i18n.t('System.SystemCode.grid.CodeType'), | 91 | headerName: i18n.t('System.SystemCode.grid.CodeType'), |
92 | field: "cmmnCode", | 92 | field: "cmmnCode", |
93 | + editable: false, | ||
94 | + cellStyle: ags.agGridDefaultCellStyle | ||
93 | }, | 95 | }, |
94 | { | 96 | { |
95 | headerName: i18n.t('System.SystemCode.grid.CodeName'), | 97 | headerName: i18n.t('System.SystemCode.grid.CodeName'), |
96 | field: "cmmnCodeNm", | 98 | field: "cmmnCodeNm", |
99 | + editable: true, | ||
100 | + cellStyle: ags.agGridDefaultCellStyle | ||
97 | }, | 101 | }, |
98 | ]; | 102 | ]; |
99 | 103 |