Commit dea11cc8 authored by faisalhamdi's avatar faisalhamdi

FAM

parent ef36863f
...@@ -2,6 +2,7 @@ import React, { Component } from 'react'; ...@@ -2,6 +2,7 @@ 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 api from '../../api';
var ct = require("../../library/CustomTable"); var ct = require("../../library/CustomTable");
const getMuiTheme = () => createMuiTheme(ct.customTable()); const getMuiTheme = () => createMuiTheme(ct.customTable());
...@@ -25,32 +26,183 @@ export default class CorporateAnnualTarget extends Component { ...@@ -25,32 +26,183 @@ export default class CorporateAnnualTarget extends Component {
super(props) super(props)
this.state = { this.state = {
dataTable: [ dataTable: [
["FINANCIAL PERSPECTIVE", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181"], // ["FINANCIAL PERSPECTIVE", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181", "9,884,181"],
["Control", "-", "-"], // ["Control", "-", "-"],
["Accumulated Depreciation (negative value)", "2,647,647", "2,058,898"], // ["Accumulated Depreciation (negative value)", "2,647,647", "2,058,898"],
["Control", "-", "-"], // ["Control", "-", "-"],
["Gain / (Loss) on Fixed Assets", "-", "-"], // ["Gain / (Loss) on Fixed Assets", "-", "-"],
["Control", "-", "-"] // ["Control", "-", "-"]
] ]
} }
this.handleValue = this.handleValue.bind(this)
} }
componentDidMount() { componentDidMount() {
this.getItemHierarki()
console.log(this.props); console.log(this.props);
} }
getItemHierarki() {
let payload = {
"report_id": this.props.report_id,
"company_id": this.props.company.company_id
}
api.create().getItemReportHierarki(payload).then(response => {
console.log(response);
if (response.data) {
if (response.data.status === "success") {
let dataTable = []
response.data.data.map((item, index) => {
if (item.children && item.children.length > 0) {
dataTable.push([
item.type_report_id,
item.id,
item.parent,
item.formula,
item.level,
item.description
])
item.children.map(i => {
if (i.children) {
if (i.children.length > 0) {
dataTable.push([
i.type_report_id,
i.id,
i.parent,
i.formula,
i.level,
i.description
])
i.children.map(val => {
if (val.children && val.children.length > 0) {
dataTable.push([
val.type_report_id,
val.id,
val.parent,
val.formula,
val.level,
val.description
])
val.children.map(items => {
console.log(items)
dataTable.push([
items.type_report_id,
items.id,
items.parent,
items.formula,
items.level,
items.description
])
})
} else {
dataTable.push([
val.type_report_id,
val.id,
val.parent,
val.formula,
val.level,
val.description
])
}
})
} else {
dataTable.push([
i.type_report_id,
i.id,
i.parent,
i.formula,
i.level,
i.description
])
}
} else {
dataTable.push([
i.type_report_id,
i.id,
i.parent,
i.formula,
i.level,
i.description
])
}
})
} else {
dataTable.push([
item.type_report_id,
item.id,
item.parent,
item.formula,
item.level,
item.description
])
}
})
console.log(dataTable);
this.setState({ dataTable })
}
}
})
}
handleValue(data) {
let total = 0
this.state.dataTable.map((item, index) => {
if (data.rowData[1] == item[2]) {
total = item[data.columnIndex] == undefined ? (total + 0) : (total + item[data.columnIndex])
}
})
let indexParent = this.state.dataTable.findIndex((val) => val[1] == this.state.dataTable[data.rowIndex][2])
let a = this.state.dataTable[data.rowIndex][data.columnIndex] = total
// console.log(indexParent);
return a
}
handleChange(value, tableMeta) { handleChange(value, tableMeta) {
let val = String(value).split(",").join("")
let data = this.state.dataTable let data = this.state.dataTable
let a = data[tableMeta.rowIndex][tableMeta.columnIndex] = value let indexParent = data.findIndex((val) => val[1] == data[tableMeta.rowIndex][2])
this.setState({ if (indexParent > 0) {
data: a console.log(indexParent)
}, () => console.log(this.state.dataTable)) let a = data[tableMeta.rowIndex][tableMeta.columnIndex] = Number(val)
// let a = data[0].tableMeta.tableData[tableMeta.rowIndex] === value let jagain = data[indexParent][tableMeta.columnIndex]
// console.log(data) a = data[indexParent][tableMeta.columnIndex] = jagain == undefined ? (0 + Number(val)) : (jagain + Number(val))
} else {
data[tableMeta.rowIndex][tableMeta.columnIndex] = Number(val)
}
this.forceUpdate()
// console.log(this.state.dataTable)
// this.setState({
// data: a,
// }, () => console.log(this.state.dataTable))
} }
render() { render() {
const columns = [{ const columns = [{
name: "",
options: {
display: false
}
}, {
name: "",
options: {
display: false
}
}, {
name: "",
options: {
display: false
}
}, {
name: "",
options: {
display: false
}
}, {
name: "",
options: {
display: false
}
}, {
name: "Key Performance Indicator", name: "Key Performance Indicator",
options: { options: {
customHeadRender: (columnMeta) => ( customHeadRender: (columnMeta) => (
......
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