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
70c7ed28
Commit
70c7ed28
authored
Apr 15, 2021
by
d.arizona
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update create db pl
parent
c0898c4f
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
517 additions
and
7 deletions
+517
-7
index.js
src/api/index.js
+6
-2
OutlookPA.js
src/container/OutlookPA.js
+1
-2
RollingOutlook.js
src/container/RollingOutlook.js
+500
-1
ProfitLossRO.js
src/container/RollingOutlook/ProfitLossRO.js
+10
-2
No files found.
src/api/index.js
View file @
70c7ed28
...
@@ -363,6 +363,8 @@ const create = (type = "") => {
...
@@ -363,6 +363,8 @@ const create = (type = "") => {
const
createCFOLPA
=
(
body
)
=>
api
.
post
(
'transaction/cash_flow/outlook_pa/create_outlook_report'
,
body
)
const
createCFOLPA
=
(
body
)
=>
api
.
post
(
'transaction/cash_flow/outlook_pa/create_outlook_report'
,
body
)
const
getHierarkiDBPLOLPA
=
(
body
)
=>
api
.
post
(
'transaction/db_profit_loss/outlook_pa/get_report_hierarki'
,
body
)
const
getHierarkiDBPLOLPA
=
(
body
)
=>
api
.
post
(
'transaction/db_profit_loss/outlook_pa/get_report_hierarki'
,
body
)
const
createDBPLOLPA
=
(
body
)
=>
api
.
post
(
'transaction/db_profit_loss/outlook_pa/create_outlook_report'
,
body
)
const
createDBPLOLPA
=
(
body
)
=>
api
.
post
(
'transaction/db_profit_loss/outlook_pa/create_outlook_report'
,
body
)
const
getHierarkiDBPLRO
=
(
body
)
=>
api
.
post
(
'transaction/db_profit_loss/rolling_outlook/get_report_hierarki'
,
body
)
const
createDBPLRO
=
(
body
)
=>
api
.
post
(
'transaction/db_profit_loss/rolling_outlook/create_rolling_outlook'
,
body
)
// Monthly
// Monthly
const
getMonthlyReport
=
(
body
)
=>
api
.
post
(
'transaction/monthly_report/get_all_report'
,
body
)
const
getMonthlyReport
=
(
body
)
=>
api
.
post
(
'transaction/monthly_report/get_all_report'
,
body
)
...
@@ -796,7 +798,9 @@ const create = (type = "") => {
...
@@ -796,7 +798,9 @@ const create = (type = "") => {
getHierarkiCFOLPA
,
getHierarkiCFOLPA
,
createCFOLPA
,
createCFOLPA
,
getHierarkiDBPLOLPA
,
getHierarkiDBPLOLPA
,
createDBPLOLPA
createDBPLOLPA
,
getHierarkiDBPLRO
,
createDBPLRO
}
}
}
}
...
...
src/container/OutlookPA.js
View file @
70c7ed28
...
@@ -821,7 +821,7 @@ export default class OutlookPA extends Component {
...
@@ -821,7 +821,7 @@ export default class OutlookPA extends Component {
"revision"
:
Number
(
this
.
state
.
lastRevision
),
"revision"
:
Number
(
this
.
state
.
lastRevision
),
"periode"
:
this
.
state
.
periode
.
periode
,
"periode"
:
this
.
state
.
periode
.
periode
,
"company_id"
:
this
.
state
.
company
.
company_id
,
"company_id"
:
this
.
state
.
company
.
company_id
,
"
submission
_id"
:
this
.
state
.
PLID
,
"
outlook_pa
_id"
:
this
.
state
.
PLID
,
}
}
api
.
create
().
getHierarkiDBPLOLPA
(
payload
).
then
(
response
=>
{
api
.
create
().
getHierarkiDBPLOLPA
(
payload
).
then
(
response
=>
{
// console.log(response);
// console.log(response);
...
@@ -1282,7 +1282,6 @@ export default class OutlookPA extends Component {
...
@@ -1282,7 +1282,6 @@ export default class OutlookPA extends Component {
"status"
:
"submitted"
,
"status"
:
"submitted"
,
"profit_loss_id"
:
this
.
state
.
PLID
,
"profit_loss_id"
:
this
.
state
.
PLID
,
"profit_loss_olpa"
:
this
.
state
.
dbPL
,
"profit_loss_olpa"
:
this
.
state
.
dbPL
,
"months"
:
0
,
}
}
console
.
log
(
this
.
state
.
dbPL
)
console
.
log
(
this
.
state
.
dbPL
)
// console.log(JSON.stringify(payload))
// console.log(JSON.stringify(payload))
...
...
src/container/RollingOutlook.js
View file @
70c7ed28
...
@@ -18,6 +18,7 @@ import ProfitLossRO from './RollingOutlook/ProfitLossRO';
...
@@ -18,6 +18,7 @@ import ProfitLossRO from './RollingOutlook/ProfitLossRO';
import
TaxPlanningRO
from
'./RollingOutlook/TaxPlanningRO'
;
import
TaxPlanningRO
from
'./RollingOutlook/TaxPlanningRO'
;
import
CorporateAnnualTargetRO
from
'./RollingOutlook/CorporateAnnualTargetRO'
;
import
CorporateAnnualTargetRO
from
'./RollingOutlook/CorporateAnnualTargetRO'
;
import
CashFlowRO
from
'./RollingOutlook/CashFlowRO'
;
import
CashFlowRO
from
'./RollingOutlook/CashFlowRO'
;
import
*
as
R
from
'ramda'
var
ct
=
require
(
"../library/CustomTable"
);
var
ct
=
require
(
"../library/CustomTable"
);
const
getMuiTheme
=
()
=>
createMuiTheme
(
ct
.
customTable
());
const
getMuiTheme
=
()
=>
createMuiTheme
(
ct
.
customTable
());
...
@@ -519,7 +520,7 @@ export default class RollingOutlook extends Component {
...
@@ -519,7 +520,7 @@ export default class RollingOutlook extends Component {
})
})
}
}
getRollingOutlookID
()
{
getRollingOutlookID
(
type
)
{
this
.
setState
({
loading
:
true
})
this
.
setState
({
loading
:
true
})
let
payload
=
{
let
payload
=
{
"company_id"
:
this
.
state
.
company
.
company_id
,
"company_id"
:
this
.
state
.
company
.
company_id
,
...
@@ -543,6 +544,12 @@ export default class RollingOutlook extends Component {
...
@@ -543,6 +544,12 @@ export default class RollingOutlook extends Component {
console
.
log
(
this
.
state
.
lastStatus
);
console
.
log
(
this
.
state
.
lastStatus
);
this
.
historyApproval
()
this
.
historyApproval
()
this
.
getLatestPeriodSubmit
()
this
.
getLatestPeriodSubmit
()
if
(
type
!=
undefined
&&
type
==
'PL'
)
{
// this.getCashFlow(type)
this
.
getPL
(
type
)
}
else
{
this
.
setState
({
loading
:
false
})
}
// api.create().checkApprover().then(response => {
// api.create().checkApprover().then(response => {
// console.log(response);
// console.log(response);
if
(
this
.
state
.
isApprover
)
{
if
(
this
.
state
.
isApprover
)
{
...
@@ -850,6 +857,498 @@ export default class RollingOutlook extends Component {
...
@@ -850,6 +857,498 @@ export default class RollingOutlook extends Component {
}
}
}
}
getPL
(
type
)
{
let
PLID
=
null
let
payloadID
=
{
"periode"
:
this
.
state
.
periode
.
periode
,
"company_id"
:
this
.
state
.
company
.
company_id
}
console
.
log
(
payloadID
);
api
.
create
().
getPLID
(
payloadID
).
then
(
response
=>
{
console
.
log
(
response
);
if
(
response
)
{
PLID
=
response
.
data
.
data
==
null
?
null
:
response
.
data
.
data
.
profit_loss_id
}
else
{
PLID
=
null
}
this
.
setState
({
PLID
},
()
=>
{
let
payload
=
{
"report_id"
:
28
,
"revision"
:
Number
(
this
.
state
.
lastRevision
),
"periode"
:
this
.
state
.
periode
.
periode
,
"company_id"
:
this
.
state
.
company
.
company_id
,
"quartal"
:
this
.
state
.
quarter
.
value
,
"rolling_outlook_id"
:
this
.
state
.
PLID
,
}
api
.
create
().
getHierarkiDBPLRO
(
payload
).
then
(
response
=>
{
// console.log(response);
let
dataTable
=
[]
if
(
response
.
data
)
{
// let dataTable = []
console
.
log
(
response
)
let
res
=
response
.
data
.
data
const
handlePushChild
=
(
item
)
=>
{
dataTable
.
push
([
item
.
type_report_id
,
item
.
id
,
item
.
parent
,
item
.
formula
,
item
.
level
,
item
.
description
,
item
.
profit_detail_rolling_outlook
.
total_actual_before
===
null
?
"0"
:
item
.
profit_detail_rolling_outlook
.
total_actual_before
===
""
?
"0"
:
item
.
profit_detail_rolling_outlook
.
total_actual_before
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
january
,
formula
:
item
.
profit_detail_rolling_outlook
.
january_formula
}
:
item
.
profit_detail_rolling_outlook
.
january
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
february
,
formula
:
item
.
profit_detail_rolling_outlook
.
february_formula
}
:
item
.
profit_detail_rolling_outlook
.
february
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
march
,
formula
:
item
.
profit_detail_rolling_outlook
.
march_formula
}
:
item
.
profit_detail_rolling_outlook
.
march
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
april
,
formula
:
item
.
profit_detail_rolling_outlook
.
april_formula
}
:
item
.
profit_detail_rolling_outlook
.
april
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
may
,
formula
:
item
.
profit_detail_rolling_outlook
.
may_formula
}
:
item
.
profit_detail_rolling_outlook
.
may
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
june
,
formula
:
item
.
profit_detail_rolling_outlook
.
june_formula
}
:
item
.
profit_detail_rolling_outlook
.
june
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
july
,
formula
:
item
.
profit_detail_rolling_outlook
.
july_formula
}
:
item
.
profit_detail_rolling_outlook
.
july
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
august
,
formula
:
item
.
profit_detail_rolling_outlook
.
august_formula
}
:
item
.
profit_detail_rolling_outlook
.
august
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
september
,
formula
:
item
.
profit_detail_rolling_outlook
.
september_formula
}
:
item
.
profit_detail_rolling_outlook
.
september
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
october
,
formula
:
item
.
profit_detail_rolling_outlook
.
october_formula
}
:
item
.
profit_detail_rolling_outlook
.
october
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
november
,
formula
:
item
.
profit_detail_rolling_outlook
.
november_formula
}
:
item
.
profit_detail_rolling_outlook
.
november
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
december
,
formula
:
item
.
profit_detail_rolling_outlook
.
december_formula
}
:
item
.
profit_detail_rolling_outlook
.
december
,
item
.
profit_detail_rolling_outlook
.
total_current_year
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
0
:
item
.
profit_detail_rolling_outlook
.
total_next_year
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
0
:
item
.
profit_detail_rolling_outlook
.
total_more_year
,
item
.
order
,
item
.
condition_it_should_be
,
item
.
condition_if_wrong
,
item
.
profit_detail_rolling_outlook
.
forecast_formula
==
null
?
[]
:
item
.
profit_detail_rolling_outlook
.
forecast_formula
,
item
.
profit_detail_rolling_outlook
.
notes
])
if
(
item
.
children
!==
null
)
{
if
(
item
.
children
.
length
>
0
)
{
item
.
children
.
map
((
items
,
indexs
)
=>
{
handlePushChild
(
items
)
})
}
}
}
res
.
map
((
item
,
index
)
=>
{
dataTable
.
push
([
item
.
type_report_id
,
item
.
id
,
item
.
parent
,
item
.
formula
,
item
.
level
,
item
.
description
,
item
.
profit_detail_rolling_outlook
.
total_actual_before
===
null
?
"0"
:
item
.
profit_detail_rolling_outlook
.
total_actual_before
===
""
?
"0"
:
item
.
profit_detail_rolling_outlook
.
total_actual_before
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
january
,
formula
:
item
.
profit_detail_rolling_outlook
.
january_formula
}
:
item
.
profit_detail_rolling_outlook
.
january
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
february
,
formula
:
item
.
profit_detail_rolling_outlook
.
february_formula
}
:
item
.
profit_detail_rolling_outlook
.
february
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
march
,
formula
:
item
.
profit_detail_rolling_outlook
.
march_formula
}
:
item
.
profit_detail_rolling_outlook
.
march
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
april
,
formula
:
item
.
profit_detail_rolling_outlook
.
april_formula
}
:
item
.
profit_detail_rolling_outlook
.
april
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
may
,
formula
:
item
.
profit_detail_rolling_outlook
.
may_formula
}
:
item
.
profit_detail_rolling_outlook
.
may
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
june
,
formula
:
item
.
profit_detail_rolling_outlook
.
june_formula
}
:
item
.
profit_detail_rolling_outlook
.
june
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
july
,
formula
:
item
.
profit_detail_rolling_outlook
.
july_formula
}
:
item
.
profit_detail_rolling_outlook
.
july
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
august
,
formula
:
item
.
profit_detail_rolling_outlook
.
august_formula
}
:
item
.
profit_detail_rolling_outlook
.
august
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
september
,
formula
:
item
.
profit_detail_rolling_outlook
.
september_formula
}
:
item
.
profit_detail_rolling_outlook
.
september
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
october
,
formula
:
item
.
profit_detail_rolling_outlook
.
october_formula
}
:
item
.
profit_detail_rolling_outlook
.
october
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
november
,
formula
:
item
.
profit_detail_rolling_outlook
.
november_formula
}
:
item
.
profit_detail_rolling_outlook
.
november
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
{
value
:
item
.
profit_detail_rolling_outlook
.
december
,
formula
:
item
.
profit_detail_rolling_outlook
.
december_formula
}
:
item
.
profit_detail_rolling_outlook
.
december
,
item
.
profit_detail_rolling_outlook
.
total_current_year
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
0
:
item
.
profit_detail_rolling_outlook
.
total_next_year
,
item
.
type_report_id
==
5
||
item
.
type_report_id
==
6
||
item
.
type_report_id
==
7
?
0
:
item
.
profit_detail_rolling_outlook
.
total_more_year
,
item
.
order
,
item
.
condition_it_should_be
,
item
.
condition_if_wrong
,
item
.
profit_detail_rolling_outlook
.
forecast_formula
==
null
?
[]
:
item
.
profit_detail_rolling_outlook
.
forecast_formula
,
item
.
profit_detail_rolling_outlook
.
notes
])
if
(
item
.
children
!==
null
)
{
if
(
item
.
children
.
length
>
0
)
{
item
.
children
.
map
((
items
,
indexs
)
=>
{
handlePushChild
(
items
)
})
}
}
})
// console.log(dataTable)
this
.
setState
({
dbPL
:
dataTable
},
()
=>
{
this
.
olahDataPL
(
this
.
state
.
dbPL
,
type
)
})
}
else
{
this
.
setState
({
dbPL
:
[],
previewTable
:
false
,
previewDownload
:
false
})
}
})
})
})
}
handleValueFormulaDBPL
=
(
indexDBCF
,
value
,
tableMeta
,
column
,
periode
,
forecast
)
=>
{
let
splitFormula
=
String
(
tableMeta
[
3
]).
split
(
/
([
()@
])
/
)
// let splitFormula = String(tableMeta.rowData[3]).split('@')
let
baru
=
[]
let
anjay
=
[]
let
dataTable2
=
this
.
state
.
dbPL
// if (forecast !== undefined) {
// console.log(tableMeta)
// }
splitFormula
.
map
((
item
,
index
)
=>
{
let
items
=
String
(
item
).
substr
(
Number
(
String
(
item
).
length
)
-
1
,
1
)
let
subForm
=
String
(
item
).
substr
(
0
,
Number
(
String
(
item
).
length
)
-
1
)
let
re
=
/^
[
a-zA-Z0-9_
]
+$/
;
let
asd
=
''
if
(
item
!==
""
)
{
if
(
!
re
.
test
(
items
))
{
baru
.
push
(
subForm
)
baru
.
push
(
items
)
}
else
{
baru
.
push
(
String
(
item
))
}
}
})
baru
.
map
((
item
,
index
)
=>
{
if
(
item
==
'-'
||
item
==
'+'
||
item
==
'/'
||
item
==
'*'
||
item
==
'('
||
item
==
')'
)
{
anjay
.
push
(
item
)
}
else
{
if
(
String
(
item
).
includes
(
'#'
))
{
if
(
forecast
!==
undefined
)
{
let
forecastt
=
0
forecast
.
map
((
items
,
index
)
=>
{
if
(
items
.
periode
==
periode
)
{
forecastt
+=
Number
(
items
.
value
)
}
})
anjay
.
push
(
forecastt
)
}
else
{
if
(
String
(
item
).
includes
(
'[M-1]'
))
{
let
tst
=
String
(
item
).
replace
(
'[M-1]'
,
''
)
let
data
=
column
==
7
?
18
:
column
-
1
let
period
=
data
==
18
?
Number
(
this
.
state
.
periode
.
periode
)
-
1
:
this
.
state
.
periode
.
periode
let
indexID
=
tableMeta
[
data
].
formula
.
findIndex
((
val
)
=>
val
.
item_formula
==
String
(
`@
${
tst
}
`
)
&&
val
.
periode
==
period
)
if
(
indexID
!==
-
1
)
{
let
valuezz
=
tableMeta
[
data
].
formula
[
indexID
].
value
anjay
.
push
(
valuezz
==
""
?
0
:
valuezz
)
}
}
else
{
// console.log(item)
let
indexID
=
value
.
formula
.
findIndex
((
val
)
=>
val
.
item_formula
==
String
(
`@
${
item
}
`
)
&&
val
.
periode
==
Number
(
this
.
state
.
periode
.
periode
))
if
(
indexID
!==
-
1
)
{
let
valuezz
=
value
.
formula
[
indexID
].
value
anjay
.
push
(
valuezz
==
""
?
0
:
valuezz
)
}
}
}
}
else
{
let
indexID
=
dataTable2
.
findIndex
((
val
)
=>
val
[
22
]
==
item
)
if
(
indexID
!==
-
1
)
{
// if (forecast !== undefined) {
// console.log(dataTable2[indexID])
// console.log(column)
// console.log(dataTable2[indexID][column])
// }
if
(
forecast
!=
undefined
)
{
// console.log(dataTable2[indexID][column])
}
let
valuezz
=
dataTable2
[
indexID
][
column
].
value
==
undefined
?
dataTable2
[
indexID
][
column
]
:
dataTable2
[
indexID
][
column
].
value
anjay
.
push
(
valuezz
==
""
?
0
:
valuezz
)
}
else
{
if
(
item
===
'(-1)'
)
{
anjay
.
push
(
-
1
)
}
}
}
}
})
let
anjay2
=
[]
let
kurung
=
false
let
item1
=
[]
anjay
.
map
((
item
,
index
)
=>
{
if
(
item
==
"("
)
{
kurung
=
true
}
else
if
(
item
==
")"
)
{
kurung
=
false
anjay2
.
push
(
item1
)
item1
=
[]
}
else
{
if
(
kurung
)
{
item1
.
push
(
item
)
}
else
{
anjay2
.
push
(
item
)
}
}
})
let
total
=
0
let
opt
=
""
let
totalPrio
=
0
let
optPrio
=
""
let
prio
=
false
anjay2
.
map
((
item
,
index
)
=>
{
if
(
Array
.
isArray
(
item
))
{
prio
=
true
item
.
map
((
items
,
indexs
)
=>
{
if
(
items
==
"+"
)
{
optPrio
=
"tambah"
}
else
if
(
items
==
"-"
)
{
optPrio
=
"kurang"
}
else
if
(
items
==
"*"
)
{
optPrio
=
"kali"
}
else
if
(
items
==
"/"
)
{
optPrio
=
"bagi"
}
else
{
if
(
optPrio
==
"tambah"
)
{
totalPrio
=
Number
(
totalPrio
)
+
Number
(
items
)
}
else
if
(
optPrio
==
"kurang"
)
{
totalPrio
=
Number
(
totalPrio
)
-
Number
(
items
)
}
else
if
(
optPrio
==
"kali"
)
{
totalPrio
=
Number
(
totalPrio
)
*
Number
(
items
)
}
else
if
(
optPrio
==
"bagi"
)
{
totalPrio
=
Number
(
totalPrio
)
/
Number
(
items
)
==
NaN
?
0
:
Number
(
totalPrio
)
/
Number
(
items
)
}
else
{
totalPrio
+=
Number
(
items
)
}
}
})
if
(
index
==
anjay2
.
length
-
1
)
{
if
(
opt
==
"tambah"
)
{
total
=
Number
(
total
)
+
Number
(
totalPrio
)
}
else
if
(
opt
==
"kurang"
)
{
total
=
Number
(
total
)
-
Number
(
totalPrio
)
}
else
if
(
opt
==
"kali"
)
{
total
=
Number
(
total
)
*
Number
(
totalPrio
)
}
else
if
(
opt
==
"bagi"
)
{
total
=
Number
(
total
)
/
Number
(
totalPrio
)
==
NaN
?
0
:
Number
(
total
)
/
Number
(
totalPrio
)
}
else
{
total
+=
Number
(
totalPrio
)
}
}
}
else
{
// console.log(item.length)
if
(
item
==
"+"
)
{
opt
=
"tambah"
if
(
prio
)
{
total
=
Number
(
Number
(
totalPrio
)
+
Number
(
total
))
prio
=
false
totalPrio
=
0
optPrio
=
""
}
}
else
if
(
item
==
"-"
)
{
opt
=
"kurang"
if
(
prio
)
{
total
=
Number
(
Number
(
totalPrio
)
+
Number
(
total
))
prio
=
false
totalPrio
=
0
optPrio
=
""
}
}
else
if
(
item
==
"*"
)
{
opt
=
"kali"
if
(
prio
)
{
total
=
Number
(
Number
(
totalPrio
)
+
Number
(
total
))
prio
=
false
totalPrio
=
0
optPrio
=
""
}
}
else
if
(
item
==
"/"
)
{
opt
=
"bagi"
if
(
prio
)
{
total
=
Number
(
Number
(
totalPrio
)
+
Number
(
total
))
prio
=
false
totalPrio
=
0
optPrio
=
""
}
}
else
{
if
(
opt
==
"tambah"
)
{
total
=
Number
(
total
)
+
Number
(
item
)
}
else
if
(
opt
==
"kurang"
)
{
total
=
Number
(
total
)
-
Number
(
item
)
}
else
if
(
opt
==
"kali"
)
{
total
=
Number
(
total
)
*
Number
(
item
)
}
else
if
(
opt
==
"bagi"
)
{
total
=
Number
(
total
)
/
Number
(
item
)
==
NaN
?
0
:
Number
(
total
)
/
Number
(
item
)
}
else
{
total
+=
Number
(
item
)
}
}
}
})
if
(
String
(
tableMeta
[
5
])
==
"Cost of Goods Sold (COGS)"
&&
column
==
20
)
{
console
.
log
(
splitFormula
)
console
.
log
(
baru
)
console
.
log
(
anjay
)
console
.
log
(
anjay2
)
console
.
log
(
total
)
}
total
=
R
.
equals
(
total
,
NaN
)
?
"0.0"
:
total
return
total
}
handleForecastDBPL
=
(
index
,
tableMeta
,
periode
,
column
)
=>
{
let
total
=
0
let
dataTable2
=
this
.
state
.
dbPL
if
(
tableMeta
[
3
].
includes
(
'#PL'
))
{
dataTable2
[
index
][
25
].
map
((
item
,
index
)
=>
{
if
(
item
.
periode
==
periode
)
{
total
+=
Number
(
item
.
value
)
}
})
}
else
{
total
=
this
.
handleValueFormulaDBPL
(
dataTable2
[
index
][
column
],
tableMeta
[
column
],
tableMeta
,
column
,
periode
,
dataTable2
[
index
][
25
])
}
return
total
}
olahDataPL
(
dbPL
,
type
)
{
dbPL
.
map
((
item
,
index
)
=>
{
if
(
item
[
0
]
==
5
||
item
[
0
]
==
6
||
item
[
0
]
==
7
)
{
item
[
7
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
7
],
item
,
7
)
item
[
8
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
8
],
item
,
8
)
item
[
9
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
9
],
item
,
9
)
item
[
10
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
10
],
item
,
10
)
item
[
11
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
11
],
item
,
11
)
item
[
12
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
12
],
item
,
12
)
item
[
13
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
13
],
item
,
13
)
item
[
14
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
14
],
item
,
14
)
item
[
15
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
15
],
item
,
15
)
item
[
16
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
16
],
item
,
16
)
item
[
17
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
17
],
item
,
17
)
item
[
18
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
18
],
item
,
18
)
item
[
20
]
=
this
.
handleForecastDBPL
(
index
,
item
,
`
${
Number
(
this
.
state
.
periode
.
periode
)
+
1
}
`
,
20
)
item
[
21
]
=
this
.
handleForecastDBPL
(
index
,
item
,
`
${
Number
(
this
.
state
.
periode
.
periode
)
+
2
}
`
,
21
)
}
})
this
.
setState
({
dbPL
},
()
=>
{
this
.
payloadPL
(
type
)
})
}
payloadPL
(
type
)
{
let
listPL
=
[]
// console.log(this.state.dbPL)
this
.
state
.
dbPL
.
map
((
item
,
index
)
=>
{
if
(
item
[
0
]
==
5
||
item
[
0
]
==
6
||
item
[
0
]
==
7
)
{
// if (item[7].value == "" || item[7].value == 0 || item[7].value == "0.0") {
item
[
7
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
7
],
item
,
7
)
// }
// if (item[8].value == "" || item[8].value == 0 || item[8].value == "0.0") {
item
[
8
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
8
],
item
,
8
)
// }
// if (item[9].value == "" || item[9].value == 0 || item[9].value == "0.0") {
item
[
9
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
9
],
item
,
9
)
// }
// if (item[10].value == "" || item[10].value == 0 || item[10].value == "0.0") {
item
[
10
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
10
],
item
,
10
)
// }
// if (item[11].value == "" || item[11].value == 0 || item[11].value == "0.0") {
item
[
11
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
11
],
item
,
11
)
// }
// if (item[12].value == "" || item[12].value == 0 || item[12].value == "0.0") {
item
[
12
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
12
],
item
,
12
)
// }
// if (item[13].value == "" || item[13].value == 0 || item[13].value == "0.0") {
item
[
13
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
13
],
item
,
13
)
// }
// if (item[14].value == "" || item[14].value == 0 || item[14].value == "0.0") {
item
[
14
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
14
],
item
,
14
)
// }
// if (item[15].value == "" || item[15].value == 0 || item[15].value == "0.0") {
item
[
15
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
15
],
item
,
15
)
// }
// if (item[16].value == "" || item[16].value == 0 || item[16].value == "0.0") {
item
[
16
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
16
],
item
,
16
)
// }
// if (item[17].value == "" || item[17].value == 0 || item[17].value == "0.0") {
item
[
17
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
17
],
item
,
17
)
// }
// if (item[18].value == "" || item[18].value == 0 || item[18].value == "0.0") {
item
[
18
].
value
=
this
.
handleValueFormulaDBPL
(
index
,
item
[
18
],
item
,
18
)
// }
// if (item[20] == "" || item[20] == 0 || item[20] == "0.0") {
item
[
20
]
=
this
.
handleForecastDBPL
(
index
,
item
,
`
${
Number
(
this
.
state
.
periode
.
periode
)
+
1
}
`
,
20
)
// }
// if (item[21] == "" || item[21] == 0 || item[21] == "0.0") {
item
[
21
]
=
this
.
handleForecastDBPL
(
index
,
item
,
`
${
Number
(
this
.
state
.
periode
.
periode
)
+
2
}
`
,
21
)
// }
}
listPL
.
push
(
{
"item_report_id"
:
item
[
1
],
"january"
:
String
(
item
[
7
].
value
==
undefined
?
item
[
7
]
:
Number
(
item
[
7
].
value
).
toFixed
(
1
)),
"february"
:
String
(
item
[
8
].
value
==
undefined
?
item
[
8
]
:
Number
(
item
[
8
].
value
).
toFixed
(
1
)),
"march"
:
String
(
item
[
9
].
value
==
undefined
?
item
[
9
]
:
Number
(
item
[
9
].
value
).
toFixed
(
1
)),
"april"
:
String
(
item
[
10
].
value
==
undefined
?
item
[
10
]
:
Number
(
item
[
10
].
value
).
toFixed
(
1
)),
"may"
:
String
(
item
[
11
].
value
==
undefined
?
item
[
11
]
:
Number
(
item
[
11
].
value
).
toFixed
(
1
)),
"june"
:
String
(
item
[
12
].
value
==
undefined
?
item
[
12
]
:
Number
(
item
[
12
].
value
).
toFixed
(
1
)),
"july"
:
String
(
item
[
13
].
value
==
undefined
?
item
[
13
]
:
Number
(
item
[
13
].
value
).
toFixed
(
1
)),
"august"
:
String
(
item
[
14
].
value
==
undefined
?
item
[
14
]
:
Number
(
item
[
14
].
value
).
toFixed
(
1
)),
"september"
:
String
(
item
[
15
].
value
==
undefined
?
item
[
15
]
:
Number
(
item
[
15
].
value
).
toFixed
(
1
)),
"october"
:
String
(
item
[
16
].
value
==
undefined
?
item
[
16
]
:
Number
(
item
[
16
].
value
).
toFixed
(
1
)),
"november"
:
String
(
item
[
17
].
value
==
undefined
?
item
[
17
]
:
Number
(
item
[
17
].
value
).
toFixed
(
1
)),
"december"
:
String
(
item
[
18
].
value
==
undefined
?
item
[
18
]
:
Number
(
item
[
18
].
value
).
toFixed
(
1
)),
"total_current_year"
:
String
(
item
[
19
]),
"total_next_year"
:
String
(
item
[
20
]
!=
''
?
Number
(
item
[
20
]).
toFixed
(
1
)
:
item
[
20
]),
"total_more_year"
:
String
(
item
[
21
]
!=
''
?
Number
(
item
[
21
]).
toFixed
(
1
)
:
item
[
21
]),
"notes"
:
String
(
item
[
26
]),
}
)
})
// console.log(listPL)
this
.
setState
({
dbPL
:
listPL
},
()
=>
{
// if (this.state.submissionID != null) {
// this.createDBPL()
// }
if
(
type
!=
undefined
)
{
if
(
type
==
'PL'
)
{
console
.
log
(
'tarik sis'
)
this
.
createDBPL
()
}
}
})
}
createDBPL
()
{
let
payload
=
{
// "submission_id": this.state.submissionID,
"company_id"
:
this
.
state
.
company
.
company_id
,
"periode"
:
this
.
state
.
periode
.
periode
,
"report_id"
:
28
,
"status"
:
"submitted"
,
"profit_loss_id"
:
this
.
state
.
PLID
,
"profit_loss_ro"
:
this
.
state
.
dbPL
,
"quartal"
:
this
.
state
.
quarter
.
value
,
}
console
.
log
(
this
.
state
.
dbPL
)
// console.log(JSON.stringify(payload))
api
.
create
().
createDBPLRO
(
payload
).
then
((
res
)
=>
{
console
.
log
(
res
)
this
.
setState
({
loading
:
false
})
})
}
render
()
{
render
()
{
const
handleMaxDate
=
()
=>
{
const
handleMaxDate
=
()
=>
{
let
handleDate
=
Number
(
moment
(
this
.
state
.
maxDateRevision
).
format
(
'YYYYMMDD'
))
-
Number
(
moment
(
this
.
state
.
minDateRevision
).
format
(
'YYYYMMDD'
))
let
handleDate
=
Number
(
moment
(
this
.
state
.
maxDateRevision
).
format
(
'YYYYMMDD'
))
-
Number
(
moment
(
this
.
state
.
minDateRevision
).
format
(
'YYYYMMDD'
))
...
...
src/container/RollingOutlook/ProfitLossRO.js
View file @
70c7ed28
...
@@ -405,7 +405,11 @@ export default class ProfitLossROO extends Component {
...
@@ -405,7 +405,11 @@ export default class ProfitLossROO extends Component {
console
.
log
(
response
);
console
.
log
(
response
);
if
(
response
.
data
)
{
if
(
response
.
data
)
{
if
(
response
.
data
.
status
===
"success"
)
{
if
(
response
.
data
.
status
===
"success"
)
{
if
(
type
==
'submitted'
)
{
this
.
props
.
refresh
(
'PL'
)
}
else
{
this
.
props
.
refresh
()
this
.
props
.
refresh
()
}
this
.
props
.
onClickClose
()
this
.
props
.
onClickClose
()
}
else
{
}
else
{
this
.
setState
({
alert
:
true
,
messageAlert
:
response
.
data
.
message
,
tipeAlert
:
'warning'
,
loading
:
false
,
handleTekTekTek
:
0
},
()
=>
{
this
.
setState
({
alert
:
true
,
messageAlert
:
response
.
data
.
message
,
tipeAlert
:
'warning'
,
loading
:
false
,
handleTekTekTek
:
0
},
()
=>
{
...
@@ -573,7 +577,11 @@ export default class ProfitLossROO extends Component {
...
@@ -573,7 +577,11 @@ export default class ProfitLossROO extends Component {
if
(
response
.
ok
)
{
if
(
response
.
ok
)
{
if
(
response
.
data
.
status
===
"success"
)
{
if
(
response
.
data
.
status
===
"success"
)
{
this
.
props
.
onClickClose
()
this
.
props
.
onClickClose
()
if
(
type
==
'submitted'
)
{
this
.
props
.
refresh
(
'PL'
)
}
else
{
this
.
props
.
refresh
()
this
.
props
.
refresh
()
}
// this.props.onClickClose()
// this.props.onClickClose()
// this.props.getReport()
// this.props.getReport()
}
else
{
}
else
{
...
...
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