Commit 79747d8b authored by Riri Novita's avatar Riri Novita

Merge branch 'master' of http://103.44.149.204/d.arizona/tia-dev into riri

parents d37baa6d 4752199b
...@@ -640,13 +640,20 @@ class HomePage extends Component { ...@@ -640,13 +640,20 @@ class HomePage extends Component {
<div style={{ display: 'flex', overflowX: 'scroll', width: this.props.width * 0.9 }}> <div style={{ display: 'flex', overflowX: 'scroll', width: this.props.width * 0.9 }}>
{items.category.map((item, index) => { {items.category.map((item, index) => {
return ( return (
<div style={{ padding: 10, backgroundColor: '#fff', borderRadius: 6, paddingBottom: 20, margin: 10, boxShadow: '0 1px 4px 0 rgba(0, 0, 0, 0.25)', width: 250, marginRight: index == items.category.length - 1 ? 25 : 0, marginLeft: index == 0 ? 5 : 25 }}> <Link to={{
pathname: `/home/cat-dashboard/`,
state: {
userType: 'user',
rawData: { month: this.state.monthCAT.month_id, periode: this.state.periodeCAT.value, companyId: item.company_id }
}
}}>
<div style={{ padding: 10, backgroundColor: '#fff', height: 350, borderRadius: 6, paddingBottom: 20, margin: 10, boxShadow: '0 1px 4px 0 rgba(0, 0, 0, 0.25)', width: 250, marginRight: index == items.category.length - 1 ? 25 : 0, marginLeft: index == 0 ? 5 : 25 }}>
{/* <span style={{ fontSize: '17px', color: this.state.selectIndex === index ? '#fff' : '#7e8085', maxWidth: 100 }}>{item.category_name}</span> */} {/* <span style={{ fontSize: '17px', color: this.state.selectIndex === index ? '#fff' : '#7e8085', maxWidth: 100 }}>{item.category_name}</span> */}
<div style={{ fontSize: '17px', width: '100%' }}> <div style={{ fontSize: '17px', width: '100%', height: 25 }}>
<Typography style={{ textAlign: 'left', color: '#4b4b4b' }}>{titleCase(String(item.category_name).toLocaleLowerCase())}</Typography> <Typography style={{ textAlign: 'left', color: '#4b4b4b' }}>{item.category_name}</Typography>
</div> </div>
{item.total_kpi != null && {item.total_kpi != null &&
<div style={{ width: '100%', display: 'flex', justifyContent: 'center', marginTop: String(item.category_name).toLocaleLowerCase().includes('internal') ? 0 : 25 }}> <div style={{ width: '100%', display: 'flex', justifyContent: 'center', marginTop: 10 }}>
<span style={{ textAlign: 'center', fontSize: '18px', color: "#fff" }}>{item.total_kpi}</span> <span style={{ textAlign: 'center', fontSize: '18px', color: "#fff" }}>{item.total_kpi}</span>
{/* <span style={{ textAlign: 'center', fontSize: '11px', color: selectIndex === index ? "#fff" : '#4b4b4b' }}>KPIs</span> */} {/* <span style={{ textAlign: 'center', fontSize: '11px', color: selectIndex === index ? "#fff" : '#4b4b4b' }}>KPIs</span> */}
</div>} </div>}
...@@ -688,6 +695,7 @@ class HomePage extends Component { ...@@ -688,6 +695,7 @@ class HomePage extends Component {
} }
</div> </div>
</div> </div>
</Link>
) )
})} })}
</div> </div>
...@@ -910,12 +918,12 @@ class HomePage extends Component { ...@@ -910,12 +918,12 @@ class HomePage extends Component {
pathname: `/home/cat-dashboard/`, pathname: `/home/cat-dashboard/`,
state: { state: {
userType: 'user', userType: 'user',
rawData: {month: this.state.monthCAT.month_id, periode: this.state.periodeCAT.value, companyId: item.company_id} rawData: { month: this.state.monthCAT.month_id, periode: this.state.periodeCAT.value, companyId: item.company_id }
} }
}}> }}>
<div style={{ padding: 10, backgroundColor: '#fff', height: 350, borderRadius: 6, paddingBottom: 20, margin: 10, boxShadow: '0 1px 4px 0 rgba(0, 0, 0, 0.25)', width: 250, marginRight: index == items.category.length - 1 ? 25 : 0, marginLeft: index == 0 ? 5 : 25 }}> <div style={{ padding: 10, backgroundColor: '#fff', height: 350, borderRadius: 6, paddingBottom: 20, margin: 10, boxShadow: '0 1px 4px 0 rgba(0, 0, 0, 0.25)', width: 250, marginRight: index == items.category.length - 1 ? 25 : 0, marginLeft: index == 0 ? 5 : 25 }}>
{/* <span style={{ fontSize: '17px', color: this.state.selectIndex === index ? '#fff' : '#7e8085', maxWidth: 100 }}>{item.category_name}</span> */} {/* <span style={{ fontSize: '17px', color: this.state.selectIndex === index ? '#fff' : '#7e8085', maxWidth: 100 }}>{item.category_name}</span> */}
<div style={{ fontSize: '17px', width: '100%', height: 25}}> <div style={{ fontSize: '17px', width: '100%', height: 25 }}>
<Typography style={{ textAlign: 'left', color: '#4b4b4b' }}>{item.category_name}</Typography> <Typography style={{ textAlign: 'left', color: '#4b4b4b' }}>{item.category_name}</Typography>
</div> </div>
{item.total_kpi != null && {item.total_kpi != null &&
......
...@@ -3062,10 +3062,17 @@ export default class SubHolding extends Component { ...@@ -3062,10 +3062,17 @@ export default class SubHolding extends Component {
a.click(); a.click();
} }
} else if (this.state.report.value === 8) { } else if (this.state.report.value === 8) {
<<<<<<< HEAD
let url = `${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/summary_profit_loss/export_report?submission_id=${this.state.submissionID === null ? "" : this.state.submissionID}&&report_id=28&&company_id=${this.state.company.company_id}&&year=${this.state.periode.periode}&&revision=${this.state.revisionType}&&months=${this.state.month.month_id}&&quarter=1` let url = `${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/summary_profit_loss/export_report?submission_id=${this.state.submissionID === null ? "" : this.state.submissionID}&&report_id=28&&company_id=${this.state.company.company_id}&&year=${this.state.periode.periode}&&revision=${this.state.revisionType}&&months=${this.state.month.month_id}&&quarter=1`
console.log(url); console.log(url);
let res = await fetch( let res = await fetch(
`${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/summary_profit_loss/export_report?submission_id=${this.state.submissionID === null ? "" : this.state.submissionID}&&report_id=28&&company_id=${this.state.company.company_id}&&year=${this.state.periode.periode}&&revision=${this.state.revisionType}&&months=${this.state.month.month_id}&&quarter=1` `${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/summary_profit_loss/export_report?submission_id=${this.state.submissionID === null ? "" : this.state.submissionID}&&report_id=28&&company_id=${this.state.company.company_id}&&year=${this.state.periode.periode}&&revision=${this.state.revisionType}&&months=${this.state.month.month_id}&&quarter=1`
=======
let url = `${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/summary_profit_loss/export_report_summary?submission_id=${this.state.submissionID === null ? "" : this.state.submissionID}&&report_id=28&&company_id=${this.state.company.company_id}&&year=${this.state.periode.periode}&&revision=${this.state.revisionType}&&months=${this.state.month.month_id}&&quarter=1`
console.log(url);
let res = await fetch(
`${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/summary_profit_loss/export_report_summary?submission_id=${this.state.submissionID === null ? "" : this.state.submissionID}&&report_id=28&&company_id=${this.state.company.company_id}&&year=${this.state.periode.periode}&&revision=${this.state.revisionType}&&months=${this.state.month.month_id}&&quarter=1`
>>>>>>> 4752199b2929e79f17c72bc4f983e9058f435870
) )
res = await res.blob() res = await res.blob()
this.setState({ loading: false }) this.setState({ loading: false })
......
...@@ -625,10 +625,8 @@ export default class MonthlyReport extends Component { ...@@ -625,10 +625,8 @@ export default class MonthlyReport extends Component {
// // console.log(this.state.lastStatus); // // console.log(this.state.lastStatus);
this.historyApproval() this.historyApproval()
this.getLatestPeriodSubmit() this.getLatestPeriodSubmit()
// this.getCashFlow(type)
// this.getPL(type) // this.getPL(type)
if (type != undefined) { if (type != undefined) {
// this.getCashFlow(type)
this.getPL(type) this.getPL(type)
} else { } else {
this.setState({ loading: false }) this.setState({ loading: false })
...@@ -722,6 +720,7 @@ export default class MonthlyReport extends Component { ...@@ -722,6 +720,7 @@ export default class MonthlyReport extends Component {
visibleBS: false, visibleBS: false,
visiblePL: false, visiblePL: false,
visibleCAT: false, visibleCAT: false,
visibleCF: false,
visibleFAM: false, visibleFAM: false,
visibleTP: false, visibleTP: false,
visibleLOCF: false, visibleLOCF: false,
......
...@@ -85,7 +85,7 @@ export default class CashFlowMR extends Component { ...@@ -85,7 +85,7 @@ export default class CashFlowMR extends Component {
// console.log(checkLastStatus) // console.log(checkLastStatus)
// console.log(checkApprover) // console.log(checkApprover)
// console.log(checkPrevRev) // console.log(checkPrevRev)
this.setState({viewOnly: !checkApprover && checkLastStatus && checkStatus && checkPrevRev}) this.setState({ viewOnly: !checkApprover && checkLastStatus && checkStatus && checkPrevRev })
} }
componentDidMount() { componentDidMount() {
...@@ -717,7 +717,8 @@ export default class CashFlowMR extends Component { ...@@ -717,7 +717,8 @@ export default class CashFlowMR extends Component {
</div> </div>
</button> </button>
</div> </div>
{this.state.viewOnly && <div className="col-2" style={{ display: 'flex', justifyContent: 'flex-end', maxWidth: '100%' }}> {this.state.viewOnly &&
<div className="col-2" style={{ display: 'flex', justifyContent: 'flex-end', maxWidth: '100%' }}>
<button <button
type="button" type="button"
// disabled={this.state.buttonError} // disabled={this.state.buttonError}
...@@ -740,7 +741,8 @@ export default class CashFlowMR extends Component { ...@@ -740,7 +741,8 @@ export default class CashFlowMR extends Component {
<Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Save & Complete</Typography> <Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Save & Complete</Typography>
</div> </div>
</button> </button>
</div>} </div>
}
</div> </div>
</div> </div>
</Paper> </Paper>
......
...@@ -128,7 +128,7 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -128,7 +128,7 @@ export default class CorporateAnnualTargetMR extends Component {
checkStatus = false checkStatus = false
} }
this.setState({ viewOnly: !checkApprover && checkLastStatus && checkStatus && checkPrevRev}) this.setState({ viewOnly: !checkApprover && checkLastStatus && checkStatus && checkPrevRev })
} }
getParameterGroup() { getParameterGroup() {
...@@ -238,7 +238,7 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -238,7 +238,7 @@ export default class CorporateAnnualTargetMR extends Component {
]) ])
// let index = dataTable.findIndex((val) => val[5] == item.description) // let index = dataTable.findIndex((val) => val[5] == item.description)
console.log(index, length - 1) console.log(index, length - 1)
if (index == length -1 && item.parent_name == "LEARNING & GROWTH PERSPECTIVE") { if (index == length - 1 && item.parent_name == "LEARNING & GROWTH PERSPECTIVE") {
dataTable.push([ dataTable.push([
4, 4,
0, 0,
...@@ -671,17 +671,60 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -671,17 +671,60 @@ export default class CorporateAnnualTargetMR extends Component {
if (item[8] == 'HIB') { if (item[8] == 'HIB') {
let actual = item[11] == "" ? 0 : Number(item[11]) let actual = item[11] == "" ? 0 : Number(item[11])
let target = item[12] == "" ? 0 : Number(item[12]) let target = item[12] == "" ? 0 : Number(item[12])
// if (item[5] == "Striping Ratio (SR) YTD") {
// console.log(actual)
// console.log(target)
// console.log(actual/target)
// }
if (target < 0) {
if (actual > target) {
totalAch = (actual / target) - 1
} else {
totalAch = (actual / target)
}
} else if (target == 0) {
if (target >= actual) {
totalAch = 1.25
} else {
totalAch = 0
}
} else {
if (actual == target) {
totalAch = (actual / target)
} else {
totalAch = 2 - (actual / target) totalAch = 2 - (actual / target)
}
}
// if (item[5] == "Striping Ratio (SR) YTD") {
// console.log(actual)
// console.log(target)
// console.log(actual/target)
// }
} else { } else {
let actual = item[11] == "" ? 0 : Number(item[11]) let actual = item[11] == "" ? 0 : Number(item[11])
let target = item[12] == "" ? 0 : Number(item[12]) let target = item[12] == "" ? 0 : Number(item[12])
totalAch = actual / target if (target < 0) {
if (actual >= target) {
totalAch = ((target - actual) / target) + 1
} else {
totalAch = (target - actual) / target
}
} else if (target == 0) {
if (target <= actual) {
totalAch = 1.25
} else {
totalAch = 0
}
} else {
// if (actual <= target) {
totalAch = (actual / target)
// } else {
// totalAch = 1 - (actual / target)
// }
}
} }
totalAch = String(totalAch) == 'NaN' || String(totalAch) == 'Infinity' || String(totalAch) == '-Infinity' ? 0 : totalAch totalAch = String(totalAch) == 'NaN' || String(totalAch) == 'Infinity' || String(totalAch) == '-Infinity' ? 0 : totalAch
totalAch = Number(totalAch) * 100 totalAch = Number(totalAch) * 100
// if (item[5] == "People Benchstrength") {
// console.log(totalAch)
// }
//score //score
let listParameter = this.state.parameterScore let listParameter = this.state.parameterScore
...@@ -691,22 +734,30 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -691,22 +734,30 @@ export default class CorporateAnnualTargetMR extends Component {
let listParameterFilter = listParameter.filter((val) => val.setting_type == String(parameterMix).toLocaleUpperCase()) let listParameterFilter = listParameter.filter((val) => val.setting_type == String(parameterMix).toLocaleUpperCase())
let listParameterFilterCompany = listParameterFilter.filter((val) => val.company_id == this.props.company.company_id) let listParameterFilterCompany = listParameterFilter.filter((val) => val.company_id == this.props.company.company_id)
let totalScore = 0 let totalScore = 0
let achx100 = item[9] == '100%' && (item[8] == 'HIB' || item[8] == 'HIG')? Number(totalAch) / 100 > 1 ? 1 : Number(totalAch) / 100 : Number(totalAch) / 100 let achx100 = item[9] == '100%' && (item[8] == 'HIB' || item[8] == 'HIG') ? Number(totalAch) / 100 > 1 ? 1 : Number(totalAch) / 100 : Number(totalAch) / 100
// if (item[5] == "Max Quality drop from Bor-Barge") {
// console.log(listParameterFilter)
// console.log(listParameterFilterCompany)
// // console.log(Number(item.min_value))
// console.log(Number(item.max_value))
// }
if (listParameterFilterCompany.length == 0) { if (listParameterFilterCompany.length == 0) {
listParameterFilter.map((item, index) => { listParameterFilter.map((items, index) => {
if (Number(achx100) >= Number(item.min_value) && Number(achx100) <= Number(item.max_value)) { if (Number(achx100) >= Number(items.min_value) && Number(achx100) <= Number(items.max_value)) {
totalScore = Number(item.value) totalScore = Number(items.value)
} }
}) })
} else { } else {
listParameterFilterCompany.map((item, index) => { listParameterFilterCompany.map((items, index) => {
if (Number(achx100) >= Number(item.min_value) && Number(achx100) <= Number(item.max_value)) { if (Number(achx100) >= Number(items.min_value) && Number(achx100) <= Number(items.max_value)) {
totalScore = Number(item.value) totalScore = Number(items.value)
} }
}) })
} }
let totalScorez = Number(totalScore).toFixed(0) let totalScorez = Number(totalScore).toFixed(0)
// if (item[5] == "Max Quality drop from Bor-Barge") {
// console.log(totalScorez)
// }
//Score X Weight //Score X Weight
let totalSW = 0 let totalSW = 0
let handlePercent = '' let handlePercent = ''
...@@ -792,6 +843,7 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -792,6 +843,7 @@ export default class CorporateAnnualTargetMR extends Component {
console.log(listPerfomanceDefault) console.log(listPerfomanceDefault)
console.log(perfomanceScore) console.log(perfomanceScore)
console.log(perfomanceScoreColor) console.log(perfomanceScoreColor)
console.log(datatable3)
// if (lastTotal >= 1.00 && lastTotal <= 2.00) { // if (lastTotal >= 1.00 && lastTotal <= 2.00) {
// perfomanceScore = 'K' // perfomanceScore = 'K'
// } else if (lastTotal >= 2.01 && lastTotal <= 2.75) { // } else if (lastTotal >= 2.01 && lastTotal <= 2.75) {
...@@ -808,10 +860,10 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -808,10 +860,10 @@ export default class CorporateAnnualTargetMR extends Component {
// perfomanceScore = 'IST' // perfomanceScore = 'IST'
// } // }
setTimeout(() => { setTimeout(() => {
this.setState({ totalScore: lastTotal, perfomanceScore, loading: false, perfomanceScoreColor}, () => { this.setState({ totalScore: lastTotal, perfomanceScore, loading: false, perfomanceScoreColor }, () => {
this.setState({loading: true}) this.setState({ loading: true })
setTimeout(() => { setTimeout(() => {
this.setState({loading: false}) this.setState({ loading: false })
}, 500); }, 500);
}) })
}, 500); }, 500);
...@@ -1209,14 +1261,59 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -1209,14 +1261,59 @@ export default class CorporateAnnualTargetMR extends Component {
const handleAchiement = (tableMeta) => { const handleAchiement = (tableMeta) => {
let total = 0 let total = 0
// if (tableMeta.rowData[8] == 'HIB') {
// let actual = tableMeta.rowData[11] == "" ? 0 : Number(tableMeta.rowData[11])
// let target = tableMeta.rowData[12] == "" ? 0 : Number(tableMeta.rowData[12])
// total = 2 - (actual / target)
// } else {
// let actual = tableMeta.rowData[11] == "" ? 0 : Number(tableMeta.rowData[11])
// let target = tableMeta.rowData[12] == "" ? 0 : Number(tableMeta.rowData[12])
// total = actual / target
// }
if (tableMeta.rowData[8] == 'HIB') { if (tableMeta.rowData[8] == 'HIB') {
let actual = tableMeta.rowData[11] == "" ? 0 : Number(tableMeta.rowData[11]) let actual = tableMeta.rowData[11] == "" ? 0 : Number(tableMeta.rowData[11])
let target = tableMeta.rowData[12] == "" ? 0 : Number(tableMeta.rowData[12]) let target = tableMeta.rowData[12] == "" ? 0 : Number(tableMeta.rowData[12])
if (target < 0) {
if (actual > target) {
total = (actual / target) - 1
} else {
total = (actual / target)
}
} else if (target == 0) {
if (target >= actual) {
total = 1.25
} else {
total = 0
}
} else {
if (actual == target) {
total = (actual / target)
} else {
total = 2 - (actual / target) total = 2 - (actual / target)
}
}
} else { } else {
let actual = tableMeta.rowData[11] == "" ? 0 : Number(tableMeta.rowData[11]) let actual = tableMeta.rowData[11] == "" ? 0 : Number(tableMeta.rowData[11])
let target = tableMeta.rowData[12] == "" ? 0 : Number(tableMeta.rowData[12]) let target = tableMeta.rowData[12] == "" ? 0 : Number(tableMeta.rowData[12])
total = actual / target if (target < 0) {
if (actual >= target) {
total = ((target - actual) / target) + 1
} else {
total = (target - actual) / target
}
} else if (target == 0) {
if (target <= actual) {
total = 1.25
} else {
total = 0
}
} else {
// if (actual <= target) {
total = (actual / target)
// } else {
// total = 1 - (actual / target)
// }
}
} }
total = String(total) == 'NaN' || String(total) == 'Infinity' || String(total) == '-Infinity' ? 0 : total total = String(total) == 'NaN' || String(total) == 'Infinity' || String(total) == '-Infinity' ? 0 : total
dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = Number(total) * 100 dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = Number(total) * 100
...@@ -1245,12 +1342,12 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -1245,12 +1342,12 @@ export default class CorporateAnnualTargetMR extends Component {
} }
}) })
} }
if (Number(tableMeta.rowData[12]) > Number(0)){ if (Number(tableMeta.rowData[12]) == Number(0)) {
dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = Number(totalScore).toFixed(0)
return Number(totalScore).toFixed(0)
} else {
dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = Number(0).toFixed(0) dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = Number(0).toFixed(0)
return Number(0).toFixed(0) return Number(0).toFixed(0)
} else {
dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = Number(totalScore).toFixed(0)
return Number(totalScore).toFixed(0)
} }
} }
...@@ -1263,13 +1360,13 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -1263,13 +1360,13 @@ export default class CorporateAnnualTargetMR extends Component {
// } // }
if (tableMeta.rowData[0] == 4) { if (tableMeta.rowData[0] == 4) {
let totalScore = 0 let totalScore = 0
dataTable2.map((item,index) => { dataTable2.map((item, index) => {
if(item[0] !== 4 && item[0] !== 1) { if (item[0] !== 4 && item[0] !== 1) {
totalScore += Number(item[15]) totalScore += Number(item[15])
} }
}) })
dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = Number(totalScore).toFixed(2) dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = Number(totalScore).toFixed(2)
if (tableMeta.rowIndex == dataTable2.length -1) { if (tableMeta.rowIndex == dataTable2.length - 1) {
someXXX = Number(totalScore).toFixed(2) someXXX = Number(totalScore).toFixed(2)
console.log(someXXX) console.log(someXXX)
} }
...@@ -1701,9 +1798,9 @@ export default class CorporateAnnualTargetMR extends Component { ...@@ -1701,9 +1798,9 @@ export default class CorporateAnnualTargetMR extends Component {
customBodyRender: (value, tableMeta) => { customBodyRender: (value, tableMeta) => {
return ( return (
<div style={{ width: 75 }}> <div style={{ width: 75 }}>
{tableMeta.rowData[0] === 1 || tableMeta.rowData[0] === 2? {tableMeta.rowData[0] === 1 || tableMeta.rowData[0] === 2 ?
null : null :
tableMeta.rowData[0] === 4? tableMeta.rowData[0] === 4 ?
handleTotal(tableMeta) handleTotal(tableMeta)
: :
this.state.get_for == 'view' ? this.state.get_for == 'view' ?
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment