@nixweb/nixloc-ui 0.0.146 → 0.0.148
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/component/forms/Button.vue +0 -4
- package/src/component/forms/ButtonFilter.vue +2 -1
- package/src/component/layout/Account.vue +1 -1
- package/src/component/layout/Header.vue +25 -6
- package/src/component/layout/IconMolded.vue +20 -1
- package/src/component/layout/Menu.vue +80 -52
- package/src/component/layout/Molded.vue +3 -2
- package/src/component/layout/Panel.vue +3 -1
- package/src/component/shared/ListErrorImport.vue +70 -0
- package/src/component/shared/SaveCancel.vue +1 -1
- package/src/component/shared/Table.vue +5 -0
- package/src/component/shared/TableImport.vue +1 -0
- package/src/component/template/ViewTemplateImportFile.vue +81 -20
- package/src/component/template/ViewTemplateReportList.vue +16 -2
package/package.json
CHANGED
|
@@ -90,9 +90,6 @@ export default {
|
|
|
90
90
|
font-weight: normal;
|
|
91
91
|
font-style: normal !important;
|
|
92
92
|
letter-spacing: 1px !important;
|
|
93
|
-
-webkit-box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 12%);
|
|
94
|
-
-moz-box-shadow: 0px 10px 20px -6px rgba(0, 0, 0, 0.12);
|
|
95
|
-
box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 12%);
|
|
96
93
|
}
|
|
97
94
|
|
|
98
95
|
.small {
|
|
@@ -110,7 +107,6 @@ export default {
|
|
|
110
107
|
font-size: 14px;
|
|
111
108
|
}
|
|
112
109
|
|
|
113
|
-
|
|
114
110
|
.disabled {
|
|
115
111
|
background: #bbbbbb !important;
|
|
116
112
|
border-color: #bbbbbb !important;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
|
+
<div class="top-margin"></div>
|
|
3
4
|
<div class="top" :style="'background-color:' + backgroundColor">
|
|
4
|
-
<div class="side-by-side">
|
|
5
|
+
<div class="side-by-side top-space">
|
|
5
6
|
<slot></slot>
|
|
6
7
|
</div>
|
|
7
8
|
</div>
|
|
@@ -25,14 +26,32 @@ export default {
|
|
|
25
26
|
|
|
26
27
|
<style scoped>
|
|
27
28
|
.top {
|
|
28
|
-
border-radius:
|
|
29
|
+
border-radius: 12px 12px 12px 12px;
|
|
30
|
+
margin-top: 7px;
|
|
31
|
+
left: 120px;
|
|
32
|
+
right: 1%;
|
|
29
33
|
height: 50px;
|
|
30
|
-
width: 100%;
|
|
31
|
-
position: fixed;
|
|
32
34
|
top: 0;
|
|
33
|
-
|
|
34
|
-
z-index: 20;
|
|
35
|
+
z-index: 1000;
|
|
35
36
|
box-shadow: 0px 10px 30px -6px rgb(0 0 0 / 10%);
|
|
36
37
|
border-bottom: 0px solid #eff0f1;
|
|
38
|
+
position: fixed;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.top-space {
|
|
42
|
+
margin-right: 10px;
|
|
43
|
+
width: 100%;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.top-margin {
|
|
47
|
+
width: 100%;
|
|
48
|
+
widows: 100%;
|
|
49
|
+
height: 10px;
|
|
50
|
+
margin-right: 80px;
|
|
51
|
+
top: 0;
|
|
52
|
+
margin-left: 120px;
|
|
53
|
+
z-index: 1000;
|
|
54
|
+
background-color: #fdfdfd;
|
|
55
|
+
position: fixed;
|
|
37
56
|
}
|
|
38
57
|
</style>
|
|
@@ -7,7 +7,15 @@
|
|
|
7
7
|
v-b-tooltip.hover
|
|
8
8
|
:title="icon.tooltip"
|
|
9
9
|
>
|
|
10
|
-
<div
|
|
10
|
+
<div
|
|
11
|
+
class="icon-molded"
|
|
12
|
+
:class="{
|
|
13
|
+
'icon-active-top': menuActive == icon.module,
|
|
14
|
+
'icon-normal-top': menuActive != icon.module,
|
|
15
|
+
}"
|
|
16
|
+
>
|
|
17
|
+
<i :class="icon.icon"></i>
|
|
18
|
+
</div>
|
|
11
19
|
</div>
|
|
12
20
|
</div>
|
|
13
21
|
</template>
|
|
@@ -20,6 +28,9 @@ export default {
|
|
|
20
28
|
props: {
|
|
21
29
|
icons: Array,
|
|
22
30
|
},
|
|
31
|
+
data() {
|
|
32
|
+
return { menuActive: "" };
|
|
33
|
+
},
|
|
23
34
|
methods: {
|
|
24
35
|
...mapMutations("generic", ["addEvent"]),
|
|
25
36
|
executeEvent(eventName) {
|
|
@@ -28,6 +39,14 @@ export default {
|
|
|
28
39
|
});
|
|
29
40
|
},
|
|
30
41
|
},
|
|
42
|
+
watch: {
|
|
43
|
+
$route: {
|
|
44
|
+
handler: function (router) {
|
|
45
|
+
this.menuActive = router.matched[0].props.default.module;
|
|
46
|
+
},
|
|
47
|
+
deep: true,
|
|
48
|
+
},
|
|
49
|
+
},
|
|
31
50
|
};
|
|
32
51
|
</script>
|
|
33
52
|
|
|
@@ -6,44 +6,43 @@
|
|
|
6
6
|
<img :src="urlImage" />
|
|
7
7
|
</div>
|
|
8
8
|
</li>
|
|
9
|
-
|
|
10
|
-
<div
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
>
|
|
16
|
-
<div class="div-icon side-by-side">
|
|
17
|
-
<i
|
|
18
|
-
:class="{
|
|
19
|
-
'icon-active': menuActive == 'Dashboard',
|
|
20
|
-
'icon-normal': menuActive != 'Dashboard',
|
|
21
|
-
}"
|
|
22
|
-
class="fas fa-chart-area icon-dash"
|
|
23
|
-
></i>
|
|
24
|
-
</div>
|
|
25
|
-
<div class="title">Dashboard</div>
|
|
26
|
-
</a>
|
|
27
|
-
</div>
|
|
28
|
-
</li>-->
|
|
29
|
-
<li v-for="(item, index) in menuFilter(true)" :key="index">
|
|
30
|
-
<div :class="{ 'menu-active': menuActive == item.module }">
|
|
9
|
+
<li class="molded">
|
|
10
|
+
<div
|
|
11
|
+
class="box-main"
|
|
12
|
+
v-for="(item, index) in menuFilter(true)"
|
|
13
|
+
:key="index"
|
|
14
|
+
>
|
|
31
15
|
<a
|
|
32
16
|
href="#"
|
|
33
17
|
@click.prevent="openSubMenu(item.module)"
|
|
34
18
|
:class="highlightSession(item.module)"
|
|
35
19
|
>
|
|
36
|
-
<div
|
|
37
|
-
|
|
38
|
-
:
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
>
|
|
43
|
-
<
|
|
44
|
-
|
|
20
|
+
<div
|
|
21
|
+
:class="{
|
|
22
|
+
'icon-active': menuActive == item.module,
|
|
23
|
+
'icon-normal': menuActive != item.module,
|
|
24
|
+
}"
|
|
25
|
+
>
|
|
26
|
+
<b-row>
|
|
27
|
+
<b-col sm="12">
|
|
28
|
+
<div class="box-icon text-center">
|
|
29
|
+
<i :class="item.icon"></i></div
|
|
30
|
+
></b-col>
|
|
31
|
+
</b-row>
|
|
32
|
+
<b-row>
|
|
33
|
+
<b-col sm="12">
|
|
34
|
+
<div class="div-title text-center">
|
|
35
|
+
<span
|
|
36
|
+
:class="{
|
|
37
|
+
'title-active': menuActive == item.module,
|
|
38
|
+
'title-normal': menuActive != item.module,
|
|
39
|
+
}"
|
|
40
|
+
>{{ item.title }}</span
|
|
41
|
+
>
|
|
42
|
+
</div>
|
|
43
|
+
</b-col>
|
|
44
|
+
</b-row>
|
|
45
45
|
</div>
|
|
46
|
-
<div class="title">{{ item.title }}</div>
|
|
47
46
|
</a>
|
|
48
47
|
</div>
|
|
49
48
|
</li>
|
|
@@ -73,12 +72,16 @@
|
|
|
73
72
|
>
|
|
74
73
|
<b-row>
|
|
75
74
|
<b-col sm="1">
|
|
76
|
-
<i
|
|
77
|
-
|
|
75
|
+
<i
|
|
76
|
+
class="menu-icon"
|
|
77
|
+
:style="'color:' + item.iconColor"
|
|
78
|
+
:class="item.icon"
|
|
79
|
+
></i>
|
|
80
|
+
</b-col>
|
|
78
81
|
<b-col sm="10">
|
|
79
|
-
<span class="title-sub"> {{ item.title }}</span
|
|
80
|
-
|
|
81
|
-
>
|
|
82
|
+
<span class="title-sub"> {{ item.title }}</span>
|
|
83
|
+
</b-col>
|
|
84
|
+
</b-row>
|
|
82
85
|
</a>
|
|
83
86
|
</li>
|
|
84
87
|
</ul>
|
|
@@ -173,41 +176,66 @@ export default {
|
|
|
173
176
|
z-index: 1000;
|
|
174
177
|
}
|
|
175
178
|
.div-logo {
|
|
176
|
-
padding-top:
|
|
177
|
-
padding-
|
|
178
|
-
|
|
179
|
-
.div-icon {
|
|
180
|
-
width: 35px;
|
|
181
|
-
height: 35px;
|
|
182
|
-
padding-top: 5px;
|
|
183
|
-
margin-left: 38px;
|
|
179
|
+
padding-top: 12px;
|
|
180
|
+
padding-left: 10px;
|
|
181
|
+
padding-bottom: 15px;
|
|
184
182
|
}
|
|
183
|
+
|
|
185
184
|
.icon-close {
|
|
186
|
-
margin-right:
|
|
185
|
+
margin-right: 10px;
|
|
186
|
+
margin-top: -5px;
|
|
187
|
+
font-size: 22px;
|
|
187
188
|
}
|
|
189
|
+
|
|
188
190
|
.icon {
|
|
189
191
|
font-size: 20px;
|
|
190
192
|
}
|
|
193
|
+
|
|
191
194
|
.icon-dash {
|
|
192
195
|
font-size: 22px;
|
|
193
196
|
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
197
|
+
|
|
198
|
+
.box-main {
|
|
199
|
+
display: flex;
|
|
200
|
+
align-items: center;
|
|
201
|
+
justify-content: center;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
.box-icon {
|
|
205
|
+
width: 80px;
|
|
206
|
+
border-radius: 18px;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
.div-title {
|
|
210
|
+
margin-top: -17px;
|
|
200
211
|
}
|
|
212
|
+
|
|
201
213
|
.title-sub {
|
|
202
214
|
margin-left: -3px;
|
|
203
215
|
font-weight: 400;
|
|
204
216
|
}
|
|
217
|
+
|
|
205
218
|
.sub-title {
|
|
206
219
|
font-size: 16px;
|
|
207
220
|
font-weight: normal;
|
|
208
221
|
}
|
|
222
|
+
|
|
209
223
|
img {
|
|
210
224
|
height: 36px;
|
|
211
225
|
margin-top: 5px;
|
|
212
226
|
}
|
|
227
|
+
|
|
228
|
+
.menu-icon {
|
|
229
|
+
font-size: 15px;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
.molded {
|
|
233
|
+
margin-top: 5px;
|
|
234
|
+
margin-left: 10px;
|
|
235
|
+
padding: 5px;
|
|
236
|
+
padding-bottom: 1px !important;
|
|
237
|
+
background-color: white !important;
|
|
238
|
+
border: 1px solid #e8eaed;
|
|
239
|
+
border-radius: 12px !important;
|
|
240
|
+
}
|
|
213
241
|
</style>
|
|
@@ -17,12 +17,13 @@ export default {
|
|
|
17
17
|
</script>
|
|
18
18
|
<style scoped>
|
|
19
19
|
.molded {
|
|
20
|
-
border: 1px solid #
|
|
20
|
+
border: 1px solid #e8eaed;
|
|
21
21
|
background-color: white;
|
|
22
|
+
border-radius: 12px !important;
|
|
23
|
+
padding: 10px;
|
|
22
24
|
padding-top: 15px;
|
|
23
25
|
padding-left: 30px;
|
|
24
26
|
padding-right: 30px;
|
|
25
27
|
padding-bottom: 10px;
|
|
26
|
-
box-shadow: 0px 10px 20px -6px rgb(0 0 0 / 3%);
|
|
27
28
|
}
|
|
28
29
|
</style>
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<ScrollBar :minHeight="400" :maxHeight="400">
|
|
4
|
+
<div>
|
|
5
|
+
<br />
|
|
6
|
+
<table class="table table-responsive-xs">
|
|
7
|
+
<thead>
|
|
8
|
+
<tr>
|
|
9
|
+
<th class="title-header">Mensagem</th>
|
|
10
|
+
</tr>
|
|
11
|
+
</thead>
|
|
12
|
+
<tbody v-for="error in listError">
|
|
13
|
+
<tr>
|
|
14
|
+
<td>
|
|
15
|
+
<span class="message"> {{ error }}</span>
|
|
16
|
+
</td>
|
|
17
|
+
</tr>
|
|
18
|
+
</tbody>
|
|
19
|
+
</table>
|
|
20
|
+
</div>
|
|
21
|
+
</ScrollBar>
|
|
22
|
+
</div>
|
|
23
|
+
</template>
|
|
24
|
+
|
|
25
|
+
<script>
|
|
26
|
+
import ScrollBar from "@nixweb/nixloc-ui/src/component/layout/ScrollBar.vue";
|
|
27
|
+
|
|
28
|
+
export default {
|
|
29
|
+
name: "ListErrorImport",
|
|
30
|
+
props: {
|
|
31
|
+
listError: Array,
|
|
32
|
+
},
|
|
33
|
+
components: {
|
|
34
|
+
ScrollBar,
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
</script><style scoped>
|
|
38
|
+
.table th,
|
|
39
|
+
.table td {
|
|
40
|
+
height: 10px !important;
|
|
41
|
+
padding-left: 5px !important;
|
|
42
|
+
padding-top: 7px !important;
|
|
43
|
+
padding-bottom: 5px !important;
|
|
44
|
+
padding-right: 5px !important;
|
|
45
|
+
padding-left: 10px !important;
|
|
46
|
+
border-bottom: 0px !important;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.title-header {
|
|
50
|
+
font-size: 14px;
|
|
51
|
+
color: #757d8c;
|
|
52
|
+
font-weight: 400;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.tabela-principal {
|
|
56
|
+
font-size: 14px;
|
|
57
|
+
max-width: 200px;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.tabela-descricao {
|
|
61
|
+
white-space: nowrap;
|
|
62
|
+
overflow: hidden;
|
|
63
|
+
text-overflow: ellipsis;
|
|
64
|
+
max-width: 200px;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.message {
|
|
68
|
+
color: red;
|
|
69
|
+
}
|
|
70
|
+
</style>
|
|
@@ -9,8 +9,18 @@
|
|
|
9
9
|
>
|
|
10
10
|
<div slot="content-main">
|
|
11
11
|
<br />
|
|
12
|
-
<
|
|
12
|
+
<div class="div-loading" v-show="loading">
|
|
13
|
+
<span
|
|
14
|
+
>Aguarde, estamos carregando os dados, isso pode levar alguns
|
|
15
|
+
minutos...</span
|
|
16
|
+
>
|
|
17
|
+
<Loading type="line" :center="false" />
|
|
18
|
+
</div>
|
|
19
|
+
<Molded v-show="!loading">
|
|
13
20
|
<div v-show="!fileName">
|
|
21
|
+
<div class="import-icon">
|
|
22
|
+
<i class="fas fa-file-import"></i>
|
|
23
|
+
</div>
|
|
14
24
|
<slot></slot>
|
|
15
25
|
<Alert type="info">
|
|
16
26
|
<span>
|
|
@@ -24,8 +34,8 @@
|
|
|
24
34
|
</Alert>
|
|
25
35
|
<div class="div-file">
|
|
26
36
|
<FileUpload
|
|
27
|
-
title="Carregar arquivo
|
|
28
|
-
classIcon="fa-solid fa-
|
|
37
|
+
title="Carregar arquivo"
|
|
38
|
+
classIcon="fa-sharp fa-solid fa-upload"
|
|
29
39
|
:container="container"
|
|
30
40
|
accepted=".xlsx"
|
|
31
41
|
allowed=".xlsx"
|
|
@@ -38,14 +48,6 @@
|
|
|
38
48
|
/>
|
|
39
49
|
</div>
|
|
40
50
|
</div>
|
|
41
|
-
|
|
42
|
-
<div class="div-loading" v-show="loading">
|
|
43
|
-
<span
|
|
44
|
-
>Aguarde, estamos carregando os dados, isso pode levar alguns
|
|
45
|
-
minutos...</span
|
|
46
|
-
>
|
|
47
|
-
<Loading type="line" :center="false" />
|
|
48
|
-
</div>
|
|
49
51
|
<div v-show="fileName && !loading">
|
|
50
52
|
<div class="import-icon">
|
|
51
53
|
<i class="fas fa-file-import"></i>
|
|
@@ -65,23 +67,40 @@
|
|
|
65
67
|
:clicked="back"
|
|
66
68
|
/>
|
|
67
69
|
<Button
|
|
68
|
-
|
|
70
|
+
v-if="!isValid"
|
|
71
|
+
_key="btnValidate"
|
|
69
72
|
type="primary"
|
|
70
73
|
title="Iniciar Validação"
|
|
71
|
-
:disabled="
|
|
74
|
+
:disabled="false"
|
|
72
75
|
classIcon="fa-solid fa-arrow-right-arrow-left"
|
|
73
76
|
size="small"
|
|
74
|
-
:clicked="
|
|
77
|
+
:clicked="validate"
|
|
78
|
+
/>
|
|
79
|
+
<Button
|
|
80
|
+
v-if="listError.length > 0"
|
|
81
|
+
_key="btnListError"
|
|
82
|
+
type="danger"
|
|
83
|
+
title="Erro(s)"
|
|
84
|
+
classIcon="fa-sharp fa-solid fa-triangle-exclamation"
|
|
85
|
+
size="small"
|
|
86
|
+
:clicked="openListError"
|
|
75
87
|
/>
|
|
76
88
|
</div>
|
|
77
89
|
<br />
|
|
90
|
+
<Alert type="danger" v-if="listError.length > 0">
|
|
91
|
+
<span>
|
|
92
|
+
Atenção, foram identificados
|
|
93
|
+
<b>{{ listError.length }}</b> erro(s), corrija-os!
|
|
94
|
+
</span>
|
|
95
|
+
</Alert>
|
|
78
96
|
<Alert type="info">
|
|
79
97
|
<span>
|
|
80
|
-
Total de <b> {{ totalRecords }} </b> registro(s),
|
|
81
|
-
mapeamento serão carregados somente os <b> 10 </b> primeiros
|
|
82
|
-
|
|
98
|
+
Total de <b> {{ totalRecords }} </b> registro(s), para o
|
|
99
|
+
mapeamento serão carregados somente os <b> 10 </b> primeiros (se
|
|
100
|
+
houver).
|
|
83
101
|
</span>
|
|
84
102
|
</Alert>
|
|
103
|
+
|
|
85
104
|
<TableImport
|
|
86
105
|
:select="select"
|
|
87
106
|
:headerTable="headerTable"
|
|
@@ -91,6 +110,14 @@
|
|
|
91
110
|
</Molded>
|
|
92
111
|
</div>
|
|
93
112
|
</Panel>
|
|
113
|
+
<Modal
|
|
114
|
+
title="Erro(s)"
|
|
115
|
+
:width="900"
|
|
116
|
+
:height="750"
|
|
117
|
+
v-show="showModal('listError')"
|
|
118
|
+
>
|
|
119
|
+
<ListErrorImport :listError="listError" />
|
|
120
|
+
</Modal>
|
|
94
121
|
</div>
|
|
95
122
|
</template>
|
|
96
123
|
|
|
@@ -101,10 +128,12 @@ import Molded from "@nixweb/nixloc-ui/src/component/layout/Molded";
|
|
|
101
128
|
import FileUpload from "@nixweb/nixloc-ui/src/component/forms/FileUpload";
|
|
102
129
|
import Loading from "@nixweb/nixloc-ui/src/component/shared/Loading.vue";
|
|
103
130
|
import Alert from "@nixweb/nixloc-ui/src/component/layout/Alert";
|
|
131
|
+
import Modal from "@nixweb/nixloc-ui/src/component/forms/Modal";
|
|
104
132
|
|
|
105
133
|
import TableImport from "@nixweb/nixloc-ui/src/component/shared/TableImport.vue";
|
|
134
|
+
import ListErrorImport from "@nixweb/nixloc-ui/src/component/shared/ListErrorImport.vue";
|
|
106
135
|
|
|
107
|
-
import { mapState, mapActions, mapMutations } from "vuex";
|
|
136
|
+
import { mapState, mapActions, mapMutations, mapGetters } from "vuex";
|
|
108
137
|
|
|
109
138
|
export default {
|
|
110
139
|
name: "ViewTemplateImportFileView",
|
|
@@ -114,28 +143,36 @@ export default {
|
|
|
114
143
|
Molded,
|
|
115
144
|
FileUpload,
|
|
116
145
|
Loading,
|
|
146
|
+
ListErrorImport,
|
|
117
147
|
TableImport,
|
|
118
148
|
Alert,
|
|
149
|
+
Modal,
|
|
119
150
|
},
|
|
120
151
|
props: {
|
|
121
152
|
panel: Object,
|
|
122
153
|
select: Array,
|
|
123
154
|
container: String,
|
|
124
155
|
typeImport: Number,
|
|
156
|
+
urlMapping: String,
|
|
157
|
+
urlValidate: String,
|
|
125
158
|
},
|
|
126
159
|
data() {
|
|
127
160
|
return {
|
|
128
161
|
fileName: "",
|
|
129
|
-
urlMapping: "/api/v1/stock/import-product/mapping",
|
|
130
162
|
loading: false,
|
|
131
163
|
headerTable: [],
|
|
132
164
|
data: [],
|
|
133
165
|
totalRecords: 0,
|
|
166
|
+
listError: [],
|
|
167
|
+
isValid: false,
|
|
134
168
|
};
|
|
135
169
|
},
|
|
170
|
+
computed: {
|
|
171
|
+
...mapGetters("generic", ["showModal"]),
|
|
172
|
+
},
|
|
136
173
|
methods: {
|
|
137
174
|
...mapActions("generic", ["postApi"]),
|
|
138
|
-
...mapMutations("generic", ["removeLoading"]),
|
|
175
|
+
...mapMutations("generic", ["openModal", "removeLoading"]),
|
|
139
176
|
successUploadFile() {
|
|
140
177
|
this.loading = true;
|
|
141
178
|
let self = this;
|
|
@@ -162,8 +199,32 @@ export default {
|
|
|
162
199
|
}
|
|
163
200
|
});
|
|
164
201
|
},
|
|
202
|
+
validate() {
|
|
203
|
+
let params = {
|
|
204
|
+
url: this.urlValidate,
|
|
205
|
+
obj: {
|
|
206
|
+
fileName: this.fileName,
|
|
207
|
+
container: this.container,
|
|
208
|
+
typeImport: this.typeImport,
|
|
209
|
+
items: this.headerTable,
|
|
210
|
+
},
|
|
211
|
+
notNotifyToast: true,
|
|
212
|
+
};
|
|
213
|
+
this.postApi(params).then((response) => {
|
|
214
|
+
if (response.success) {
|
|
215
|
+
this.listError = response.content;
|
|
216
|
+
if (this.listError.length == 0) this.isValid = true;
|
|
217
|
+
}
|
|
218
|
+
this.removeLoading(["btnValidate"]);
|
|
219
|
+
});
|
|
220
|
+
},
|
|
221
|
+
openListError() {
|
|
222
|
+
this.openModal("listError");
|
|
223
|
+
this.removeLoading(["btnListError"]);
|
|
224
|
+
},
|
|
165
225
|
back() {
|
|
166
226
|
this.fileName = "";
|
|
227
|
+
this.listError = [];
|
|
167
228
|
this.removeLoading(["btnBack"]);
|
|
168
229
|
},
|
|
169
230
|
},
|
|
@@ -9,7 +9,14 @@
|
|
|
9
9
|
>
|
|
10
10
|
<div slot="content-main">
|
|
11
11
|
<b-row>
|
|
12
|
-
<b-col
|
|
12
|
+
<b-col
|
|
13
|
+
xs="12"
|
|
14
|
+
sm="12"
|
|
15
|
+
md="12"
|
|
16
|
+
lg="6"
|
|
17
|
+
xl="6"
|
|
18
|
+
v-if="allReports.saved.length > 0"
|
|
19
|
+
>
|
|
13
20
|
<div><i class="fas fa-file-alt icon-saved"></i> Personalizado</div>
|
|
14
21
|
<hr class="hr" />
|
|
15
22
|
<div class="div-molded" v-for="report in allReports.saved">
|
|
@@ -40,7 +47,9 @@
|
|
|
40
47
|
</div>
|
|
41
48
|
</b-col>
|
|
42
49
|
<b-col xs="12" sm="12" md="12" lg="6" xl="6">
|
|
43
|
-
<div
|
|
50
|
+
<div>
|
|
51
|
+
<i class="fas fa-file-chart-line icon-default"></i> Padrão
|
|
52
|
+
</div>
|
|
44
53
|
<hr class="hr" />
|
|
45
54
|
<div class="div-molded" v-for="report in allReports.default">
|
|
46
55
|
<div>
|
|
@@ -179,6 +188,11 @@ export default {
|
|
|
179
188
|
<style scoped>
|
|
180
189
|
.icon-saved {
|
|
181
190
|
color: #94aa2a;
|
|
191
|
+
font-size: 20px;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
.icon-default {
|
|
195
|
+
font-size: 20px;
|
|
182
196
|
}
|
|
183
197
|
|
|
184
198
|
.icon-remove {
|