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
e2d2e141
Commit
e2d2e141
authored
Aug 24, 2020
by
Deni Rinaldi
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'rifka' into 'master'
updet bahasa apprv matrix See merge request
!157
parents
81c7a356
b7be1830
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
185 additions
and
88 deletions
+185
-88
ApprovalMatrix.js
src/container/ApprovalMatrix/ApprovalMatrix.js
+19
-26
CreateApprovalMatrix.js
src/container/ApprovalMatrix/CreateApprovalMatrix.js
+17
-17
EditApprovalMatrix.js
src/container/ApprovalMatrix/EditApprovalMatrix.js
+15
-15
VisualisasiAM.js
src/container/ApprovalMatrix/VisualisasiAM.js
+7
-7
BudgetTahunan.js
src/container/BudgetTahunan.js
+13
-0
TaxPlanning.js
src/container/BudgetTahunan/TaxPlanning.js
+114
-23
No files found.
src/container/ApprovalMatrix/ApprovalMatrix.js
View file @
e2d2e141
...
@@ -88,7 +88,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -88,7 +88,7 @@ export default class ApprovalMatrix extends Component {
let
columns
=
[
let
columns
=
[
"ID"
,
"ID"
,
{
{
name
:
"
Tipe Persetujuan
"
,
name
:
"
Approval Type
"
,
options
:
{
options
:
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
let
check
=
null
let
check
=
null
...
@@ -138,7 +138,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -138,7 +138,7 @@ export default class ApprovalMatrix extends Component {
}
}
},
},
{
{
name
:
"
Nama Pemberi Persetujuan
"
,
name
:
"
Approver Name
"
,
options
:
{
options
:
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
let
check
=
null
let
check
=
null
...
@@ -188,7 +188,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -188,7 +188,7 @@ export default class ApprovalMatrix extends Component {
}
}
},
},
{
{
name
:
"
Berlaku Mulai
"
,
name
:
"
Start Date
"
,
options
:
{
options
:
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
let
check
=
null
let
check
=
null
...
@@ -213,7 +213,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -213,7 +213,7 @@ export default class ApprovalMatrix extends Component {
}
}
},
},
{
{
name
:
"
Berakhir Hingga
"
,
name
:
"
End Date
"
,
options
:
{
options
:
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
let
check
=
null
let
check
=
null
...
@@ -449,19 +449,19 @@ export default class ApprovalMatrix extends Component {
...
@@ -449,19 +449,19 @@ export default class ApprovalMatrix extends Component {
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
return
(
return
(
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ktif
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ctive
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
/div
>
<
/div
>
);
);
}
}
}
}
},
},
{
{
name
:
"
Tipe Persetujuan
"
,
name
:
"
Approval Type
"
,
options
:
{
options
:
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
return
(
return
(
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ktif
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ctive
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
/div
>
<
/div
>
);
);
}
}
...
@@ -473,19 +473,19 @@ export default class ApprovalMatrix extends Component {
...
@@ -473,19 +473,19 @@ export default class ApprovalMatrix extends Component {
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
return
(
return
(
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ktif
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ctive
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
/div
>
<
/div
>
);
);
}
}
}
}
},
},
{
{
name
:
"
Nama Pemberi Persetujuan
"
,
name
:
"
Approver Name
"
,
options
:
{
options
:
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
return
(
return
(
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ktif
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ctive
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
/div
>
<
/div
>
);
);
}
}
...
@@ -497,7 +497,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -497,7 +497,7 @@ export default class ApprovalMatrix extends Component {
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
return
(
return
(
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ktif
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ctive
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
/div
>
<
/div
>
);
);
}
}
...
@@ -509,19 +509,12 @@ export default class ApprovalMatrix extends Component {
...
@@ -509,19 +509,12 @@ export default class ApprovalMatrix extends Component {
customBodyRender
:
(
val
,
tableMeta
)
=>
{
customBodyRender
:
(
val
,
tableMeta
)
=>
{
return
(
return
(
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ktif
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
span
style
=
{{
color
:
tableMeta
.
rowData
[
6
]
===
"A
ctive
"
?
"#656565"
:
'rgba(0, 0, 0, 0.25)'
}}
>
{
val
}
<
/span
>
<
/div
>
<
/div
>
);
);
}
}
}
}
}]
}]
const
data
=
[
[
""
,
"1"
,
"Yearly"
,
"1"
,
"John Doe"
,
"-"
,
"Aktif"
],
[
""
,
"2"
,
"Yearly"
,
"2"
,
"John Doe"
,
"-"
,
"Aktif"
],
[
""
,
"3"
,
"Yearly"
,
"2"
,
"John Doe"
,
"AND"
,
"Aktif"
],
[
""
,
"4"
,
"Yearly"
,
"2"
,
"John Doe"
,
"AND"
,
"Non Aktif"
],
[
""
,
"5"
,
"Yearly"
,
"3"
,
"John Doe"
,
"-"
,
"Non Aktif"
],
]
return
(
return
(
<
div
>
<
div
>
...
@@ -532,9 +525,9 @@ export default class ApprovalMatrix extends Component {
...
@@ -532,9 +525,9 @@ export default class ApprovalMatrix extends Component {
{
this
.
state
.
messageAlert
}
{
this
.
state
.
messageAlert
}
<
/Alert
>
<
/Alert
>
<
/Snackbar
>
<
/Snackbar
>
<
div
class
=
"main-color"
style
=
{{
height
:
19
9
,
width
:
'100%'
}}
/
>
<
div
class
=
"main-color"
style
=
{{
height
:
19
5
,
width
:
'100%'
}}
/
>
<
div
>
<
div
>
<
div
style
=
{{
display
:
'flex'
,
flexDirection
:
'row'
,
justifyContent
:
'space-between'
,
paddingRight
:
25
,
paddingLeft
:
25
,
marginTop
:
-
1
50
}}
>
<
div
style
=
{{
display
:
'flex'
,
flexDirection
:
'row'
,
justifyContent
:
'space-between'
,
paddingRight
:
25
,
paddingLeft
:
25
,
marginTop
:
-
1
18
}}
>
<
label
style
=
{{
width
:
'20%'
,
color
:
'white'
,
fontSize
:
16
,
alignSelf
:
'center'
,
paddingTop
:
8
}}
>
Master
Data
-
Approval
Matrix
<
/label
>
<
label
style
=
{{
width
:
'20%'
,
color
:
'white'
,
fontSize
:
16
,
alignSelf
:
'center'
,
paddingTop
:
8
}}
>
Master
Data
-
Approval
Matrix
<
/label
>
<
div
style
=
{{
color
:
'white'
,
width
:
'50%'
,
height
:
37
,
display
:
'flex'
,
backgroundColor
:
'white'
,
borderWidth
:
2
,
alignItems
:
'center'
,
borderRadius
:
6
,
paddingLeft
:
5
,
paddingRight
:
5
,
alignSelf
:
'center'
}}
>
<
div
style
=
{{
color
:
'white'
,
width
:
'50%'
,
height
:
37
,
display
:
'flex'
,
backgroundColor
:
'white'
,
borderWidth
:
2
,
alignItems
:
'center'
,
borderRadius
:
6
,
paddingLeft
:
5
,
paddingRight
:
5
,
alignSelf
:
'center'
}}
>
<
img
src
=
{
Images
.
searchBlack
}
style
=
{{
marginRight
:
10
}}
/
>
<
img
src
=
{
Images
.
searchBlack
}
style
=
{{
marginRight
:
10
}}
/
>
...
@@ -594,7 +587,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -594,7 +587,7 @@ export default class ApprovalMatrix extends Component {
<
/button
>
<
/button
>
<
/a
>
<
/a
>
<
ReactTooltip
border
=
{
true
}
id
=
"download"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
<
ReactTooltip
border
=
{
true
}
id
=
"download"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
<
a
data
-
tip
=
{
'Visuali
sasi
'
}
data
-
for
=
"visualisasi"
>
<
a
data
-
tip
=
{
'Visuali
zation
'
}
data
-
for
=
"visualisasi"
>
<
button
<
button
style
=
{{
style
=
{{
backgroundColor
:
'transparent'
,
backgroundColor
:
'transparent'
,
...
@@ -610,7 +603,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -610,7 +603,7 @@ export default class ApprovalMatrix extends Component {
<
/button
>
<
/button
>
<
/a
>
<
/a
>
<
ReactTooltip
border
=
{
true
}
id
=
"visualisasi"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
<
ReactTooltip
border
=
{
true
}
id
=
"visualisasi"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
<
a
data
-
tip
=
{
'
Tambah
'
}
data
-
for
=
"create"
>
<
a
data
-
tip
=
{
'
Add
'
}
data
-
for
=
"create"
>
<
button
<
button
style
=
{{
style
=
{{
backgroundColor
:
'transparent'
,
backgroundColor
:
'transparent'
,
...
@@ -622,7 +615,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -622,7 +615,7 @@ export default class ApprovalMatrix extends Component {
}}
}}
onClick
=
{()
=>
this
.
setState
({
visibleCreate
:
true
})}
onClick
=
{()
=>
this
.
setState
({
visibleCreate
:
true
})}
>
>
<
img
src
=
{
Images
.
add
}
title
=
"Tambah Approval Matrix"
/>
<
img
src
=
{
Images
.
add
}
/
>
<
/button
>
<
/button
>
<
/a
>
<
/a
>
<
ReactTooltip
border
=
{
true
}
id
=
"create"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
<
ReactTooltip
border
=
{
true
}
id
=
"create"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
...
@@ -674,7 +667,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -674,7 +667,7 @@ export default class ApprovalMatrix extends Component {
style
=
{{
marginRight
:
20
}}
style
=
{{
marginRight
:
20
}}
>
>
<
div
style
=
{{
width
:
102
,
height
:
30
,
border
:
'solid 1px #354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
}}
>
<
div
style
=
{{
width
:
102
,
height
:
30
,
border
:
'solid 1px #354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
}}
>
<
span
style
=
{{
color
:
'#354960'
,
fontSize
:
11
}}
>
Bata
l
<
/span
>
<
span
style
=
{{
color
:
'#354960'
,
fontSize
:
11
}}
>
Cance
l
<
/span
>
<
/div
>
<
/div
>
<
/button
>
<
/button
>
<
button
<
button
...
@@ -683,7 +676,7 @@ export default class ApprovalMatrix extends Component {
...
@@ -683,7 +676,7 @@ export default class ApprovalMatrix extends Component {
style
=
{{}}
style
=
{{}}
>
>
<
div
style
=
{{
width
:
102
,
height
:
30
,
backgroundColor
:
'#354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
}}
>
<
div
style
=
{{
width
:
102
,
height
:
30
,
backgroundColor
:
'#354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
}}
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
S
impan
<
/span
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
S
ave
<
/span
>
<
/div
>
<
/div
>
<
/button
>
<
/button
>
<
/div
>
<
/div
>
...
...
src/container/ApprovalMatrix/CreateApprovalMatrix.js
View file @
e2d2e141
...
@@ -71,7 +71,7 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -71,7 +71,7 @@ export default class CreateApprovalMatrix extends Component {
};
};
this
.
setState
({
approvedBy
:
defaultProps
,
userData
:
response
.
data
.
data
})
this
.
setState
({
approvedBy
:
defaultProps
,
userData
:
response
.
data
.
data
})
}
else
{
}
else
{
alert
(
'
Pemberi Persetujuan
: '
+
response
.
data
.
message
)
alert
(
'
Approver
: '
+
response
.
data
.
message
)
}
}
})
})
}
}
...
@@ -92,7 +92,7 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -92,7 +92,7 @@ export default class CreateApprovalMatrix extends Component {
};
};
this
.
setState
({
types
:
typeProps
,
typeData
:
response
.
data
.
data
})
this
.
setState
({
types
:
typeProps
,
typeData
:
response
.
data
.
data
})
}
else
{
}
else
{
alert
(
'
Tipe Persetujuan
: '
+
response
.
data
.
message
)
alert
(
'
Approval Type
: '
+
response
.
data
.
message
)
}
}
})
})
}
}
...
@@ -157,22 +157,22 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -157,22 +157,22 @@ export default class CreateApprovalMatrix extends Component {
validasi
()
{
validasi
()
{
if
(
R
.
isNil
(
this
.
state
.
typeId
))
{
if
(
R
.
isNil
(
this
.
state
.
typeId
))
{
this
.
setState
({
errorType
:
true
,
msgErrType
:
'
Tipe Persetujuan tidak boleh kosong
'
})
this
.
setState
({
errorType
:
true
,
msgErrType
:
'
Approval Type is Required
'
})
}
}
else
if
(
R
.
isEmpty
(
this
.
state
.
order
))
{
else
if
(
R
.
isEmpty
(
this
.
state
.
order
))
{
this
.
setState
({
errorOrder
:
true
,
msgErrOrder
:
'Order
tidak boleh kosong
'
})
this
.
setState
({
errorOrder
:
true
,
msgErrOrder
:
'Order
is Required
'
})
}
}
else
if
(
R
.
isNil
(
this
.
state
.
userId
))
{
else
if
(
R
.
isNil
(
this
.
state
.
userId
))
{
// return alert("Pemberi Persetujuan tidak boleh kosong");
// return alert("Pemberi Persetujuan tidak boleh kosong");
this
.
setState
({
errorApproved
:
true
,
msgErrApproved
:
'
Pemberi Persetujuan tidak boleh kosong
'
})
this
.
setState
({
errorApproved
:
true
,
msgErrApproved
:
'
Approver is Required
'
})
}
}
else
if
(
R
.
isNil
(
this
.
state
.
operatorId
))
{
else
if
(
R
.
isNil
(
this
.
state
.
operatorId
))
{
this
.
setState
({
errorOperator
:
true
,
msgErrOperator
:
'Operator
tidak boleh kosong
'
})
this
.
setState
({
errorOperator
:
true
,
msgErrOperator
:
'Operator
is Required
'
})
}
}
else
if
(
R
.
isNil
(
this
.
state
.
startDate
))
{
else
if
(
R
.
isNil
(
this
.
state
.
startDate
))
{
this
.
setState
({
errorStartDate
:
true
,
msgErrorStartDate
:
'
Tanggal Mulai tidak boleh kosong
'
})
this
.
setState
({
errorStartDate
:
true
,
msgErrorStartDate
:
'
Start Date is Required
'
})
}
else
if
(
R
.
isNil
(
this
.
state
.
endDate
))
{
}
else
if
(
R
.
isNil
(
this
.
state
.
endDate
))
{
this
.
setState
({
errorEndDate
:
true
,
msgErrorEndDate
:
'
Tanggal Berakhir tidak boleh kosong
'
})
this
.
setState
({
errorEndDate
:
true
,
msgErrorEndDate
:
'
End Date is Required
'
})
}
else
{
}
else
{
console
.
log
(
'masuk'
);
console
.
log
(
'masuk'
);
let
payload
=
{
let
payload
=
{
...
@@ -195,7 +195,7 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -195,7 +195,7 @@ export default class CreateApprovalMatrix extends Component {
<
div
className
=
"popup-panel grid grid-2x main-color"
style
=
{{
height
:
64
,
borderTopRightRadius
:
8
,
borderTopLeftRadius
:
8
}}
>
<
div
className
=
"popup-panel grid grid-2x main-color"
style
=
{{
height
:
64
,
borderTopRightRadius
:
8
,
borderTopLeftRadius
:
8
}}
>
<
div
className
=
"col-1"
style
=
{{
maxWidth
:
"inherit"
,
display
:
'flex'
,
alignItems
:
'center'
}}
>
<
div
className
=
"col-1"
style
=
{{
maxWidth
:
"inherit"
,
display
:
'flex'
,
alignItems
:
'center'
}}
>
<
div
className
=
"popup-title"
>
<
div
className
=
"popup-title"
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
16
,
fontWeight
:
'bold'
}}
>
Tambah
Data
<
/span
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
16
,
fontWeight
:
'bold'
}}
>
Add
Data
<
/span
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
"col-2 content-right"
style
=
{{
maxWidth
:
"inherit"
,
alignSelf
:
'center'
}}
>
<
div
className
=
"col-2 content-right"
style
=
{{
maxWidth
:
"inherit"
,
alignSelf
:
'center'
}}
>
...
@@ -243,7 +243,7 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -243,7 +243,7 @@ export default class CreateApprovalMatrix extends Component {
renderInput
=
{(
params
)
=>
renderInput
=
{(
params
)
=>
<
TextField
<
TextField
{...
params
}
{...
params
}
label
=
"
Tipe Persetujuan
"
label
=
"
Approval Type
"
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
''
)}
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
''
)}
error
=
{
this
.
state
.
errorType
}
error
=
{
this
.
state
.
errorType
}
helperText
=
{
this
.
state
.
msgErrType
}
helperText
=
{
this
.
state
.
msgErrType
}
...
@@ -299,7 +299,7 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -299,7 +299,7 @@ export default class CreateApprovalMatrix extends Component {
debug
debug
renderInput
=
{(
params
)
=>
renderInput
=
{(
params
)
=>
<
TextField
{...
params
}
<
TextField
{...
params
}
label
=
"
Pemberi Persetujuan
"
label
=
"
Approver
"
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
''
)}
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
''
)}
error
=
{
this
.
state
.
errorApproved
}
error
=
{
this
.
state
.
errorApproved
}
helperText
=
{
this
.
state
.
msgErrApproved
}
helperText
=
{
this
.
state
.
msgErrApproved
}
...
@@ -353,7 +353,7 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -353,7 +353,7 @@ export default class CreateApprovalMatrix extends Component {
<
DatePicker
<
DatePicker
margin
=
"normal"
margin
=
"normal"
id
=
"startDate"
id
=
"startDate"
label
=
"
Berlaku Mulai
"
label
=
"
Start Date
"
format
=
"dd MMMM yyyy"
format
=
"dd MMMM yyyy"
value
=
{
this
.
state
.
startDate
==
""
?
null
:
this
.
state
.
startDate
}
value
=
{
this
.
state
.
startDate
==
""
?
null
:
this
.
state
.
startDate
}
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
'start_date'
)}
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
'start_date'
)}
...
@@ -382,7 +382,7 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -382,7 +382,7 @@ export default class CreateApprovalMatrix extends Component {
<
DatePicker
<
DatePicker
margin
=
"normal"
margin
=
"normal"
id
=
"endDate"
id
=
"endDate"
label
=
"
Berlaku Hingga
"
label
=
"
End Date
"
format
=
"dd MMMM yyyy"
format
=
"dd MMMM yyyy"
value
=
{
this
.
state
.
endDate
==
""
?
null
:
this
.
state
.
endDate
}
value
=
{
this
.
state
.
endDate
==
""
?
null
:
this
.
state
.
endDate
}
error
=
{
this
.
state
.
errorEndDate
}
error
=
{
this
.
state
.
errorEndDate
}
...
@@ -416,7 +416,7 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -416,7 +416,7 @@ export default class CreateApprovalMatrix extends Component {
id
=
"status"
id
=
"status"
label
=
"Status"
label
=
"Status"
disabled
disabled
defaultValue
=
{
"A
ktif
"
}
defaultValue
=
{
"A
ctive
"
}
inputProps
=
{{
inputProps
=
{{
style
:
{
style
:
{
fontSize
:
11
fontSize
:
11
...
@@ -445,19 +445,19 @@ export default class CreateApprovalMatrix extends Component {
...
@@ -445,19 +445,19 @@ export default class CreateApprovalMatrix extends Component {
</div> */
}
</div> */
}
<
/div
>
<
/div
>
<
div
className
=
"margin-top-10px"
style
=
{{
padding
:
10
,
paddingLeft
:
0
}}
>
<
div
className
=
"margin-top-10px"
style
=
{{
padding
:
10
,
paddingLeft
:
0
}}
>
<
Typography
style
=
{{
fontSize
:
11
}}
>
{
`
Dibu
at :
${
format
(
this
.
state
.
date
,
'dd MMMM yyyy'
,
{
locale
:
localeID
})}
`
}
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
11
}}
>
{
`
Created
at :
${
format
(
this
.
state
.
date
,
'dd MMMM yyyy'
,
{
locale
:
localeID
})}
`
}
<
/Typography
>
{
/* <Typography style={{ fontSize: 11 }}>Diubah : Admin - 21 Jul 2020, 18:45</Typography> */
}
{
/* <Typography style={{ fontSize: 11 }}>Diubah : Admin - 21 Jul 2020, 18:45</Typography> */
}
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
"border-top grid grid-2x"
style
=
{{
height
:
56
,
backgroundColor
:
'#f5f5f5'
,
paddingLeft
:
20
,
paddingRight
:
20
}}
>
<
div
className
=
"border-top grid grid-2x"
style
=
{{
height
:
56
,
backgroundColor
:
'#f5f5f5'
,
paddingLeft
:
20
,
paddingRight
:
20
}}
>
<
div
className
=
"column-1"
style
=
{{
alignSelf
:
'center'
}}
>
<
div
className
=
"column-1"
style
=
{{
alignSelf
:
'center'
}}
>
<
div
onClick
=
{()
=>
this
.
props
.
onClickClose
()}
style
=
{{
width
:
102
,
height
:
30
,
border
:
'solid 1px #354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
div
onClick
=
{()
=>
this
.
props
.
onClickClose
()}
style
=
{{
width
:
102
,
height
:
30
,
border
:
'solid 1px #354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
span
style
=
{{
color
:
'#354960'
,
fontSize
:
11
}}
>
Bata
l
<
/span
>
<
span
style
=
{{
color
:
'#354960'
,
fontSize
:
11
}}
>
Cance
l
<
/span
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
"column-2"
style
=
{{
display
:
'flex'
,
justifyContent
:
'flex-end'
,
alignItems
:
'center'
}}
>
<
div
className
=
"column-2"
style
=
{{
display
:
'flex'
,
justifyContent
:
'flex-end'
,
alignItems
:
'center'
}}
>
<
div
onClick
=
{()
=>
this
.
validasi
()}
style
=
{{
width
:
102
,
height
:
30
,
backgroundColor
:
'#354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
div
onClick
=
{()
=>
this
.
validasi
()}
style
=
{{
width
:
102
,
height
:
30
,
backgroundColor
:
'#354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
S
impan
<
/span
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
S
ave
<
/span
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
...
...
src/container/ApprovalMatrix/EditApprovalMatrix.js
View file @
e2d2e141
...
@@ -132,7 +132,7 @@ export default class EditApprovalMatrix extends Component {
...
@@ -132,7 +132,7 @@ export default class EditApprovalMatrix extends Component {
};
};
this
.
setState
({
types
:
typeProps
,
typeData
:
response
.
data
.
data
,
getTypes
:
index
==
-
1
?
typeData
[
0
]:
typeData
[
index
]
})
this
.
setState
({
types
:
typeProps
,
typeData
:
response
.
data
.
data
,
getTypes
:
index
==
-
1
?
typeData
[
0
]:
typeData
[
index
]
})
}
else
{
}
else
{
alert
(
'
Tipe Persetujuan
: '
+
response
.
data
.
message
)
alert
(
'
Approval Type
: '
+
response
.
data
.
message
)
}
}
})
})
}
}
...
@@ -176,21 +176,21 @@ export default class EditApprovalMatrix extends Component {
...
@@ -176,21 +176,21 @@ export default class EditApprovalMatrix extends Component {
validasi
()
{
validasi
()
{
if
(
R
.
isNil
(
this
.
state
.
getTypes
))
{
if
(
R
.
isNil
(
this
.
state
.
getTypes
))
{
this
.
setState
({
errorType
:
true
,
msgErrType
:
'
Tipe Persetujuan tidak boleh kosong
'
})
this
.
setState
({
errorType
:
true
,
msgErrType
:
'
Approval Type is Required
'
})
}
}
else
if
(
R
.
isEmpty
(
this
.
state
.
order
))
{
else
if
(
R
.
isEmpty
(
this
.
state
.
order
))
{
this
.
setState
({
errorOrder
:
true
,
msgErrOrder
:
'Order
tidak boleh kosong
'
})
this
.
setState
({
errorOrder
:
true
,
msgErrOrder
:
'Order
is Required
'
})
}
}
else
if
(
R
.
isNil
(
this
.
state
.
getApprovedBy
))
{
else
if
(
R
.
isNil
(
this
.
state
.
getApprovedBy
))
{
this
.
setState
({
errorApproved
:
true
,
msgErrApproved
:
'
Pemberi Persetujuan tidak boleh kosong
'
})
this
.
setState
({
errorApproved
:
true
,
msgErrApproved
:
'
Approver is Required
'
})
}
}
else
if
(
R
.
isNil
(
this
.
state
.
getOperators
))
{
else
if
(
R
.
isNil
(
this
.
state
.
getOperators
))
{
this
.
setState
({
errorOperator
:
true
,
msgErrOperator
:
'Operator
tidak boleh kosong
'
})
this
.
setState
({
errorOperator
:
true
,
msgErrOperator
:
'Operator
is Required
'
})
}
}
else
if
(
R
.
isEmpty
(
this
.
state
.
startDate
))
{
else
if
(
R
.
isEmpty
(
this
.
state
.
startDate
))
{
this
.
setState
({
errorStartDate
:
true
,
msgErrorStartDate
:
'
Tanggal Mulai tidak boleh kosong
'
})
this
.
setState
({
errorStartDate
:
true
,
msgErrorStartDate
:
'
Start Date is Required
'
})
}
else
if
(
R
.
isEmpty
(
this
.
state
.
endDate
))
{
}
else
if
(
R
.
isEmpty
(
this
.
state
.
endDate
))
{
this
.
setState
({
errorEndDate
:
true
,
msgErrorEndDate
:
'
Tanggal Berakhir tidak boleh kosong
'
})
this
.
setState
({
errorEndDate
:
true
,
msgErrorEndDate
:
'
End Date is Required
'
})
}
else
{
}
else
{
console
.
log
(
'masuk'
);
console
.
log
(
'masuk'
);
if
(
this
.
props
.
type
==
'edit'
)
{
if
(
this
.
props
.
type
==
'edit'
)
{
...
@@ -264,7 +264,7 @@ export default class EditApprovalMatrix extends Component {
...
@@ -264,7 +264,7 @@ export default class EditApprovalMatrix extends Component {
onChange
=
{(
event
,
newInputValue
)
=>
this
.
setState
({
getTypes
:
newInputValue
},
()
=>
this
.
clearError
())}
onChange
=
{(
event
,
newInputValue
)
=>
this
.
setState
({
getTypes
:
newInputValue
},
()
=>
this
.
clearError
())}
renderInput
=
{(
params
)
=>
renderInput
=
{(
params
)
=>
<
TextField
{...
params
}
<
TextField
{...
params
}
label
=
"
Tipe Persetujuan
"
label
=
"
Approval Type
"
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
''
)}
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
''
)}
error
=
{
this
.
state
.
errorType
}
error
=
{
this
.
state
.
errorType
}
helperText
=
{
this
.
state
.
msgErrType
}
helperText
=
{
this
.
state
.
msgErrType
}
...
@@ -319,7 +319,7 @@ export default class EditApprovalMatrix extends Component {
...
@@ -319,7 +319,7 @@ export default class EditApprovalMatrix extends Component {
onChange
=
{(
event
,
newInputValue
)
=>
this
.
setState
({
getApprovedBy
:
newInputValue
},
()
=>
this
.
clearError
())}
onChange
=
{(
event
,
newInputValue
)
=>
this
.
setState
({
getApprovedBy
:
newInputValue
},
()
=>
this
.
clearError
())}
renderInput
=
{(
params
)
=>
renderInput
=
{(
params
)
=>
<
TextField
{...
params
}
<
TextField
{...
params
}
label
=
"
Pemberi Persetujuan
"
label
=
"
Approver
"
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
''
)}
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
''
)}
error
=
{
this
.
state
.
errorApproved
}
error
=
{
this
.
state
.
errorApproved
}
helperText
=
{
this
.
state
.
msgErrApproved
}
helperText
=
{
this
.
state
.
msgErrApproved
}
...
@@ -373,7 +373,7 @@ export default class EditApprovalMatrix extends Component {
...
@@ -373,7 +373,7 @@ export default class EditApprovalMatrix extends Component {
<
DatePicker
<
DatePicker
margin
=
"normal"
margin
=
"normal"
id
=
"startDate"
id
=
"startDate"
label
=
"
Berlaku Mulai
"
label
=
"
Start Date
"
format
=
"dd MMMM yyyy"
format
=
"dd MMMM yyyy"
value
=
{
this
.
state
.
startDate
}
value
=
{
this
.
state
.
startDate
}
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
'start_date'
)}
onChange
=
{(
e
)
=>
this
.
handleChange
(
e
,
'start_date'
)}
...
@@ -402,7 +402,7 @@ export default class EditApprovalMatrix extends Component {
...
@@ -402,7 +402,7 @@ export default class EditApprovalMatrix extends Component {
<
DatePicker
<
DatePicker
margin
=
"normal"
margin
=
"normal"
id
=
"endDate"
id
=
"endDate"
label
=
"
Berlaku Hingga
"
label
=
"
End Date
"
format
=
"dd MMMM yyyy"
format
=
"dd MMMM yyyy"
error
=
{
this
.
state
.
errorEndDate
}
error
=
{
this
.
state
.
errorEndDate
}
helperText
=
{
this
.
state
.
msgErrorEndDate
}
helperText
=
{
this
.
state
.
msgErrorEndDate
}
...
@@ -478,11 +478,11 @@ export default class EditApprovalMatrix extends Component {
...
@@ -478,11 +478,11 @@ export default class EditApprovalMatrix extends Component {
<
/div
>
<
/div
>
<
div
className
=
"margin-top-10px"
style
=
{{
padding
:
10
,
paddingLeft
:
0
,
borderRadius
:
5
}}
>
<
div
className
=
"margin-top-10px"
style
=
{{
padding
:
10
,
paddingLeft
:
0
,
borderRadius
:
5
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
Typography
style
=
{{
fontSize
:
11
,
width
:
'20%'
}}
>
Dibuat
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
11
,
width
:
'20%'
}}
>
Created
by
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
11
}}
>
:
{
this
.
state
.
created
}
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
11
}}
>
:
{
this
.
state
.
created
}
<
/Typography
>
<
/div
>
<
/div
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
Typography
style
=
{{
fontSize
:
11
,
width
:
'20%'
}}
>
Diubah
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
11
,
width
:
'20%'
}}
>
Updated
by
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
11
}}
>
:
{
this
.
state
.
updated
==
-
null
?
""
:
this
.
state
.
updated
}
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
11
}}
>
:
{
this
.
state
.
updated
==
-
null
?
""
:
this
.
state
.
updated
}
<
/Typography
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
...
@@ -490,12 +490,12 @@ export default class EditApprovalMatrix extends Component {
...
@@ -490,12 +490,12 @@ export default class EditApprovalMatrix extends Component {
<
div
className
=
"border-top grid grid-2x"
style
=
{{
height
:
56
,
backgroundColor
:
'#f5f5f5'
,
paddingLeft
:
20
,
paddingRight
:
20
}}
>
<
div
className
=
"border-top grid grid-2x"
style
=
{{
height
:
56
,
backgroundColor
:
'#f5f5f5'
,
paddingLeft
:
20
,
paddingRight
:
20
}}
>
<
div
className
=
"column-1"
style
=
{{
alignSelf
:
'center'
}}
>
<
div
className
=
"column-1"
style
=
{{
alignSelf
:
'center'
}}
>
<
div
onClick
=
{()
=>
this
.
props
.
onClickClose
()}
style
=
{{
width
:
102
,
height
:
30
,
border
:
'solid 1px #354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
div
onClick
=
{()
=>
this
.
props
.
onClickClose
()}
style
=
{{
width
:
102
,
height
:
30
,
border
:
'solid 1px #354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
span
style
=
{{
color
:
'#354960'
,
fontSize
:
11
}}
>
Bata
l
<
/span
>
<
span
style
=
{{
color
:
'#354960'
,
fontSize
:
11
}}
>
Cance
l
<
/span
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
"column-2"
style
=
{{
display
:
'flex'
,
justifyContent
:
'flex-end'
,
alignItems
:
'center'
}}
>
<
div
className
=
"column-2"
style
=
{{
display
:
'flex'
,
justifyContent
:
'flex-end'
,
alignItems
:
'center'
}}
>
<
div
onClick
=
{()
=>
this
.
validasi
()}
style
=
{{
width
:
102
,
height
:
30
,
backgroundColor
:
'#354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
div
onClick
=
{()
=>
this
.
validasi
()}
style
=
{{
width
:
102
,
height
:
30
,
backgroundColor
:
'#354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
S
impan
<
/span
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
S
ave
<
/span
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
...
...
src/container/ApprovalMatrix/VisualisasiAM.js
View file @
e2d2e141
...
@@ -163,16 +163,16 @@ export default class VisualisasiAM extends Component {
...
@@ -163,16 +163,16 @@ export default class VisualisasiAM extends Component {
<
div
class
=
"main-color"
style
=
{{
height
:
199
,
width
:
'100%'
}}
/
>
<
div
class
=
"main-color"
style
=
{{
height
:
199
,
width
:
'100%'
}}
/
>
<
div
>
<
div
>
<
div
style
=
{{
display
:
'flex'
,
paddingRight
:
25
,
paddingLeft
:
25
,
marginTop
:
-
150
}}
>
<
div
style
=
{{
display
:
'flex'
,
paddingRight
:
25
,
paddingLeft
:
25
,
marginTop
:
-
150
}}
>
<
label
style
=
{{
color
:
'white'
,
width
:
'20%'
,
fontSize
:
16
,
paddingTop
:
8
}}
>
Visuali
sasi
<
/label
>
<
label
style
=
{{
color
:
'white'
,
width
:
'20%'
,
fontSize
:
16
,
paddingTop
:
8
}}
>
Visuali
zation
<
/label
>
<
/div
>
<
/div
>
<
div
style
=
{{
display
:
'flex'
,
paddingRight
:
25
,
paddingLeft
:
25
}}
>
<
div
style
=
{{
display
:
'flex'
,
paddingRight
:
25
,
paddingLeft
:
25
}}
>
<
label
style
=
{{
color
:
'#51c6ea'
,
width
:
'20%'
,
fontSize
:
11
}}
>
Master
Data
/
Approval
Matrix
/
<
label
style
=
{{
color
:
'#51c6ea'
,
width
:
'20%'
,
fontSize
:
11
}}
>
Master
Data
/
Approval
Matrix
/
<
span
style
=
{{
color
:
'white'
,
width
:
'20%'
,
fontSize
:
11
}}
>
Visuali
sasi
<
/span>
<
span
style
=
{{
color
:
'white'
,
width
:
'20%'
,
fontSize
:
11
}}
>
Visuali
zation
<
/span>
<
/label
>
<
/label
>
<
/div
>
<
/div
>
<
div
style
=
{{
padding
:
25
,
width
:
'100%'
}}
>
<
div
style
=
{{
padding
:
25
,
width
:
'100%'
}}
>
<
div
style
=
{{
width
:
'100%'
,
padding
:
25
,
backgroundColor
:
'white'
,
borderRadius
:
6
,
border
:
'solid 1px #c4c4c4'
}}
>
<
div
style
=
{{
width
:
'100%'
,
padding
:
25
,
backgroundColor
:
'white'
,
borderRadius
:
6
,
border
:
'solid 1px #c4c4c4'
}}
>
<
label
style
=
{{
color
:
'#4b4b4b'
,
fontSize
:
'16px'
,
fontWeight
:
'bold'
}}
>
Hirarki
Persetujuan
<
/label
>
<
label
style
=
{{
color
:
'#4b4b4b'
,
fontSize
:
'16px'
,
fontWeight
:
'bold'
}}
>
Approval
Hierarchy
<
/label
>
<
div
className
=
""
style
=
{{
width
:
250
,
marginTop
:
8
,
marginBottom
:
28
}}
>
<
div
className
=
""
style
=
{{
width
:
250
,
marginTop
:
8
,
marginBottom
:
28
}}
>
<
Autocomplete
<
Autocomplete
{...
this
.
state
.
types
}
{...
this
.
state
.
types
}
...
@@ -181,7 +181,7 @@ export default class VisualisasiAM extends Component {
...
@@ -181,7 +181,7 @@ export default class VisualisasiAM extends Component {
this
.
handleInputChange
()
this
.
handleInputChange
()
})}
})}
disableClearable
disableClearable
renderInput
=
{(
params
)
=>
<
TextField
{...
params
}
label
=
"
Tipe Persetujuan
"
margin
=
"normal"
/>
}
renderInput
=
{(
params
)
=>
<
TextField
{...
params
}
label
=
"
Approval Type
"
margin
=
"normal"
/>
}
/
>
/
>
<
/div
>
<
/div
>
<
ReactDragListView
{...
dragProps
}
>
<
ReactDragListView
{...
dragProps
}
>
...
@@ -202,14 +202,14 @@ export default class VisualisasiAM extends Component {
...
@@ -202,14 +202,14 @@ export default class VisualisasiAM extends Component {
<
/div
>
<
/div
>
<
div
className
=
"row"
style
=
{{
display
:
'flex'
,
flexDirection
:
'row'
,
justifyContent
:
'space-between'
,
paddingRight
:
15
,
paddingLeft
:
15
,
paddingBottom
:
25
}}
>
<
div
className
=
"row"
style
=
{{
display
:
'flex'
,
flexDirection
:
'row'
,
justifyContent
:
'space-between'
,
paddingRight
:
15
,
paddingLeft
:
15
,
paddingBottom
:
25
}}
>
<
div
onClick
=
{()
=>
this
.
props
.
onClickClose
()}
style
=
{{
width
:
102
,
height
:
30
,
marginLeft
:
25
,
backgroundColor
:
'dodgerblue'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
div
onClick
=
{()
=>
this
.
props
.
onClickClose
()}
style
=
{{
width
:
102
,
height
:
30
,
marginLeft
:
25
,
backgroundColor
:
'dodgerblue'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
Kembali
<
/span
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
Back
<
/span
>
<
/div
>
<
/div
>
<
div
className
=
"row"
style
=
{{
float
:
'right'
,
marginRight
:
25
}}
>
<
div
className
=
"row"
style
=
{{
float
:
'right'
,
marginRight
:
25
}}
>
<
div
onClick
=
{()
=>
this
.
props
.
onClickClose
()}
style
=
{{
width
:
102
,
height
:
30
,
border
:
'solid 1px #354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
div
onClick
=
{()
=>
this
.
props
.
onClickClose
()}
style
=
{{
width
:
102
,
height
:
30
,
border
:
'solid 1px #354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
span
style
=
{{
color
:
'#354960'
,
fontSize
:
11
}}
>
Bata
l
<
/span
>
<
span
style
=
{{
color
:
'#354960'
,
fontSize
:
11
}}
>
Cance
l
<
/span
>
<
/div
>
<
/div
>
<
div
onClick
=
{()
=>
this
.
handleSave
()}
style
=
{{
width
:
102
,
height
:
30
,
marginLeft
:
25
,
backgroundColor
:
'#354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
div
onClick
=
{()
=>
this
.
handleSave
()}
style
=
{{
width
:
102
,
height
:
30
,
marginLeft
:
25
,
backgroundColor
:
'#354960'
,
borderRadius
:
5
,
alignItems
:
'center'
,
display
:
'flex'
,
justifyContent
:
'center'
,
cursor
:
"pointer"
}}
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
S
impan
<
/span
>
<
span
style
=
{{
color
:
'#fff'
,
fontSize
:
11
}}
>
S
ave
<
/span
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
...
...
src/container/BudgetTahunan.js
View file @
e2d2e141
...
@@ -7,6 +7,7 @@ import api from '../api';
...
@@ -7,6 +7,7 @@ import api from '../api';
import
Autocomplete
from
'@material-ui/lab/Autocomplete'
;
import
Autocomplete
from
'@material-ui/lab/Autocomplete'
;
import
{
titleCase
}
from
'../library/Utils'
;
import
{
titleCase
}
from
'../library/Utils'
;
import
ProfitLoss
from
'./BudgetTahunan/ProfitLoss'
;
import
ProfitLoss
from
'./BudgetTahunan/ProfitLoss'
;
import
TaxPlanning
from
'./BudgetTahunan/TaxPlanning'
;
export
default
class
BudgetTahunan
extends
Component
{
export
default
class
BudgetTahunan
extends
Component
{
constructor
(
props
)
{
constructor
(
props
)
{
...
@@ -89,6 +90,15 @@ export default class BudgetTahunan extends Component {
...
@@ -89,6 +90,15 @@ export default class BudgetTahunan extends Component {
visibleFAM
:
false
,
visibleFAM
:
false
,
visibleTP
:
false
visibleTP
:
false
})
})
}
else
if
(
item
===
'Tax Planning'
)
{
this
.
setState
({
visibleBudgetTahunan
:
false
,
visibleBS
:
false
,
visiblePL
:
false
,
visibleCAT
:
false
,
visibleFAM
:
false
,
visibleTP
:
true
})
}
}
}
}
...
@@ -282,6 +292,9 @@ export default class BudgetTahunan extends Component {
...
@@ -282,6 +292,9 @@ export default class BudgetTahunan extends Component {
{
this
.
state
.
visiblePL
&&
(
{
this
.
state
.
visiblePL
&&
(
<
ProfitLoss
/>
<
ProfitLoss
/>
)}
)}
{
this
.
state
.
visibleTP
&&
(
<
TaxPlanning
/>
)}
<
/div
>
<
/div
>
);
);
}
}
...
...
src/container/BudgetTahunan/TaxPlanning.js
View file @
e2d2e141
...
@@ -2,6 +2,8 @@ import React, { Component } from 'react';
...
@@ -2,6 +2,8 @@ import React, { Component } from 'react';
import
{
Typography
,
Paper
,
createMuiTheme
,
MuiThemeProvider
,
TableCell
,
FormControlLabel
,
TextField
,
Input
}
from
'@material-ui/core'
;
import
{
Typography
,
Paper
,
createMuiTheme
,
MuiThemeProvider
,
TableCell
,
FormControlLabel
,
TextField
,
Input
}
from
'@material-ui/core'
;
import
MUIDataTable
from
'mui-datatables'
;
import
MUIDataTable
from
'mui-datatables'
;
import
NumberFormat
from
'react-number-format'
;
import
NumberFormat
from
'react-number-format'
;
import
Images
from
'../../assets/Images'
;
import
ReactTooltip
from
'react-tooltip'
;
var
ct
=
require
(
"../../library/CustomTable"
);
var
ct
=
require
(
"../../library/CustomTable"
);
const
getMuiTheme
=
()
=>
createMuiTheme
(
ct
.
customTable
());
const
getMuiTheme
=
()
=>
createMuiTheme
(
ct
.
customTable
());
...
@@ -253,35 +255,124 @@ export default class BalanceSheet extends Component {
...
@@ -253,35 +255,124 @@ export default class BalanceSheet extends Component {
[
"Trade Receivables - Third Party"
,
"142,668"
,
"77,480"
],
[
"Trade Receivables - Third Party"
,
"142,668"
,
"77,480"
],
]
]
return
(
return
(
<
div
style
=
{{
height
:
this
.
props
.
height
,
backgroundColor
:
'#f8f8f8'
,
marginBottom
:
100
,
minHeight
:
1000
}}
>
<
div
style
=
{{
height
:
this
.
props
.
height
}}
>
<
div
style
=
{{
height
:
78
,
backgroundColor
:
'#354960'
,
flex
:
1
,
display
:
'flex'
,
alignItems
:
'center'
,
paddingLeft
:
20
}}
>
<
div
class
=
"main-color"
style
=
{{
height
:
279
,
width
:
'100%'
}}
/
>
<
Typography
style
=
{{
fontSize
:
'16px'
,
color
:
'white'
}}
>
Budget
Tahunan
-
Tax
Planning
<
/Typography
>
<
div
>
<
/div
>
<
div
style
=
{{
alignItems
:
'center'
,
paddingLeft
:
25
,
marginTop
:
-
229
}}
>
<
div
style
=
{{
flex
:
1
,
padding
:
20
,
width
:
'100%'
}}
>
<
Typography
style
=
{{
fontSize
:
'16px'
,
color
:
'white'
}}
>
Master
Budget
-
Tax
Planning
<
/Typography
>
<
Paper
style
=
{{
paddingTop
:
10
}}
>
<
/div
>
<
div
style
=
{{
borderBottom
:
'solid 1px #c4c4c4'
}}
>
<
div
style
=
{{
display
:
'flex'
,
flexDirection
:
'row'
,
justifyContent
:
'space-between'
,
paddingRight
:
25
,
paddingLeft
:
25
,
marginTop
:
45
}}
>
<
Typography
style
=
{{
fontSize
:
'12px'
,
fontWeight
:
'bold'
,
color
:
'#4b4b4b'
,
margin
:
10
}}
>
Budget
Tahunan
<
/Typography
>
{
/* <label style={{ width: '20%', color: 'white', fontSize: 16, alignSelf: 'center', paddingTop: 8 }}>Master Budget - Tax Planning</label> */
}
<
div
>
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'white'
}}
>
PT
.
XYZ
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'white'
}}
>
Periode
:
2021
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'white'
}}
>
in
IDR
mn
<
/Typography
>
<
/div
>
<
/div
>
<
div
style
=
{{
padding
:
20
}}
>
<
div
style
=
{{
width
:
'30%'
,
justifyContent
:
'flex-end'
,
display
:
'flex'
,
flexFlow
:
'wrap'
}}
>
<
div
>
<
a
data
-
tip
=
{
'Download Template'
}
data
-
for
=
"template"
>
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'#4b4b4b'
}}
>
PT
.
XYZ
<
/Typography
>
<
button
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'#4b4b4b'
}}
>
Periode
:
2021
<
/Typography
>
style
=
{{
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'#4b4b4b'
}}
>
in
IDR
mn
<
/Typography
>
backgroundColor
:
'transparent'
,
cursor
:
'pointer'
,
borderColor
:
'transparent'
,
padding
:
0
,
margin
:
5
}}
onClick
=
{()
=>
this
.
downloadFile
()}
>
<
img
src
=
{
Images
.
template
}
/
>
<
/button
>
<
/a
>
<
ReactTooltip
border
=
{
true
}
id
=
"template"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
<
a
data
-
tip
=
{
'Upload'
}
data
-
for
=
"upload"
>
<
button
style
=
{{
backgroundColor
:
'transparent'
,
cursor
:
'pointer'
,
borderColor
:
'transparent'
,
marginLeft
:
16
,
padding
:
0
,
margin
:
5
}}
onClick
=
{()
=>
this
.
setState
({
visibleUpload
:
true
})}
>
<
img
src
=
{
Images
.
upload
}
/
>
<
/button
>
<
/a
>
<
ReactTooltip
border
=
{
true
}
id
=
"upload"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
<
a
data
-
tip
=
{
'Download'
}
data
-
for
=
"download"
>
<
button
style
=
{{
backgroundColor
:
'transparent'
,
cursor
:
'pointer'
,
borderColor
:
'transparent'
,
marginLeft
:
16
,
padding
:
0
,
margin
:
5
}}
onClick
=
{()
=>
this
.
downloadDataTable
()}
>
<
img
src
=
{
Images
.
download
}
/
>
<
/button
>
<
/a
>
<
ReactTooltip
border
=
{
true
}
id
=
"download"
place
=
"bottom"
type
=
"light"
effect
=
"solid"
/>
<
/div
>
<
/div
>
<
div
style
=
{{
padding
:
25
,
width
:
'100%'
}}
>
<
MuiThemeProvider
theme
=
{
getMuiTheme
()}
>
<
MUIDataTable
data
=
{
dataTable
}
columns
=
{
columns
}
options
=
{
options
}
/
>
<
/MuiThemeProvider
>
<
/div
>
<
div
className
=
"grid grid-2x"
style
=
{{
marginBottom
:
20
,
paddingRight
:
10
,
paddingLeft
:
10
}}
>
<
div
className
=
"col-1"
>
<
div
style
=
{{
backgroundColor
:
'#019ce5'
,
width
:
105
,
height
:
25
,
borderRadius
:
3
,
justifyContent
:
'center'
,
display
:
'flex'
,
alignItems
:
'center'
}}
>
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'#fff'
,
textAlign
:
'center'
}}
>
Kembali
<
/Typography
>
<
/div
>
<
/div
>
<
/div
>
<
div
style
=
{{
marginTop
:
20
,
width
:
'100%'
}}
>
<
div
className
=
"col-2"
style
=
{{
display
:
'flex'
,
justifyContent
:
'flex-end'
,
maxWidth
:
'100%'
}}
>
<
MuiThemeProvider
theme
=
{
getMuiTheme
()}
>
<
div
style
=
{{
backgroundColor
:
'#fff'
,
width
:
105
,
height
:
25
,
borderRadius
:
3
,
justifyContent
:
'center'
,
display
:
'flex'
,
alignItems
:
'center'
,
border
:
'solid 1px #354960'
,
marginRight
:
20
}}
>
<
MUIDataTable
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'#354960'
,
textAlign
:
'center'
}}
>
Batal
<
/Typography
>
data
=
{
dataTable
}
<
/div
>
columns
=
{
columns
}
<
div
style
=
{{
backgroundColor
:
'#354960'
,
width
:
105
,
height
:
25
,
borderRadius
:
3
,
justifyContent
:
'center'
,
display
:
'flex'
,
alignItems
:
'center'
}}
>
options
=
{
options
}
<
Typography
style
=
{{
fontSize
:
'11px'
,
color
:
'#fff'
,
textAlign
:
'center'
}}
>
Simpan
<
/Typography
>
/
>
<
/MuiThemeProvider
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/
Paper
>
<
/
div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
// <div style={{ height: this.props.height, backgroundColor: '#f8f8f8', marginBottom: 100, minHeight: 1000 }}>
// <div className={"main-color"} style={{ height: 78, flex: 1, display: 'flex', alignItems: 'center', paddingLeft: 20 }}>
// <Typography style={{ fontSize: '16px', color: 'white' }}>Budget Tahunan - Tax Planning</Typography>
// </div>
// <div style={{ flex: 1, padding: 20, width: '100%' }}>
// {/* <Paper style={{ paddingTop: 10 }}>
// <div style={{ borderBottom: 'solid 1px #c4c4c4' }} >
// <Typography style={{ fontSize: '12px', fontWeight: 'bold', color: '#4b4b4b', margin: 10 }}>Budget Tahunan</Typography>
// </div> */}
// <div style={{ padding: 20 }}>
// <div>
// <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>PT. XYZ</Typography>
// <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>Periode : 2021</Typography>
// <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>in IDR mn</Typography>
// </div>
// <div style={{ marginTop: 20, width: '100%' }}>
// <MuiThemeProvider theme={getMuiTheme()}>
// <MUIDataTable
// data={dataTable}
// columns={columns}
// options={options}
// />
// </MuiThemeProvider>
// </div>
// </div>
// {/* </Paper> */}
// </div>
// </div>
);
);
}
}
}
}
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