@kigi/components 1.39.0 → 1.40.0-alpha.2
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
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
<div ng-class="{'opacity-dash-goal': !$ctrl.isPermissionStoreGoal}"
|
|
2
2
|
class="store-goal-wrapper"
|
|
3
3
|
ng-show="$ctrl.showDashboard">
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
4
7
|
<div class="description-container-dash">
|
|
5
|
-
<p class="description-dash"
|
|
6
|
-
|
|
8
|
+
<p class="description-dash">
|
|
9
|
+
Meta do mês / {{$ctrl.currentMonthName}}
|
|
7
10
|
<i class="fa fa-exclamation-circle"
|
|
8
|
-
uib-tooltip="{{$ctrl.
|
|
11
|
+
uib-tooltip="{{$ctrl.percentageEstimatedMessage}}"
|
|
9
12
|
tooltip-placement="top"
|
|
10
|
-
class="link-store"
|
|
11
13
|
ng-show="$ctrl.estimatedPercentageGreaterThanTarget"
|
|
12
14
|
aria-hidden="true"></i>
|
|
13
|
-
Meta do mês / {{$ctrl.currentMonthName}}
|
|
14
15
|
</p>
|
|
16
|
+
|
|
17
|
+
|
|
15
18
|
<div class="mbg-h-c-tone-s-icon-dash"
|
|
16
19
|
ng-click="$ctrl.toggleShowValueStoreGoal(false)">
|
|
17
20
|
<i class="fa fa-lock lock-dash-store"
|
|
@@ -25,37 +28,106 @@
|
|
|
25
28
|
<i ng-if="!$ctrl.hideValue && $ctrl.isPermissionStoreGoal"
|
|
26
29
|
disable-animate
|
|
27
30
|
class="far fa-eye-slash eye-board-target"></i>
|
|
28
|
-
|
|
29
31
|
</div>
|
|
30
32
|
</div>
|
|
31
|
-
<div class="
|
|
32
|
-
|
|
33
|
-
<
|
|
34
|
-
<p ng-if="!$ctrl.hideValue">Meta: <i class="fa fa-lock"
|
|
35
|
-
aria-hidden="true"
|
|
36
|
-
uib-tooltip="Sem permissão para visualizar"></i></p>
|
|
37
|
-
</div>
|
|
38
|
-
<div class="goal-day">
|
|
39
|
-
<p class="estimate-goal"
|
|
40
|
-
ng-if="!$ctrl.hideValue">Estimativa da meta: <i class="fa fa-lock"
|
|
41
|
-
aria-hidden="true"
|
|
42
|
-
uib-tooltip="Sem permissão para visualizar"></i>
|
|
43
|
-
</p>
|
|
44
|
-
<p class="estimate-goal-store"
|
|
45
|
-
ng-if="$ctrl.hideValue">Estimativa da meta: <strong>{{$ctrl.estimatedGoal }}</strong>
|
|
46
|
-
|
|
47
|
-
<i class="fa fa-exclamation-circle"
|
|
48
|
-
ng-if="$ctrl.hideValue"
|
|
49
|
-
tooltip-placement="right"
|
|
50
|
-
class="estimated"
|
|
51
|
-
uib-tooltip-html="$ctrl.messageTooltip"
|
|
52
|
-
aria-hidden="true"></i>
|
|
53
|
-
</p>
|
|
33
|
+
<div class="active-index"
|
|
34
|
+
ng-if="$ctrl.indexActiveSlide">
|
|
35
|
+
<label>{{$ctrl.indexActiveSlide}}</label>
|
|
54
36
|
</div>
|
|
55
37
|
|
|
38
|
+
<div class="line-goal"></div>
|
|
56
39
|
<div class="dashboard-wrapper">
|
|
57
|
-
<div class="
|
|
58
|
-
|
|
40
|
+
<div class="swiper">
|
|
41
|
+
<div class="swiper-wrapper">
|
|
42
|
+
<div class="swiper-slide">
|
|
43
|
+
<div class="chart-container"
|
|
44
|
+
id="container-speed">
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
|
|
48
|
+
<div class="swiper-slide">
|
|
49
|
+
<div class="dashboard-estimated">
|
|
50
|
+
<p ng-if="$ctrl.hideValue">Meta: <strong>{{$ctrl.goalDataForTheMonth.target | currency: 'R$ '
|
|
51
|
+
}}</strong>
|
|
52
|
+
</p>
|
|
53
|
+
<p ng-if="!$ctrl.hideValue">Meta: <i class="fa fa-lock"
|
|
54
|
+
aria-hidden="true"
|
|
55
|
+
tooltip-placement="right"
|
|
56
|
+
uib-tooltip="Sem permissão para visualizar"></i>
|
|
57
|
+
</p>
|
|
58
|
+
<p ng-if="!$ctrl.hideValue">Venda atual: <i class="fa fa-lock"
|
|
59
|
+
aria-hidden="true"
|
|
60
|
+
tooltip-placement="right"
|
|
61
|
+
uib-tooltip="Sem permissão para visualizar"></i>
|
|
62
|
+
</p>
|
|
63
|
+
<p class="estimate-goal-store lock-permition"
|
|
64
|
+
ng-if="$ctrl.hideValue">Venda atual: <strong>{{$ctrl.goalDataForTheMonth.sales | currency: 'R$ '
|
|
65
|
+
}}</strong>
|
|
66
|
+
<i class="fa fa-exclamation-circle"
|
|
67
|
+
aria-hidden="true"
|
|
68
|
+
tooltip-placement="top"
|
|
69
|
+
uib-tooltip="Considera devoluções"></i>
|
|
70
|
+
</p>
|
|
71
|
+
<p ng-if="!$ctrl.hideValue">Restante: <i class="fa fa-lock"
|
|
72
|
+
aria-hidden="true"
|
|
73
|
+
tooltip-placement="right"
|
|
74
|
+
uib-tooltip="Sem permissão para visualizar"></i>
|
|
75
|
+
</p>
|
|
76
|
+
<p class="estimate-goal-store"
|
|
77
|
+
ng-if="$ctrl.hideValue">Restante: <strong>{{$ctrl.goalDataForTheMonth.remaining | currency: 'R$ '
|
|
78
|
+
}} =
|
|
79
|
+
({{$ctrl.goalDataForTheMonth.remainingPercentage}}%)</strong>
|
|
80
|
+
</p>
|
|
81
|
+
<p ng-if="!$ctrl.hideValue">Estimativa: <i class="fa fa-lock"
|
|
82
|
+
aria-hidden="true"
|
|
83
|
+
tooltip-placement="right"
|
|
84
|
+
uib-tooltip="Sem permissão para visualizar"></i>
|
|
85
|
+
</p>
|
|
86
|
+
<p class="estimate-goal-store"
|
|
87
|
+
ng-if="$ctrl.hideValue">Estimativa: <strong>{{$ctrl.goalDataForTheMonth.estimate | currency: 'R$
|
|
88
|
+
'}} =
|
|
89
|
+
({{$ctrl.goalDataForTheMonth.estimatePercentage}}%)</strong>
|
|
90
|
+
</p>
|
|
91
|
+
</div>
|
|
92
|
+
</div>
|
|
93
|
+
|
|
94
|
+
<div class="swiper-slide">
|
|
95
|
+
<div class="dashboard-estimated-store">
|
|
96
|
+
<p ng-if="$ctrl.hideValue">Meta diária: <strong>{{$ctrl.goalDataForTheMonth.dailyTarget | currency:
|
|
97
|
+
'R$ '
|
|
98
|
+
}}</strong></p>
|
|
99
|
+
<p ng-if="!$ctrl.hideValue">Meta diária: <i class="fa fa-lock"
|
|
100
|
+
aria-hidden="true"
|
|
101
|
+
tooltip-placement="right"
|
|
102
|
+
uib-tooltip="Sem permissão para visualizar"></i>
|
|
103
|
+
</p>
|
|
104
|
+
<p ng-if="!$ctrl.hideValue">Realizado/dia: <i class="fa fa-lock"
|
|
105
|
+
aria-hidden="true"
|
|
106
|
+
tooltip-placement="right"
|
|
107
|
+
uib-tooltip="Sem permissão para visualizar"></i>
|
|
108
|
+
</p>
|
|
109
|
+
<p class="estimate-goal-store"
|
|
110
|
+
ng-if="$ctrl.hideValue">Realizado/dia: <strong>{{$ctrl.goalDataForTheMonth.realityPerDay |
|
|
111
|
+
currency: 'R$
|
|
112
|
+
' }}</strong>
|
|
113
|
+
</p>
|
|
114
|
+
<p ng-if="!$ctrl.hideValue">Necessidade/dia: <i class="fa fa-lock"
|
|
115
|
+
aria-hidden="true"
|
|
116
|
+
tooltip-placement="right"
|
|
117
|
+
uib-tooltip="Sem permissão para visualizar"></i>
|
|
118
|
+
</p>
|
|
119
|
+
<p class="estimate-goal-store"
|
|
120
|
+
ng-if="$ctrl.hideValue">Necessidade/dia: <strong>{{$ctrl.goalDataForTheMonth.neededPerDay |
|
|
121
|
+
currency: 'R$
|
|
122
|
+
' }}</strong>
|
|
123
|
+
</p>
|
|
124
|
+
</div>
|
|
125
|
+
</div>
|
|
126
|
+
</div>
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
<div class="swiper-pagination"></div>
|
|
130
|
+
</div>
|
|
59
131
|
</div>
|
|
60
132
|
</div>
|
|
61
133
|
|
|
@@ -1,12 +1,102 @@
|
|
|
1
|
-
.store-goal-wrapper{
|
|
1
|
+
.store-goal-wrapper {
|
|
2
|
+
|
|
3
|
+
.swiper {
|
|
4
|
+
width: 100%;
|
|
5
|
+
height: 100%;
|
|
6
|
+
overflow: hidden;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.swiper-wrapper {
|
|
10
|
+
display: flex;
|
|
11
|
+
transition: transform 0.3s ease;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.swiper-slide {
|
|
15
|
+
width: 100%;
|
|
16
|
+
flex-shrink: 0;
|
|
17
|
+
display: flex;
|
|
18
|
+
justify-content: center;
|
|
19
|
+
align-items: center;
|
|
20
|
+
box-sizing: border-box;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.swiper-slide-active {
|
|
24
|
+
display: flex;
|
|
25
|
+
justify-content: center;
|
|
26
|
+
align-items: center;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.swiper-pagination {
|
|
30
|
+
position: absolute;
|
|
31
|
+
top: 100px;
|
|
32
|
+
left: 54%;
|
|
33
|
+
transform: translateX(-50%);
|
|
34
|
+
display: flex;
|
|
35
|
+
gap: 5px;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.swiper-pagination-bullet {
|
|
39
|
+
width: 10px;
|
|
40
|
+
height: 10px;
|
|
41
|
+
background-color: #606A90;
|
|
42
|
+
border-radius: 50%;
|
|
43
|
+
opacity: 0.5;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.swiper-pagination-bullet-active {
|
|
47
|
+
background-color: #0EBCBD;
|
|
48
|
+
opacity: 1;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.active-index {
|
|
52
|
+
display: flex;
|
|
53
|
+
justify-content: end;
|
|
54
|
+
font-size: 14px;
|
|
55
|
+
margin-top: -17px;
|
|
56
|
+
color: var(--titleColor);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
.line-goal {
|
|
61
|
+
width: 100%;
|
|
62
|
+
background: #737373;
|
|
63
|
+
height: 1px;
|
|
64
|
+
opacity: 0.3;
|
|
65
|
+
|
|
66
|
+
}
|
|
67
|
+
|
|
2
68
|
.dashboard-wrapper {
|
|
69
|
+
overflow: hidden;
|
|
3
70
|
display: flex;
|
|
4
71
|
justify-content: center;
|
|
5
72
|
align-items: center;
|
|
6
73
|
height: 100%;
|
|
7
74
|
width: 100%;
|
|
75
|
+
position: relative;
|
|
76
|
+
left: -22px;
|
|
77
|
+
|
|
78
|
+
.dashboard-estimated {
|
|
79
|
+
|
|
80
|
+
position: relative;
|
|
81
|
+
left: 52px;
|
|
82
|
+
top: 10px;
|
|
83
|
+
height: 115px;
|
|
84
|
+
font-size: 14px;
|
|
85
|
+
color: #5f5b5b;
|
|
86
|
+
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.dashboard-estimated-store {
|
|
90
|
+
|
|
91
|
+
position: relative;
|
|
92
|
+
top: 18px;
|
|
93
|
+
left: 38px;
|
|
94
|
+
height: 115px;
|
|
95
|
+
font-size: 14px;
|
|
96
|
+
color: #5f5b5b;
|
|
97
|
+
}
|
|
8
98
|
}
|
|
9
|
-
|
|
99
|
+
|
|
10
100
|
.chart-container {
|
|
11
101
|
display: flex;
|
|
12
102
|
justify-content: center;
|
|
@@ -14,53 +104,62 @@
|
|
|
14
104
|
width: 300px;
|
|
15
105
|
height: auto;
|
|
16
106
|
position: relative;
|
|
17
|
-
left:
|
|
18
|
-
bottom:
|
|
107
|
+
left: 10%;
|
|
108
|
+
bottom: 195px;
|
|
19
109
|
}
|
|
20
|
-
|
|
21
|
-
.opacity-dash-goal{
|
|
110
|
+
|
|
111
|
+
.opacity-dash-goal {
|
|
22
112
|
opacity: 0.5;
|
|
23
113
|
}
|
|
24
|
-
|
|
25
|
-
.goal-target{
|
|
114
|
+
|
|
115
|
+
.goal-target {
|
|
26
116
|
position: relative;
|
|
27
117
|
top: 180px;
|
|
28
118
|
font-size: 14px;
|
|
29
119
|
color: #5f5b5b;
|
|
30
120
|
}
|
|
31
121
|
|
|
32
|
-
.estimate-goal{
|
|
122
|
+
.estimate-goal {
|
|
33
123
|
font-size: 14px;
|
|
34
|
-
|
|
124
|
+
color: #5f5b5b;
|
|
35
125
|
}
|
|
36
126
|
|
|
37
|
-
.estimate-goal-store{
|
|
127
|
+
.estimate-goal-store {
|
|
38
128
|
font-size: 14px;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
129
|
+
color: #5f5b5b;
|
|
130
|
+
|
|
131
|
+
i {
|
|
132
|
+
color: #0EBCBD;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.tooltip-inner {
|
|
136
|
+
width: 250px;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
.tooltip-chart-panel {
|
|
141
|
+
display: flex;
|
|
142
|
+
flex-direction: column;
|
|
143
|
+
position: relative;
|
|
144
|
+
background: #0EBCBD !important;
|
|
145
|
+
font-weight: bold;
|
|
146
|
+
color: #FFFFFF;
|
|
147
|
+
width: 100%;
|
|
148
|
+
height: 100%;
|
|
149
|
+
margin-right: 200px;
|
|
150
|
+
border-radius: 10px;
|
|
151
|
+
opacity: 1.0;
|
|
61
152
|
}
|
|
62
153
|
|
|
63
154
|
}
|
|
155
|
+
.lock-permition{
|
|
156
|
+
|
|
157
|
+
.tooltip-inner {
|
|
158
|
+
background: #0EBCBD !important;
|
|
159
|
+
color: #000000 !important;
|
|
160
|
+
width: 300px;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
64
163
|
|
|
65
164
|
.goal-day {
|
|
66
165
|
display: flex;
|
|
@@ -80,24 +179,29 @@
|
|
|
80
179
|
width: 100%;
|
|
81
180
|
margin-top: 16px;
|
|
82
181
|
font-weight: 600;
|
|
83
|
-
font-size: 14px;
|
|
84
|
-
|
|
182
|
+
font-size: 14px;
|
|
183
|
+
|
|
184
|
+
.active-index-slide{
|
|
185
|
+
position: relative;
|
|
186
|
+
top: -11px;
|
|
187
|
+
left: 95px;
|
|
188
|
+
}
|
|
189
|
+
|
|
85
190
|
.mbg-h-c-tone-s-icon-dash {
|
|
86
191
|
margin-top: -10px;
|
|
87
192
|
transition: opacity 500ms ease;
|
|
88
193
|
opacity: 0.9;
|
|
89
194
|
}
|
|
90
|
-
|
|
91
|
-
.lock-dash-store{
|
|
195
|
+
|
|
196
|
+
.lock-dash-store {
|
|
92
197
|
position: relative;
|
|
93
198
|
right: -20px;
|
|
94
199
|
}
|
|
95
200
|
|
|
96
|
-
.show-tooltip{
|
|
201
|
+
.show-tooltip {
|
|
97
202
|
font-size: 20px;
|
|
98
203
|
color: #5f5b5b;
|
|
99
|
-
|
|
100
|
-
left: 0px;
|
|
204
|
+
z-index: 9999;
|
|
101
205
|
}
|
|
102
206
|
}
|
|
103
207
|
|
|
@@ -105,45 +209,93 @@
|
|
|
105
209
|
0% {
|
|
106
210
|
opacity: 1;
|
|
107
211
|
}
|
|
212
|
+
|
|
108
213
|
50% {
|
|
109
214
|
opacity: 0;
|
|
110
215
|
}
|
|
216
|
+
|
|
111
217
|
100% {
|
|
112
218
|
opacity: 1;
|
|
113
219
|
}
|
|
114
220
|
}
|
|
115
|
-
|
|
221
|
+
|
|
116
222
|
.description-dash {
|
|
117
223
|
font-size: 20px;
|
|
118
224
|
color: #5f5b5b;
|
|
119
|
-
position: relative;
|
|
120
|
-
left: -24px;
|
|
121
225
|
|
|
122
|
-
i{
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
226
|
+
i {
|
|
227
|
+
animation: blink 1s infinite;
|
|
228
|
+
color: #ff8c00;
|
|
229
|
+
position: relative;
|
|
230
|
+
z-index: 9999;
|
|
127
231
|
}
|
|
128
232
|
|
|
129
233
|
.tooltip-inner {
|
|
130
|
-
background
|
|
234
|
+
background: #ff8c00 !important;
|
|
131
235
|
color: #000000 !important;
|
|
132
236
|
width: 300px;
|
|
133
237
|
}
|
|
134
238
|
}
|
|
135
|
-
|
|
239
|
+
|
|
240
|
+
@media screen and (max-width: 1920px){
|
|
241
|
+
.description-container-dash{
|
|
242
|
+
.active-index-slide {
|
|
243
|
+
left: 140px;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
136
246
|
}
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
color: #5f5b5b;
|
|
247
|
+
|
|
248
|
+
@media screen and (max-width: 1728px){
|
|
249
|
+
.description-container-dash{
|
|
250
|
+
.active-index-slide {
|
|
251
|
+
left: 108px;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
145
254
|
}
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
255
|
+
|
|
256
|
+
@media screen and (max-width: 1536px){
|
|
257
|
+
.description-container-dash{
|
|
258
|
+
.active-index-slide {
|
|
259
|
+
left: 70px;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
@media screen and (max-width: 1440px){
|
|
264
|
+
.description-container-dash{
|
|
265
|
+
.active-index-slide {
|
|
266
|
+
left: 58px;
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
@media screen and (max-width: 1366px){
|
|
272
|
+
.description-container-dash{
|
|
273
|
+
.active-index-slide {
|
|
274
|
+
left: 125px;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
@media screen and (max-width: 1024px){
|
|
280
|
+
.description-container-dash{
|
|
281
|
+
.active-index-slide {
|
|
282
|
+
left: 44px;
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
.hide-goal {
|
|
290
|
+
display: flex;
|
|
291
|
+
justify-content: center;
|
|
292
|
+
align-items: center;
|
|
293
|
+
width: 100%;
|
|
294
|
+
height: 100%;
|
|
295
|
+
font-size: 14px;
|
|
296
|
+
color: #5f5b5b;
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.state-goal {
|
|
300
|
+
cursor: pointer;
|
|
301
|
+
}
|
|
@@ -6,6 +6,8 @@ import * as SolidGauge from 'highcharts/modules/solid-gauge.js'
|
|
|
6
6
|
import * as Exporting from 'highcharts/modules/exporting.js'
|
|
7
7
|
import * as ExportData from 'highcharts/modules/export-data.js'
|
|
8
8
|
import * as Accessibility from 'highcharts/modules/accessibility.js'
|
|
9
|
+
import Swiper from 'swiper'
|
|
10
|
+
import { Pagination } from 'swiper'
|
|
9
11
|
|
|
10
12
|
// Inicialize os módulos
|
|
11
13
|
HighchartsMore(Highcharts)
|
|
@@ -15,24 +17,18 @@ ExportData(Highcharts)
|
|
|
15
17
|
Accessibility(Highcharts)
|
|
16
18
|
|
|
17
19
|
class MbgStoreGoalController {
|
|
18
|
-
private status: string
|
|
19
|
-
private cappedPercentage
|
|
20
|
-
private percentageAchieved
|
|
21
20
|
private allowedToSee: boolean
|
|
22
21
|
private allowedCallBack: Function
|
|
23
|
-
private randomEmoji: string
|
|
24
22
|
private hideValue: boolean = false
|
|
25
23
|
private allowDashBoardAutoValues
|
|
26
24
|
private isPermissionStoreGoal
|
|
27
|
-
private
|
|
28
|
-
private storeGoalDashboard
|
|
25
|
+
private goalDataForTheMonth
|
|
29
26
|
private currentMonthName
|
|
30
|
-
private percentageEstimatedStoreGoal
|
|
31
27
|
private estimatedPercentageGreaterThanTarget: boolean = false
|
|
32
|
-
private goalStoreTarget
|
|
33
28
|
private messageTooltip: string = ''
|
|
34
|
-
private
|
|
29
|
+
private percentageEstimatedMessage
|
|
35
30
|
private showDashboard: boolean = false
|
|
31
|
+
private indexActiveSlide
|
|
36
32
|
|
|
37
33
|
constructor(
|
|
38
34
|
public $scope,
|
|
@@ -45,9 +41,8 @@ class MbgStoreGoalController {
|
|
|
45
41
|
|
|
46
42
|
async $onInit() {
|
|
47
43
|
this.initialize()
|
|
48
|
-
this.randomEmoji = this.generateRandomEmoji()
|
|
49
44
|
this.$scope.$watch(
|
|
50
|
-
'$ctrl.
|
|
45
|
+
'$ctrl.goalDataForTheMonth',
|
|
51
46
|
(data) => {
|
|
52
47
|
if (data) {
|
|
53
48
|
this.configSolidGauge()
|
|
@@ -59,31 +54,55 @@ class MbgStoreGoalController {
|
|
|
59
54
|
const currentDate = new Date()
|
|
60
55
|
const currentMonth = currentDate.toLocaleString('default', { month: 'short' })
|
|
61
56
|
this.currentMonthName = currentMonth.charAt(0).toUpperCase() + currentMonth.slice(1)
|
|
62
|
-
this.
|
|
57
|
+
this.configSwiperSlides()
|
|
63
58
|
}
|
|
64
59
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
60
|
+
configSwiperSlides() {
|
|
61
|
+
const swiper = new Swiper('.swiper', {
|
|
62
|
+
modules: [Pagination],
|
|
63
|
+
speed: 1000,
|
|
64
|
+
autoplay: {
|
|
65
|
+
delay: 20000,
|
|
66
|
+
disableOnInteraction: false,
|
|
67
|
+
},
|
|
68
|
+
pagination: {
|
|
69
|
+
el: '.swiper-pagination',
|
|
70
|
+
progressbarOpposite: true,
|
|
71
|
+
allowTouchMove: false,
|
|
72
|
+
clickable: true,
|
|
73
|
+
bulletClass: 'swiper-pagination-bullet',
|
|
74
|
+
bulletActiveClass: 'swiper-pagination-bullet-active',
|
|
75
|
+
renderBullet: function (index, className) {
|
|
76
|
+
return `<span class="${className}"></span>`
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
})
|
|
80
|
+
|
|
81
|
+
swiper.on('slideChange', () => {
|
|
82
|
+
this.indexActiveSlide =
|
|
83
|
+
swiper.activeIndex === 1 ? '(mensal)' : swiper.activeIndex === 2 ? '(diário)' : ''
|
|
84
|
+
})
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
goalDataForTheMonthConfig() {
|
|
88
|
+
this.goalDataForTheMonth.remainingPercentage = this.goalDataForTheMonth.remainingPercentage
|
|
89
|
+
this.goalDataForTheMonth.targetMonth = Number(this.goalDataForTheMonth.targetMonth).toFixed(2)
|
|
90
|
+
this.goalDataForTheMonth.estimatePercentage = this.goalDataForTheMonth.estimatePercentage
|
|
72
91
|
}
|
|
73
92
|
|
|
74
93
|
async configSolidGauge() {
|
|
75
|
-
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
const
|
|
80
|
-
this.percentageEstimated = `Alerta: Você atingirá aproximadamente ${showPercentage} da sua meta se continuar no ritmo atual.`
|
|
81
|
-
const goal = this.percentageEstimatedStoreGoal.target
|
|
94
|
+
this.goalDataForTheMonthConfig()
|
|
95
|
+
const sales = this.$filter('currency')(this.goalDataForTheMonth.sales, 'R$ ')
|
|
96
|
+
const tooltip = `<b>Vendas</b>: ${sales}`
|
|
97
|
+
|
|
98
|
+
const storeGoalPercentage = this.hideValue ? Number(this.goalDataForTheMonth.targetMonth) : 0
|
|
82
99
|
|
|
83
|
-
this.
|
|
84
|
-
|
|
100
|
+
this.showDashboard = this.goalDataForTheMonth.target
|
|
101
|
+
const percentageTarget = this.goalDataForTheMonth.estimatePercentage
|
|
102
|
+
const showPercentage = this.hideValue ? `${percentageTarget}%` : '****'
|
|
103
|
+
this.percentageEstimatedMessage = `Alerta: Você atingirá aproximadamente ${showPercentage} da sua meta se continuar no ritmo atual.`
|
|
85
104
|
|
|
86
|
-
if (
|
|
105
|
+
if (this.goalDataForTheMonth.estimate < this.goalDataForTheMonth.target) {
|
|
87
106
|
this.estimatedPercentageGreaterThanTarget = true
|
|
88
107
|
} else {
|
|
89
108
|
this.estimatedPercentageGreaterThanTarget = false
|
|
@@ -102,15 +121,21 @@ class MbgStoreGoalController {
|
|
|
102
121
|
credits: {
|
|
103
122
|
enabled: false,
|
|
104
123
|
},
|
|
124
|
+
tooltip: {
|
|
125
|
+
enabled: true,
|
|
126
|
+
formatter: function () {
|
|
127
|
+
return tooltip
|
|
128
|
+
},
|
|
129
|
+
},
|
|
105
130
|
|
|
106
131
|
series: [
|
|
107
132
|
{
|
|
108
133
|
name: 'Speed',
|
|
109
|
-
data: [storeGoalPercentage],
|
|
134
|
+
data: [storeGoalPercentage.toFixed(2)],
|
|
110
135
|
dataLabels: {
|
|
111
136
|
format: this.hideValue
|
|
112
|
-
? '<div style="display: flex;justify-content: center;align-items: center;margin-top: -20px;">' +
|
|
113
|
-
'<span style="font-size:25px">{y}</span><br/>' +
|
|
137
|
+
? '<div style="display: flex;justify-content: center;align-items: center;margin-top: -20px;" >' +
|
|
138
|
+
'<span style="font-size:25px" uib-tooltip="testeeeeeee" >{y}</span><br/>' +
|
|
114
139
|
'<span style="font-size:12px;opacity:0.4">%</span>' +
|
|
115
140
|
'</div>'
|
|
116
141
|
: '<div style="margin-top: -20px;">' +
|
|
@@ -140,8 +165,8 @@ class MbgStoreGoalController {
|
|
|
140
165
|
|
|
141
166
|
title: null,
|
|
142
167
|
pane: {
|
|
143
|
-
center: ['
|
|
144
|
-
size: '
|
|
168
|
+
center: ['40%', '75%'],
|
|
169
|
+
size: '65%',
|
|
145
170
|
startAngle: -90,
|
|
146
171
|
endAngle: 90,
|
|
147
172
|
background: {
|
|
@@ -230,7 +255,6 @@ class MbgStoreGoalController {
|
|
|
230
255
|
}
|
|
231
256
|
|
|
232
257
|
this.hideValue = !this.hideValue
|
|
233
|
-
this.randomEmoji = this.generateRandomEmoji()
|
|
234
258
|
this.configSolidGauge()
|
|
235
259
|
}
|
|
236
260
|
}
|
|
@@ -247,8 +271,7 @@ const mbgStoreGoal = {
|
|
|
247
271
|
bindings: {
|
|
248
272
|
allowedToSee: '=?',
|
|
249
273
|
allowedCallBack: '&?',
|
|
250
|
-
|
|
251
|
-
percentageEstimatedStoreGoal: '=?',
|
|
274
|
+
goalDataForTheMonth: '=?',
|
|
252
275
|
isPermissionStoreGoal: '=?',
|
|
253
276
|
allowDashBoardAutoValues: '=?',
|
|
254
277
|
},
|