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
4faa8a8b
Commit
4faa8a8b
authored
Oct 13, 2020
by
d.arizona
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://103.44.149.204/d.arizona/tia-dev
into didam
parents
32de7146
397067a4
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
201 additions
and
78 deletions
+201
-78
index.js
src/api/index.js
+5
-1
FixedAssetsMovement.js
src/container/BudgetTahunan/FixedAssetsMovement.js
+8
-3
TaxPlanning.js
src/container/BudgetTahunan/TaxPlanning.js
+4
-7
HomePage.js
src/container/HomePage.js
+87
-11
OperatingIndicator.js
src/container/OprIndicator/OperatingIndicator.js
+3
-2
OutlookPA.js
src/container/OutlookPA.js
+94
-54
No files found.
src/api/index.js
View file @
4faa8a8b
...
@@ -210,6 +210,8 @@ const create = (type = "") => {
...
@@ -210,6 +210,8 @@ const create = (type = "") => {
const
getIdDeleteFromExcel
=
(
body
)
=>
api
.
post
(
'transaction/master_budget/delete_from_excel'
,
body
)
const
getIdDeleteFromExcel
=
(
body
)
=>
api
.
post
(
'transaction/master_budget/delete_from_excel'
,
body
)
const
getDashboard
=
(
body
)
=>
api
.
get
(
'transaction/get_dashboard'
)
const
getDashboard
=
(
body
)
=>
api
.
get
(
'transaction/get_dashboard'
)
const
historyApproval
=
(
body
)
=>
api
.
post
(
'transaction/master_budget/history_approval'
,
body
)
const
historyApproval
=
(
body
)
=>
api
.
post
(
'transaction/master_budget/history_approval'
,
body
)
const
getDashboardUser
=
()
=>
api
.
get
(
'transaction/get_dashboard_sub_co'
)
const
getDashboardMB
=
(
body
)
=>
api
.
get
(
'transaction/get_dashboard_table'
)
const
getOpetratingIndID
=
(
body
)
=>
api
.
post
(
'transaction/operating_indicator/get_operating_indicator_id'
,
body
)
const
getOpetratingIndID
=
(
body
)
=>
api
.
post
(
'transaction/operating_indicator/get_operating_indicator_id'
,
body
)
const
getSubmitOI
=
(
body
)
=>
api
.
post
(
'transaction/operating_indicator/get_latest_periode_submit'
,
body
)
const
getSubmitOI
=
(
body
)
=>
api
.
post
(
'transaction/operating_indicator/get_latest_periode_submit'
,
body
)
...
@@ -393,6 +395,7 @@ const create = (type = "") => {
...
@@ -393,6 +395,7 @@ const create = (type = "") => {
getIdDeleteFromExcel
,
getIdDeleteFromExcel
,
getDashboard
,
getDashboard
,
historyApproval
,
historyApproval
,
getDashboardMB
,
checkApprover
,
checkApprover
,
approvalSubmission
,
approvalSubmission
,
getCompanySubmitted
,
getCompanySubmitted
,
...
@@ -421,7 +424,8 @@ const create = (type = "") => {
...
@@ -421,7 +424,8 @@ const create = (type = "") => {
checkApproverOLPA
,
checkApproverOLPA
,
getLastPeriodeOI
,
getLastPeriodeOI
,
getSubmitOI
,
getSubmitOI
,
getLastPeriodOI
getLastPeriodOI
,
getDashboardUser
}
}
}
}
...
...
src/container/BudgetTahunan/FixedAssetsMovement.js
View file @
4faa8a8b
...
@@ -512,10 +512,15 @@ export default class FixedAssetsMovement extends Component {
...
@@ -512,10 +512,15 @@ export default class FixedAssetsMovement extends Component {
}
else
{
}
else
{
// console.log(item)
// console.log(item)
let
indexID
=
dataTable2
.
findIndex
((
val
)
=>
val
[
22
]
==
item
)
let
indexID
=
dataTable2
.
findIndex
((
val
)
=>
val
[
22
]
==
item
)
// console.log(dataTable2[indexID]
[tableMeta.columnIndex]
)
// console.log(dataTable2[indexID])
if
(
indexID
!==
-
1
)
{
if
(
indexID
!==
-
1
)
{
let
valuezz
=
dataTable2
[
indexID
][
tableMeta
.
columnIndex
].
value
==
undefined
?
dataTable2
[
indexID
][
tableMeta
.
columnIndex
]
:
dataTable2
[
indexID
][
tableMeta
.
columnIndex
].
value
let
valuezz
=
dataTable2
[
indexID
][
tableMeta
.
columnIndex
].
value
==
undefined
?
dataTable2
[
indexID
][
tableMeta
.
columnIndex
]
:
dataTable2
[
indexID
][
tableMeta
.
columnIndex
].
value
anjay
.
push
(
valuezz
==
""
?
0
:
valuezz
)
anjay
.
push
(
valuezz
==
""
?
0
:
valuezz
)
}
else
{
if
(
item
===
'(-1)'
)
{
anjay
.
push
(
-
1
)
}
// console.log(item);
}
}
}
}
}
}
...
@@ -551,8 +556,8 @@ export default class FixedAssetsMovement extends Component {
...
@@ -551,8 +556,8 @@ export default class FixedAssetsMovement extends Component {
// console.log(dataTable2[tableMeta.rowIndex][22])
// console.log(dataTable2[tableMeta.rowIndex][22])
// console.log(tableMeta.rowData[5])
// console.log(tableMeta.rowData[5])
// if (tableMeta.rowData[5] == 'Beginning Balance') {
// if (tableMeta.rowData[5] == 'Beginning Balance') {
//
console.log(baru)
//
console.log(baru)
//
console.log(anjay)
//
console.log(anjay)
// console.log(total)
// console.log(total)
// }
// }
...
...
src/container/BudgetTahunan/TaxPlanning.js
View file @
4faa8a8b
...
@@ -6209,17 +6209,14 @@ export default class TaxPlanning extends Component {
...
@@ -6209,17 +6209,14 @@ export default class TaxPlanning extends Component {
name
:
`
${
this
.
props
.
periode
}
`
,
name
:
`
${
this
.
props
.
periode
}
`
,
options
:
{
options
:
{
customHeadRender
:
(
columnMeta
)
=>
(
customHeadRender
:
(
columnMeta
)
=>
(
<
div
style
=
{{
...
style2
,
backgroundColor
:
'#1c71b8'
,
color
:
'#fff'
,
fontSize
:
13
,
fontWeight
:
1
,
width
:
150
,
borderRight
:
"1px solid rgb(255, 255, 255)"
}}
>
<
th
style
=
{{
...
style2
,
backgroundColor
:
'#1c71b8'
,
color
:
'#fff'
,
fontSize
:
13
,
fontWeight
:
1
,
width
:
150
,
borderRight
:
"1px solid rgb(255, 255, 255)"
}}
>
{
/* <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#1c71b8', width: 96 }}>
<Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
</TableCell> */
}
<
div
style
=
{{
borderBottom
:
"1px #fff solid"
,
textAlign
:
'center'
,
fontSize
:
12
,
fontWeight
:
'bold'
,
padding
:
5
,
paddingTop
:
8
}}
>
{
columnMeta
.
name
}
<
/div
>
<
div
style
=
{{
borderBottom
:
"1px #fff solid"
,
textAlign
:
'center'
,
fontSize
:
12
,
fontWeight
:
'bold'
,
padding
:
5
,
paddingTop
:
8
}}
>
{
columnMeta
.
name
}
<
/div
>
<
div
style
=
{{
...
style2
,
backgroundColor
:
'#1c71b8'
,
color
:
'#fff'
,
fontSize
:
12
,
fontWeight
:
'bold'
,
position
:
"sticky"
,
paddingBottom
:
20
}}
>
<
div
className
=
""
style
=
{{
...
style2
,
backgroundColor
:
'#1c71b8'
,
color
:
'#fff'
,
fontSize
:
12
,
fontWeight
:
'bold'
,
position
:
"sticky"
,
paddingBottom
:
20
}}
>
<
div
style
=
{{
placeSelf
:
'center'
,
textAlign
:
'center'
,
padding
:
5
}}
>
<
div
className
=
"column-1"
style
=
{{
placeSelf
:
'center'
,
textAlign
:
'center'
,
padding
:
5
}}
>
<
span
>
{
"Trial Balance (Fiscal)"
}
<
/span
>
<
span
>
{
"Trial Balance (Fiscal)"
}
<
/span
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/
div
>
<
/
th
>
),
),
setCellProps
:
()
=>
({
style2
}),
setCellProps
:
()
=>
({
style2
}),
customBodyRender
:
(
value
,
tableMeta
,
updateValue
)
=>
{
customBodyRender
:
(
value
,
tableMeta
,
updateValue
)
=>
{
...
...
src/container/HomePage.js
View file @
4faa8a8b
...
@@ -22,7 +22,11 @@ class HomePage extends Component {
...
@@ -22,7 +22,11 @@ class HomePage extends Component {
{
nama
:
'Dharma Group'
,
status
:
'overdue'
},
{
nama
:
'Dharma Group'
,
status
:
'overdue'
},
{
nama
:
'Daya Group'
,
status
:
'open'
},
{
nama
:
'Daya Group'
,
status
:
'open'
},
],
],
isApprover
:
true
isApprover
:
true
,
listSubcoMB
:
[],
valueSubmit
:
0
,
listdmb
:
[],
dataTableMB
:
[]
}
}
}
}
...
@@ -47,6 +51,8 @@ class HomePage extends Component {
...
@@ -47,6 +51,8 @@ class HomePage extends Component {
// }
// }
// })
// })
this
.
getApprMat
()
this
.
getApprMat
()
this
.
getListUserSubco
()
this
.
getDashboardMB
()
}
}
componentDidUpdate
()
{
componentDidUpdate
()
{
...
@@ -56,6 +62,26 @@ class HomePage extends Component {
...
@@ -56,6 +62,26 @@ class HomePage extends Component {
}
}
}
}
getListUserSubco
()
{
api
.
create
().
getDashboardUser
().
then
(
response
=>
{
console
.
log
(
response
);
let
valueSubmit
=
0
if
(
response
.
data
)
{
if
(
response
.
data
.
status
===
"success"
)
{
response
.
data
.
data
.
map
((
item
,
index
)
=>
{
if
(
item
.
is_submit
===
true
)
{
valueSubmit
+=
1
}
})
this
.
setState
({
listSubcoMB
:
response
.
data
.
data
,
valueSubmit
})
}
}
})
}
getDashboard
()
{
getDashboard
()
{
let
listDashboard
=
[]
let
listDashboard
=
[]
api
.
create
().
getDashboard
().
then
((
response
)
=>
{
api
.
create
().
getDashboard
().
then
((
response
)
=>
{
...
@@ -74,20 +100,37 @@ class HomePage extends Component {
...
@@ -74,20 +100,37 @@ class HomePage extends Component {
api
.
create
().
getAM
().
then
((
response
)
=>
{
api
.
create
().
getAM
().
then
((
response
)
=>
{
console
.
log
(
response
);
console
.
log
(
response
);
let
actAM
=
response
.
data
.
data
.
map
((
item
,
index
)
=>
{
let
actAM
=
response
.
data
.
data
.
map
((
item
,
index
)
=>
{
if
(
String
(
item
.
status
).
toLocaleLowerCase
()
==
'active'
)
{
if
(
String
(
item
.
status
).
toLocaleLowerCase
()
==
'active'
)
{
return
item
return
item
}
}
})
})
let
userId
=
localStorage
.
getItem
(
Constant
.
USER
)
let
userId
=
localStorage
.
getItem
(
Constant
.
USER
)
let
indexId
=
actAM
.
findIndex
((
val
)
=>
val
.
user_id
==
userId
)
let
indexId
=
actAM
.
findIndex
((
val
)
=>
val
.
user_id
==
userId
)
if
(
indexId
===
-
1
){
if
(
indexId
===
-
1
)
{
this
.
setState
({
isApprover
:
false
})
this
.
setState
({
isApprover
:
false
})
}
}
console
.
log
(
actAM
)
console
.
log
(
actAM
)
})
})
}
}
getDashboardMB
()
{
api
.
create
().
getDashboardMB
().
then
((
response
)
=>
{
console
.
log
(
response
)
if
(
String
(
response
.
data
.
status
).
toLocaleLowerCase
()
==
'success'
){
let
data
=
response
.
data
.
data
let
listdmb
=
data
.
sort
((
a
,
b
)
=>
a
.
company_id
-
b
.
company_id
).
map
((
item
,
index
)
=>
{
return
[
item
.
company_name
,
item
.
master_budget
,
item
.
operating_indicator
]
})
this
.
setState
({
dataTableMB
:
listdmb
})
}
})
}
render
()
{
render
()
{
const
columns
=
[
"#"
,
"ID"
,
"Nama Perusahaan"
,
"Jenis Report"
,
"Revisi"
,
"Status"
,
{
const
columns
=
[
"#"
,
"ID"
,
"Nama Perusahaan"
,
"Jenis Report"
,
"Revisi"
,
"Status"
,
{
name
:
"Action"
,
name
:
"Action"
,
...
@@ -138,6 +181,9 @@ class HomePage extends Component {
...
@@ -138,6 +181,9 @@ class HomePage extends Component {
rowsPerPage
:
5
,
rowsPerPage
:
5
,
search
:
false
search
:
false
}
}
const
columnsMB
=
[
"Company"
,
"Master Budget & CAT"
,
"Operating Indicator"
]
const
dataChart
=
[{
const
dataChart
=
[{
count
:
90
,
count
:
90
,
color
:
'#5198ea'
,
color
:
'#5198ea'
,
...
@@ -189,6 +235,18 @@ class HomePage extends Component {
...
@@ -189,6 +235,18 @@ class HomePage extends Component {
<
/MuiThemeProvider
>
<
/MuiThemeProvider
>
<
/div
>
<
/div
>
<
div
style
=
{{
marginTop
:
20
}}
>
<
div
style
=
{{
marginTop
:
20
}}
>
<
Typography
style
=
{{
color
:
'#656565'
,
fontSize
:
'16px'
,
fontWeight
:
'bold'
}}
>
Master
Budget
&
CAT
<
/Typography
>
<
div
style
=
{{
marginTop
:
10
,
width
:
'100%'
}}
>
<
MuiThemeProvider
theme
=
{
getMuiTheme
()}
>
<
MUIDataTable
data
=
{
this
.
state
.
dataTableMB
}
columns
=
{
columnsMB
}
options
=
{
options
}
/
>
<
/MuiThemeProvider
>
<
/div
>
<
/div
>
{
/* <div style={{ marginTop: 20 }}>
<Typography style={{ color: '#656565', fontSize: '16px', fontWeight: 'bold' }}>Status Laporan</Typography>
<Typography style={{ color: '#656565', fontSize: '16px', fontWeight: 'bold' }}>Status Laporan</Typography>
<div style={{ marginTop: 10, display: 'flex' }}>
<div style={{ marginTop: 10, display: 'flex' }}>
<div style={{ width: 280, height: 400, padding: 20, backgroundColor: 'white', borderRadius: 6, border: 'solid 1px #c4c4c4', marginRight: 25 }}>
<div style={{ width: 280, height: 400, padding: 20, backgroundColor: 'white', borderRadius: 6, border: 'solid 1px #c4c4c4', marginRight: 25 }}>
...
@@ -315,7 +373,7 @@ class HomePage extends Component {
...
@@ -315,7 +373,7 @@ class HomePage extends Component {
</div>
</div>
</div>
</div>
</div>
</div>
<
/div
>
</div>
*/
}
<
/div
>
<
/div
>
<
/div
>
<
/div
>
:
:
...
@@ -329,16 +387,33 @@ class HomePage extends Component {
...
@@ -329,16 +387,33 @@ class HomePage extends Component {
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
style
=
{{
flex
:
1
,
padding
:
20
,
width
:
'100%'
}}
>
<
div
style
=
{{
flex
:
1
,
padding
:
20
,
width
:
'100%'
}}
>
<
Paper
style
=
{{
width
:
4
0
0
,
padding
:
20
,
borderRadius
:
10
}}
>
<
Paper
style
=
{{
width
:
4
5
0
,
padding
:
20
,
borderRadius
:
10
}}
>
<
Typography
style
=
{{
fontWeight
:
'bold'
,
textDecorationLine
:
'underline'
}}
>
Master
Budget
-
Oct
2020
(
1
/
4
)
<
/Typography
>
<
Typography
style
=
{{
fontWeight
:
'bold'
,
textDecorationLine
:
'underline'
}}
>
{
`Master Budget
${
this
.
state
.
valueSubmit
}
/
${
this
.
state
.
listSubcoMB
.
length
}
`
}
<
/Typography
>
{
this
.
state
.
list
MasterBudget
.
map
((
item
,
index
)
=>
{
{
this
.
state
.
list
SubcoMB
.
map
((
item
,
index
)
=>
{
return
(
return
(
<
div
style
=
{{
display
:
'flex'
,
justifyContent
:
'space-between'
,
marginTop
:
10
,
paddingLeft
:
10
}}
>
<
div
style
=
{{
display
:
'flex'
,
justifyContent
:
'space-between'
,
marginTop
:
10
,
paddingLeft
:
10
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
div
style
=
{{
display
:
'flex'
}}
>
<
img
src
=
{
item
.
status
===
"overdue"
?
Images
.
dotOverdue
:
item
.
status
===
"open"
?
Images
.
dotOpen
:
Images
.
dotDone
}
/
>
<
img
src
=
{
item
.
is_submit
===
true
?
Images
.
dotDone
:
item
.
is_overdue
===
true
?
Images
.
dotOverdue
:
Images
.
dotOpen
}
/
>
<
Typography
style
=
{{
marginLeft
:
10
,
color
:
'#5198ea'
,
fontSize
:
13
}}
>
{
item
.
nama
}
<
/Typography
>
<
Link
to
=
{{
pathname
:
`/home/master-budget/`
,
state
:
{
userType
:
'user'
,
rawData
:
item
}
}}
>
<
button
style
=
{{
backgroundColor
:
'transparent'
,
cursor
:
'pointer'
,
borderColor
:
'transparent'
,
margin
:
5
,
outline
:
'none'
}}
>
<
Typography
style
=
{{
marginLeft
:
10
,
color
:
'#5198ea'
,
fontSize
:
13
}}
>
{
item
.
company_name
}
<
/Typography
>
<
/button
>
<
/Link
>
<
/div
>
<
/div
>
{
item
.
status
===
'overdue'
&&
(
{
item
.
is_overdue
&&
(
<
div
style
=
{{
backgroundColor
:
'#f65a4c'
,
paddingRight
:
5
,
paddingLeft
:
5
,
borderRadius
:
5
,
alignSelf
:
'center'
}}
>
<
div
style
=
{{
backgroundColor
:
'#f65a4c'
,
paddingRight
:
5
,
paddingLeft
:
5
,
borderRadius
:
5
,
alignSelf
:
'center'
}}
>
<
Typography
style
=
{{
fontSize
:
11
,
color
:
'#fff'
}}
>
Overdue
<
/Typography
>
<
Typography
style
=
{{
fontSize
:
11
,
color
:
'#fff'
}}
>
Overdue
<
/Typography
>
<
/div
>
<
/div
>
...
@@ -352,6 +427,7 @@ class HomePage extends Component {
...
@@ -352,6 +427,7 @@ class HomePage extends Component {
}
}
<
/div
>
<
/div
>
);
);
}
}
}
}
...
...
src/container/OprIndicator/OperatingIndicator.js
View file @
4faa8a8b
...
@@ -240,6 +240,7 @@ export default class OperatingIndicator extends Component {
...
@@ -240,6 +240,7 @@ export default class OperatingIndicator extends Component {
options
:
periodeData
,
options
:
periodeData
,
getOptionLabel
:
(
option
)
=>
option
.
periode
,
getOptionLabel
:
(
option
)
=>
option
.
periode
,
};
};
console
.
log
(
defaultProps
)
let
periode
=
(
this
.
state
.
lastPeriod
==
""
?
String
(
Number
(
currentYear
)
+
1
)
:
this
.
state
.
lastPeriod
)
let
periode
=
(
this
.
state
.
lastPeriod
==
""
?
String
(
Number
(
currentYear
)
+
1
)
:
this
.
state
.
lastPeriod
)
let
index
=
data
.
sort
((
a
,
b
)
=>
a
-
b
).
findIndex
((
val
)
=>
val
===
periode
)
let
index
=
data
.
sort
((
a
,
b
)
=>
a
-
b
).
findIndex
((
val
)
=>
val
===
periode
)
this
.
setState
({
listPeriode
:
defaultProps
,
periode
:
index
==
-
1
?
periodeData
[
0
]
:
periodeData
[
index
]
},
()
=>
{
this
.
setState
({
listPeriode
:
defaultProps
,
periode
:
index
==
-
1
?
periodeData
[
0
]
:
periodeData
[
index
]
},
()
=>
{
...
@@ -554,13 +555,13 @@ export default class OperatingIndicator extends Component {
...
@@ -554,13 +555,13 @@ export default class OperatingIndicator extends Component {
<
/MuiThemeProvider
>
<
/MuiThemeProvider
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
{
this
.
state
.
isSubmit
&&
(
{
/* {
this.state.isSubmit && (
<div style={{ borderTop: 'solid 1px #c4c4c4', padding: 10, backgroundColor: '#f5f5f5', width: '100%', display: 'flex', justifyContent: 'flex-end' }} >
<div style={{ borderTop: 'solid 1px #c4c4c4', padding: 10, backgroundColor: '#f5f5f5', width: '100%', display: 'flex', justifyContent: 'flex-end' }} >
<div style={{ backgroundColor: '#354960', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center' }}>
<div style={{ backgroundColor: '#354960', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center' }}>
<Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Submit</Typography>
<Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Submit</Typography>
</div>
</div>
</div>
</div>
)}
)}
*/
}
<
/Paper
>
<
/Paper
>
<
/div
>
<
/div
>
...
...
src/container/OutlookPA.js
View file @
4faa8a8b
...
@@ -15,6 +15,7 @@ import Constant from '../library/Constant';
...
@@ -15,6 +15,7 @@ import Constant from '../library/Constant';
import
PropagateLoader
from
"react-spinners/PropagateLoader"
import
PropagateLoader
from
"react-spinners/PropagateLoader"
import
{
DatePicker
}
from
'@material-ui/pickers'
;
import
{
DatePicker
}
from
'@material-ui/pickers'
;
import
BalanceSheetOLPA
from
'./OutlookPA/BalanceSheetOLPA'
;
import
BalanceSheetOLPA
from
'./OutlookPA/BalanceSheetOLPA'
;
import
moment
from
'moment'
;
var
ct
=
require
(
"../library/CustomTable"
);
var
ct
=
require
(
"../library/CustomTable"
);
const
getMuiTheme
=
()
=>
createMuiTheme
(
ct
.
customTable
());
const
getMuiTheme
=
()
=>
createMuiTheme
(
ct
.
customTable
());
...
@@ -57,11 +58,16 @@ export default class OutlookPA extends Component {
...
@@ -57,11 +58,16 @@ export default class OutlookPA extends Component {
checkApprover
:
false
,
checkApprover
:
false
,
lastPeriod
:
''
,
lastPeriod
:
''
,
latestPeriode
:
''
,
latestPeriode
:
''
,
minDateRevision
:
new
Date
(),
maxDateRevision
:
new
Date
(),
btnApprove
:
false
btnApprove
:
false
}
}
this
.
myRef
=
React
.
createRef
()
this
.
fileHandler
=
this
.
fileHandler
.
bind
(
this
);
this
.
fileHandler
=
this
.
fileHandler
.
bind
(
this
);
}
}
scrollToMyRef
=
()
=>
window
.
scrollTo
(
0
,
this
.
myRef
.
current
.
offsetTop
)
componentDidMount
()
{
componentDidMount
()
{
this
.
setState
({
loading
:
true
})
this
.
setState
({
loading
:
true
})
this
.
props
.
selectIndex
(
'Outlook Performance Appraisal'
)
this
.
props
.
selectIndex
(
'Outlook Performance Appraisal'
)
...
@@ -306,7 +312,8 @@ export default class OutlookPA extends Component {
...
@@ -306,7 +312,8 @@ export default class OutlookPA extends Component {
options
:
periodeData
,
options
:
periodeData
,
getOptionLabel
:
(
option
)
=>
option
.
periode
,
getOptionLabel
:
(
option
)
=>
option
.
periode
,
};
};
let
index
=
data
.
sort
((
a
,
b
)
=>
a
-
b
).
findIndex
((
val
)
=>
val
===
(
this
.
state
.
latestPeriode
==
""
?
String
(
Number
(
currentYear
)
+
1
)
:
this
.
state
.
latestPeriode
))
let
periode
=
(
this
.
state
.
lastPeriod
==
""
?
String
(
Number
(
currentYear
)
+
1
)
:
this
.
state
.
lastPeriod
)
let
index
=
data
.
sort
((
a
,
b
)
=>
a
-
b
).
findIndex
((
val
)
=>
val
===
periode
)
// console.log(data)
// console.log(data)
console
.
log
(
this
.
state
.
lastPeriod
)
console
.
log
(
this
.
state
.
lastPeriod
)
// console.log(periodeData)
// console.log(periodeData)
...
@@ -400,7 +407,8 @@ export default class OutlookPA extends Component {
...
@@ -400,7 +407,8 @@ export default class OutlookPA extends Component {
let
dataTableHistory
=
response
.
data
.
data
.
map
(
item
=>
{
let
dataTableHistory
=
response
.
data
.
data
.
map
(
item
=>
{
return
[
return
[
item
.
pic
,
item
.
pic
,
String
(
item
.
status_approval
).
replace
(
'APPROVAL_PROCCESS'
,
'WAITING FOR APPROVAL'
).
replace
(
'- -'
,
''
),
item
.
status_approval
,
// String(item.status_approval).replace('APPROVAL_PROCCESS', 'WAITING FOR APPROVAL').replace('- -', ''),
item
.
remarks
,
item
.
remarks
,
item
.
item_revision
,
item
.
item_revision
,
item
.
history_approval_date
item
.
history_approval_date
...
@@ -412,24 +420,26 @@ export default class OutlookPA extends Component {
...
@@ -412,24 +420,26 @@ export default class OutlookPA extends Component {
}
}
approvalSubmission
(
type
)
{
approvalSubmission
(
type
)
{
this
.
scrollToMyRef
()
this
.
setState
({
loading
:
true
})
this
.
setState
({
loading
:
true
})
let
body
=
{
let
body
=
{
"approval_id"
:
this
.
props
.
location
.
state
==
undefined
?
this
.
state
.
approverID
:
this
.
state
.
rawData
.
approval_id
,
"approval_id"
:
this
.
props
.
location
.
state
==
undefined
?
this
.
state
.
approverID
:
this
.
state
.
rawData
.
approval_id
,
"status"
:
type
,
"status"
:
type
,
"detail"
:
this
.
state
.
detailRevisiCheck
"detail"
:
this
.
state
.
detailRevisiCheck
}
}
api
.
create
().
approvalSubmissionOLPA
(
body
).
then
((
res
)
=>
{
let
payload
=
{
"company_id"
:
this
.
state
.
company
.
company_id
,
"min_periode"
:
moment
(
this
.
state
.
minDateRevision
).
format
(
'YYYY-MM-DD'
),
"max_periode"
:
moment
(
this
.
state
.
maxDateRevision
).
format
(
'YYYY-MM-DD'
)
}
console
.
log
(
payload
)
api
.
create
().
approvalSubmission
(
body
).
then
((
res
)
=>
{
console
.
log
(
res
)
console
.
log
(
res
)
if
(
res
.
data
)
{
this
.
setState
({
loading
:
false
},
()
=>
{
if
(
res
.
data
.
status
===
"success"
)
{
this
.
getSubmission
()
this
.
getOutlookPAID
()
})
}
else
{
if
(
type
==
'revision'
)
{
this
.
setState
({
loading
:
false
})
api
.
create
().
createPeriodeRevision
(
payload
).
then
((
res
)
=>
console
.
log
(
res
))
alert
(
res
.
data
.
message
)
}
}
else
{
this
.
setState
({
loading
:
false
})
alert
(
res
.
problem
)
}
}
})
})
}
}
...
@@ -551,12 +561,14 @@ export default class OutlookPA extends Component {
...
@@ -551,12 +561,14 @@ export default class OutlookPA extends Component {
this
.
getOutlookPAID
()
this
.
getOutlookPAID
()
}
else
{
}
else
{
this
.
setState
({
loading
:
false
},
()
=>
{
this
.
setState
({
loading
:
false
},
()
=>
{
alert
(
response
.
data
.
message
)
// alert(response.data.message)
this
.
getOutlookPAID
()
})
})
}
}
}
else
{
}
else
{
this
.
setState
({
loading
:
false
},
()
=>
{
this
.
setState
({
loading
:
false
},
()
=>
{
alert
(
response
.
problem
)
// alert(response.problem)
this
.
getOutlookPAID
()
})
})
}
}
})
})
...
@@ -587,12 +599,12 @@ export default class OutlookPA extends Component {
...
@@ -587,12 +599,12 @@ export default class OutlookPA extends Component {
let
array
=
[]
let
array
=
[]
let
canSubmit
=
true
let
canSubmit
=
true
this
.
state
.
dataTable
.
map
(
item
=>
{
this
.
state
.
dataTable
.
map
(
item
=>
{
if
(
item
[
1
]
!==
'Cash Flow'
)
{
//
if (item[1] !== 'Cash Flow') {
if
(
item
[
3
]
!==
"submitted"
&&
item
[
3
]
!==
'approved'
)
{
//
if (item[3] !== "submitted" && item[3] !== 'approved') {
canSubmit
=
false
//
canSubmit = false
array
.
push
(
item
[
3
])
//
array.push(item[3])
}
//
}
}
//
}
// if (item[3].includes("not-yet") || item[3].includes("draft")) {
// if (item[3].includes("not-yet") || item[3].includes("draft")) {
// array.push(item[3])
// array.push(item[3])
// } else {
// } else {
...
@@ -623,6 +635,10 @@ export default class OutlookPA extends Component {
...
@@ -623,6 +635,10 @@ export default class OutlookPA extends Component {
}
}
render
()
{
render
()
{
const
handleMaxDate
=
()
=>
{
let
handleDate
=
Number
(
moment
(
this
.
state
.
maxDateRevision
).
format
(
'YYYYMMDD'
))
-
Number
(
moment
(
this
.
state
.
minDateRevision
).
format
(
'YYYYMMDD'
))
return
handleDate
<
0
?
moment
(
this
.
state
.
minDateRevision
).
format
(
'YYYY/MM/DD'
)
:
moment
(
this
.
state
.
maxDateRevision
).
format
(
'YYYY/MM/DD'
)
}
const
columns
=
[
"#"
,
"Report Type"
,
const
columns
=
[
"#"
,
"Report Type"
,
{
{
name
:
"Revision"
,
name
:
"Revision"
,
...
@@ -694,20 +710,20 @@ export default class OutlookPA extends Component {
...
@@ -694,20 +710,20 @@ export default class OutlookPA extends Component {
style
=
{{
style
=
{{
backgroundColor
:
'transparent'
,
backgroundColor
:
'transparent'
,
cursor
:
this
.
state
.
isSubmit
===
false
?
'default'
:
tableMeta
.
rowData
[
5
]
?
'pointer'
:
'default'
,
cursor
:
this
.
state
.
isSubmit
===
false
?
'default'
:
tableMeta
.
rowData
[
5
]
?
'pointer'
:
'default'
,
// cursor: tableMeta.rowData[5] ? 'pointer' : 'default',
borderColor
:
'transparent'
borderColor
:
'transparent'
}}
}}
onClick
=
{()
=>
onClick
=
{()
=>
this
.
state
.
isSubmit
===
false
?
null
:
tableMeta
.
rowData
[
5
]
==
true
?
tableMeta
.
rowData
[
5
]
==
true
?
this
.
clickDetail
(
tableMeta
.
rowData
[
1
],
tableMeta
.
rowData
[
4
],
tableMeta
.
rowData
[
2
],
tableMeta
.
rowData
[
3
])
this
.
clickDetail
(
tableMeta
.
rowData
[
1
],
tableMeta
.
rowData
[
4
],
tableMeta
.
rowData
[
2
],
tableMeta
.
rowData
[
3
])
:
null
:
null
}
}
>
>
{
/* {this.state.isApprover == true ?
{
/* {this.state.isApprover == true ?
(tableMeta.rowData[5] ? '#5198ea' : 'GrayText') :
(tableMeta.rowData[5] ? '#5198ea' : 'GrayText') :
(this.state.lastRevision == 0 ? (tableMeta.rowData[5] ? '#5198ea' : 'GrayText') :
(this.state.lastRevision == 0 ? (tableMeta.rowData[5] ? '#5198ea' : 'GrayText') :
(tableMeta.rowData[3] !== 'submitted' ? '#5198ea' : 'GrayText'))} */
}
(tableMeta.rowData[3] !== 'submitted' ? '#5198ea' : 'GrayText'))} */
}
<
Typography
style
=
{{
color
:
t
his
.
state
.
isSubmit
===
false
?
'GrayText'
:
t
ableMeta
.
rowData
[
5
]
?
'#5198ea'
:
'GrayText'
,
fontSize
:
12
,
}}
>
Detail
<
/Typography
>
<
Typography
style
=
{{
color
:
tableMeta
.
rowData
[
5
]
?
'#5198ea'
:
'GrayText'
,
fontSize
:
12
,
}}
>
Detail
<
/Typography
>
<
/button
>
<
/button
>
<
/div
>
<
/div
>
);
);
...
@@ -823,6 +839,18 @@ export default class OutlookPA extends Component {
...
@@ -823,6 +839,18 @@ export default class OutlookPA extends Component {
pagination
:
false
,
pagination
:
false
,
search
:
false
search
:
false
}
}
const
optionsHistory
=
{
filter
:
false
,
sort
:
false
,
responsive
:
"scroll"
,
print
:
false
,
download
:
false
,
selectableRows
:
false
,
viewColumns
:
false
,
pagination
:
true
,
search
:
false
,
rowsPerPage
:
5
}
const
optionsRevision
=
{
const
optionsRevision
=
{
filter
:
false
,
filter
:
false
,
sort
:
false
,
sort
:
false
,
...
@@ -845,7 +873,7 @@ export default class OutlookPA extends Component {
...
@@ -845,7 +873,7 @@ export default class OutlookPA extends Component {
<
/div
>
<
/div
>
);
);
return
(
return
(
<
div
style
=
{{
flex
:
1
,
backgroundColor
:
'#f8f8f8'
}}
>
<
div
style
=
{{
flex
:
1
,
backgroundColor
:
'#f8f8f8'
}}
ref
=
{
this
.
myRef
}
>
<
Snackbar
open
=
{
this
.
state
.
alert
}
autoHideDuration
=
{
6000
}
onClose
=
{()
=>
this
.
closeAlert
()}
>
<
Snackbar
open
=
{
this
.
state
.
alert
}
autoHideDuration
=
{
6000
}
onClose
=
{()
=>
this
.
closeAlert
()}
>
<
Alert
onClose
=
{()
=>
this
.
closeAlert
()}
severity
=
{
this
.
state
.
tipeAlert
}
>
<
Alert
onClose
=
{()
=>
this
.
closeAlert
()}
severity
=
{
this
.
state
.
tipeAlert
}
>
{
this
.
state
.
messageAlert
}
{
this
.
state
.
messageAlert
}
...
@@ -977,24 +1005,25 @@ export default class OutlookPA extends Component {
...
@@ -977,24 +1005,25 @@ export default class OutlookPA extends Component {
<
/div
>
<
/div
>
{
!
this
.
state
.
isApprover
&&
(
this
.
state
.
lastStatus
===
'SUBMIT'
||
this
.
state
.
lastStatus
===
'REVISION'
)
&&
(
{
!
this
.
state
.
isApprover
&&
(
this
.
state
.
lastStatus
===
'SUBMIT'
||
this
.
state
.
lastStatus
===
'REVISION'
)
&&
(
<
div
style
=
{{
width
:
'50%'
}}
>
<
div
style
=
{{
width
:
'50%'
}}
>
{
this
.
state
.
listAttachment
.
length
>
0
?
{
this
.
state
.
listAttachment
.
map
((
item
)
=>
{
this
.
state
.
listAttachment
.
length
>
0
?
return
(
this
.
state
.
listAttachment
.
map
((
item
)
=>
{
<
button
return
(
style
=
{{
<
button
backgroundColor
:
'transparent'
,
style
=
{{
cursor
:
this
.
state
.
isSubmit
===
false
?
'default'
:
'pointer'
,
backgroundColor
:
'transparent'
,
borderColor
:
'transparent'
,
cursor
:
this
.
state
.
isSubmit
===
false
?
'default'
:
'pointer'
,
outline
:
'none'
,
borderColor
:
'transparent'
,
display
:
'grid'
outline
:
'none'
,
}}
display
:
'grid'
onClick
=
{()
=>
this
.
state
.
isSubmit
===
false
?
null
:
this
.
deleteAttachment
(
item
)}
}}
>
onClick
=
{()
=>
this
.
state
.
isSubmit
===
false
?
null
:
this
.
deleteAttachment
(
item
)}
<
Typography
style
=
{{
fontSize
:
'13px'
,
color
:
this
.
state
.
isSubmit
===
false
?
'GrayText'
:
'#ff3939'
}}
>
Delete
<
/Typography
>
>
<
/button
>
<
Typography
style
=
{{
fontSize
:
'13px'
,
color
:
this
.
state
.
isSubmit
===
false
?
'GrayText'
:
'#ff3939'
}}
>
Delete
<
/Typography
>
)
<
/button
>
})
)
:
null
})
:
null
}
}
<
/div
>
<
/div
>
)}
)}
...
@@ -1006,7 +1035,13 @@ export default class OutlookPA extends Component {
...
@@ -1006,7 +1035,13 @@ export default class OutlookPA extends Component {
<
/div> : this.state.lastStatus === 'WAITING FOR YOUR APPROVAL'
?
<
/div> : this.state.lastStatus === 'WAITING FOR YOUR APPROVAL'
?
<
div
style
=
{{
width
:
'100%'
,
padding
:
'10px 20px'
,
backgroundColor
:
'yellow'
,
textAlign
:
'center'
,
marginTop
:
20
}}
>
<
div
style
=
{{
width
:
'100%'
,
padding
:
'10px 20px'
,
backgroundColor
:
'yellow'
,
textAlign
:
'center'
,
marginTop
:
20
}}
>
<
span
>
{
this
.
state
.
lastStatus
}
<
/span
>
<
span
>
{
this
.
state
.
lastStatus
}
<
/span
>
<
/div> : nul
l
<
/div> : this.state.lastStatus === 'WAITING FOR APPROVAL'
?
<
div
style
=
{{
width
:
'100%'
,
padding
:
'10px 20px'
,
backgroundColor
:
'yellow'
,
textAlign
:
'center'
,
marginTop
:
20
}}
>
<
span
>
{
`
${
this
.
state
.
lastStatus
}
-
${
this
.
state
.
pic
}
`
}
<
/span
>
<
/div> : this.state.lastStatus === 'APPROVED'
?
<
div
style
=
{{
width
:
'100%'
,
padding
:
'10px 20px'
,
backgroundColor
:
'yellow'
,
textAlign
:
'center'
,
marginTop
:
20
}}
>
<
span
>
{
`
${
this
.
state
.
lastStatus
}
`
}
<
/span
>
<
/div> : nul
l
:
:
this
.
state
.
lastStatus
===
'SUBMITTED'
?
this
.
state
.
lastStatus
===
'SUBMITTED'
?
<
div
style
=
{{
width
:
'100%'
,
padding
:
'10px 20px'
,
backgroundColor
:
'yellow'
,
textAlign
:
'center'
,
marginTop
:
20
}}
>
<
div
style
=
{{
width
:
'100%'
,
padding
:
'10px 20px'
,
backgroundColor
:
'yellow'
,
textAlign
:
'center'
,
marginTop
:
20
}}
>
...
@@ -1177,7 +1212,7 @@ export default class OutlookPA extends Component {
...
@@ -1177,7 +1212,7 @@ export default class OutlookPA extends Component {
getReport
=
{
this
.
getOutlookPAID
.
bind
(
this
)}
getReport
=
{
this
.
getOutlookPAID
.
bind
(
this
)}
isApprover
=
{
this
.
state
.
isApprover
}
isApprover
=
{
this
.
state
.
isApprover
}
lastStatus
=
{
this
.
state
.
lastStatus
}
lastStatus
=
{
this
.
state
.
lastStatus
}
prevRevision
=
{
this
.
state
.
prevRevision
}
prevRevision
=
{
this
.
state
.
isSubmit
?
this
.
state
.
prevRevision
:
true
}
status
=
{
this
.
state
.
status
}
status
=
{
this
.
state
.
status
}
/
>
/
>
)}
)}
...
@@ -1197,7 +1232,7 @@ export default class OutlookPA extends Component {
...
@@ -1197,7 +1232,7 @@ export default class OutlookPA extends Component {
status
=
{
this
.
state
.
status
}
status
=
{
this
.
state
.
status
}
isApprover
=
{
this
.
state
.
isApprover
}
isApprover
=
{
this
.
state
.
isApprover
}
lastStatus
=
{
this
.
state
.
lastStatus
}
lastStatus
=
{
this
.
state
.
lastStatus
}
prevRevision
=
{
this
.
state
.
prevRevision
}
prevRevision
=
{
this
.
state
.
isSubmit
?
this
.
state
.
prevRevision
:
true
}
/
>
/
>
)}
)}
...
@@ -1217,7 +1252,7 @@ export default class OutlookPA extends Component {
...
@@ -1217,7 +1252,7 @@ export default class OutlookPA extends Component {
status
=
{
this
.
state
.
status
}
status
=
{
this
.
state
.
status
}
isApprover
=
{
this
.
state
.
isApprover
}
isApprover
=
{
this
.
state
.
isApprover
}
lastStatus
=
{
this
.
state
.
lastStatus
}
lastStatus
=
{
this
.
state
.
lastStatus
}
prevRevision
=
{
this
.
state
.
prevRevision
}
prevRevision
=
{
this
.
state
.
isSubmit
?
this
.
state
.
prevRevision
:
true
}
/
>
/
>
)}
)}
...
@@ -1241,7 +1276,7 @@ export default class OutlookPA extends Component {
...
@@ -1241,7 +1276,7 @@ export default class OutlookPA extends Component {
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
"border-bottom"
style
=
{{
padding
:
20
}}
>
<
div
className
=
"border-bottom"
style
=
{{
padding
:
20
}}
>
<
span
>
Anda
meminta
anak
perusahaan
untuk
melakukan
revisi
.
<
/span
>
<
span
>
You
ask
your
subsidiary
to
make
a
revision
<
/span
>
<
div
style
=
{{
marginTop
:
20
}}
>
<
div
style
=
{{
marginTop
:
20
}}
>
<
MuiThemeProvider
theme
=
{
getMuiTheme
()}
>
<
MuiThemeProvider
theme
=
{
getMuiTheme
()}
>
<
MUIDataTable
<
MUIDataTable
...
@@ -1252,7 +1287,7 @@ export default class OutlookPA extends Component {
...
@@ -1252,7 +1287,7 @@ export default class OutlookPA extends Component {
<
/MuiThemeProvider
>
<
/MuiThemeProvider
>
<
/div
>
<
/div
>
<
div
style
=
{{
marginTop
:
20
}}
>
<
div
style
=
{{
marginTop
:
20
}}
>
<
span
>
Durasi
waktu
yang
anda
berikan
untuk
revisi
:
<
/span
>
<
span
>
Timing
duration
you
give
for
revision
:
<
/span
>
<
div
style
=
{{
display
:
'flex'
,
justifyContent
:
'space-between'
,
marginTop
:
20
}}
>
<
div
style
=
{{
display
:
'flex'
,
justifyContent
:
'space-between'
,
marginTop
:
20
}}
>
<
div
>
<
div
>
<
DatePicker
<
DatePicker
...
@@ -1260,7 +1295,9 @@ export default class OutlookPA extends Component {
...
@@ -1260,7 +1295,9 @@ export default class OutlookPA extends Component {
id
=
"startDate"
id
=
"startDate"
label
=
"Valid From"
label
=
"Valid From"
format
=
"dd-MM-yyyy"
format
=
"dd-MM-yyyy"
onChange
=
{(
e
)
=>
null
}
// onChange={(e) => null}
onChange
=
{(
e
)
=>
this
.
setState
({
minDateRevision
:
moment
(
e
).
format
(
'YYYY/MM/DD'
)
},
()
=>
this
.
setState
({
maxDateRevision
:
handleMaxDate
()
}))}
value
=
{
moment
(
this
.
state
.
minDateRevision
).
format
(
'YYYY/MM/DD'
)}
KeyboardButtonProps
=
{{
KeyboardButtonProps
=
{{
'aria-label'
:
'change date'
,
'aria-label'
:
'change date'
,
}}
}}
...
@@ -1279,14 +1316,17 @@ export default class OutlookPA extends Component {
...
@@ -1279,14 +1316,17 @@ export default class OutlookPA extends Component {
style
=
{{
padding
:
0
,
margin
:
0
,
width
:
'100%'
}}
style
=
{{
padding
:
0
,
margin
:
0
,
width
:
'100%'
}}
/
>
/
>
<
/div
>
<
/div
>
<
span
style
=
{{
alignSelf
:
'center'
}}
>
Sampai
dengan
<
/span
>
<
span
style
=
{{
alignSelf
:
'center'
}}
>
Until
<
/span
>
<
div
>
<
div
>
<
DatePicker
<
DatePicker
margin
=
"normal"
margin
=
"normal"
id
=
"startDate"
id
=
"startDate"
label
=
"Valid To"
label
=
"Valid To"
format
=
"dd-MM-yyyy"
format
=
"dd-MM-yyyy"
onChange
=
{(
e
)
=>
null
}
// onChange={(e) => null}
onChange
=
{(
e
)
=>
this
.
setState
({
maxDateRevision
:
moment
(
e
).
format
(
'YYYY/MM/DD'
)
})}
minDate
=
{
moment
(
this
.
state
.
minDateRevision
).
format
(
'YYYY/MM/DD'
)}
value
=
{
moment
(
this
.
state
.
maxDateRevision
).
format
(
'YYYY/MM/DD'
)}
KeyboardButtonProps
=
{{
KeyboardButtonProps
=
{{
'aria-label'
:
'change date'
,
'aria-label'
:
'change date'
,
}}
}}
...
...
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