Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
Tia-dev
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Dida Adams Arizona
Tia-dev
Commits
23469c2f
Commit
23469c2f
authored
Mar 01, 2021
by
Dida Adams Arizona
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'GGMAC' into 'master'
update See merge request
!1235
parents
06f35954
7819577c
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
127 additions
and
55 deletions
+127
-55
HomePage.js
src/container/HomePage.js
+1
-1
DashboardCAT.js
src/container/Laporan/DashboardCAT.js
+24
-18
ExceutiveScoreboard.js
src/container/Laporan/ExceutiveScoreboard.js
+77
-19
KPIs.js
src/container/Laporan/KPIs.js
+15
-11
StrategiMap.js
src/container/Laporan/StrategiMap.js
+10
-6
No files found.
src/container/HomePage.js
View file @
23469c2f
...
...
@@ -687,7 +687,7 @@ class HomePage extends Component {
{(
this
.
state
.
accessMB
||
this
.
state
.
accessMR
)
&&
<
div
style
=
{{
flex
:
1
,
paddingLeft
:
20
,
paddingRight
:
20
,
paddingTop
:
20
,
paddingBottom
:
0
,
width
:
'100%'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
Typography
style
=
{{
color
:
'#656565'
,
fontSize
:
'16px'
,
fontWeight
:
'bold'
}}
>
Tasks
to
be
Complete
<
/Typography
>
<
Typography
style
=
{{
color
:
'#656565'
,
fontSize
:
'16px'
,
fontWeight
:
'bold'
}}
>
Tasks
to
be
Complete
d
<
/Typography
>
<
/div
>
<
/div
>
}
...
...
src/container/Laporan/DashboardCAT.js
View file @
23469c2f
...
...
@@ -29,7 +29,9 @@ export default class DashboardCAT extends Component {
listMonth
:
null
,
month
:
null
,
loading
:
true
,
dataDashboard
:
[]
dataDashboard
:
[],
selectedKPI
:
[],
listKPI
:
[]
}
}
...
...
@@ -233,8 +235,8 @@ export default class DashboardCAT extends Component {
getDasboardCAT
()
{
let
payload
=
{
"company_id"
:
this
.
state
.
company
.
company_id
,
"periode"
:
this
.
state
.
periode
.
periode
,
"company_id"
:
this
.
state
.
company
.
company_id
,
"periode"
:
this
.
state
.
periode
.
periode
,
"months"
:
this
.
state
.
month
.
month_id
}
let
dataDashboard
=
[]
...
...
@@ -242,9 +244,9 @@ export default class DashboardCAT extends Component {
if
(
res
.
data
.
status
==
'success'
)
{
console
.
log
(
res
)
// let resp = res.data.data
this
.
setState
({
dataDashboard
:
res
.
data
.
data
},
()
=>
{
this
.
setState
({
dataDashboard
:
res
.
data
.
data
},
()
=>
{
setTimeout
(()
=>
{
this
.
setState
({
loading
:
false
})
this
.
setState
({
loading
:
false
})
},
400
);
})
}
...
...
@@ -263,6 +265,10 @@ export default class DashboardCAT extends Component {
this
.
setState
({
tab
:
newEvent
})
}
setSelectedKPI
(
data
)
{
this
.
setState
({
selectedKPI
:
data
})
}
render
()
{
const
perusahaan
=
[
{
value
:
'TAP Group'
,
label
:
'TAP Group'
},
...
...
@@ -298,14 +304,14 @@ export default class DashboardCAT extends Component {
<
/Snackbar
>
{
this
.
state
.
loading
&&
loadingComponent
}
<
div
className
=
{
"main-color"
}
style
=
{{
padding
:
27
}}
>
<
Typography
style
=
{{
fontSize
:
'16px'
,
color
:
'white'
}}
>
ON
CHANGE
CAT
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
'16px'
,
color
:
'white'
}}
>
Dashboard
CAT
Report
<
/Typography
>
<
/div
>
<
div
style
=
{{
padding
:
20
}}
>
<
div
style
=
{{
marginTop
:
0
}}
>
<
div
style
=
{{
padding
:
20
}}
>
<
div
style
=
{{
marginTop
:
0
}}
>
<
Autocomplete
{...
this
.
state
.
listCompany
}
id
=
"month"
onChange
=
{(
event
,
newInputValue
)
=>
this
.
setState
({
company
:
newInputValue
,
loading
:
true
},
()
=>
{
onChange
=
{(
event
,
newInputValue
)
=>
this
.
setState
({
company
:
newInputValue
,
loading
:
true
,
selectedKPI
:
[]
},
()
=>
{
this
.
getDasboardCAT
()
})}
disableClearable
...
...
@@ -343,21 +349,21 @@ export default class DashboardCAT extends Component {
<
/div
>
{
!
this
.
state
.
loading
&&
<
div
className
=
"padding-20px"
style
=
{{
display
:
'flex'
}}
>
<
Paper
style
=
{{
marginTop
:
10
,
minWidth
:
this
.
props
.
open
?
this
.
props
.
width
-
360
:
this
.
props
.
width
-
100
}}
>
<
Paper
style
=
{{
marginTop
:
10
,
minWidth
:
this
.
props
.
open
?
this
.
props
.
width
-
360
:
this
.
props
.
width
-
100
}}
>
<
AppBar
position
=
"static"
style
=
{{
borderTopRightRadius
:
10
,
borderTopLeftRadius
:
10
}}
>
<
Tabs
indicatorColor
=
"primary"
value
=
{
this
.
state
.
tab
}
onChange
=
{
this
.
selectTab
}
aria
-
label
=
"simple tabs example"
style
=
{{
backgroundColor
:
'#354960'
,
borderColor
:
'transparent'
,
borderTopRightRadius
:
10
,
borderTopLeftRadius
:
10
}}
>
<
Tabs
indicatorColor
=
"primary"
value
=
{
this
.
state
.
tab
}
onChange
=
{
this
.
selectTab
}
aria
-
label
=
"simple tabs example"
style
=
{{
backgroundColor
:
'#354960'
,
borderColor
:
'transparent'
,
borderTopRightRadius
:
10
,
borderTopLeftRadius
:
10
}}
>
<
Tab
label
=
"Executive Scoreboard"
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
/
>
<
Tab
label
=
"Strategy Map"
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
/
>
<
Tab
label
=
"KPIs"
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
/
>
<
/Tabs
>
<
/AppBar
>
{
this
.
state
.
tab
===
0
?
<
ExceutiveScoreboard
height
=
{
this
.
props
.
height
}
data
=
{
this
.
state
.
dataDashboard
}
dataPayload
=
{{
month
:
this
.
state
.
month
,
periode
:
this
.
state
.
periode
,
company
:
this
.
state
.
company
}}
/
>
<
ExceutiveScoreboard
selectedKPI
=
{
this
.
state
.
selectedKPI
}
setSelectedKPI
=
{
this
.
setSelectedKPI
.
bind
(
this
)}
height
=
{
this
.
props
.
height
}
data
=
{
this
.
state
.
dataDashboard
}
dataPayload
=
{{
month
:
this
.
state
.
month
,
periode
:
this
.
state
.
periode
,
company
:
this
.
state
.
company
}}
/
>
:
this
.
state
.
tab
===
1
?
<
StrategiMap
height
=
{
this
.
props
.
height
}
data
=
{
this
.
state
.
dataDashboard
}
dataPayload
=
{{
month
:
this
.
state
.
month
,
periode
:
this
.
state
.
periode
,
company
:
this
.
state
.
company
}}
/
>
<
StrategiMap
height
=
{
this
.
props
.
height
}
data
=
{
this
.
state
.
dataDashboard
}
dataPayload
=
{{
month
:
this
.
state
.
month
,
periode
:
this
.
state
.
periode
,
company
:
this
.
state
.
company
}}
/
>
:
<
KPIs
height
=
{
this
.
props
.
height
}
width
=
{
this
.
props
.
open
?
this
.
props
.
width
-
360
:
this
.
props
.
width
-
100
}
data
=
{
this
.
state
.
dataDashboard
}
dataPayload
=
{{
month
:
this
.
state
.
month
,
periode
:
this
.
state
.
periode
,
company
:
this
.
state
.
company
}}
/
>
<
KPIs
height
=
{
this
.
props
.
height
}
width
=
{
this
.
props
.
open
?
this
.
props
.
width
-
360
:
this
.
props
.
width
-
100
}
data
=
{
this
.
state
.
dataDashboard
}
dataPayload
=
{{
month
:
this
.
state
.
month
,
periode
:
this
.
state
.
periode
,
company
:
this
.
state
.
company
}}
/
>
}
<
/Paper
>
<
/div>
}
...
...
src/container/Laporan/ExceutiveScoreboard.js
View file @
23469c2f
...
...
@@ -28,12 +28,13 @@ export default class ExceutiveScoreboard extends Component {
selectIndex
:
null
,
loading
:
false
,
listKPI
:
[],
selectedKPI
:
[]
,
selectedKPI
:
this
.
props
.
selectedKPI
,
listDetailKPI
:
[],
checkAll
:
true
,
checkYTD
:
true
,
checkAB
:
true
,
checkYoy
:
true
checkYoy
:
true
,
newDataParent
:
[]
}
}
...
...
@@ -42,10 +43,35 @@ export default class ExceutiveScoreboard extends Component {
console
.
log
(
this
.
state
.
dataPayload
)
this
.
setState
({
loading
:
true
})
this
.
olahDataChart
()
this
.
getDetailDashboardCAT
()
}
olahDataChart
()
{
let
listKPI
=
[]
let
newDataParent
=
[]
this
.
state
.
data
.
executive_scoreboard
.
category
.
map
((
item
,
index
)
=>
{
let
perfomanceScore
=
'K'
let
lastTotal
=
Number
(
item
.
current_value
).
toFixed
(
2
)
if
(
lastTotal
>=
1.00
&&
lastTotal
<=
2.00
)
{
perfomanceScore
=
'K'
}
else
if
(
lastTotal
>=
2.01
&&
lastTotal
<=
2.75
)
{
perfomanceScore
=
'C'
}
else
if
(
lastTotal
>=
2.76
&&
lastTotal
<=
3.00
)
{
perfomanceScore
=
'B-'
}
else
if
(
lastTotal
>=
3.01
&&
lastTotal
<=
3.75
)
{
perfomanceScore
=
'B'
}
else
if
(
lastTotal
>=
3.76
&&
lastTotal
<=
4.00
)
{
perfomanceScore
=
'B+'
}
else
if
(
lastTotal
>=
4.01
&&
lastTotal
<=
4.75
)
{
perfomanceScore
=
'BS'
}
else
if
(
lastTotal
>=
4.76
&&
lastTotal
<=
5.00
)
{
perfomanceScore
=
'IST'
}
newDataParent
.
push
({
...
item
,
current_value
:
Number
(
item
.
current_value
).
toFixed
(
2
),
perfomanceScore
})
})
console
.
log
(
newDataParent
)
this
.
state
.
data
.
kpi
.
category
.
map
((
item
,
index
)
=>
{
if
(
item
.
nodes
.
length
>
0
)
{
item
.
nodes
.
map
((
items
,
indexs
)
=>
{
...
...
@@ -53,7 +79,7 @@ export default class ExceutiveScoreboard extends Component {
})
}
})
this
.
setState
({
loading
:
false
,
listKPI
})
this
.
setState
({
loading
:
false
,
listKPI
,
newDataParent
})
}
handleValueChild
(
item
)
{
...
...
@@ -78,7 +104,10 @@ export default class ExceutiveScoreboard extends Component {
}
else
{
list
.
splice
(
indexID
,
1
)
}
this
.
setState
({
selectedKPI
:
list
},
()
=>
{
this
.
getDetailDashboardCAT
()
})
this
.
props
.
setSelectedKPI
(
list
)
this
.
getDetailDashboardCAT
()
// this.setState({ selectedKPI: list }, () => { this.getDetailDashboardCAT() })
}
getDetailDashboardCAT
()
{
...
...
@@ -103,6 +132,26 @@ export default class ExceutiveScoreboard extends Component {
})
}
handleBackgroundPerform
(
total
)
{
let
color
=
'white'
if
(
total
>=
1.00
&&
total
<=
2.00
)
{
color
=
'red'
}
else
if
(
total
>=
2.01
&&
total
<=
2.75
)
{
color
=
'yellow'
}
else
if
(
total
>=
2.76
&&
total
<=
3.00
)
{
color
=
'lightgreen'
}
else
if
(
total
>=
3.01
&&
total
<=
3.75
)
{
color
=
'yellowgreen'
}
else
if
(
total
>=
3.76
&&
total
<=
4.00
)
{
color
=
'forestgreen'
}
else
if
(
total
>=
4.01
&&
total
<=
4.75
)
{
color
=
'deepskyblue'
}
else
if
(
total
>=
4.76
&&
total
<=
5.00
)
{
color
=
'dodgerblue'
}
return
color
}
render
()
{
let
{
selectIndex
}
=
this
.
state
let
yuk
=
[
1
,
2
,
3
]
...
...
@@ -123,7 +172,7 @@ export default class ExceutiveScoreboard extends Component {
return
(
<
div
style
=
{{
padding
:
20
}}
>
<
div
style
=
{{
display
:
'flex'
,
width
:
'100%'
,
justifyContent
:
'space-between'
,
flexFlow
:
'wrap'
}}
>
{
!
this
.
state
.
loading
&&
this
.
state
.
data
.
executive_scoreboard
.
category
.
map
((
item
,
index
)
=>
{
{
!
this
.
state
.
loading
&&
this
.
state
.
newDataParent
.
map
((
item
,
index
)
=>
{
return
(
<
div
style
=
{{
padding
:
10
,
backgroundColor
:
this
.
state
.
selectIndex
===
index
?
'#6885a6'
:
'#fff'
,
borderRadius
:
6
,
paddingBottom
:
20
,
margin
:
10
,
boxShadow
:
'0 1px 4px 0 rgba(0, 0, 0, 0.25)'
,
width
:
250
}}
>
{
/* <span style={{ fontSize: '17px', color: this.state.selectIndex === index ? '#fff' : '#7e8085', maxWidth: 100 }}>{item.category_name}</span> */
}
...
...
@@ -136,7 +185,7 @@ export default class ExceutiveScoreboard extends Component {
{
/* <span style={{ textAlign: 'center', fontSize: '11px', color: selectIndex === index ? "#fff" : '#4b4b4b' }}>KPIs</span> */
}
<
/div>
}
<
div
style
=
{{
display
:
'flex'
,
justifyContent
:
'center'
,
marginTop
:
String
(
item
.
category_name
).
toLocaleLowerCase
()
==
'overall'
?
50
:
0
}}
>
<
div
style
=
{{
backgroundColor
:
index
===
2
?
"#7cd532"
:
index
===
3
?
"#fcff00"
:
index
===
4
?
"#00b440"
:
"#00b1f7"
,
textAlign
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
width
:
40
,
height
:
21
}}
>
<
div
style
=
{{
backgroundColor
:
this
.
handleBackgroundPerform
(
Number
(
item
.
current_value
).
toFixed
(
2
))
,
textAlign
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
width
:
40
,
height
:
21
}}
>
<
Typography
style
=
{{
textAlign
:
'center'
}}
>
{
item
.
performance
}
<
/Typography
>
<
/div
>
<
/div
>
...
...
@@ -144,14 +193,15 @@ export default class ExceutiveScoreboard extends Component {
<
ReactSpeedometer
maxSegmentLabels
=
{
0
}
segmentColors
=
{[
index
===
2
?
"#7cd532"
:
index
===
3
?
"#fcff00"
:
index
===
4
?
"#00b440"
:
"#00b1f7"
,
this
.
handleBackgroundPerform
(
Number
(
item
.
current_value
).
toFixed
(
2
))
,
"#d8d8d8"
]}
needleColor
=
{
this
.
state
.
selectIndex
===
index
?
"#fff"
:
'#4b4b4b'
}
value
=
{
Number
(
item
.
current_value
)}
value
=
{
Number
(
item
.
current_value
).
toFixed
(
2
)}
valueFormat
=
{
'.2f'
}
minValue
=
{
Number
(
item
.
low
)}
maxValue
=
{
Number
(
item
.
high
)}
customSegmentStops
=
{[
0
,
Number
(
item
.
current_value
),
5
]}
customSegmentStops
=
{[
0
,
Number
(
item
.
current_value
)
.
toFixed
(
2
)
,
5
]}
width
=
{
200
}
height
=
{
140
}
ringWidth
=
{
25
}
...
...
@@ -159,11 +209,17 @@ export default class ExceutiveScoreboard extends Component {
/
>
<
/div
>
<
div
style
=
{{
backgroundColor
:
'transparent'
,
display
:
'flex'
,
marginTop
:
20
,
placeContent
:
'center'
}}
>
{
item
.
is_higher
==
'-'
?
<
div
style
=
{{
textAlign
:
'-webkit-center'
}}
>
{
item
.
is_higher
?
<
Typography
style
=
{{
fontSize
:
16
,
color
:
'#4b4b4b'
}}
>
-
<
/Typography
>
<
/div
>
:
<
div
style
=
{{
textAlign
:
'-webkit-center'
}}
>
{
item
.
is_higher
==
'true'
?
<
img
src
=
{
Images
.
up
}
/> : <img src={Images.down} /
>
}
<
Typography
style
=
{{
fontSize
:
16
,
color
:
'#4b4b4b'
}}
>
vs
Last
Month
<
/Typography
>
<
/div
>
}
<
/div
>
<
/div
>
)
...
...
@@ -191,7 +247,8 @@ export default class ExceutiveScoreboard extends Component {
this
.
setState
({
deleteKPIList
:
!
this
.
state
.
deleteKPIList
},
()
=>
{
this
.
setState
({
selectedKPI
:
this
.
state
.
deleteKPIList
?
[]
:
this
.
state
.
selectedKPI
})
this
.
props
.
setSelectedKPI
(
this
.
state
.
deleteKPIList
?
[]
:
this
.
state
.
selectedKPI
)
// this.setState({ selectedKPI: this.state.deleteKPIList ? [] : this.state.selectedKPI })
})
}}
name
=
"checkedB"
...
...
@@ -350,8 +407,8 @@ export default class ExceutiveScoreboard extends Component {
/>
</div>
</div> */
}
<
GridList
cellHeight
=
{
25
0
}
cols
=
{
2
}
>
{
this
.
state
.
listDetailKPI
.
map
((
item
,
index
)
=>
{
<
GridList
cellHeight
=
{
30
0
}
cols
=
{
2
}
>
{
this
.
state
.
listDetailKPI
.
map
((
item
,
index
)
=>
{
let
dataYTD
=
[]
let
dataAB
=
[]
let
dataYoy
=
[]
...
...
@@ -389,8 +446,8 @@ export default class ExceutiveScoreboard extends Component {
})
})
return
(
<
GridListTile
key
=
{
item
}
cols
=
{
1
}
style
=
{{
marginBottom
:
10
}}
>
<
div
style
=
{{
width
:
600
,
boxShadow
:
'0 1px 4px 0 rgba(0, 0, 0, 0.25)'
,
padding
:
20
,
marginLeft
:
15
,
marginTop
:
index
>
1
?
20
:
5
,
marginRight
:
5
,
display
:
'inline-grid'
}}
>
<
GridListTile
key
=
{
item
}
cols
=
{
this
.
state
.
listDetailKPI
.
length
==
1
?
2
:
1
}
style
=
{{
marginBottom
:
10
}}
>
<
div
style
=
{{
width
:
600
,
boxShadow
:
'0 1px 4px 0 rgba(0, 0, 0, 0.25)'
,
padding
:
20
,
marginLeft
:
15
,
marginTop
:
index
>
1
?
20
:
5
,
marginRight
:
5
,
display
:
'inline-grid'
}}
>
<
div
>
<
span
style
=
{{
fontSize
:
17
}}
>
{
item
.
category_name
}
<
/span
>
<
Typography
style
=
{{
fontSize
:
24
,
fontWeight
:
'bold'
}}
><
NumberFormat
value
=
{
item
.
current_value
}
displayType
=
{
'text'
}
thousandSeparator
=
{
true
}
prefix
=
{
'Rp. '
}
/></
Typography
>
...
...
@@ -403,6 +460,7 @@ export default class ExceutiveScoreboard extends Component {
data
=
{
option
}
// yMin={0}
// yMax={10}
// onPointHover={(event, point) => {console.log(event)}}
hideXAxis
=
{
true
}
hideYAxis
=
{
true
}
hideXLabel
=
{
true
}
...
...
src/container/Laporan/KPIs.js
View file @
23469c2f
...
...
@@ -94,7 +94,7 @@ export default class StrategiMap extends Component {
this
.
setState
({
checkYTD
:
!
this
.
state
.
checkYTD
},
()
=>
{
this
.
setState
({
checkAll
:
this
.
state
.
checkYoy
&&
this
.
state
.
checkAB
&&
this
.
state
.
checkYTD
})
this
.
setState
({
checkAll
:
this
.
state
.
checkYoy
&&
this
.
state
.
checkAB
&&
this
.
state
.
checkYTD
})
})
}}
name
=
"checkedB"
...
...
@@ -108,8 +108,8 @@ export default class StrategiMap extends Component {
<
Checkbox
checked
=
{
this
.
state
.
checkAB
}
onChange
=
{()
=>
{
this
.
setState
({
checkAB
:
!
this
.
state
.
checkAB
},
()
=>
{
this
.
setState
({
checkAll
:
this
.
state
.
checkYoy
&&
this
.
state
.
checkAB
&&
this
.
state
.
checkYTD
})
this
.
setState
({
checkAB
:
!
this
.
state
.
checkAB
},
()
=>
{
this
.
setState
({
checkAll
:
this
.
state
.
checkYoy
&&
this
.
state
.
checkAB
&&
this
.
state
.
checkYTD
})
})
}}
name
=
"checkedB"
...
...
@@ -123,8 +123,8 @@ export default class StrategiMap extends Component {
<
Checkbox
checked
=
{
this
.
state
.
checkYoy
}
onChange
=
{()
=>
{
this
.
setState
({
checkYoy
:
!
this
.
state
.
checkYoy
},
()
=>
{
this
.
setState
({
checkAll
:
this
.
state
.
checkYoy
&&
this
.
state
.
checkAB
&&
this
.
state
.
checkYTD
})
this
.
setState
({
checkYoy
:
!
this
.
state
.
checkYoy
},
()
=>
{
this
.
setState
({
checkAll
:
this
.
state
.
checkYoy
&&
this
.
state
.
checkAB
&&
this
.
state
.
checkYTD
})
})
}}
name
=
"checkedB"
...
...
@@ -164,19 +164,19 @@ export default class StrategiMap extends Component {
let
dataYoy
=
[]
let
option
=
[]
if
(
this
.
state
.
checkYTD
===
true
)
{
option
.
push
(
{
option
.
push
({
color
:
"steelblue"
,
points
:
dataYTD
})
}
if
(
this
.
state
.
checkAB
===
true
)
{
option
.
push
(
{
option
.
push
({
color
:
"#e3e16d"
,
points
:
dataAB
})
}
if
(
this
.
state
.
checkYoy
===
true
)
{
option
.
push
(
{
option
.
push
({
color
:
"#f27f77"
,
points
:
dataYoy
})
...
...
@@ -223,13 +223,17 @@ export default class StrategiMap extends Component {
<
div
style
=
{{
width
:
'10%'
,
display
:
'grid'
,
alignContent
:
'center'
}}
>
<
Typography
style
=
{{
color
:
'#656565'
,
fontWeight
:
'bold'
,
fontSize
:
12
}}
>
{
item
.
current_value
}
<
/Typography
>
<
/div
>
<
div
style
=
{{
width
:
'10%'
,
display
:
'flex'
,
justifyContent
:
'center'
,
alignItems
:
'center'
}}
>
<
div
style
=
{{
width
:
'10%'
,
display
:
'flex'
,
justifyContent
:
'center'
,
alignItems
:
'center'
}}
>
<
div
style
=
{{
display
:
'flex'
,
justifyContent
:
'center'
,
alignItems
:
'center'
,
backgroundColor
:
item
.
achievement
<
-
10
?
'#333333'
:
item
.
achievement
<
0
?
'#333333'
:
'#333333'
,
height
:
70
,
width
:
105
,
marginRight
:
20
}}
>
<
Typography
style
=
{{
color
:
'#fff'
,
fontWeight
:
'bold'
,
fontSize
:
12
}}
>
{
item
.
achievement
}
<
/Typography
>
<
/div
>
<
/div
>
<
div
style
=
{{
width
:
'5%'
,
display
:
'grid'
,
alignContent
:
'center'
}}
>
<
img
src
=
{
item
.
is_higher
===
false
?
Images
.
down
:
Images
.
up
}
/
>
{
item
.
is_higher
==
'-'
?
<
Typography
style
=
{{
color
:
'#656565'
,
fontWeight
:
'bold'
,
fontSize
:
12
}}
>-<
/Typography
>
:
<
img
src
=
{
item
.
is_higher
==
false
?
Images
.
down
:
Images
.
up
}
/
>
}
<
/div
>
<
/div
>
)
...
...
src/container/Laporan/StrategiMap.js
View file @
23469c2f
...
...
@@ -20,12 +20,12 @@ export default class StrategiMap extends Component {
render
()
{
return
(
<
div
style
=
{{
padding
:
20
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
FormControl
component
=
"fieldset"
>
<
FormControlLabel
value
=
"end"
control
=
{
<
Radio
color
=
"primary"
checked
=
{
this
.
state
.
radioValue
}
onClick
=
{()
=>
this
.
setState
({
radioValue
:
true
})}
/>} label="Actual vs Prev. Month" /
>
<
FormControlLabel
value
=
"end"
control
=
{
<
Radio
color
=
"primary"
checked
=
{
this
.
state
.
radioValue
}
onClick
=
{()
=>
this
.
setState
({
radioValue
:
true
})}
/>} label="Actual vs Prev. Month" /
>
<
/FormControl
>
<
FormControl
component
=
"fieldset"
>
<
FormControlLabel
value
=
"end"
control
=
{
<
Radio
color
=
"primary"
checked
=
{
!
this
.
state
.
radioValue
}
onClick
=
{()
=>
this
.
setState
({
radioValue
:
false
})}
/>} label="YOY" /
>
<
FormControlLabel
value
=
"end"
control
=
{
<
Radio
color
=
"primary"
checked
=
{
!
this
.
state
.
radioValue
}
onClick
=
{()
=>
this
.
setState
({
radioValue
:
false
})}
/>} label="YOY" /
>
<
/FormControl
>
<
/div
>
<
Paper
style
=
{{
borderRadius
:
10
,
boxShadow
:
'0 0 4px 0 rgba(0, 0, 0, 0.5)'
,
width
:
'100%'
}}
>
...
...
@@ -59,10 +59,14 @@ export default class StrategiMap extends Component {
<
div
style
=
{{
display
:
'grid'
,
alignContent
:
'center'
,
backgroundColor
:
'#6885a6'
,
width
:
155
,
borderTopLeftRadius
:
6
,
borderBottomLeftRadius
:
6
,
padding
:
10
}}
>
<
Typography
style
=
{{
color
:
'#fff'
,
fontSize
:
12
,
textAlign
:
'center'
}}
>
{
items
.
item_name
}
<
/Typography
>
<
/div
>
<
div
style
=
{{
backgroundColor
:
this
.
state
.
radioValue
?
(
items
.
is_higher_actual
?
'#cbf4a8'
:
'#faaaaa'
)
:
(
items
.
is_higher_yoy
?
'#cbf4a8'
:
'#faaaaa'
),
width
:
68
,
borderTopRightRadius
:
6
,
borderBottomRightRadius
:
6
,
textAlign
:
'center'
,
paddingTop
:
10
,
paddingBottom
:
10
}}
>
<
img
src
=
{
this
.
state
.
radioValue
?
(
items
.
is_higher_actual
?
Images
.
up
:
Images
.
down
)
:
(
items
.
is_higher_yoy
?
Images
.
up
:
Images
.
down
)}
/
>
<
div
style
=
{{
backgroundColor
:
this
.
state
.
radioValue
?
(
items
.
is_higher_actual
==
'-'
?
'#d8d8d8'
:
(
items
.
is_higher_actual
==
'true'
?
'#cbf4a8'
:
'#faaaaa'
))
:
(
items
.
is_higher_yoy
==
'-'
?
'white'
:
(
items
.
is_higher_yoy
?
'#cbf4a8'
:
'#faaaaa'
)),
width
:
68
,
borderTopRightRadius
:
6
,
borderBottomRightRadius
:
6
,
textAlign
:
'center'
,
paddingTop
:
10
,
paddingBottom
:
10
}}
>
{
items
.
is_higher_actual
==
'-'
?
<
Typography
style
=
{{
color
:
'#4b4b4b'
,
fontSize
:
10
,
textAlign
:
'center'
}}
>
{
'-'
}
<
/Typography
>
:
<
img
src
=
{
this
.
state
.
radioValue
?
(
items
.
is_higher_actual
==
'true'
?
Images
.
up
:
Images
.
down
)
:
(
items
.
is_higher_yoy
==
'true'
?
Images
.
up
:
Images
.
down
)}
/
>
}
<
Typography
style
=
{{
color
:
'#4b4b4b'
,
fontSize
:
10
,
textAlign
:
'center'
}}
>
{
'vs'
}
<
/Typography
>
<
Typography
style
=
{{
color
:
'#4b4b4b'
,
fontSize
:
10
,
textAlign
:
'center'
}}
>
{
'Last Month
'
}
<
/Typography
>
<
Typography
style
=
{{
color
:
'#4b4b4b'
,
fontSize
:
10
,
textAlign
:
'center'
}}
>
{
this
.
state
.
radioValue
?
'Last Month'
:
'YOY
'
}
<
/Typography
>
<
/div
>
<
/div
>
<
/GridListTile
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment