Skip to content

Commit 6eb420d

Browse files
committed
Added Mortality and Recovered rate
1 parent d7b0663 commit 6eb420d

File tree

2 files changed

+73
-6
lines changed

2 files changed

+73
-6
lines changed

components/Overview/index.vue

Lines changed: 64 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,20 @@
1313
</div>
1414
<div class="content">
1515
<div class="section cases">
16-
<p>Known Cases</p>
17-
<Latest :data="result.latest" :invert="true" />
16+
<ul class="list">
17+
<li>
18+
<p>Known Cases</p>
19+
<Latest :data="result.latest" :invert="true" />
20+
</li>
21+
<li class="rates rates--mortality">
22+
<p>Mortality Rate</p>
23+
<p class="percentage">{{ result.mortality_rate }}%</p>
24+
</li>
25+
<li class="rates rates--recovered">
26+
<p>Recovered Rate</p>
27+
<p class="percentage">{{ result.recovered_rate }}%</p>
28+
</li>
29+
</ul>
1830
</div>
1931
<div class="section chart">
2032
<p>Timeline</p>
@@ -148,7 +160,7 @@ export default {
148160
}
149161
150162
.section {
151-
margin-top: 24px;
163+
margin-top: 16px;
152164
153165
&:first-of-type {
154166
margin-top: 0;
@@ -164,6 +176,34 @@ export default {
164176
color: #666666;
165177
}
166178
}
179+
180+
.list {
181+
margin: 0;
182+
padding: 0;
183+
184+
@media only screen and (min-width: 768px) {
185+
display: flex;
186+
justify-content: space-between;
187+
}
188+
189+
li {
190+
display: block;
191+
margin-top: 16px;
192+
193+
@media only screen and (min-width: 768px) {
194+
margin-top: 0;
195+
}
196+
197+
&:first-child {
198+
margin-top: 0;
199+
}
200+
201+
& > p {
202+
font-size: 24px;
203+
font-weight: 300;
204+
}
205+
}
206+
}
167207
}
168208
169209
.cases {
@@ -184,6 +224,27 @@ export default {
184224
}
185225
}
186226
227+
.rates {
228+
229+
&--mortality {
230+
font-weight: 700;
231+
232+
.percentage {
233+
margin-top: 8px;
234+
color: #b20000;
235+
}
236+
}
237+
238+
&--recovered {
239+
font-weight: 700;
240+
241+
.percentage {
242+
margin-top: 8px;
243+
color: #66a266;
244+
}
245+
}
246+
}
247+
187248
.chart {
188249
max-width: 624px;
189250

store/mutations.js

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ export default {
8484
state.latest = latest
8585
},
8686
SET_RESULT: (state, result) => {
87+
const latest = result.latest
8788
const title = result.province ? `${result.province}, ${result.country}` : result.country
8889
const series = _ => {
8990
const timelineConfirmed = Object.entries(result.timelines.confirmed.timeline).map(o => o)
@@ -153,12 +154,17 @@ export default {
153154
}
154155
})
155156
return perDayCases.filter(o => o.summary !== '.')
156-
}
157+
}
158+
const getPercentage = (data, b) => (data / b) * 100
159+
const mortality_rate = getPercentage(latest.deaths, latest.confirmed)
160+
const recovered_rate = getPercentage(latest.recovered, latest.confirmed)
157161
state.result = {
158162
title: title,
159-
latest: result.latest,
163+
latest: latest,
160164
series: series(),
161-
timeline: timeline()
165+
timeline: timeline(),
166+
mortality_rate: mortality_rate.toFixed(2),
167+
recovered_rate: recovered_rate.toFixed(2)
162168
}
163169
},
164170
SET_COUNTRIES: (state, data) => {

0 commit comments

Comments
 (0)