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
201a68ad
Commit
201a68ad
authored
Apr 16, 2021
by
faisalhamdi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Laporan CAT
parent
fc56110e
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
196 additions
and
86 deletions
+196
-86
SubHolding.js
src/container/Laporan/SubHolding.js
+109
-80
TableSubHolding.js
src/container/Laporan/TableSubHolding.js
+87
-6
No files found.
src/container/Laporan/SubHolding.js
View file @
201a68ad
...
...
@@ -2890,68 +2890,69 @@ export default class SubHolding extends Component {
if (response.data) {
if (response.data.status === 'success') {
let res = response.data.data
console
.
log
(
res
);
// const handlePushChild = (item) => {
// let indexIDzz = dbCATPQ.findIndex((val) => val[1] === item.id)
// if (indexIDzz === -1) {
// dbCATPQ.push([
// item.type_report_id,
// item.id,
// item.parent,
// item.formula,
// item.level,
// item.description,
// item.weight,
// item.uom,
// item.kpi_type,
// item.max_ach,
// item.formula_ytd,
// item.actual_monthly,
// item.target_monthly,
// item.achivement_monthly,
// item.score,
// item.score_x_weight,
// item.order
// ])
// }
// if (item.children !== null) {
// if (item.children.length > 0) {
// item.children.map((items, indexs) => {
// handlePushChild(items)
// })
// }
// }
// }
// res.map((item, index) => {
// dbCATPQ.push([
// item.type_report_id,
// item.id,
// item.parent,
// item.formula,
// item.level,
// item.description,
// item.weight,
// item.uom,
// item.kpi_type,
// item.max_ach,
// item.formula_ytd,
// item.actual_monthly,
// item.target_monthly,
// item.achivement_monthly,
// item.score,
// item.score_x_weight,
// item.order
// ])
// if (item.children !== null) {
// if (item.children.length > 0) {
// item.children.map((items, indexs) => {
// handlePushChild(items)
// })
// }
// }
// })
// this.setState({ dataTable: dbCATPQ, previewTable: true, loading: false, previewDownload: true })
// console.log(this.state.dataTable)
const handlePushChild = (item) => {
let indexIDzz = dbCATPQ.findIndex((val) => val[1] === item.id)
if (indexIDzz === -1) {
let parentTrue = item.parent_name == 'INTERNAL BUSINESS PROCESS PERSPECTIVE' || item.parent_name == 'CUSTOMER PERSPECTIVE'
let weight = String(item.corporate_annual_target.weight).substr(0, String(item.corporate_annual_target.weight).length - 1)
dbCATPQ.push([
item.typeItemReportId,
item.itemReportId,
item.parent,
item.formula,
item.level,
item.itemName,
item.corporate_annual_target.weight == "" ? Number(0).toFixed(1) : Number(weight).toFixed(1),
item.uom,
item.typeKpi,
item.max_ach,
item.formula_ytd,
item.actual_monthly,
item.target_monthly,
item.achivement_monthly,
item.score,
item.score_x_weight,
item.order
])
}
if (item.children !== null) {
if (item.children.length > 0) {
item.children.map((items, indexs) => {
handlePushChild(items)
})
}
}
}
res.map((item, index) => {
dbCATPQ.push([
item.typeItemReportId,
item.itemReportId,
item.parent,
item.formula,
item.level,
item.itemName,
item.weight == '' ? Number(0).toFixed(1) : Number(Number(item.weight) * 100).toFixed(1),
item.uom,
item.typeKpi,
item.max_ach,
item.formula_ytd,
item.actual_monthly,
item.target_monthly,
item.achivement_monthly,
item.score,
item.score_x_weight,
item.order
])
if (item.children !== null) {
if (item.children.length > 0) {
item.children.map((items, indexs) => {
handlePushChild(items)
})
}
}
})
this.setState({ dataTable: dbCATPQ, previewTable: true, loading: false, previewDownload: true })
console.log(this.state.dataTable)
} else {
this.setState({ alert: true, messageAlert: response.data.message, tipeAlert: 'warning', loading: false }, () => {
if (response.data.message.includes("Someone Logged In") || response.data.message.includes("Token Expired")) {
...
...
@@ -2978,6 +2979,8 @@ export default class SubHolding extends Component {
const handlePushChild = (item) => {
let indexIDzz = dbCATPA.findIndex((val) => val[1] === item.id)
if (indexIDzz === -1) {
let parentTrue = item.parent_name == 'INTERNAL BUSINESS PROCESS PERSPECTIVE' || item.parent_name == 'CUSTOMER PERSPECTIVE'
let weight = String(item.corporate_annual_target.weight).substr(0, String(item.corporate_annual_target.weight).length - 1)
dbCATPA.push([
item.type_report_id,
item.id,
...
...
@@ -2985,7 +2988,7 @@ export default class SubHolding extends Component {
item.formula,
item.level,
item.description,
item
.
weight
,
item.
corporate_annual_target.weight == "" ? Number(0).toFixed(1) : Number(weight).toFixed(1)
,
item.uom,
item.kpi_type,
item.max_ach,
...
...
@@ -3014,7 +3017,7 @@ export default class SubHolding extends Component {
item.formula,
item.level,
item.description,
item
.
weight
,
item.weight == '' ? Number(0).toFixed(1) : Number(Number(item.weight) * 100).toFixed(1)
,
item.uom,
item.kpi_type,
item.max_ach,
...
...
@@ -3818,6 +3821,32 @@ export default class SubHolding extends Component {
a.download = 'Report Financial Ratio - Summary.xlsx';
a.click();
}
} else if (this.state.report.value === 10) {
let res = await fetch(
`${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/cat/performance_quarterly/export?submission_id=${this.state.submissionID === null ? "" : this.state.submissionID}&&report_id=4&&company_id=${this.state.company.company_id}&&year=${this.state.periode.periode}&&revision=${this.state.revisionType}`
)
res = await res.blob()
this.setState({ loading: false })
if (res.size > 0) {
let url = window.URL.createObjectURL(res);
let a = document.createElement('a');
a.href = url;
a.download = 'Report CAT Performance Quarterly.xlsx';
a.click();
}
} else if (this.state.report.value === 11) {
let res = await fetch(
`${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/cat/performance_appraisal/export?submission_id=${this.state.submissionID === null ? "" : this.state.submissionID}&&report_id=4&&company_id=${this.state.company.company_id}&&year=${this.state.periode.periode}&&revision=${this.state.revisionType}`
)
res = await res.blob()
this.setState({ loading: false })
if (res.size > 0) {
let url = window.URL.createObjectURL(res);
let a = document.createElement('a');
a.href = url;
a.download = 'Report CAT Performance Appraisal.xlsx';
a.click();
}
}else {
setTimeout(() => {
this.setState({ loading: false })
...
...
src/container/Laporan/TableSubHolding.js
View file @
201a68ad
...
...
@@ -35,6 +35,13 @@ const styleNotesEmpty = {
}
export default class TableSubHolding extends Component {
constructor(props) {
super(props)
this.state = {
perfomanceScoreColor: '#fff'
}
}
render() {
let dataTable2 = this.props.dataTable
const handleChangeBS = (value, tableMeta, type) => {
...
...
@@ -26522,6 +26529,31 @@ export default class TableSubHolding extends Component {
const columnCatPQ = [
{
name: "",
options: {
display: false
}
}, {
name: "",
options: {
display: false
}
}, {
name: "",
options: {
display: false
}
}, {
name: "",
options: {
display: false
}
}, {
name: "",
options: {
display: false
}
}, {
name: "Key Performance Indicator",
options: {
customHeadRender: (columnMeta) => (
...
...
@@ -26610,7 +26642,6 @@ export default class TableSubHolding extends Component {
),
setCellProps: () => ({ style2 }),
customBodyRender: (value, tableMeta, updateValue) => {
{ console.log(tableMeta); }
return (
<div>
<div className="grid grid-3x content-center">
...
...
@@ -27210,12 +27241,26 @@ export default class TableSubHolding extends Component {
setCellProps: () => ({ style2 }),
customBodyRender: (value, tableMeta, updateValue) => {
return (
<div style={{
width: 90,
textAlign: 'center' }}>
{tableMeta.rowData[0] ===
1
|| tableMeta.rowData[0] === 4 ?
<div style={{ textAlign: 'center' }}>
{tableMeta.rowData[0] ===
2
|| tableMeta.rowData[0] === 4 ?
null :
<div>
<span style={{ fontSize: 12 }}>{tableMeta.rowData[0] === 4 ? "" : value}</span>
</div>
<FormControlLabel
style={{ margin: 0 }}
value={value}
control={
<NumberFormat
thousandSeparator={true}
style={{ color: "black", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
type="text"
placeholder=""
suffix={"%"}
value={Number(value).toFixed(1)}
disabled={true}
// disabled={this.props.isApprover ? true : ((this.props.lastStatus == 'SUBMIT' || this.props.lastStatus == 'REVISION') && this.props.prevRevision === false && (this.props.status === 'revision' || this.props.status === 'not-yet' || this.props.status === 'draft' || this.props.status === 'submitted') ? false : true)}
decimalScale={1}
/>
}
/>
}
</div>
)
...
...
@@ -27481,6 +27526,42 @@ export default class TableSubHolding extends Component {
/>
</MuiThemeProvider>
</div>
{this.props.type === 11 ?
<div style={{ paddingBottom: 15 }}>
<div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 15, paddingRight: 15, marginTop: 5 }}>
<div>
<div style={{display: 'flex'}}>
<Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 20 }}></Typography>
<div style={{marginLeft: 10, overflowY: 'scroll', height: 25, marginTop: 10}}>
<Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 10, marginRight: 5 }}></Typography>
</div>
</div>
</div>
<div style={{ display: 'flex', flexDirection: 'row' }}>
<div style={{ padding: 5 }}>
<Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>TOTAL SCORE</Typography>
</div>
<div style={{ border: '1px solid black', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end' }}>
<Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>100</Typography>
</div>
</div>
</div>
<div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 15, paddingRight: 15 }}>
<div>
<Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 10 }}></Typography>
</div>
<div style={{ display: 'flex', flexDirection: 'row' }}>
<div style={{ padding: 5 }}>
<Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>PERFOMANCE</Typography>
</div>
<div style={{ borderStyle: 'solid', backgroundColor: this.state.perfomanceScoreColor, borderWidth: '0px 1px 1px 1px', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end' }}>
<Typography style={{ fontSize: '11px', color: 'black', fontWeight: 'bold' }}>100</Typography>
</div>
</div>
</div>
</div>
: null
}
</div>
)
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment