ListOfCreditFacilities.js 289 KB
Newer Older
Deni Rinaldi's avatar
Deni Rinaldi committed
1
import React, { Component } from 'react';
d.arizona's avatar
d.arizona committed
2
import { createMuiTheme, FormControlLabel, MuiThemeProvider, Paper, TableCell, Tooltip, Typography, withStyles, Input, ThemeProvider, TextareaAutosize } from '@material-ui/core'
Deni Rinaldi's avatar
Deni Rinaldi committed
3 4 5
import MUIDataTable from 'mui-datatables';
import Images from '../../assets/Images';
import api from '../../api';
faisalhamdi's avatar
faisalhamdi committed
6
import NumberFormat from 'react-number-format';
d.arizona's avatar
d.arizona committed
7 8 9 10 11 12 13 14
import Constant from '../../library/Constant';
import { titleCase } from '../../library/Utils';
import { Autocomplete } from '@material-ui/lab';
import { PropagateLoader } from 'react-spinners';
import ReactTooltip from 'react-tooltip';
import { DatePicker } from '@material-ui/pickers';
import { format } from 'date-fns';
import { BorderStyle } from '@material-ui/icons';
d.arizona's avatar
d.arizona committed
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
import { includes } from 'ramda';
import Snackbar from '@material-ui/core/Snackbar';
import MuiAlert from '@material-ui/lab/Alert';
import { makeStyles } from '@material-ui/core/styles';
import UploadFile from "../../library/Upload";
import { ExcelRenderer } from 'react-excel-renderer';

function Alert(props) {
  return <MuiAlert elevation={6} variant="filled" {...props} />;
}

const useStyles = makeStyles((theme) => ({
  root: {
    width: '100%',
    '& > * + *': {
      marginTop: theme.spacing(2),
    },
  },
}));
Deni Rinaldi's avatar
Deni Rinaldi committed
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59

const LightTooltip = withStyles((theme) => ({
    tooltip: {
        backgroundColor: theme.palette.common.white,
        color: 'rgba(0, 0, 0, 0.87)',
        boxShadow: theme.shadows[1],
        fontSize: 11,
    },
}))(Tooltip);
var ct = require("../../library/CustomTable");
const getMuiTheme = () => createMuiTheme(ct.customTable3());
const options = ct.customOptionsFixedColumn();

const style = {
    position: "sticky",
    left: 0,
    background: "white",
    zIndex: 101,
};

const style2 = {
    position: "sticky",
    background: "white",
    zIndex: 100,
    top: 0
};
Deni Rinaldi's avatar
Deni Rinaldi committed
60

d.arizona's avatar
d.arizona committed
61 62 63 64 65 66 67 68 69 70 71 72 73
const theme = createMuiTheme({
    overrides: {
        // Style sheet name ⚛️
        MuiInputBase: {
            input: {
                color: '#5198ea',
                marginTop: -10,
                textAlign: 'center'
            }
        }
    },
});

d.arizona's avatar
d.arizona committed
74 75 76 77 78 79 80 81 82 83 84 85
const theme2 = createMuiTheme({
    overrides: {
        // Style sheet name ⚛️
        MuiInputBase: {
            input: {
                color: '#5198ea',
                textAlign: 'center'
            }
        }
    },
});

d.arizona's avatar
d.arizona committed
86 87 88 89 90 91 92 93 94 95 96 97
const theme3 = createMuiTheme({
    overrides: {
        // Style sheet name ⚛️
        MuiInputBase: {
            input: {
                color: '#black',
                textAlign: 'center'
            }
        }
    },
});

Deni Rinaldi's avatar
Deni Rinaldi committed
98
export default class ListOfCreditFacilities extends Component {
Deni Rinaldi's avatar
Deni Rinaldi committed
99 100 101 102
    constructor(props) {
        super(props)
        this.state = {
            dataTable: [],
d.arizona's avatar
d.arizona committed
103 104 105 106
            bankNameList: [],
            typeOfCreditList: [],
            loading: false,
            dataTableRatio: [],
d.arizona's avatar
d.arizona committed
107
            currentDate: format(new Date(), 'yyyy-MM-dd'),
d.arizona's avatar
d.arizona committed
108
            totalOutStand: 0,
d.arizona's avatar
d.arizona committed
109 110 111 112
            diff: 0,
            perBS: 0,
            snekbar: false,
            snekbarMsg: '',
d.arizona's avatar
d.arizona committed
113 114
            visibleLOCFMR: true,
            saveDraft: true,
d.arizona's avatar
d.arizona committed
115
            saveComp: true,
d.arizona's avatar
d.arizona committed
116 117 118
            get_for: 'view',
            updateBy: '-',
            notes: "",
d.arizona's avatar
d.arizona committed
119
            viewOnly: true,
d.arizona's avatar
d.arizona committed
120 121
            dataDelete: [],
            saveTambahan: true
Deni Rinaldi's avatar
Deni Rinaldi committed
122
        }
d.arizona's avatar
d.arizona committed
123
        this.fileHandler = this.fileHandler.bind(this);
Deni Rinaldi's avatar
Deni Rinaldi committed
124
    }
Deni Rinaldi's avatar
Deni Rinaldi committed
125

Deni Rinaldi's avatar
Deni Rinaldi committed
126
    componentDidMount() {
d.arizona's avatar
d.arizona committed
127
        this.getPerBS()
d.arizona's avatar
d.arizona committed
128 129 130
        this.getBankData()
        this.getTypeOfCredit()
        this.getSubmission()
d.arizona's avatar
d.arizona committed
131
        this.getLatestUpdate()
d.arizona's avatar
d.arizona committed
132
        this.handleViewOnly()
Deni Rinaldi's avatar
Deni Rinaldi committed
133 134
    }

d.arizona's avatar
d.arizona committed
135 136
    handleGetFor(type) {
        this.setState({get_for: type}, () => {
d.arizona's avatar
d.arizona committed
137
            this.getPerBS()
d.arizona's avatar
d.arizona committed
138 139 140
            this.getBankData()
            this.getTypeOfCredit()
            this.getSubmission()
d.arizona's avatar
d.arizona committed
141
            this.getLatestUpdate()
d.arizona's avatar
d.arizona committed
142 143 144
        })
    }

d.arizona's avatar
d.arizona committed
145 146 147 148
    handleViewOnly() {
        let checkApprover = false
        let checkLastStatus = false
        let checkStatus = false
d.arizona's avatar
d.arizona committed
149
        let checkPrevRev = false
d.arizona's avatar
d.arizona committed
150 151 152 153 154 155 156 157 158 159 160 161

        if (this.props.isApprover) {
            checkApprover = true
        } else {
            checkApprover = false
        }
        
        if (this.props.lastStatus == 'SUBMIT' || this.props.lastStatus == 'REVISION') {
            checkLastStatus = true
        } else {
            checkLastStatus = false
        } 
d.arizona's avatar
d.arizona committed
162 163 164 165 166 167
        
        if (this.props.prevRevision) {
            checkPrevRev = true
        } else {
            checkPrevRev = false
        }
d.arizona's avatar
d.arizona committed
168 169 170 171 172 173 174
        
        if (this.props.status === 'revision' || this.props.status === 'not-yet' || this.props.status === 'draft' || this.props.status === 'submitted') {
            checkStatus = true
        } else {
            checkStatus = false
        }

d.arizona's avatar
d.arizona committed
175
        this.setState({viewOnly: !checkApprover && checkLastStatus && checkStatus && checkPrevRev})
d.arizona's avatar
d.arizona committed
176 177
    }

Deni Rinaldi's avatar
Deni Rinaldi committed
178 179
    getItemHierarki() {
        let payload = {
Deni Rinaldi's avatar
Deni Rinaldi committed
180
            "report_id": this.props.report_id,
Deni Rinaldi's avatar
Deni Rinaldi committed
181 182 183 184
            "revision": Number(this.props.revision),
            "periode": this.props.periode,
            "company_id": this.props.company.company_id,
            "monthly_report_id": this.props.monthlyReportId,
d.arizona's avatar
d.arizona committed
185 186
            "months": this.props.month.month_id,
            "get_for": this.state.get_for
Deni Rinaldi's avatar
Deni Rinaldi committed
187
        }
Deni Rinaldi's avatar
Deni Rinaldi committed
188
        api.create().getHierarkiMontlyReportLOCF(payload).then(response => {
faisalhamdi's avatar
faisalhamdi committed
189
            console.log(payload);
Deni Rinaldi's avatar
Deni Rinaldi committed
190 191
            console.log(response);
            let dataTable = []
faisalhamdi's avatar
faisalhamdi committed
192 193
            if (response.data) {
                let res = response.data.data
d.arizona's avatar
d.arizona committed
194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257
                // const handlePushChild = (item) => {
                //     let indexIDzz = dataTable.findIndex((val) => val[1] === item.id)
                //     if (indexIDzz === -1) {
                //         dataTable.push([
                //             item.type_report_id,
                //             item.id,
                //             item.parent,
                //             item.formula,
                //             item.level,
                //             item.description,
                //             item.locf.borrower_comp_name === null ? "0.0" : item.locf.borrower_comp_name === "" ? "0.0" : item.locf.borrower_comp_name,
                //             item.locf.bank_name === null ? "0.0" : item.locf.bank_name === "" ? "0.0" : item.locf.bank_name,
                //             item.locf.type_of_credit === null ? "0.0" : item.locf.type_of_credit === "" ? "0.0" : item.locf.type_of_credit,
                //             item.locf.remarks === null ? "0.0" : item.locf.remarks === "" ? "0.0" : item.locf.remarks,
                //             item.locf.loan_maturity_date === null ? "0.0" : item.locf.loan_maturity_date === "" ? "0.0" : item.locf.loan_maturity_date,
                //             item.locf.interest === null ? "0.0" : item.locf.interest === "" ? "0.0" : item.locf.interest,
                //             item.locf.currency === null ? "0.0" : item.locf.currency === "" ? "0.0" : item.locf.currency,
                //             item.locf.loan_plafond_amount_ori === null ? "0.0" : item.locf.loan_plafond_amount_ori === "" ? "0.0" : item.locf.loan_plafond_amount_ori,
                //             item.locf.loan_plafond_amount_idr === null ? "0.0" : item.locf.loan_plafond_amount_idr === "" ? "0.0" : item.locf.loan_plafond_amount_idr,
                //             item.locf.out_loan_ki_amount_ori === null ? "0.0" : item.locf.out_loan_ki_amount_ori === "" ? "0.0" : item.locf.out_loan_ki_amount_ori,
                //             item.locf.out_loan_ki_amount_idr === null ? "0.0" : item.locf.out_loan_ki_amount_idr === "" ? "0.0" : item.locf.out_loan_ki_amount_idr,
                //             item.locf.out_loan_kmk_amount_ori === null ? "0.0" : item.locf.out_loan_kmk_amount_ori === "" ? "0.0" : item.locf.out_loan_kmk_amount_ori,
                //             item.locf.out_loan_kmk_amount_idr === null ? "0.0" : item.locf.out_loan_kmk_amount_idr === "" ? "0.0" : item.locf.out_loan_kmk_amount_idr,
                //             // item.locf.mtd_vs_previous_month === null ? "0.0" : item.locf.mtd_vs_previous_month === "" ? "0.0" : item.locf.mtd_vs_previous_month,
                //             item.locf.out_loan_other_type === null ? "0.0" : item.locf.out_loan_other_type === "" ? "0.0" : item.locf.out_loan_other_type,
                //             item.locf.out_loan_other_amount_ori === null ? "0.0" : item.locf.out_loan_other_amount_ori === "" ? "0.0" : item.locf.out_loan_other_amount_ori,
                //             item.locf.out_loan_other_amount_idr === null ? "0.0" : item.locf.out_loan_other_amount_idr === "" ? "0.0" : item.locf.out_loan_other_amount_idr,
                //             item.locf.total_out_loan_ori === null ? "0.0" : item.locf.total_out_loan_ori === "" ? "0.0" : item.locf.total_out_loan_ori,
                //             item.locf.total_out_loan_idr === null ? "0.0" : item.locf.total_out_loan_idr === "" ? "0.0" : item.locf.total_out_loan_idr,
                //             item.locf.remaining_plafond_ori === null ? "0.0" : item.locf.remaining_plafond_ori === "" ? "0.0" : item.locf.remaining_plafond_ori,
                //             item.locf.remaining_plafond_idr === null ? "0.0" : item.locf.remaining_plafond_idr === "" ? "0.0" : item.locf.remaining_plafond_idr,
                //             item.locf.current_ratio_financial === null ? "0.0" : item.locf.current_ratio_financial === "" ? "0.0" : item.locf.current_ratio_financial,
                //             item.locf.current_ratio_current === null ? "0.0" : item.locf.current_ratio_current === "" ? "0.0" : item.locf.current_ratio_current,
                //             item.locf.der_financial === null ? "0.0" : item.locf.der_financial === "" ? "0.0" : item.locf.der_financial,
                //             item.locf.der_current === null ? "0.0" : item.locf.der_current === "" ? "0.0" : item.locf.der_current,
                //             item.locf.debt_to_ebitda_financial === null ? "0.0" : item.locf.debt_to_ebitda_financial === "" ? "0.0" : item.locf.debt_to_ebitda_financial,
                //             item.locf.debt_to_ebitda_current === null ? "0.0" : item.locf.debt_to_ebitda_current === "" ? "0.0" : item.locf.debt_to_ebitda_current,
                //             item.locf.ebitda_to_interest_financial === null ? "0.0" : item.locf.ebitda_to_interest_financial === "" ? "0.0" : item.locf.ebitda_to_interest_financial,
                //             item.locf.ebitda_to_interest_current === null ? "0.0" : item.locf.ebitda_to_interest_current === "" ? "0.0" : item.locf.ebitda_to_interest_current,
                //             item.locf.other_ratio1_ratio_name === null ? "0.0" : item.locf.other_ratio1_ratio_name === "" ? "0.0" : item.locf.other_ratio1_ratio_name,
                //             item.locf.other_ratio1_financial === null ? "0.0" : item.locf.other_ratio1_financial === "" ? "0.0" : item.locf.other_ratio1_financial,
                //             item.locf.other_ratio1_current === null ? "0.0" : item.locf.other_ratio1_current === "" ? "0.0" : item.locf.other_ratio1_current,
                //             item.locf.other_ratio2_ratio_name === null ? "0.0" : item.locf.other_ratio2_ratio_name === "" ? "0.0" : item.locf.other_ratio2_ratio_name,
                //             item.locf.other_ratio2_financial === null ? "0.0" : item.locf.other_ratio2_financial === "" ? "0.0" : item.locf.other_ratio2_financial,
                //             item.locf.other_ratio2_current === null ? "0.0" : item.locf.other_ratio2_current === "" ? "0.0" : item.locf.other_ratio2_current,
                //             item.locf.other_ratio3_ratio_name === null ? "0.0" : item.locf.other_ratio3_ratio_name === "" ? "0.0" : item.locf.other_ratio3_ratio_name,
                //             item.locf.other_ratio3_financial === null ? "0.0" : item.locf.other_ratio3_financial === "" ? "0.0" : item.locf.other_ratio3_financial,
                //             item.locf.other_ratio3_current === null ? "0.0" : item.locf.other_ratio3_current === "" ? "0.0" : item.locf.other_ratio3_current,
                //             item.locf.other_ratio4_ratio_name === null ? "0.0" : item.locf.other_ratio4_ratio_name === "" ? "0.0" : item.locf.other_ratio4_ratio_name,
                //             item.locf.other_ratio4_financial === null ? "0.0" : item.locf.other_ratio4_financial === "" ? "0.0" : item.locf.other_ratio4_financial,
                //             item.locf.other_ratio4_current === null ? "0.0" : item.locf.other_ratio4_current === "" ? "0.0" : item.locf.other_ratio4_current,
                //             item.notes,
                //             // item.locf.per_bs === null ? "0.0" : item.locf.per_bs === "" ? "0.0" : item.locf.per_bs,
                //             // item.locf.diff === null ? "0.0" : item.locf.diff === "" ? "0.0" : item.locf.diff,
                //         ])
                //     }
                //     if (item.children !== null) {
                //         if (item.children.length > 0) {
                //             item.children.map((items, indexs) => {
                //                 handlePushChild(items)
                //             })
                //         }
                //     }
                // }
faisalhamdi's avatar
faisalhamdi committed
258
                res.map((item, index) => {
d.arizona's avatar
d.arizona committed
259
                    let tgl = String(item.locf.loan_maturity_date).split('-')
d.arizona's avatar
d.arizona committed
260 261 262 263 264 265 266
                    if (index == res.length -1) {
                        dataTable.push([
                            item.type_report_id,
                            item.id,
                            item.parent,
                            item.formula,
                            item.level,
d.arizona's avatar
d.arizona committed
267
                            // item.description,
d.arizona's avatar
d.arizona committed
268
                            item.locf.borrower_comp_name === null || item.locf.borrower_comp_name === "" ? this.props.company.company_name : item.locf.borrower_comp_name,
d.arizona's avatar
d.arizona committed
269 270
                            item.locf.bank_name === null ? null : item.locf.bank_name === "" ? null : {value: item.locf.bank_name},
                            item.locf.type_of_credit === null ? null : item.locf.type_of_credit === "" ? null : {value: item.locf.type_of_credit},
d.arizona's avatar
d.arizona committed
271
                            item.locf.remarks === null || item.locf.remarks === "" ? "" : item.locf.remarks,
d.arizona's avatar
d.arizona committed
272
                            item.locf.loan_maturity_date == null || item.locf.loan_maturity_date == "" ? null : (item.locf.loan_maturity_date !== "null"? String(tgl[2]).length > 2? tgl[2] + '-' + tgl[1] + '-' + tgl[0] : String(item.locf.loan_maturity_date) : null),
d.arizona's avatar
d.arizona committed
273 274
                            item.locf.interest === null || item.locf.interest === "" ? "0.00" : item.locf.interest,
                            item.locf.currency === null || item.locf.currency === "" ? "" : item.locf.currency,
d.arizona's avatar
d.arizona committed
275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306
                            item.locf.loan_plafond_amount_ori,
                            item.locf.loan_plafond_amount_idr === null ? "0.0" : item.locf.loan_plafond_amount_idr === "" ? "0.0" : item.locf.loan_plafond_amount_idr,
                            item.locf.out_loan_ki_amount_ori,
                            item.locf.out_loan_ki_amount_idr === null ? "0.0" : item.locf.out_loan_ki_amount_idr === "" ? "0.0" : item.locf.out_loan_ki_amount_idr,
                            item.locf.out_loan_kmk_amount_ori,
                            item.locf.out_loan_kmk_amount_idr === null ? "0.0" : item.locf.out_loan_kmk_amount_idr === "" ? "0.0" : item.locf.out_loan_kmk_amount_idr,
                            // item.locf.mtd_vs_previous_month === null ? "0.0" : item.locf.mtd_vs_previous_month === "" ? "0.0" : item.locf.mtd_vs_previous_month,
                            item.locf.out_loan_other_type,
                            item.locf.out_loan_other_amount_ori,
                            item.locf.out_loan_other_amount_idr === null ? "0.0" : item.locf.out_loan_other_amount_idr === "" ? "0.0" : item.locf.out_loan_other_amount_idr,
                            item.locf.total_out_loan_ori === null ? "0.0" : item.locf.total_out_loan_ori === "" ? "0.0" : item.locf.total_out_loan_ori,
                            item.locf.total_out_loan_idr === null ? "0.0" : item.locf.total_out_loan_idr === "" ? "0.0" : item.locf.total_out_loan_idr,
                            item.locf.remaining_plafond_ori === null ? "0.0" : item.locf.remaining_plafond_ori === "" ? "0.0" : item.locf.remaining_plafond_ori,
                            item.locf.remaining_plafond_idr === null ? "0.0" : item.locf.remaining_plafond_idr === "" ? "0.0" : item.locf.remaining_plafond_idr,
                            item.locf.current_ratio_financial,
                            item.locf.current_ratio_current === null ? "0.0" : item.locf.current_ratio_current === "" ? "0.0" : item.locf.current_ratio_current,
                            item.locf.der_financial,
                            item.locf.der_current === null ? "0.0" : item.locf.der_current === "" ? "0.0" : item.locf.der_current,
                            item.locf.debt_to_ebitda_financial,
                            item.locf.debt_to_ebitda_current === null ? "0.0" : item.locf.debt_to_ebitda_current === "" ? "0.0" : item.locf.debt_to_ebitda_current,
                            item.locf.ebitda_to_interest_financial,
                            item.locf.ebitda_to_interest_current === null ? "0.0" : item.locf.ebitda_to_interest_current === "" ? "0.0" : item.locf.ebitda_to_interest_current,
                            item.locf.other_ratio1_ratio_name,
                            item.locf.other_ratio1_financial,
                            item.locf.other_ratio1_current === null ? "0.0" : item.locf.other_ratio1_current === "" ? "0.0" : item.locf.other_ratio1_current,
                            item.locf.other_ratio2_ratio_name,
                            item.locf.other_ratio2_financial,
                            item.locf.other_ratio2_current === null ? "0.0" : item.locf.other_ratio2_current === "" ? "0.0" : item.locf.other_ratio2_current,
                            item.locf.other_ratio3_ratio_name,
                            item.locf.other_ratio3_financial,
                            item.locf.other_ratio3_current === null ? "0.0" : item.locf.other_ratio3_current === "" ? "0.0" : item.locf.other_ratio3_current,
                            item.locf.other_ratio4_ratio_name,
d.arizona's avatar
d.arizona committed
307
                            item.locf.other_ratio4_financial,
d.arizona's avatar
d.arizona committed
308
                            item.locf.other_ratio4_current === null ? "0.0" : item.locf.other_ratio4_current === "" ? "0.0" : item.locf.other_ratio4_current,
d.arizona's avatar
d.arizona committed
309
                            item.locf.notes,
d.arizona's avatar
d.arizona committed
310 311
                            // item.per_bs === null ? "0.0" : item.locf.per_bs === "" ? "0.0" : item.locf.per_bs,
                            // item.diff === null ? "0.0" : item.locf.diff === "" ? "0.0" : item.locf.diff,
d.arizona's avatar
d.arizona committed
312
                            index
d.arizona's avatar
d.arizona committed
313
                        ], 
d.arizona's avatar
d.arizona committed
314
                        [9, "", "", "", "", "", {value: "Grand Total"}, null, "", "", "", "0",  "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "notes", 999999 ],
d.arizona's avatar
d.arizona committed
315 316 317 318 319 320 321 322
                        )
                    } else {
                        dataTable.push([
                            item.type_report_id,
                            item.id,
                            item.parent,
                            item.formula,
                            item.level,
d.arizona's avatar
d.arizona committed
323
                            // item.description,
d.arizona's avatar
d.arizona committed
324
                            item.locf.borrower_comp_name === null || item.locf.borrower_comp_name === "" ? this.props.company.company_name : item.locf.borrower_comp_name,
d.arizona's avatar
d.arizona committed
325 326
                            item.locf.bank_name === null ? null : item.locf.bank_name === "" ? null : {value: item.locf.bank_name},
                            item.locf.type_of_credit === null ? null : item.locf.type_of_credit === "" ? null : {value: item.locf.type_of_credit},
d.arizona's avatar
d.arizona committed
327
                            item.locf.remarks === null || item.locf.remarks === "" ? "" : item.locf.remarks,
d.arizona's avatar
d.arizona committed
328
                            item.locf.loan_maturity_date == null || item.locf.loan_maturity_date == "" ? null : (item.locf.loan_maturity_date !== "null"? String(tgl[2]).length > 2? tgl[2] + '-' + tgl[1] + '-' + tgl[0] : String(item.locf.loan_maturity_date) : null),
d.arizona's avatar
d.arizona committed
329 330
                            item.locf.interest === null || item.locf.interest === "" ? "0.00" : item.locf.interest,
                            item.locf.currency === null || item.locf.currency === "" ? "" : item.locf.currency,
d.arizona's avatar
d.arizona committed
331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362
                            item.locf.loan_plafond_amount_ori,
                            item.locf.loan_plafond_amount_idr === null ? "0.0" : item.locf.loan_plafond_amount_idr === "" ? "0.0" : item.locf.loan_plafond_amount_idr,
                            item.locf.out_loan_ki_amount_ori,
                            item.locf.out_loan_ki_amount_idr === null ? "0.0" : item.locf.out_loan_ki_amount_idr === "" ? "0.0" : item.locf.out_loan_ki_amount_idr,
                            item.locf.out_loan_kmk_amount_ori,
                            item.locf.out_loan_kmk_amount_idr === null ? "0.0" : item.locf.out_loan_kmk_amount_idr === "" ? "0.0" : item.locf.out_loan_kmk_amount_idr,
                            // item.locf.mtd_vs_previous_month === null ? "0.0" : item.locf.mtd_vs_previous_month === "" ? "0.0" : item.locf.mtd_vs_previous_month,
                            item.locf.out_loan_other_type,
                            item.locf.out_loan_other_amount_ori,
                            item.locf.out_loan_other_amount_idr === null ? "0.0" : item.locf.out_loan_other_amount_idr === "" ? "0.0" : item.locf.out_loan_other_amount_idr,
                            item.locf.total_out_loan_ori === null ? "0.0" : item.locf.total_out_loan_ori === "" ? "0.0" : item.locf.total_out_loan_ori,
                            item.locf.total_out_loan_idr === null ? "0.0" : item.locf.total_out_loan_idr === "" ? "0.0" : item.locf.total_out_loan_idr,
                            item.locf.remaining_plafond_ori === null ? "0.0" : item.locf.remaining_plafond_ori === "" ? "0.0" : item.locf.remaining_plafond_ori,
                            item.locf.remaining_plafond_idr === null ? "0.0" : item.locf.remaining_plafond_idr === "" ? "0.0" : item.locf.remaining_plafond_idr,
                            item.locf.current_ratio_financial,
                            item.locf.current_ratio_current === null ? "0.0" : item.locf.current_ratio_current === "" ? "0.0" : item.locf.current_ratio_current,
                            item.locf.der_financial,
                            item.locf.der_current === null ? "0.0" : item.locf.der_current === "" ? "0.0" : item.locf.der_current,
                            item.locf.debt_to_ebitda_financial,
                            item.locf.debt_to_ebitda_current === null ? "0.0" : item.locf.debt_to_ebitda_current === "" ? "0.0" : item.locf.debt_to_ebitda_current,
                            item.locf.ebitda_to_interest_financial,
                            item.locf.ebitda_to_interest_current === null ? "0.0" : item.locf.ebitda_to_interest_current === "" ? "0.0" : item.locf.ebitda_to_interest_current,
                            item.locf.other_ratio1_ratio_name,
                            item.locf.other_ratio1_financial,
                            item.locf.other_ratio1_current === null ? "0.0" : item.locf.other_ratio1_current === "" ? "0.0" : item.locf.other_ratio1_current,
                            item.locf.other_ratio2_ratio_name,
                            item.locf.other_ratio2_financial,
                            item.locf.other_ratio2_current === null ? "0.0" : item.locf.other_ratio2_current === "" ? "0.0" : item.locf.other_ratio2_current,
                            item.locf.other_ratio3_ratio_name,
                            item.locf.other_ratio3_financial,
                            item.locf.other_ratio3_current === null ? "0.0" : item.locf.other_ratio3_current === "" ? "0.0" : item.locf.other_ratio3_current,
                            item.locf.other_ratio4_ratio_name,
d.arizona's avatar
d.arizona committed
363
                            item.locf.other_ratio4_financial,
d.arizona's avatar
d.arizona committed
364
                            item.locf.other_ratio4_current === null ? "0.0" : item.locf.other_ratio4_current === "" ? "0.0" : item.locf.other_ratio4_current,
d.arizona's avatar
d.arizona committed
365 366
                            item.locf.notes,
                            index
d.arizona's avatar
d.arizona committed
367 368 369 370 371
                            // item.per_bs === null ? "0.0" : item.locf.per_bs === "" ? "0.0" : item.locf.per_bs,
                            // item.diff === null ? "0.0" : item.locf.diff === "" ? "0.0" : item.locf.diff,
                        ])
                    }
                    
d.arizona's avatar
d.arizona committed
372 373 374 375 376 377 378
                    // if (item.children !== null) {
                    //     if (item.children.length > 0) {
                    //         item.children.map((items, indexs) => {
                    //             handlePushChild(items)
                    //         })
                    //     }
                    // }
faisalhamdi's avatar
faisalhamdi committed
379
                })
d.arizona's avatar
d.arizona committed
380
                // console.log(dataTable);
d.arizona's avatar
d.arizona committed
381
                if (dataTable.length == 0 && this.state.get_for == 'edit') {
d.arizona's avatar
d.arizona committed
382
                    dataTable.push(
d.arizona's avatar
d.arizona committed
383
                        [3, "", "", "", "", this.props.company.company_name, null, null, "", null, "0.00", "",  "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "", 0 ],
384
                        [9, "", "", "", "", "", {value: "Grand Total"}, null, "", "", "", "0",  "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "notes", 999999 ],
d.arizona's avatar
d.arizona committed
385 386
                    )
                }
d.arizona's avatar
d.arizona committed
387
                console.log(dataTable)
d.arizona's avatar
d.arizona committed
388
                this.setState({ dataTable, loading: false, visibleLOCFMR: true }, () => {
d.arizona's avatar
d.arizona committed
389 390 391 392 393 394
                    this.handleCalculate()
                })
            }
        })
    }

d.arizona's avatar
d.arizona committed
395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429
    getLatestUpdate() {
        let payload = {
            "report_id": this.props.report_id,
            "revision": Number(this.props.revision),
            "periode": this.props.periode,
            "company_id": this.props.company.company_id,
            "monthly_report_id": this.props.monthlyReportId,
            "months": this.props.month.month_id
        }
        // console.log(payload)
        api.create().getLastestUpdateMR(payload).then(response => {
            console.log(JSON.stringify(response))
            if (response.data) {
                if (response.data.status === "success") {
                    this.setState({
                        updateBy: response.data.data.latest_update === null ? '-' : response.data.data.latest_update,
                        notes: response.data.data.notes_update === null ? "" : response.data.data.notes_update
                    })
                } else {
                    this.setState({ alert: true, messageAlert: response.data.message, typeAlert: 'warning', loading: false }, () => {
                        if (response.data.message.includes("Someone Logged In")) {
                            setTimeout(() => {
                                localStorage.removeItem(Constant.TOKEN)
                                window.location.reload();
                            }, 1000);
                        }
                    })
                }
            } else {
                // console.log('brrrrrrrr')
                this.setState({ alert: true, messageAlert: response.problem, tipeAlert: 'error', loading: false })
            }
        })
    }

d.arizona's avatar
d.arizona committed
430 431 432 433 434 435 436 437 438 439 440 441 442 443
    fileHandler = (event) => {
        let fileObj = event
        ExcelRenderer(fileObj, (err, resp) => {
            // console.log(resp)
            if (err) {
                console.log(err);
            }
            else {
                let isi = resp.rows.slice(3)
                console.log(isi);
                let payload = []
                let reg = /^[-+]?(?:[0-9]+,)*[0-9]+(?:\.[0-9]+)?$/;
                isi.map((i, index) => {
                    if (i.length > 0) {
d.arizona's avatar
d.arizona committed
444
                        let tgl = String(i[5]).split('-')
d.arizona's avatar
d.arizona committed
445 446
                        console.log(i[5])
                        console.log(tgl)
d.arizona's avatar
d.arizona committed
447 448 449
                        payload.push({
                            "item_report_id": i[1],
                            "borrower_comp_name": this.props.company.company_name,
d.arizona's avatar
d.arizona committed
450 451 452
                            "bank_name": i[2],
                            "type_of_credit": i[3],
                            "remarks": i[4],
d.arizona's avatar
d.arizona committed
453
                            "loan_maturity_date":  i[5] !== undefined? tgl[2] + '-' + tgl[1] + '-' + tgl[0] : null,
d.arizona's avatar
d.arizona committed
454 455 456 457 458 459 460 461 462 463 464
                            "interest": i[6],
                            "currency": i[7],
                            "loan_plafond_amount_ori": i[8],
                            "loan_plafond_amount_idr": i[9],
                            "out_loan_ki_amount_ori": i[10],
                            "out_loan_ki_amount_idr": i[11],
                            "out_loan_kmk_amount_ori": i[12],
                            "out_loan_kmk_amount_idr": i[13],
                            "out_loan_other_type": i[14],
                            "out_loan_other_amount_ori": i[15],
                            "out_loan_other_amount_idr": i[16],
d.arizona's avatar
d.arizona committed
465 466 467 468
                            // "total_out_loan_ori": i[18],
                            // "total_out_loan_idr": i[19],
                            // "remaining_plafond_ori": i[20],
                            // "remaining_plafond_idr": i[21],
d.arizona's avatar
d.arizona committed
469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485
                            "current_ratio_financial": i[17],
                            "der_financial": i[18],
                            "debt_to_ebitda_financial": i[19],
                            "ebitda_to_interest_financial": i[20],
                            "other_ratio1_ratio_name": i[21],
                            "other_ratio1_financial": i[22],
                            "other_ratio1_current": i[23],
                            "other_ratio2_ratio_name": i[24],
                            "other_ratio2_financial": i[25],
                            "other_ratio2_current": i[26],
                            "other_ratio3_ratio_name": i[27],
                            "other_ratio3_financial": i[28],
                            "other_ratio3_current": i[29],
                            "other_ratio4_ratio_name": i[30],
                            "other_ratio4_financial": i[31],
                            "other_ratio4_current": i[32],
                            "notes": i[33],
d.arizona's avatar
d.arizona committed
486 487 488 489 490 491 492 493
                        })
                    }
                })
                let body = {
                    "monthly_report_id": this.props.monthlyReportId,
                    "company_id": this.props.company.company_id,
                    "periode": this.props.periode,
                    "report_id": this.props.report_id,
d.arizona's avatar
d.arizona committed
494
                    "status": 'submitted',
d.arizona's avatar
d.arizona committed
495 496 497 498
                    "months": this.props.month.month_id,
                    "locf": payload,
                    "per_bs": this.state.perBS,
                    "diff": this.state.diff,
d.arizona's avatar
d.arizona committed
499
                    "total_loan" : this.state.perBS
d.arizona's avatar
d.arizona committed
500 501
                }
                console.log(body)
d.arizona's avatar
d.arizona committed
502
                this.setState({ payload: body, judul: resp.rows[1][0], judulColumn: resp.rows[0][0] })
d.arizona's avatar
d.arizona committed
503 504 505 506
            }
        });
    }

d.arizona's avatar
d.arizona committed
507 508 509 510 511 512 513 514 515 516
    deleteReport() {
        let payload = { "item_report_id": this.state.dataDelete, "periode": this.props.periode, "months": this.props.month.month_id}

        if (this.state.dataDelete.length > 0) {
            api.create().deleteAllItemReportLOCF(payload).then((response) => {
                console.log(response)
            })
        } 
    }

d.arizona's avatar
d.arizona committed
517
    checkUpload() {
d.arizona's avatar
d.arizona committed
518 519 520 521 522 523 524 525 526 527 528 529 530 531 532
        let dataDelete = []
        api.create().getIdDeleteFromExcelLOCF(this.state.payload).then((response) => {
            console.log(response)
            // if (response.data) {
            //     // // // // // console.log(response.data)
            //     let idDelete = response.data.data.item_report_id
            //     if (idDelete.length > 0) {
            //         idDelete.map((item, index) => {
            //             dataDelete.push(item)
            //         })
            //         this.setState({ dataDelete })
            //     }
            // }
        })

d.arizona's avatar
d.arizona committed
533
        api.create().checkUploadMonthlyReportLOCF(this.state.payload).then(response => {
d.arizona's avatar
d.arizona committed
534
            console.log(JSON.stringify(this.state.payload));
d.arizona's avatar
d.arizona committed
535 536 537
            console.log(response)
            if (response.data) {
                if (response.data.status === 'success') {
d.arizona's avatar
d.arizona committed
538
                    this.setState({ visibleUpload: false, loading: true, visibleLOCFMR: false, totalOutStand: 0, diff: 0 })
d.arizona's avatar
d.arizona committed
539 540 541 542
                    let dataTable = []
                    response.data.data.map((item, index) => {
                        if (index == response.data.data.length -1) {
                            dataTable.push([
d.arizona's avatar
d.arizona committed
543
                                3,
d.arizona's avatar
d.arizona committed
544 545 546 547
                                item.item_report_id,
                                item.parent,
                                item.formula,
                                item.level,
d.arizona's avatar
d.arizona committed
548
                                item.borrower_comp_name === null ? this.props.company.company_name : item.borrower_comp_name === "" ? this.props.company.company_name : item.borrower_comp_name,
d.arizona's avatar
d.arizona committed
549 550
                                item.bank_name === null ? null : item.bank_name === "" ? null : {value: item.bank_name},
                                item.type_of_credit === null ? null : item.type_of_credit === "" ? null : {value: item.type_of_credit},
d.arizona's avatar
d.arizona committed
551
                                item.remarks === null ? "" : item.remarks === "" ? "" : item.remarks,
d.arizona's avatar
d.arizona committed
552 553 554
                                item.loan_maturity_date === null || item.loan_maturity_date === "" ? null : item.loan_maturity_date,
                                item.interest === null || item.interest === "" ? "0.00" : item.interest,
                                item.currency === null || item.currency === "" ? "" : item.currency,
d.arizona's avatar
d.arizona committed
555
                                item.loan_plafond_amount_ori == null? "" : item.loan_plafond_amount_ori,
d.arizona's avatar
d.arizona committed
556
                                item.loan_plafond_amount_idr === null ? "0.0" : item.loan_plafond_amount_idr === "" ? "0.0" : item.loan_plafond_amount_idr,
d.arizona's avatar
d.arizona committed
557 558 559 560 561 562 563
                                item.type_of_credit == "Investment Loan"? item.out_loan_ki_amount_ori : "0.0",
                                item.type_of_credit == "Investment Loan"? (item.out_loan_ki_amount_idr === null ? "0.0" : item.out_loan_ki_amount_idr === "" ? "0.0" : item.out_loan_ki_amount_idr) : "0.0",
                                item.type_of_credit == "Revolving Loan (KMK)"? item.out_loan_kmk_amount_ori : "0.0",
                                item.type_of_credit == "Revolving Loan (KMK)"? (item.out_loan_kmk_amount_idr === null ? "0.0" : item.out_loan_kmk_amount_idr === "" ? "0.0" : item.out_loan_kmk_amount_idr) : "0.0",
                                item.type_of_credit == "Others"? item.out_loan_other_type : "",
                                item.type_of_credit == "Others"? item.out_loan_other_amount_ori : "0.0",
                                item.type_of_credit == "Others"? (item.out_loan_other_amount_idr === null ? "0.0" : item.out_loan_other_amount_idr === "" ? "0.0" : item.out_loan_other_amount_idr) : "0.0",
d.arizona's avatar
d.arizona committed
564 565 566 567
                                item.total_out_loan_ori === null ? "0.0" : item.total_out_loan_ori === "" ? "0.0" : item.total_out_loan_ori,
                                item.total_out_loan_idr === null ? "0.0" : item.total_out_loan_idr === "" ? "0.0" : item.total_out_loan_idr,
                                item.remaining_plafond_ori === null ? "0.0" : item.remaining_plafond_ori === "" ? "0.0" : item.remaining_plafond_ori,
                                item.remaining_plafond_idr === null ? "0.0" : item.remaining_plafond_idr === "" ? "0.0" : item.remaining_plafond_idr,
d.arizona's avatar
d.arizona committed
568
                                item.current_ratio_financial == null? "" : item.current_ratio_financial,
d.arizona's avatar
d.arizona committed
569
                                item.current_ratio_current === null ? "0.0" : item.current_ratio_current === "" ? "0.0" : item.current_ratio_current,
d.arizona's avatar
d.arizona committed
570
                                item.der_financial == null? "" : item.der_financial,
d.arizona's avatar
d.arizona committed
571
                                item.der_current === null ? "0.0" : item.der_current === "" ? "0.0" : item.der_current,
d.arizona's avatar
d.arizona committed
572
                                item.debt_to_ebitda_financial == null? "" : item.debt_to_ebitda_financial,
d.arizona's avatar
d.arizona committed
573
                                item.debt_to_ebitda_current === null ? "0.0" : item.debt_to_ebitda_current === "" ? "0.0" : item.debt_to_ebitda_current,
d.arizona's avatar
d.arizona committed
574
                                item.ebitda_to_interest_financial == null? "" : item.ebitda_to_interest_financial,
d.arizona's avatar
d.arizona committed
575
                                item.ebitda_to_interest_current === null ? "0.0" : item.ebitda_to_interest_current === "" ? "0.0" : item.ebitda_to_interest_current,
d.arizona's avatar
d.arizona committed
576
                                item.other_ratio1_ratio_name == null? "" : item.other_ratio1_ratio_name,
d.arizona's avatar
d.arizona committed
577
                                item.other_ratio1_financial === null ? "0.0" : item.other_ratio1_financial === "" ? "0.0" : item.other_ratio1_financial,
d.arizona's avatar
d.arizona committed
578
                                item.other_ratio1_current === null ? "0.0" : item.other_ratio1_current === "" ? "0.0" : item.other_ratio1_current,
d.arizona's avatar
d.arizona committed
579
                                item.other_ratio2_ratio_name == null? "" : item.other_ratio2_ratio_name,
d.arizona's avatar
d.arizona committed
580
                                item.other_ratio2_financial === null ? "0.0" : item.other_ratio2_financial === "" ? "0.0" : item.other_ratio2_financial,
d.arizona's avatar
d.arizona committed
581
                                item.other_ratio2_current === null ? "0.0" : item.other_ratio2_current === "" ? "0.0" : item.other_ratio2_current,
d.arizona's avatar
d.arizona committed
582
                                item.other_ratio3_ratio_name == null? "" : item.other_ratio3_ratio_name,
d.arizona's avatar
d.arizona committed
583
                                item.other_ratio3_financial === null ? "0.0" : item.other_ratio3_financial === "" ? "0.0" : item.other_ratio3_financial,
d.arizona's avatar
d.arizona committed
584
                                item.other_ratio3_current === null ? "0.0" : item.other_ratio3_current === "" ? "0.0" : item.other_ratio3_current,
d.arizona's avatar
d.arizona committed
585
                                item.other_ratio4_ratio_name == null? "" : item.other_ratio4_ratio_name,
d.arizona's avatar
d.arizona committed
586
                                item.other_ratio4_financial === null ? "0.0" : item.other_ratio4_financial === "" ? "0.0" : item.other_ratio4_financial,
d.arizona's avatar
d.arizona committed
587 588 589 590 591 592 593
                                item.other_ratio4_current === null ? "0.0" : item.other_ratio4_current === "" ? "0.0" : item.other_ratio4_current,
                                item.notes,
                            ], 
                            [9, "", "", "", "", "", {value: "Grand Total"}, null, "", "", "", "0",  "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "notes", 999999 ],
                            )
                        } else {
                            dataTable.push([
d.arizona's avatar
d.arizona committed
594
                                3,
d.arizona's avatar
d.arizona committed
595 596 597 598
                                item.item_report_id,
                                item.parent,
                                item.formula,
                                item.level,
d.arizona's avatar
d.arizona committed
599
                                item.borrower_comp_name === null ? this.props.company.company_name : item.borrower_comp_name === "" ? this.props.company.company_name : item.borrower_comp_name,
d.arizona's avatar
d.arizona committed
600 601
                                item.bank_name === null ? null : item.bank_name === "" ? null : {value: item.bank_name},
                                item.type_of_credit === null ? null : item.type_of_credit === "" ? null : {value: item.type_of_credit},
d.arizona's avatar
d.arizona committed
602
                                item.remarks === null ? "" : item.remarks === "" ? "" : item.remarks,
d.arizona's avatar
d.arizona committed
603 604 605
                                item.loan_maturity_date === null || item.loan_maturity_date === "" ? null : item.loan_maturity_date,
                                item.interest === null || item.interest === "" ? "0.00" : item.interest,
                                item.currency === null || item.currency === "" ? "" : item.currency,
d.arizona's avatar
d.arizona committed
606
                                item.loan_plafond_amount_ori == null? "" : item.loan_plafond_amount_ori,
d.arizona's avatar
d.arizona committed
607
                                item.loan_plafond_amount_idr === null ? "0.0" : item.loan_plafond_amount_idr === "" ? "0.0" : item.loan_plafond_amount_idr,
d.arizona's avatar
d.arizona committed
608 609 610 611 612 613 614
                                item.type_of_credit == "Investment Loan"? item.out_loan_ki_amount_ori : "0.0",
                                item.type_of_credit == "Investment Loan"? (item.out_loan_ki_amount_idr === null ? "0.0" : item.out_loan_ki_amount_idr === "" ? "0.0" : item.out_loan_ki_amount_idr) : "0.0",
                                item.type_of_credit == "Revolving Loan (KMK)"? item.out_loan_kmk_amount_ori : "0.0",
                                item.type_of_credit == "Revolving Loan (KMK)"? (item.out_loan_kmk_amount_idr === null ? "0.0" : item.out_loan_kmk_amount_idr === "" ? "0.0" : item.out_loan_kmk_amount_idr) : "0.0",
                                item.type_of_credit == "Others"? item.out_loan_other_type : "",
                                item.type_of_credit == "Others"? item.out_loan_other_amount_ori : "0.0",
                                item.type_of_credit == "Others"? (item.out_loan_other_amount_idr === null ? "0.0" : item.out_loan_other_amount_idr === "" ? "0.0" : item.out_loan_other_amount_idr) : "0.0",
d.arizona's avatar
d.arizona committed
615 616 617 618
                                item.total_out_loan_ori === null ? "0.0" : item.total_out_loan_ori === "" ? "0.0" : item.total_out_loan_ori,
                                item.total_out_loan_idr === null ? "0.0" : item.total_out_loan_idr === "" ? "0.0" : item.total_out_loan_idr,
                                item.remaining_plafond_ori === null ? "0.0" : item.remaining_plafond_ori === "" ? "0.0" : item.remaining_plafond_ori,
                                item.remaining_plafond_idr === null ? "0.0" : item.remaining_plafond_idr === "" ? "0.0" : item.remaining_plafond_idr,
d.arizona's avatar
d.arizona committed
619
                                item.current_ratio_financial == null? "" : item.current_ratio_financial,
d.arizona's avatar
d.arizona committed
620
                                item.current_ratio_current === null ? "0.0" : item.current_ratio_current === "" ? "0.0" : item.current_ratio_current,
d.arizona's avatar
d.arizona committed
621
                                item.der_financial == null? "" : item.der_financial,
d.arizona's avatar
d.arizona committed
622
                                item.der_current === null ? "0.0" : item.der_current === "" ? "0.0" : item.der_current,
d.arizona's avatar
d.arizona committed
623
                                item.debt_to_ebitda_financial == null? "" : item.debt_to_ebitda_financial,
d.arizona's avatar
d.arizona committed
624
                                item.debt_to_ebitda_current === null ? "0.0" : item.debt_to_ebitda_current === "" ? "0.0" : item.debt_to_ebitda_current,
d.arizona's avatar
d.arizona committed
625
                                item.ebitda_to_interest_financial == null? "" : item.ebitda_to_interest_financial,
d.arizona's avatar
d.arizona committed
626
                                item.ebitda_to_interest_current === null ? "0.0" : item.ebitda_to_interest_current === "" ? "0.0" : item.ebitda_to_interest_current,
d.arizona's avatar
d.arizona committed
627
                                item.other_ratio1_ratio_name == null? "" : item.other_ratio1_ratio_name,
d.arizona's avatar
d.arizona committed
628
                                item.other_ratio1_financial === null ? "0.0" : item.other_ratio1_financial === "" ? "0.0" : item.other_ratio1_financial,
d.arizona's avatar
d.arizona committed
629
                                item.other_ratio1_current === null ? "0.0" : item.other_ratio1_current === "" ? "0.0" : item.other_ratio1_current,
d.arizona's avatar
d.arizona committed
630
                                item.other_ratio2_ratio_name == null? "" : item.other_ratio2_ratio_name,
d.arizona's avatar
d.arizona committed
631
                                item.other_ratio2_financial === null ? "0.0" : item.other_ratio2_financial === "" ? "0.0" : item.other_ratio2_financial,
d.arizona's avatar
d.arizona committed
632
                                item.other_ratio2_current === null ? "0.0" : item.other_ratio2_current === "" ? "0.0" : item.other_ratio2_current,
d.arizona's avatar
d.arizona committed
633
                                item.other_ratio3_ratio_name == null? "" : item.other_ratio3_ratio_name,
d.arizona's avatar
d.arizona committed
634
                                item.other_ratio3_financial === null ? "0.0" : item.other_ratio3_financial === "" ? "0.0" : item.other_ratio3_financial,
d.arizona's avatar
d.arizona committed
635
                                item.other_ratio3_current === null ? "0.0" : item.other_ratio3_current === "" ? "0.0" : item.other_ratio3_current,
d.arizona's avatar
d.arizona committed
636
                                item.other_ratio4_ratio_name == null? "" : item.other_ratio4_ratio_name,
d.arizona's avatar
d.arizona committed
637
                                item.other_ratio4_financial === null ? "0.0" : item.other_ratio4_financial === "" ? "0.0" : item.other_ratio4_financial,
d.arizona's avatar
d.arizona committed
638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653
                                item.other_ratio4_current === null ? "0.0" : item.other_ratio4_current === "" ? "0.0" : item.other_ratio4_current,
                                item.notes,
                            ])
                        }
                        
                        // if (item.children !== null) {
                        //     if (item.children.length > 0) {
                        //         item.children.map((items, indexs) => {
                        //             handlePushChild(items)
                        //         })
                        //     }
                        // }
                    })
                    // console.log(dataTable);
                    if (dataTable.length == 0) {
                        dataTable.push(
d.arizona's avatar
d.arizona committed
654
                            [3, "", "", "", "", this.props.company.company_name, null, null, "", null, "0.00", "",  "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "", 0 ],
d.arizona's avatar
d.arizona committed
655 656 657 658
                            [9, "", "", "", "", "", {value: "Grand Total"}, null, "", "", "", "0",  "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "notes", 999999 ],
                        )
                    }
                    
d.arizona's avatar
d.arizona committed
659
                    this.setState({ dataTable, dataLoaded: true, loading: false, buttonError: false, dataDelete: [] }, () => {
d.arizona's avatar
d.arizona committed
660
                        this.handleCalculate()
d.arizona's avatar
d.arizona committed
661 662 663 664 665 666 667 668 669 670
                        this.state.dataTable.map(item => {
                            if (item[23].length > 0) {
                                // console.log('masuk')
                                this.setState({ buttonError: true, errorPreview: true })
                            }
                        })
                        // console.log(this.state.buttonError)
                    })
                    // console.log(dataTable);
                }
faisalhamdi's avatar
faisalhamdi committed
671
            }
Deni Rinaldi's avatar
Deni Rinaldi committed
672 673 674
        })
    }

d.arizona's avatar
d.arizona committed
675
    uploadLOCF(type) {
d.arizona's avatar
d.arizona committed
676
        let data = []
d.arizona's avatar
d.arizona committed
677
        let error = false
d.arizona's avatar
d.arizona committed
678
        this.deleteReport()
d.arizona's avatar
d.arizona committed
679 680
        this.state.dataTable.map(i => {
            if (i[0] == 3) {
d.arizona's avatar
d.arizona committed
681
                if (i[6] == null || i[7] == null || i[8] == "" || i[9] == "" || i[10] == "" || i[11] == "") {
d.arizona's avatar
d.arizona committed
682 683
                    error = true
                }
d.arizona's avatar
d.arizona committed
684 685 686 687

                if (i[7].value == 'Others' && i[18] == '') {
                    error = true
                }
d.arizona's avatar
d.arizona committed
688
                let tgl = String(i[9]).split('-')
d.arizona's avatar
d.arizona committed
689
                let checkUndifined = tgl.findIndex((val) => val == undefined)
d.arizona's avatar
d.arizona committed
690 691 692
                data.push({
                    "item_report_id": i[1],
                    "borrower_comp_name": i[5],
d.arizona's avatar
d.arizona committed
693
                    "bank_name": i[6] == null? [6] : i[6].value,
d.arizona's avatar
d.arizona committed
694
                    "type_of_credit": i[7] == null? i[7] : i[7].value,
d.arizona's avatar
d.arizona committed
695
                    "remarks": i[8],
d.arizona's avatar
d.arizona committed
696
                    // "loan_maturity_date": i[9],
d.arizona's avatar
d.arizona committed
697 698
                    "loan_maturity_date":  i[9] == undefined || i[9] == "null" || i[9] == null? "" : (String(tgl[2]).length <= 2? tgl[2] + '-' + tgl[1] + '-' + tgl[0] : String(i[9])),
                    // "loan_maturity_date":  i[9] !== undefined || i[9] !== "null" || i[9] !== null? (String(tgl[2]).length <= 2? tgl[2] + '-' + tgl[1] + '-' + tgl[0] : String(i[9])) : "",
d.arizona's avatar
d.arizona committed
699
                    "interest": i[10] == ""? "0.00" : i[10],
d.arizona's avatar
d.arizona committed
700
                    "currency": i[11],
Riri Novita's avatar
Riri Novita committed
701 702 703 704 705 706
                    "loan_plafond_amount_ori": Number(i[12]).toFixed(1) == ""? "0.0" : Number(i[12]).toFixed(1),
                    "loan_plafond_amount_idr": Number(i[13]).toFixed(1) == ""? "0.0" : Number(i[13]).toFixed(1),
                    "out_loan_ki_amount_ori": Number(i[14]).toFixed(1) == ""? "0.0" : Number(i[14]).toFixed(1),
                    "out_loan_ki_amount_idr": Number(i[15]).toFixed(1) == ""? "0.0" : Number(i[15]).toFixed(1),
                    "out_loan_kmk_amount_ori": Number(i[16]).toFixed(1) == ""? "0.0" : Number(i[16]).toFixed(1),
                    "out_loan_kmk_amount_idr": Number(i[17]).toFixed(1) == ""? "0.0" : Number(i[17]).toFixed(1),
d.arizona's avatar
d.arizona committed
707
                    // "mtd_vs_previous_month": i[18],
d.arizona's avatar
d.arizona committed
708
                    "out_loan_other_type": i[18],
Riri Novita's avatar
Riri Novita committed
709 710 711 712 713 714 715 716 717 718 719 720 721 722
                    "out_loan_other_amount_ori": Number(i[19]).toFixed(1) == ""? "0.0" : Number(i[19]).toFixed(1),
                    "out_loan_other_amount_idr": Number(i[20]).toFixed(1) == ""? "0.0" : Number(i[20]).toFixed(1),
                    "total_out_loan_ori": Number(i[21]).toFixed(1) == ""? "0.0" : Number(i[21]).toFixed(1),
                    "total_out_loan_idr": Number(i[22]).toFixed(1) == ""? "0.0" : Number(i[22]).toFixed(1),
                    "remaining_plafond_ori": Number(i[23]).toFixed(1) == ""? "0.0" : Number(i[23]).toFixed(1),
                    "remaining_plafond_idr": Number(i[24]).toFixed(1) == ""? "0.0" : Number(i[24]).toFixed(1),
                    "current_ratio_financial": Number(i[25]).toFixed(2) == ""? "0.00" : Number(i[25]).toFixed(2),
                    "current_ratio_current": Number(i[26]).toFixed(2) == ""? "0.00" : Number(i[26]).toFixed(2),
                    "der_financial": Number(i[27]).toFixed(2) == ""? "0.00" : Number(i[27]).toFixed(2),
                    "der_current": Number(i[28]).toFixed(2) == ""? "0.00" : Number(i[28]).toFixed(2),
                    "debt_to_ebitda_financial": Number(i[29]).toFixed(2) == ""? "0.00" : Number(i[29]).toFixed(2),
                    "debt_to_ebitda_current": Number(i[30]).toFixed(2) == ""? "0.00" : Number(i[30]).toFixed(2),
                    "ebitda_to_interest_financial": Number(i[31]).toFixed(2) == ""? "0.00" : Number(i[31]).toFixed(2),
                    "ebitda_to_interest_current": Number(i[32]).toFixed(2) == ""? "0.00" : Number(i[32]).toFixed(2),
d.arizona's avatar
d.arizona committed
723
                    "other_ratio1_ratio_name": i[33],
Riri Novita's avatar
Riri Novita committed
724 725
                    "other_ratio1_financial": Number(i[34]).toFixed(2) == ""? "0.00" : Number(i[34]).toFixed(2),
                    "other_ratio1_current": Number(i[35]).toFixed(2) == ""? "0.00" : Number(i[35]).toFixed(2),
d.arizona's avatar
d.arizona committed
726
                    "other_ratio2_ratio_name": i[36],
Riri Novita's avatar
Riri Novita committed
727 728
                    "other_ratio2_financial": Number(i[37]).toFixed(2) == ""? "0.00" : Number(i[37]).toFixed(2),
                    "other_ratio2_current": Number(i[38]).toFixed(2) == ""? "0.00" : Number(i[38]).toFixed(2),
d.arizona's avatar
d.arizona committed
729
                    "other_ratio3_ratio_name": i[39],
Riri Novita's avatar
Riri Novita committed
730 731
                    "other_ratio3_financial": Number(i[40]).toFixed(2) == ""? "0.00" : Number(i[40]).toFixed(2),
                    "other_ratio3_current": Number(i[41]).toFixed(2) == ""? "0.00" : Number(i[41]).toFixed(2),
d.arizona's avatar
d.arizona committed
732
                    "other_ratio4_ratio_name": i[42],
Riri Novita's avatar
Riri Novita committed
733 734
                    "other_ratio4_financial": Number(i[43]).toFixed(2) == ""? "0.00" : Number(i[43]).toFixed(2),
                    "other_ratio4_current": Number(i[44]).toFixed(2) == ""? "0.00" : Number(i[44]).toFixed(2),
d.arizona's avatar
d.arizona committed
735 736 737 738 739 740 741 742 743 744 745 746 747 748
                    "notes": i[45],
                })
            }
        })
        let body = {
            "monthly_report_id": this.props.monthlyReportId,
            "company_id": this.props.company.company_id,
            "periode": this.props.periode,
            "report_id": this.props.report_id,
            "status": type,
            "months": this.props.month.month_id,
            "locf": data,
            "per_bs": this.state.perBS,
            "diff": this.state.diff,
d.arizona's avatar
d.arizona committed
749
            "total_loan" : this.state.perBS
d.arizona's avatar
d.arizona committed
750
        }
d.arizona's avatar
d.arizona committed
751 752 753
        console.log(JSON.stringify(body));
        if (error && type == 'submitted') {
            this.setState({handleTekTekTek: 0, saveDraft: false, saveComp: true, loading: false , snekbar: true, snekbarMsg: 'Data Incomplete', handleTekTekTek: 0})
d.arizona's avatar
d.arizona committed
754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773
        } else {
            api.create('UPLOAD').uploadMonthlyReportLOCF(body).then(response => {
                console.log(response);
                if (response.data) {
                    if (response.ok) {
                        if (response.data.status === "success") {
                            this.props.saveToMonthlyReport()
                            // this.props.onClickClose()
                            // this.props.getReport()
                        } else {
                            this.setState({ alert: true, messageAlert: response.data.message, tipeAlert: 'warning', loading: false }, () => {
                                if (response.data.message.includes("Someone Logged In")) {
                                    setTimeout(() => {
                                        localStorage.removeItem(Constant.TOKEN)
                                        window.location.reload();
                                    }, 1000);
                                }
                            })
                            // alert(response.data.status)
                        }
d.arizona's avatar
d.arizona committed
774
                    } else {
d.arizona's avatar
d.arizona committed
775
                        this.setState({ alert: true, messageAlert: response.data.message, tipeAlert: 'error', loading: false, handleTekTekTek: 0 })
d.arizona's avatar
d.arizona committed
776 777
                    }
                } else {
d.arizona's avatar
d.arizona committed
778
                    this.setState({ alert: true, messageAlert: response.problem, tipeAlert: 'error', loading: false, handleTekTekTek: 0 })
d.arizona's avatar
d.arizona committed
779
                }
d.arizona's avatar
d.arizona committed
780
                this.setState({handleTekTekTek: 0})
d.arizona's avatar
d.arizona committed
781 782
            })
        }
d.arizona's avatar
d.arizona committed
783 784
    }

d.arizona's avatar
d.arizona committed
785 786 787 788 789 790
    getBankData() {
        let body = {
            group: 'BANK',
            company_id: this.props.company.company_id,
            type: 'BANK_NAME'
        }
d.arizona's avatar
d.arizona committed
791
        this.setState({ dataLoaded: false })
d.arizona's avatar
d.arizona committed
792 793 794 795 796 797 798 799 800 801 802
        api.create().getAllSettingByType(body).then(response => {
            console.log(response)
            if (response.data) {
                if (response.ok) {
                    if (response.data.status === 'success') {
                        let data = response.data.data
                        // // // console.log(data)
                        let inputBank = []

                        data.map((item) => {
                            inputBank.push({
d.arizona's avatar
d.arizona committed
803
                                value: `${item.value}`
d.arizona's avatar
d.arizona committed
804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824
                            })
                        })
                        let defaultProps = {
                            options: inputBank,
                            getOptionLabel: (option) => titleCase(option.value),
                        };
                        // // // console.log(defaultProps)
                        this.setState({ bankNameList: defaultProps })
                    } else {
                        this.setState({ alert: true, messageAlert: response.data.message, tipeAlert: 'warning' }, () => {
                            if (response.data.message.includes("Someone Logged In")) {
                                setTimeout(() => {
                                    localStorage.removeItem(Constant.TOKEN)
                                    window.location.reload();
                                }, 1000);
                            }
                        })
                    }
                } else {
                    this.setState({ alert: true, messageAlert: response.data.message, tipeAlert: 'error' })
                }
Deni Rinaldi's avatar
Deni Rinaldi committed
825
            } else {
d.arizona's avatar
d.arizona committed
826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856
                this.setState({ alert: true, messageAlert: response.problem, tipeAlert: 'error' })
            }
        })
    }

    getTypeOfCredit() {
        let body = {
            group: 'BANK',
            company_id: this.props.company.company_id,
            type: 'TYPE_OF_CREDIT'
        }
        api.create().getAllSettingByType(body).then(response => {
            console.log(response)
            if (response.data) {
                if (response.ok) {
                    if (response.data.status === 'success') {
                        let data = response.data.data
                        // // // console.log(data)
                        let inputTypeOfCredit = []

                        data.map((item) => {
                            inputTypeOfCredit.push({
                                value: item.value
                            })
                        })
                        let defaultProps = {
                            options: inputTypeOfCredit,
                            getOptionLabel: (option) => titleCase(option.value),
                        };
                        // // // console.log(defaultProps)
                        this.setState({ typeOfCreditList: defaultProps})
Deni Rinaldi's avatar
Deni Rinaldi committed
857
                    } else {
d.arizona's avatar
d.arizona committed
858 859 860 861 862 863
                        this.setState({ alert: true, messageAlert: response.data.message, tipeAlert: 'warning' }, () => {
                            if (response.data.message.includes("Someone Logged In")) {
                                setTimeout(() => {
                                    localStorage.removeItem(Constant.TOKEN)
                                    window.location.reload();
                                }, 1000);
Deni Rinaldi's avatar
Deni Rinaldi committed
864
                            }
d.arizona's avatar
d.arizona committed
865 866 867 868 869 870 871 872 873 874 875 876 877
                        })
                    }
                } else {
                    this.setState({ alert: true, messageAlert: response.data.message, tipeAlert: 'error' })
                }
            } else {
                this.setState({ alert: true, messageAlert: response.problem, tipeAlert: 'error' })
            }
        })
    }

    downloadTemplate = async () => {
        let res = await fetch(
d.arizona's avatar
d.arizona committed
878
            `${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/locf/monthly_report/download_template?report_id=${this.props.report_id}&&company_id=${this.props.company.company_id}&&year=${this.props.periode}&&months=${this.props.month.month_id}`
d.arizona's avatar
d.arizona committed
879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894
        )
        res = await res.blob()
        // console.log(this.props.report_id)
        // console.log(this.props.company.company_id)
        // console.log(this.props.periode)
        // console.log(this.props.month.month_id)
        if (res.size > 0) {
            let url = window.URL.createObjectURL(res);
            let a = document.createElement('a');
            a.href = url;
            a.download = 'Template Monthly Report List of Credit Facilities.xlsx';
            a.click();
        }
    }

    async downloadAllData() {
d.arizona's avatar
d.arizona committed
895 896
        let url = `${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/locf/monthly_report/export_monthly_report?monthly_report_id=&&report_id=${this.props.report_id}&&company_id=${this.props.company.company_id}&&year=${this.props.periode}&&revision=${this.props.revision}&&months=${this.props.month.month_id}`
        let urls = `${process.env.REACT_APP_URL_MAIN_BE}/public/transaction/locf/monthly_report/export_monthly_report?monthly_report_id=${this.props.monthlyReportId}&&report_id=${this.props.report_id}&&company_id=${this.props.company.company_id}&&year=${this.props.periode}&&revision=${this.props.revision}&&months=${this.props.month.month_id}`
d.arizona's avatar
d.arizona committed
897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936
        // console.log(url);
        // console.log(urls);
        let res = await fetch(
            this.props.monthlyReportId == null ? url : urls
        )
        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 = 'Monthly Report List of Credit Facilities.xlsx';
            a.click();
        }
    }

    getSubmission() {
        this.setState({ loading: true })
        let payload = {
            "company_id": this.props.company.company_id,
            "periode": this.props.periode,
            "is_approver": true
        }
        api.create().getSubmission(payload).then(response => {
            // console.log(response)
            if (response.data) {
                if (response.data.status === "success") {
                    this.setState({
                        submissionID: response.data.data.submission_id,
                        lastRevision: response.data.data.last_revision,
                    }, () => {
                      this.getDataRatio()  
                    })
                } else {
                    this.setState({ submissionID: null, loading: false })
                }
            }
        })
    }

d.arizona's avatar
d.arizona committed
937 938 939 940 941 942 943 944 945 946
    getPerBS() {
        let payload = {
            "report_id": this.props.report_id,
            "revision": Number(this.props.revision),
            "periode": this.props.periode,
            "company_id": this.props.company.company_id,
            "monthly_report_id": this.props.monthlyReportId,
            "months": this.props.month.month_id
        }
        api.create().getPerBSiMontlyReportLOCF(payload).then((response) => {
d.arizona's avatar
d.arizona committed
947
            console.log(response)
d.arizona's avatar
d.arizona committed
948 949 950
            // if (this.state.get_for == 'view') {
            //     this.setState({perBS: "0.0"})
            // } else {
d.arizona's avatar
d.arizona committed
951
                if (response.data.status == "success") {
d.arizona's avatar
d.arizona committed
952 953 954 955 956
                    this.setState({
                        perBS: response.data.data.per_bs == null || response.data.data.per_bs == ''? Number(0).toFixed(1) : Number(response.data.data.per_bs).toFixed(1),
                        totalOutStand: response.data.data.total_loan,
                        diff: response.data.data.diff
                    })
d.arizona's avatar
d.arizona committed
957
                }
d.arizona's avatar
d.arizona committed
958
            // }
d.arizona's avatar
d.arizona committed
959 960 961
        })
    }

d.arizona's avatar
d.arizona committed
962 963 964 965
    getDataRatio() {
        let payload = {
            "report_id": this.props.report_id,
            "revision": this.props.revision,
d.arizona's avatar
d.arizona committed
966
            "periode": 2021,
d.arizona's avatar
d.arizona committed
967 968 969
            "company_id": this.props.company.company_id,
            "submission_id": this.state.submissionID
        }
rifkaki's avatar
rifkaki committed
970
        api.create().getReportHierarkiFRMR(payload).then(response => {
d.arizona's avatar
d.arizona committed
971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988
            console.log(payload);
            console.log(response);
            let dataTable = []
            if (response.data) {
                if (response.data.status === 'success') {
                    let res = response.data.data
                    const handlePushChild = (item) => {
                        let indexIDzz = dataTable.findIndex((val) => val[1] === item.id)
                        if (indexIDzz === -1) {
                            dataTable.push([
                                item.type_report_id,
                                item.id,
                                item.parent,
                                item.formula,
                                item.level,
                                item.description,
                                item.uom,
                                item.ratio.total_actual_before === null ? "0.0" : item.ratio.total_actual_before === "" ? "0.0" : item.ratio.total_actual_before,
Riri Novita's avatar
Riri Novita committed
989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002
                                Number(item.ratio.monthly_january).toFixed(2),
                                Number(item.ratio.monthly_february).toFixed(2),
                                Number(item.ratio.monthly_march).toFixed(2),
                                Number(item.ratio.monthly_april).toFixed(2),
                                Number(item.ratio.monthly_may).toFixed(2),
                                Number(item.ratio.monthly_june).toFixed(2),
                                Number(item.ratio.monthly_july).toFixed(2),
                                Number(item.ratio.monthly_august).toFixed(2),
                                Number(item.ratio.monthly_september).toFixed(2),
                                Number(item.ratio.monthly_october).toFixed(2),
                                Number(item.ratio.monthly_november).toFixed(2),
                                Number(item.ratio.monthly_december).toFixed(2),
                                Number(item.ratio.total_next_year).toFixed(2),
                                Number(item.ratio.total_more_year).toFixed(2),
d.arizona's avatar
d.arizona committed
1003 1004 1005 1006
                                item.order,
                                item.condition_it_should_be,
                                item.condition_if_wrong
                            ])
Deni Rinaldi's avatar
Deni Rinaldi committed
1007
                        }
d.arizona's avatar
d.arizona committed
1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025
                        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.oum,
                            item.ratio.total_actual_before === null ? "0.0" : item.ratio.total_actual_before === "" ? "0.0" : item.ratio.total_actual_before,
Riri Novita's avatar
Riri Novita committed
1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039
                            Number(item.ratio.monthly_january).toFixed(2),
                            Number(item.ratio.monthly_february).toFixed(2),
                            Number(item.ratio.monthly_march).toFixed(2),
                            Number(item.ratio.monthly_april).toFixed(2),
                            Number(item.ratio.monthly_may).toFixed(2),
                            Number(item.ratio.monthly_june).toFixed(2),
                            Number(item.ratio.monthly_july).toFixed(2),
                            Number(item.ratio.monthly_august).toFixed(2),
                            Number(item.ratio.monthly_september).toFixed(2),
                            Number(item.ratio.monthly_october).toFixed(2),
                            Number(item.ratio.monthly_november).toFixed(2),
                            Number(item.ratio.monthly_december).toFixed(2),
                            Number(item.ratio.total_next_year).toFixed(2),
                            Number(item.ratio.total_more_year).toFixed(2),
d.arizona's avatar
d.arizona committed
1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072
                            item.order,
                            item.condition_it_should_be,
                            item.condition_if_wrong
                        ])
                        if (item.children !== null) {
                            if (item.children.length > 0) {
                                item.children.map((items, indexs) => {
                                    handlePushChild(items)
                                })
                            }
                        }
                    })
                    console.log(dataTable)
                    this.setState({dataTableRatio : dataTable}, () => {
                        this.getItemHierarki()
                    })
                } else {                            
                    this.setState({ alert: true, messageAlert: response.data.message, tipeAlert: 'warning'}, () => {
                        if (response.data.message.includes("Someone Logged In")) {
                            setTimeout(() => {
                                localStorage.removeItem(Constant.TOKEN)
                                window.location.reload();
                            }, 1000);
                        }
                    })
                }
            } else {
                this.setState({ alert: true, messageAlert: response.problem, tipeAlert: 'error', loading: false })
            }
        })
    }

    backToMonthlyReport(type) {
d.arizona's avatar
d.arizona committed
1073
        // this.setState({ loading: true })
d.arizona's avatar
d.arizona committed
1074
        let data = []
d.arizona's avatar
d.arizona committed
1075
        let error = false
d.arizona's avatar
d.arizona committed
1076
        this.deleteReport()
d.arizona's avatar
d.arizona committed
1077
        this.state.dataTable.map(i => {
d.arizona's avatar
d.arizona committed
1078
            if (i[0] == 3) {
d.arizona's avatar
d.arizona committed
1079
                if (i[6] == null || i[7] == null || i[8] == "" || i[9] == "" || i[10] == "" || i[11] == "") {
d.arizona's avatar
d.arizona committed
1080 1081
                    error = true
                }
d.arizona's avatar
d.arizona committed
1082 1083 1084
                if (i[7].value == 'Others' && i[18] == '') {
                    error = true
                }
d.arizona's avatar
d.arizona committed
1085
                let tgl = String(i[9]).split('-')
d.arizona's avatar
d.arizona committed
1086
                let checkUndifined = tgl.findIndex((val) => val == undefined)
d.arizona's avatar
d.arizona committed
1087 1088 1089
                data.push({
                    "item_report_id": i[1],
                    "borrower_comp_name": i[5],
d.arizona's avatar
d.arizona committed
1090 1091
                    "bank_name": i[6] == null? [6] : i[6].value,
                    "type_of_credit": i[7] == null? i[7] : i[7].value,
d.arizona's avatar
d.arizona committed
1092
                    "remarks": i[8],
d.arizona's avatar
d.arizona committed
1093
                    "loan_maturity_date":  i[9] == undefined || i[9] == "null" || i[9] == null? "" : (String(tgl[2]).length <= 2? tgl[2] + '-' + tgl[1] + '-' + tgl[0] : String(i[9])),
d.arizona's avatar
d.arizona committed
1094
                    // "loan_maturity_date":  i[9],
d.arizona's avatar
d.arizona committed
1095
                    "interest": i[10] == ""? "0.00" : i[10],
d.arizona's avatar
d.arizona committed
1096
                    "currency": i[11],
Riri Novita's avatar
Riri Novita committed
1097 1098 1099 1100 1101 1102
                    "loan_plafond_amount_ori": Number(i[12]).toFixed(1) == ""? "0.0" : Number(i[12]).toFixed(1),
                    "loan_plafond_amount_idr": Number(i[13]).toFixed(1) == ""? "0.0" : Number(i[13]).toFixed(1),
                    "out_loan_ki_amount_ori": Number(i[14]).toFixed(1) == ""? "0.0" : Number(i[14]).toFixed(1),
                    "out_loan_ki_amount_idr": Number(i[15]).toFixed(1) == ""? "0.0" : Number(i[15]).toFixed(1),
                    "out_loan_kmk_amount_ori": Number(i[16]).toFixed(1) == ""? "0.0" : Number(i[16]).toFixed(1),
                    "out_loan_kmk_amount_idr": Number(i[17]).toFixed(1) == ""? "0.0" : Number(i[17]).toFixed(1),
d.arizona's avatar
d.arizona committed
1103
                    // "mtd_vs_previous_month": i[18],
d.arizona's avatar
d.arizona committed
1104
                    "out_loan_other_type": i[18],
Riri Novita's avatar
Riri Novita committed
1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118
                    "out_loan_other_amount_ori": Number(i[19]).toFixed(1) == ""? "0.0" : Number(i[19]).toFixed(1),
                    "out_loan_other_amount_idr": Number(i[20]).toFixed(1) == ""? "0.0" : Number(i[20]).toFixed(1),
                    "total_out_loan_ori": Number(i[21]).toFixed(1) == ""? "0.0" : Number(i[21]).toFixed(1),
                    "total_out_loan_idr": Number(i[22]).toFixed(1) == ""? "0.0" : Number(i[22]).toFixed(1),
                    "remaining_plafond_ori": Number(i[23]).toFixed(1) == ""? "0.0" : Number(i[23]).toFixed(1),
                    "remaining_plafond_idr": Number(i[24]).toFixed(1) == ""? "0.0" : Number(i[24]).toFixed(1),
                    "current_ratio_financial": Number(i[25]).toFixed(2) == ""? "0.00" : Number(i[25]).toFixed(2),
                    "current_ratio_current": Number(i[26]).toFixed(2) == ""? "0.00" : Number(i[26]).toFixed(2),
                    "der_financial": Number(i[27]).toFixed(2) == ""? "0.00" : Number(i[27]).toFixed(2),
                    "der_current": Number(i[28]).toFixed(2) == ""? "0.00" : Number(i[28]).toFixed(2),
                    "debt_to_ebitda_financial": Number(i[29]).toFixed(2) == ""? "0.00" : Number(i[29]).toFixed(2),
                    "debt_to_ebitda_current": Number(i[30]).toFixed(2) == ""? "0.00" : Number(i[30]).toFixed(2),
                    "ebitda_to_interest_financial": Number(i[31]).toFixed(2) == ""? "0.00" : Number(i[31]).toFixed(2),
                    "ebitda_to_interest_current": Number(i[32]).toFixed(2) == ""? "0.00" : Number(i[32]).toFixed(2),
d.arizona's avatar
d.arizona committed
1119
                    "other_ratio1_ratio_name": i[33],
Riri Novita's avatar
Riri Novita committed
1120 1121
                    "other_ratio1_financial": Number(i[34]).toFixed(2) == ""? "0.00" : Number(i[34]).toFixed(2),
                    "other_ratio1_current": Number(i[35]).toFixed(2) == ""? "0.00" : Number(i[35]).toFixed(2),
d.arizona's avatar
d.arizona committed
1122
                    "other_ratio2_ratio_name": i[36],
Riri Novita's avatar
Riri Novita committed
1123 1124
                    "other_ratio2_financial": Number(i[37]).toFixed(2) == ""? "0.00" : Number(i[37]).toFixed(2),
                    "other_ratio2_current": Number(i[38]).toFixed(2) == ""? "0.00" : Number(i[38]).toFixed(2),
d.arizona's avatar
d.arizona committed
1125
                    "other_ratio3_ratio_name": i[39],
Riri Novita's avatar
Riri Novita committed
1126 1127
                    "other_ratio3_financial": Number(i[40]).toFixed(2) == ""? "0.00" : Number(i[40]).toFixed(2),
                    "other_ratio3_current": Number(i[41]).toFixed(2) == ""? "0.00" : Number(i[41]).toFixed(2),
d.arizona's avatar
d.arizona committed
1128
                    "other_ratio4_ratio_name": i[42],
Riri Novita's avatar
Riri Novita committed
1129 1130
                    "other_ratio4_financial": Number(i[43]).toFixed(2) == ""? "0.00" : Number(i[43]).toFixed(2),
                    "other_ratio4_current": Number(i[44]).toFixed(2) == ""? "0.00" : Number(i[44]).toFixed(2),
d.arizona's avatar
d.arizona committed
1131 1132 1133
                    "notes": i[45],
                })
            }
d.arizona's avatar
d.arizona committed
1134 1135
        })
        let payload = {
d.arizona's avatar
d.arizona committed
1136
            "monthly_report_id": this.props.monthlyReportId,
d.arizona's avatar
d.arizona committed
1137 1138 1139 1140 1141 1142 1143 1144
            "company_id": this.props.company.company_id,
            "periode": this.props.periode,
            "report_id": this.props.report_id,
            "status": type,
            "months": this.props.month.month_id,
            "locf": data,
            "per_bs": this.state.perBS,
            "diff": this.state.diff,
d.arizona's avatar
d.arizona committed
1145
            "total_loan" : this.state.perBS
d.arizona's avatar
d.arizona committed
1146
        }
d.arizona's avatar
d.arizona committed
1147

d.arizona's avatar
d.arizona committed
1148
        console.log(JSON.stringify(payload))
d.arizona's avatar
d.arizona committed
1149 1150
        if (error && type == 'submitted') {
            this.setState({handleTekTekTek: 0, saveDraft: false, saveComp: true, loading: false, snekbar: true, snekbarMsg: 'Data Incomplete', handleTekTekTek: 0})
d.arizona's avatar
d.arizona committed
1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161
        } else {
            api.create('UPLOAD').createMonthlyReportLOCF(payload).then(response => {
                console.log(response);
                if (response.data) {
                    if (response.data.status === "success") {
                        this.props.saveToMonthlyReport()
                    } else {
                        this.setState({ loading: false }, () => {
                            this.props.saveToMonthlyReport()
                        })
                    }
d.arizona's avatar
d.arizona committed
1162 1163
                } else {
                    this.setState({ loading: false }, () => {
d.arizona's avatar
d.arizona committed
1164 1165
                        // this.getSubmission()
                        document.body.style.overflow = 'unset';
d.arizona's avatar
d.arizona committed
1166 1167
                    })
                }
d.arizona's avatar
d.arizona committed
1168
                this.setState({handleTekTekTek: 0})
d.arizona's avatar
d.arizona committed
1169 1170
            })
        }
d.arizona's avatar
d.arizona committed
1171 1172
    }

d.arizona's avatar
d.arizona committed
1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247

    handleCalculate = () => {
        let dataTable2 = this.state.dataTable
        this.setState({ loading: true }, () => {
            let bankPrev = ""
            let idPrev  = 0
            let newData = []
            let dataCoba = []
            let bankNameEmpty = false
            let totalLoan = 0
            dataTable2.map((item, index) => {
                if (item[0] !== 8) {
                    if (item[6] == null) {
                        bankNameEmpty = true
                    } else {
                        let groupName = String(item[6].value).split("-")
                        let indexAS = dataCoba.findIndex((val) => item[6].value.includes(val.groupName))
                        if (indexAS == -1) {
                            dataCoba.push({
                                groupName: groupName[groupName.length - 1],
                                data: [item]
                            })
                        } else {
                            let indexDD = dataCoba[indexAS].data.length-1 == -1 ? 0 : dataCoba[indexAS].data.length-1
                            if (String(dataCoba[indexAS].data[indexDD]).includes('Total')) {
                                let dataAwal = []
                                let dataAkhir = []
                                dataAwal = dataCoba[indexAS].data.splice(0, dataCoba[indexAS].data.length-2)
                                dataAkhir = dataCoba[indexAS].data.splice(dataCoba[indexAS].data.length-1, 1)
                                dataAwal.push(item)
                                dataCoba[indexAS].data = dataAwal.concat(dataAkhir)
                            } else {
                                dataCoba[indexAS].data.push(item)
                            }
                        }
                    }
                }
            })
            let dataGabung = []
            if (!bankNameEmpty) {
                dataCoba.map((item, index) => {
                    item.data.map((items,index) => {
                        dataGabung.push(items)
                    })
                })

                dataGabung.map((items, index) => {
                    if (items[0] == 3) {
                        totalLoan += items[22]
                    }
                    if (bankPrev != "") {
                        if (items[6].value !== bankPrev) {
                            bankPrev = items[6].value
                            if (items[6].value == 'Grand Total') {
                                // if (dataTable2.length > 2) {
                                //     newData.push(items)
                                // } else { 
                                    if (String(dataGabung[index - 1][6].value).includes('Total ')) {
                                        newData.push(items)
                                    } else {
                                        // if (String(dataGabung[index][6].value).includes('Total ')) {
                                        //     newData.push(items)
                                        // } else { 
                                            // items[46] = index + 1
                                            let nameTotal = String(dataGabung[index - 1][6].value).split("-")
                                            newData.push([
                                                8, 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                {value: 'Total ' + nameTotal[nameTotal.length - 1]},
                                                null, 
                                                "", 
d.arizona's avatar
d.arizona committed
1248
                                                null, 
d.arizona's avatar
d.arizona committed
1249 1250
                                                "0.00", 
                                                "",  
d.arizona's avatar
d.arizona committed
1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283
                                                "", 
                                                "0", 
                                                "", 
                                                "0", 
                                                "",  
                                                "0", 
                                                "", 
                                                "", 
                                                "0", 
                                                "0", 
                                                "0", 
                                                "0", 
                                                "0", 
                                                "", 
                                                "0", 
                                                "", 
                                                "0", 
                                                "", 
                                                "0", 
                                                "", 
                                                "0", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
                                                "", 
d.arizona's avatar
d.arizona committed
1284
                                                "",
d.arizona's avatar
d.arizona committed
1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309
                                                index],  
                                                items,
                                            )
                                        // }
                                    } 
                                // }
                            } else {
                                if (String(dataGabung[index - 1][6].value).includes('Total ')) {
                                    newData.push(items)
                                } else {
                                    if (String(dataGabung[index][6].value).includes('Total ')) {
                                        newData.push(items)
                                    } else {
                                        items[46] = index + 1
                                        let nameTotal = String(dataGabung[index - 1][6].value).split("-")
                                        newData.push([
                                            8, 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            {value: 'Total ' + nameTotal[nameTotal.length - 1]}, 
                                            null, 
                                            "", 
d.arizona's avatar
d.arizona committed
1310
                                            null, 
d.arizona's avatar
d.arizona committed
1311 1312
                                            "0.00", 
                                            "",  
d.arizona's avatar
d.arizona committed
1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345
                                            "", 
                                            "0", 
                                            "", 
                                            "0", 
                                            "", 
                                            "0", 
                                            "", 
                                            "", 
                                            "0", 
                                            "0", 
                                            "0", 
                                            "0", 
                                            "0", 
                                            "", 
                                            "0", 
                                            "", 
                                            "0", 
                                            "", 
                                            "0", 
                                            "", 
                                            "0",
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
                                            "", 
d.arizona's avatar
d.arizona committed
1346
                                            "",
d.arizona's avatar
d.arizona committed
1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364
                                            index],
                                            items,
                                        )
                                    }
                                    
                                }
                            }
                        }
                        else {
                            newData.push(items)
                        }
                    } else {
                        bankPrev = items[6].value
                        idPrev = items[0]
                        newData.push(items)
                    }
                })
            } else {
d.arizona's avatar
d.arizona committed
1365 1366 1367
                if (this.state.get_for == 'edit') {
                    this.setState({snekbar: true, snekbarMsg: 'Bank Names Cannot be Empty'})
                }
d.arizona's avatar
d.arizona committed
1368 1369 1370 1371 1372
            }
            
            setTimeout(() => {
                // console.log(dataCoba)
                // console.log(dataGabung)
d.arizona's avatar
d.arizona committed
1373
                console.log(newData)
d.arizona's avatar
d.arizona committed
1374
                // console.log(dataTampungBank)
d.arizona's avatar
d.arizona committed
1375
                console.log(Number(totalLoan).toFixed(1));
d.arizona's avatar
d.arizona committed
1376
                console.log(this.state.perBS)
d.arizona's avatar
d.arizona committed
1377
                console.log(this.state.diff)
d.arizona's avatar
d.arizona committed
1378
                // console.log(bankNameEmpty)
d.arizona's avatar
d.arizona committed
1379 1380
                // dataTable: newData, totalOutStand: newData[newData.length-1][22]
                if (bankNameEmpty) {
d.arizona's avatar
d.arizona committed
1381 1382 1383 1384 1385
                    if (this.state.get_for == 'view') {
                        this.setState({ loading: false, dataTable: this.state.dataTable, diff: this.state.diff == null? "0.0" : Number(0 - this.state.perBS).toFixed(1), perBS: this.state.totalOutStand == null? "0.0" : this.state.totalOutStand, saveDraft: false, saveComp: true})
                    } else {
                        this.setState({ loading: false, dataTable: this.state.dataTable, diff: Number(0 - this.state.perBS).toFixed(1), saveDraft: false, saveComp: true})
                    }
d.arizona's avatar
d.arizona committed
1386
                } else {
d.arizona's avatar
d.arizona committed
1387
                    if (this.state.get_for == 'view') {
d.arizona's avatar
d.arizona committed
1388
                        this.setState({ loading: false, dataTable: newData, diff: this.state.diff == null? "0.0" : Number(Number(totalLoan).toFixed(1) - this.state.perBS).toFixed(1), perBS: this.state.totalOutStand == null? "0.0" : this.state.totalOutStand })
d.arizona's avatar
d.arizona committed
1389
                    } else {
d.arizona's avatar
d.arizona committed
1390 1391 1392 1393
                        this.setState({ loading: false, dataTable: newData, diff: Number(Number(totalLoan).toFixed(1) - this.state.perBS).toFixed(1), saveDraft: false, saveComp: Number(Number(totalLoan).toFixed(1) - this.state.perBS) == 0 || Number(Number(totalLoan).toFixed(1) - this.state.perBS) == "-0.0"? false : true }, () => {
                            // alert(this.state.saveComp)
                            // console.log(Number(Number(totalLoan).toFixed(1) - this.state.perBS));
                        })
d.arizona's avatar
d.arizona committed
1394 1395

                    }
d.arizona's avatar
d.arizona committed
1396 1397 1398 1399
                }
            }, 100);
        })
    }
d.arizona's avatar
d.arizona committed
1400 1401 1402 1403 1404 1405
    

    render() {
        let dataTable2 = this.state.dataTable
        let loading = this.state.loading
        let dataTampungBank = []
d.arizona's avatar
d.arizona committed
1406
        let indexNyasar = false
d.arizona's avatar
d.arizona committed
1407
        let totalLoan = 0 
d.arizona's avatar
d.arizona committed
1408

d.arizona's avatar
d.arizona committed
1409
        // const formatSeparator = (num) => {
d.arizona's avatar
d.arizona committed
1410
        //    return String(num).replace(/(?<!\..*)(\d)(?=(?:\d{3})+(?:\.|$))/g, '$1,')
d.arizona's avatar
d.arizona committed
1411 1412 1413

            // return num
        // }
d.arizona's avatar
d.arizona committed
1414

d.arizona's avatar
d.arizona committed
1415
        const handleAction = (typeReport, tableMeta, typeButton) => {
d.arizona's avatar
d.arizona committed
1416
            // console.log(typeReport)
d.arizona's avatar
d.arizona committed
1417
            if (typeReport == 3) {
d.arizona's avatar
d.arizona committed
1418
                if (dataTable2.length == 2) {
d.arizona's avatar
d.arizona committed
1419 1420 1421 1422
                    if (typeButton == 'add') {
                        return true
                    } else {
                        return false
Deni Rinaldi's avatar
Deni Rinaldi committed
1423 1424
                    }
                } else {
d.arizona's avatar
d.arizona committed
1425 1426 1427 1428 1429 1430 1431 1432
                    return true
                }
            } else {
                return false
            }
        }

        const handleChange = (value, tableMeta, column, typeChange, typeDrop) => {
d.arizona's avatar
d.arizona committed
1433
            let val = ''
d.arizona's avatar
d.arizona committed
1434 1435 1436 1437 1438 1439
            if (typeChange == 'date') {
                dataTable2[tableMeta.rowIndex][column] = format(value, 'yyyy-MM-dd')
                this.setState({loading: true}, () => {
                    this.setState({loading: false})
                })
            } else {
d.arizona's avatar
d.arizona committed
1440
                if (column != 8 && column != 11 && column != 18 && column != 25 && column != 27 && column != 29 && column != 31 && column != 33 && column != 36 && column != 39 && column != 42 && column != 45 ) {
d.arizona's avatar
d.arizona committed
1441 1442
                    val = String(value).split(",").join("")
                    val = Number(val).toFixed(2)
d.arizona's avatar
d.arizona committed
1443
                } else {
d.arizona's avatar
d.arizona committed
1444 1445
                    val = String(value).split(",").join("")
                    
d.arizona's avatar
d.arizona committed
1446
                }
d.arizona's avatar
d.arizona committed
1447

d.arizona's avatar
d.arizona committed
1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466
                if (value.value !== undefined) {
                    if (value.value == 'Investment Loan') {
                        dataTable2[tableMeta.rowIndex][16] = 0
                        dataTable2[tableMeta.rowIndex][17] = 0
                        dataTable2[tableMeta.rowIndex][18] = ""
                        dataTable2[tableMeta.rowIndex][19] = 0
                        dataTable2[tableMeta.rowIndex][20] = 0
                    } else if (value.value == 'Revolving Loan (KMK)') {
                        dataTable2[tableMeta.rowIndex][14] = 0
                        dataTable2[tableMeta.rowIndex][15] = 0
                        dataTable2[tableMeta.rowIndex][18] = ""
                        dataTable2[tableMeta.rowIndex][19] = 0
                        dataTable2[tableMeta.rowIndex][20] = 0
                    } else if (value.value == 'others') {
                        dataTable2[tableMeta.rowIndex][14] = 0
                        dataTable2[tableMeta.rowIndex][15] = 0
                        dataTable2[tableMeta.rowIndex][16] = 0
                        dataTable2[tableMeta.rowIndex][17] = 0
                    }
d.arizona's avatar
d.arizona committed
1467 1468 1469
                    dataTable2[tableMeta.rowIndex][column] = value
                } else {
                    dataTable2[tableMeta.rowIndex][column] = val
d.arizona's avatar
d.arizona committed
1470
                }
d.arizona's avatar
d.arizona committed
1471
            }
d.arizona's avatar
d.arizona committed
1472 1473 1474
            console.log(dataTable2[tableMeta.rowIndex][column]);
            console.log(value)
            console.log(String(value).split(",").join(""))
d.arizona's avatar
d.arizona committed
1475 1476 1477 1478 1479
        }

        const handleValueDropDown = (value, type, tableMeta) => {
            let data = type == 'bankName' ? this.state.bankNameList.options : this.state.typeOfCreditList.options
            let index = 0
d.arizona's avatar
d.arizona committed
1480 1481 1482
            if (type == 'bankName' && dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] != null && dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] != "") {
                indexNyasar = true
            }
d.arizona's avatar
d.arizona committed
1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505
            if (value == null) {
                index = -1
            } else {
                index = data.findIndex((val) => String(val.value) == String(value.value))
            }
            if (index == -1) {
                dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = null
                return null
            } else {
                dataTable2[tableMeta.rowIndex][tableMeta.columnIndex] = value
                return value
            }
        }

        const handleTableRatio = (value, tableMeta, column, reportName) => {
            let dataTableRatio = this.state.dataTableRatio
            let indexId = dataTableRatio.findIndex((val) => String(val[5]).toLocaleLowerCase() == String(reportName).toLocaleLowerCase())
            let valuez = 0
            if (indexId != -1) {
                valuez = dataTableRatio[indexId][Number(this.props.month.month_id) + 7]
                // console.log(valuez)
                if (String(valuez).includes('infinity')) {
                    valuez = 0
Deni Rinaldi's avatar
Deni Rinaldi committed
1506 1507
                }
            }
d.arizona's avatar
d.arizona committed
1508 1509 1510 1511 1512 1513
            dataTable2[tableMeta.rowIndex][column] = valuez
            return valuez
        }
        
        const handleFormulaHardcode = (value, tableMeta, column) => {
            let valuez = 0
1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525
            if (tableMeta.rowData[0] == 8) {
                dataTable2.map((item,index) => {
                    if (item[6].value.includes(String(tableMeta.rowData[6].value).substr(6,tableMeta.rowData[6].length)) && item[0] != 8) {
                        valuez += Number(item[column])
                    }
                })
            } else if (tableMeta.rowData[0] == 9) {
                dataTable2.map((item,index) => {
                    if (item[0] == 8) {
                        valuez += Number(item[column])
                    }
                })
d.arizona's avatar
d.arizona committed
1526 1527 1528
                if (column == 22) {
                    totalLoan = valuez
                }
1529 1530 1531 1532 1533 1534 1535 1536 1537 1538
            } else {
                if (column == 21) {
                    valuez = Number(tableMeta.rowData[14]) + Number(tableMeta.rowData[16]) + Number(tableMeta.rowData[19])
                } else if (column == 22) {
                    valuez = Number(tableMeta.rowData[15]) + Number(tableMeta.rowData[17]) + Number(tableMeta.rowData[20])
                } else if (column == 23) {
                    valuez = Number(tableMeta.rowData[12]) - Number(tableMeta.rowData[21])
                } else if (column == 24) {
                    valuez = Number(tableMeta.rowData[13]) - Number(tableMeta.rowData[22])
                }
d.arizona's avatar
d.arizona committed
1539 1540 1541 1542 1543 1544 1545 1546
            }
            dataTable2[tableMeta.rowIndex][column] = valuez
            return valuez
        }

        const handleTambah = (data, rowIndex) => {
            // // console.log(dataTable2)
            let newData = []
1547
            let indexxx = 0
d.arizona's avatar
d.arizona committed
1548
            dataTable2.map((item, index) => {
1549 1550 1551 1552 1553 1554
                indexxx = index
                if (item[6] == "Grand Total") {
                    item[46] = 999999
                } else {
                    item[46] = indexxx
                }
d.arizona's avatar
d.arizona committed
1555 1556
                newData.push(item)
                if (index == rowIndex) {
1557
                    indexxx = index + 1
d.arizona's avatar
d.arizona committed
1558 1559 1560 1561 1562 1563 1564 1565 1566 1567
                    newData.push([
                        3, 
                        "", 
                        "", 
                        "", 
                        "", 
                        this.props.company.company_name, 
                        item[6], 
                        null, 
                        "", 
d.arizona's avatar
d.arizona committed
1568
                        null, 
d.arizona's avatar
d.arizona committed
1569 1570
                        "0.00", 
                        "",  
d.arizona's avatar
d.arizona committed
1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603
                        "", 
                        "0", 
                        "", 
                        "0", 
                        "", 
                        "0", 
                        "", 
                        "", 
                        "0", 
                        "0", 
                        "0", 
                        "0", 
                        "0", 
                        "", 
                        "0", 
                        "", 
                        "0", 
                        "", 
                        "0", 
                        "", 
                        "0", 
                        "", 
                        "", 
                        "", 
                        "", 
                        "", 
                        "", 
                        "", 
                        "", 
                        "", 
                        "", 
                        "", 
                        "", 
d.arizona's avatar
d.arizona committed
1604
                        "",
d.arizona's avatar
d.arizona committed
1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619
                        indexxx],
                    )

                }
            })
            dataTable2 = newData.sort((a,b) => a[46] - b[46])
            this.setState({ dataTable: dataTable2 }, () => {
                setTimeout(() => {
                    this.setState({ loading: false })
                    console.log(dataTable2)
                }, 500)
            })
        }

        const handleDelete = (index) => {
d.arizona's avatar
d.arizona committed
1620
            let dataDelete = this.state.dataDelete
d.arizona's avatar
d.arizona committed
1621 1622 1623 1624 1625 1626
            let berapaInput = 0
            dataTable2.map((items,indexs) => {
                if (items[0] == 3) {
                    berapaInput += 1
                }
            })
d.arizona's avatar
d.arizona committed
1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657

            dataDelete.push(dataTable2[index][1])

            let prevData = dataTable2[index-1] == undefined? null : dataTable2[index-1][6]
            let currentData = dataTable2[index][6]
            let nextData = dataTable2[index+1] == undefined? null : dataTable2[index+1][6]

            if (nextData == null) {
                dataTable2.splice(index,1)
            } else if (nextData.value.includes('Total')) {
                if (prevData !== null && currentData == null) {
                    dataTable2.splice(index,1)
                } else if (prevData !== null && prevData.value == currentData.value) {
                    dataTable2.splice(index,1)
                } else if (dataTable2.length > 3) {
                    if (prevData == null) {
                        if (nextData.value.includes('Grand')) {
                            dataTable2.splice(index,1)
                        } else {
                            dataTable2.splice(index,2)
                        }
                    } else {
                        dataTable2.splice(index,2)
                    }
                } else if (dataTable2.length == 3) {
                    if (prevData == null) {
                        if (nextData.value.includes('Grand')) {
                            dataTable2.splice(index,1)
                        } else {
                            dataTable2.splice(index,3)
                            dataTable2.push(
d.arizona's avatar
d.arizona committed
1658
                                [3, "", "", "", "", this.props.company.company_name, null, null, "", null, "0.00", "",  "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "", 0 ],
d.arizona's avatar
d.arizona committed
1659 1660 1661 1662 1663 1664
                                [9, "", "", "", "", "", {value: "Grand Total"}, null, "", "", "", "0",  "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "notes", 999999 ],
                            )
                        }
                    } else {
                        dataTable2.splice(index,1)
                    }
d.arizona's avatar
d.arizona committed
1665 1666
                }
            } else {
d.arizona's avatar
d.arizona committed
1667
                dataTable2.splice(index,1)
d.arizona's avatar
d.arizona committed
1668 1669
            }
            
d.arizona's avatar
d.arizona committed
1670
            this.setState({ dataTable: dataTable2, dataDelete }, () => {
d.arizona's avatar
d.arizona committed
1671
                setTimeout(() => {
d.arizona's avatar
d.arizona committed
1672
                    console.log(this.state.dataDelete)
d.arizona's avatar
d.arizona committed
1673 1674
                    this.setState({ loading: false })
                }, 100)
d.arizona's avatar
d.arizona committed
1675
            })
Deni Rinaldi's avatar
Deni Rinaldi committed
1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702
        }

        let columns = [
            {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    filter: false,
d.arizona's avatar
d.arizona committed
1703
                    display: this.state.get_for == 'view'? false : true,
Deni Rinaldi's avatar
Deni Rinaldi committed
1704
                    customHeadRender: (columnMeta) => (
d.arizona's avatar
d.arizona committed
1705
                        <TableCell key={columnMeta.index} style={{ ...style, top: 0, zIndex: 99, backgroundColor: '#dbdbdb' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
1706 1707 1708
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'left' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
d.arizona's avatar
d.arizona committed
1709
                    setCellProps: () => ({ style2 }),
Deni Rinaldi's avatar
Deni Rinaldi committed
1710 1711 1712 1713 1714
                    customBodyRender: (val, tableMeta) => {
                        return (
                            // handleAction(tableMeta.rowData[2]) && 
                            <div style={{ display: 'flex' }}>
                                {/* {tableMeta.rowData[6] === "Active" ? */}
d.arizona's avatar
d.arizona committed
1715
                                {handleAction(tableMeta.rowData[0], tableMeta, 'add') && <span>
Deni Rinaldi's avatar
Deni Rinaldi committed
1716 1717 1718 1719 1720 1721 1722 1723 1724
                                    <LightTooltip title={'Add'} arrow>
                                        <button
                                            style={{
                                                backgroundColor: 'transparent',
                                                cursor: 'pointer',
                                                borderColor: 'transparent',
                                            }}
                                            // onClick={() => // // console.log(tableMeta.rowData[1])}
                                            onClick={() => {
d.arizona's avatar
d.arizona committed
1725 1726
                                                this.setState({ loading: true })
                                                handleTambah(tableMeta.rowData[1], tableMeta.rowIndex)
Deni Rinaldi's avatar
Deni Rinaldi committed
1727 1728 1729 1730 1731
                                            }}
                                        >
                                            <img src={Images.add} />
                                        </button>
                                    </LightTooltip>
d.arizona's avatar
d.arizona committed
1732 1733
                                </span>}
                                {handleAction(tableMeta.rowData[0], tableMeta, 'delete') && <span>
Deni Rinaldi's avatar
Deni Rinaldi committed
1734 1735 1736 1737 1738 1739 1740 1741 1742
                                    <LightTooltip title={'Delete'} arrow>
                                        <button
                                            style={{
                                                backgroundColor: 'transparent',
                                                cursor: 'pointer',
                                                borderColor: 'transparent',
                                                marginLeft: 5
                                            }}
                                            onClick={() => {
d.arizona's avatar
d.arizona committed
1743 1744
                                                this.setState({ loading: true })
                                                handleDelete(tableMeta.rowIndex)
Deni Rinaldi's avatar
Deni Rinaldi committed
1745 1746
                                            }}
                                        >
d.arizona's avatar
d.arizona committed
1747
                                            <img src={Images.delete} style={{width: 37, height: 37}}/>
Deni Rinaldi's avatar
Deni Rinaldi committed
1748 1749
                                        </button>
                                    </LightTooltip>
d.arizona's avatar
d.arizona committed
1750
                                </span>}
Deni Rinaldi's avatar
Deni Rinaldi committed
1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765
                            </div >
                        );
                    }
                }
            }, {
                name: "Borrower (Company) Name",
                options: {
                    customHeadRender: (columnMeta) => (
                        <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#37b5e6', width: 96, borderRight: '1px #fff solid' }}>
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
                    setCellProps: () => ({ style2 }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        return (
d.arizona's avatar
d.arizona committed
1766
                            <div style={{ textAlign: 'center', width: 90 }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785
                                {tableMeta.rowData[0] === 4 ?
                                    null :
                                    val
                                }
                            </div>
                        )
                    }
                }
            }, {
                name: "Bank Name",
                options: {
                    customHeadRender: (columnMeta) => (
                        <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#37b5e6', width: 96, borderRight: '1px #fff solid' }}>
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
                    setCellProps: () => ({ style2 }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        return (
d.arizona's avatar
d.arizona committed
1786
                            <div style={{ width: 150 }}>
d.arizona's avatar
d.arizona committed
1787
                            {tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9 || tableMeta.rowData[0] === 4 ?
d.arizona's avatar
d.arizona committed
1788 1789
                                <Typography style={{ color: 'black', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{val.value}</Typography>
                                :
d.arizona's avatar
d.arizona committed
1790 1791 1792 1793 1794 1795
                                <Autocomplete
                                    {...this.state.bankNameList}
                                    id="bankNameList"
                                    onChange={(event, newInputValue) => handleChange(newInputValue, tableMeta, tableMeta.columnIndex)}
                                    debug
                                    disableClearable
d.arizona's avatar
d.arizona committed
1796
                                    disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
1797 1798 1799 1800 1801
                                    // disabled={!handleAction(tableMeta.rowData[2], tableMeta.rowData[0])}
                                    value={handleValueDropDown(val, 'bankName', tableMeta)}
                                    style={{ padding: 0, margin: 0}}
                                    renderInput={(params) =>
                                        <div ref={params.InputProps.ref} style={{ padding: 0, margin: 0 }}>
d.arizona's avatar
d.arizona committed
1802
                                            <textarea style={{ borderColor: 'white', width: 150, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: tableMeta.rowData[6] == null && this.state.get_for == 'edit'? '#ffac99' : 'white' }} type="text" {...params.inputProps} />
d.arizona's avatar
d.arizona committed
1803 1804 1805 1806 1807
                                        </div>
                                    }
                                />
                            }
                        </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822
                        )
                    }
                }
            }, {
                name: "Type Of Credit",
                options: {
                    customHeadRender: (columnMeta) => (
                        <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#37b5e6', width: 96, borderRight: '1px #fff solid' }}>
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
                    setCellProps: () => ({ style2 }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        return (
                            <div style={{ textAlign: 'right', width: 90 }}>
d.arizona's avatar
d.arizona committed
1823
                                {tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9 || tableMeta.rowData[0] === 4 ?
Deni Rinaldi's avatar
Deni Rinaldi committed
1824
                                    null :
d.arizona's avatar
d.arizona committed
1825 1826 1827 1828 1829 1830 1831
                                    <Autocomplete
                                    {...this.state.typeOfCreditList}
                                    id="typeOfCreditList"
                                    onChange={(event, newInputValue) => handleChange(newInputValue, tableMeta, tableMeta.columnIndex)}
                                    debug
                                    value={handleValueDropDown(val, 'typeOfCreditList', tableMeta)}
                                    disableClearable
d.arizona's avatar
d.arizona committed
1832
                                    disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
1833 1834 1835 1836
                                    // disabled={!handleAction(tableMeta.rowData[2], tableMeta.rowData[0])}
                                    style={{ padding: 0, margin: 0 }}
                                    renderInput={(params) =>
                                        <div ref={params.InputProps.ref} style={{ padding: 0, margin: 0 }}>
d.arizona's avatar
d.arizona committed
1837
                                            <textarea style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: tableMeta.rowData[7] == null  && this.state.get_for == 'edit'? '#ffac99' : 'white' }} type="text" {...params.inputProps} />
d.arizona's avatar
d.arizona committed
1838 1839 1840 1841
                                        </div>
                                    }
                                    />
                                } 
Deni Rinaldi's avatar
Deni Rinaldi committed
1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856
                            </div>
                        )
                    }
                }
            }, {
                name: "Remarks",
                options: {
                    customHeadRender: (columnMeta) => (
                        <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#37b5e6', width: 96, borderRight: '1px #fff solid' }}>
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
                    setCellProps: () => ({ style2 }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        return (
d.arizona's avatar
d.arizona committed
1857
                            <div style={{ textAlign: 'left', width: 90 }}>
1858 1859
                                { tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                 null :
d.arizona's avatar
d.arizona committed
1860
                                <div style={{ padding: 0, margin: 0 }}>
d.arizona's avatar
d.arizona committed
1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879
                                    <textarea disabled={this.state.get_for == 'view'} style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: tableMeta.rowData[8] == '' && this.state.get_for == 'edit'? '#ffac99' : 'white' }} type="text" defaultValue={tableMeta.rowData[8]} 
                                    onBlur={(event) => handleChange(event.target.value, tableMeta, tableMeta.columnIndex)} />
                                </div>
                                // <Input
                                //     disableUnderline={true}
                                //     style={{ fontSize: 12, textAlign: 'center', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                //     type="text"
                                //     disabled={tableMeta.rowData[0] == 8 || tableMeta.rowData[0] == 9 || this.state.get_for == 'view'? true : false}
                                //     defaultValue={tableMeta.rowData[8]}
                                //     // disabled={false}
                                //     multiline={true}
                                //     inputProps={{
                                //         style: {
                                //             color: this.state.get_for == 'view'? "black" : "#5198ea",
                                //             textAlign: 'center',
                                //             backgroundColor: 'white'
                                //         }
                                //     }}
                                // />
d.arizona's avatar
d.arizona committed
1880
                                
d.arizona's avatar
d.arizona committed
1881
                                //  <ThemeProvider theme={theme}>
d.arizona's avatar
d.arizona committed
1882
                                     
d.arizona's avatar
d.arizona committed
1883 1884
                                //     <Input
                                //         disableUnderline={true}
d.arizona's avatar
d.arizona committed
1885
                                //         style={{color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'center', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent', marginBottom: -105 }}
d.arizona's avatar
d.arizona committed
1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899
                                //         type="text"
                                //         placeholder=""
                                //         disabled={tableMeta.rowData[0] == 8 || tableMeta.rowData[0] == 9? true : false}
                                //         defaultValue={tableMeta.rowData[8]}
                                //         multiline
                                //         rowsMax={3}
                                //         onBlur={(event) => {
                                //             // // // console.log(event.target.value)
                                //             // updateValue(event.target.value)
                                //             handleChange(event.target.value, tableMeta, tableMeta.columnIndex)
                                //             // // // console.log(dataTable2)
                                //         }}
                                //     />
                                // </ThemeProvider>
1900 1901
                                }
                               
Deni Rinaldi's avatar
Deni Rinaldi committed
1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917
                            </div>
                        )
                    }
                }
            }, {
                name: "Loan Maturity Date",
                options: {
                    customHeadRender: (columnMeta) => (
                        <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#37b5e6', width: 96, borderRight: '1px #fff solid' }}>
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
                    setCellProps: () => ({ style2 }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        return (
                            <div style={{ textAlign: 'right', width: 90 }}>
d.arizona's avatar
d.arizona committed
1918
                                {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] == 8 || tableMeta.rowData[0] == 9?
Deni Rinaldi's avatar
Deni Rinaldi committed
1919
                                    null :
d.arizona's avatar
d.arizona committed
1920 1921 1922 1923 1924 1925
                                    <DatePicker
                                        margin="normal"
                                        id="loanMatureDate"
                                        // label="Valid To"
                                        format="dd-MM-yyyy"
                                        value={val}
d.arizona's avatar
d.arizona committed
1926
                                        disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937
                                        onChange={(e) => handleChange(e, tableMeta, tableMeta.columnIndex, 'date')}
                                        // minDate={this.state.startDate}
                                        KeyboardButtonProps={{
                                            'aria-label': 'change date',
                                        }}
                                        inputProps={{
                                            style: {
                                                marginTop: -10,
                                                textAlign: 'center',
                                                fontSize: 11,
                                                fontFamily: 'Nunito Sans, sans-serif',
d.arizona's avatar
d.arizona committed
1938
                                                color: this.state.get_for == 'view'? "black" : '#5198ea',
d.arizona's avatar
d.arizona committed
1939
                                                backgroundColor: (tableMeta.rowData[9] == null || tableMeta.rowData[9] == '') && this.state.get_for == 'edit'? '#ffac99' : 'white'
d.arizona's avatar
d.arizona committed
1940 1941 1942 1943 1944
                                            }
                                        }}
                                        InputLabelProps={{
                                            style: {
                                                fontSize: 11,
d.arizona's avatar
d.arizona committed
1945
                                                color: '#5198ea',
d.arizona's avatar
d.arizona committed
1946 1947 1948 1949 1950 1951
                                                fontFamily: 'Nunito Sans, sans-serif',
                                            }
                                        }}

                                        style={{ padding: 0, margin: 0, width: '100%' }}
                                    />
Deni Rinaldi's avatar
Deni Rinaldi committed
1952 1953 1954 1955 1956 1957
                                }
                            </div>
                        )
                    }
                }
            }, {
d.arizona's avatar
d.arizona committed
1958
                name: "Interest (%)",
Deni Rinaldi's avatar
Deni Rinaldi committed
1959 1960 1961 1962 1963 1964 1965
                options: {
                    customHeadRender: (columnMeta) => (
                        <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#37b5e6', width: 96, borderRight: '1px #fff solid' }}>
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
                    setCellProps: () => ({ style2 }),
d.arizona's avatar
d.arizona committed
1966
                    customBodyRender: (value, tableMeta, updateValue) => {
Deni Rinaldi's avatar
Deni Rinaldi committed
1967
                        return (
d.arizona's avatar
d.arizona committed
1968
                            <div style={{ display: 'flex' }}>
d.arizona's avatar
d.arizona committed
1969
                                {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] == 8 || tableMeta.rowData[0] == 9?
Deni Rinaldi's avatar
Deni Rinaldi committed
1970
                                    null :
d.arizona's avatar
d.arizona committed
1971
                                    <FormControlLabel
d.arizona's avatar
d.arizona committed
1972
                                        style={{ margin: 0}}
d.arizona's avatar
d.arizona committed
1973 1974 1975 1976
                                        value={value}
                                        control={
                                            <NumberFormat
                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
1977
                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: (tableMeta.rowData[10] == '0.00' || tableMeta.rowData[10] == '') && this.state.get_for == 'edit'? '#ffac99' : 'transparent' }}
d.arizona's avatar
d.arizona committed
1978 1979 1980
                                                type="text"
                                                placeholder=""
                                                value={Number(value).toFixed(2)}
d.arizona's avatar
d.arizona committed
1981
                                                disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992
                                                // 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={2}
                                                onBlur={(event) => {
                                                    // updateValue(event.target.value)
                                                    handleChange(event.target.value, tableMeta, tableMeta.columnIndex)
                                                    // // // // console.log(tableMeta.rowData[0])
                                                }}
                                            />
                                        }
                                    />
                                }
Deni Rinaldi's avatar
Deni Rinaldi committed
1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007
                            </div>
                        )
                    }
                }
            }, {
                name: "Currency",
                options: {
                    customHeadRender: (columnMeta) => (
                        <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#37b5e6', width: 96, borderRight: '1px #fff solid' }}>
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
                    setCellProps: () => ({ style2 }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        return (
d.arizona's avatar
d.arizona committed
2008
                            <div style={{ display: 'flex'}}>
d.arizona's avatar
d.arizona committed
2009
                                {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] == 8 || tableMeta.rowData[0] == 9?
Deni Rinaldi's avatar
Deni Rinaldi committed
2010
                                    null :
d.arizona's avatar
d.arizona committed
2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030
                                    <div style={{ padding: 0, margin: 0 }}>
                                        <textarea disabled={this.state.get_for == 'view'} style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: tableMeta.rowData[8] == '' && this.state.get_for == 'edit'? '#ffac99' : 'white' }} type="text" defaultValue={tableMeta.rowData[11]} 
                                        onBlur={(event) => handleChange(event.target.value, tableMeta, tableMeta.columnIndex)} />
                                    </div>
                                    // <ThemeProvider theme={this.state.get_for == 'view'? theme3 : theme2}>
                                    //     <Input
                                    //         disableUnderline={true}
                                    //         style={{ width: 96, color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'center', borderColor: 'transparent', margin: 0, backgroundColor: 'transparent', backgroundColor: tableMeta.rowData[11] == '' && this.state.get_for == 'edit'? '#ffac99' : 'white' }}
                                    //         type="text"
                                    //         placeholder=""
                                    //         disabled={this.state.get_for == 'view'}
                                    //         defaultValue={tableMeta.rowData[11]}
                                    //         onBlur={(event) => {
                                    //             // // // console.log(event.target.value)
                                    //             // updateValue(event.target.value)
                                    //             handleChange(event.target.value, tableMeta, tableMeta.columnIndex)
                                    //             // // // console.log(dataTable2)
                                    //         }}
                                    //     />
                                    // </ThemeProvider>
Deni Rinaldi's avatar
Deni Rinaldi committed
2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045
                                }
                            </div>
                        )
                    }
                }
            }, {
                name: `Loan Plafond`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >
                            {/* <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", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5 }}>{columnMeta.name}</div>
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
r.kurnia's avatar
r.kurnia committed
2046
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, borderRight: "1px #fff solid", backgroundColor: '#07a7d0' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
2047 2048
                                    <span>{"Amount Original (Currency)"}</span>
                                </div>
r.kurnia's avatar
r.kurnia committed
2049
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, backgroundColor: '#07a7d0' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061
                                    <span>{"Amount (IDR Equivalent)"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
r.kurnia's avatar
r.kurnia committed
2062
                        // console.log(tableMeta);
Deni Rinaldi's avatar
Deni Rinaldi committed
2063 2064
                        return (
                            <div>
r.kurnia's avatar
r.kurnia committed
2065
                                <div className="grid grid-2x content-center">
Deni Rinaldi's avatar
Deni Rinaldi committed
2066 2067 2068 2069
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2070 2071 2072 2073 2074 2075 2076 2077
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2078
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2079 2080 2081 2082 2083 2084 2085 2086 2087
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[12], tableMeta, 12)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2088 2089 2090 2091 2092 2093 2094
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2095
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
2096 2097
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
2098
                                                                disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
2099
                                                                value={Number(tableMeta.rowData[12]).toFixed(1) == 0.0 ? "0.0" : Number(tableMeta.rowData[12]).toFixed(1)}
d.arizona's avatar
d.arizona committed
2100 2101 2102 2103
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 12)
                                                                }}
                                                                
faisalhamdi's avatar
faisalhamdi committed
2104 2105 2106 2107
                                                            />
                                                        }
                                                    />
                                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2108 2109 2110 2111 2112 2113 2114
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2115 2116 2117 2118 2119 2120 2121 2122
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2123
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2124 2125 2126 2127 2128 2129 2130 2131 2132
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[13], tableMeta, 13)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2133 2134 2135
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
d.arizona's avatar
d.arizona committed
2136
                                                        // value={val}
faisalhamdi's avatar
faisalhamdi committed
2137 2138 2139
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2140
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
2141 2142
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
2143
                                                                disabled={this.state.get_for == 'view'}
Deni Rinaldi's avatar
Deni Rinaldi committed
2144
                                                                value={Number(tableMeta.rowData[13]).toFixed(1)}
d.arizona's avatar
d.arizona committed
2145 2146 2147 2148
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 13)
                                                                }}
                                                                
faisalhamdi's avatar
faisalhamdi committed
2149 2150 2151 2152
                                                            />
                                                        }
                                                    />
                                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            }, {
                name: `Outstanding Loan (KI)`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >
                            {/* <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", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5 }}>{columnMeta.name}</div>
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
r.kurnia's avatar
r.kurnia committed
2171
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, borderRight: "1px #fff solid", backgroundColor: '#07a7d0' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
2172 2173
                                    <span>{"Amount Original (Currency)"}</span>
                                </div>
r.kurnia's avatar
r.kurnia committed
2174
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, backgroundColor: '#07a7d0' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188
                                    <span>{"Amount (IDR Equivalent)"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
Deni Rinaldi's avatar
Deni Rinaldi committed
2189
                            <div>
r.kurnia's avatar
r.kurnia committed
2190
                                <div className="grid grid-2x content-center">
Deni Rinaldi's avatar
Deni Rinaldi committed
2191 2192 2193 2194
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2195 2196 2197 2198 2199 2200 2201 2202
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2203
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2204 2205 2206 2207 2208 2209 2210 2211 2212
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[14], tableMeta, 14)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2213 2214 2215
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
d.arizona's avatar
d.arizona committed
2216
                                                        // value={val}
faisalhamdi's avatar
faisalhamdi committed
2217 2218 2219
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2220
                                                                style={{ color: this.state.get_for == 'view'? "black" : (tableMeta.rowData[7] == null? "black" : tableMeta.rowData[7].value == 'Investment Loan'? "#5198ea" : "black"), fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
2221 2222
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
2223
                                                                disabled={this.state.get_for == 'view'? true : tableMeta.rowData[7] == null? true : tableMeta.rowData[7].value == 'Investment Loan'? false : true}
Deni Rinaldi's avatar
Deni Rinaldi committed
2224
                                                                value={Number(tableMeta.rowData[14]).toFixed(1)}
d.arizona's avatar
d.arizona committed
2225 2226 2227
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 14)
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
2228 2229 2230 2231
                                                            />
                                                        }
                                                    />
                                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2232 2233 2234 2235 2236 2237 2238
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2239 2240 2241 2242 2243 2244 2245 2246
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2247
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2248 2249 2250 2251 2252 2253 2254 2255 2256
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[15], tableMeta, 15)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2257 2258 2259 2260 2261 2262 2263
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2264
                                                                style={{ color: this.state.get_for == 'view'? "black" : (tableMeta.rowData[7] == null? "black" : tableMeta.rowData[7].value == 'Investment Loan'? "#5198ea" : "black"), fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
2265 2266
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
2267
                                                                disabled={this.state.get_for == 'view'? true : tableMeta.rowData[7] == null? true : tableMeta.rowData[7].value == 'Investment Loan'? false : true}
Deni Rinaldi's avatar
Deni Rinaldi committed
2268
                                                                value={Number(tableMeta.rowData[15]).toFixed(1)}
d.arizona's avatar
d.arizona committed
2269 2270 2271
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 15)
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
2272 2273 2274 2275
                                                            />
                                                        }
                                                    />
                                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            }, {
                name: `Outstanding Loan (KMK)`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >
                            {/* <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> */}
faisalhamdi's avatar
faisalhamdi committed
2292
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2293
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
r.kurnia's avatar
r.kurnia committed
2294
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, borderRight: "1px #fff solid", backgroundColor: '#07a7d0' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
2295 2296
                                    <span>{"Amount Original (Currency)"}</span>
                                </div>
r.kurnia's avatar
r.kurnia committed
2297
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, backgroundColor: '#07a7d0' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312
                                    <span>{"Amount (IDR Equivalent)"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
r.kurnia's avatar
r.kurnia committed
2313
                                <div className="grid grid-2x content-center">
Deni Rinaldi's avatar
Deni Rinaldi committed
2314 2315 2316 2317
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2318 2319 2320 2321 2322 2323 2324 2325
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2326
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2327 2328 2329 2330 2331 2332 2333 2334 2335
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[16], tableMeta, 16)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2336 2337 2338 2339 2340 2341 2342
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2343
                                                                style={{ color: this.state.get_for == 'view'? "black" : (tableMeta.rowData[7] == null? "black" : tableMeta.rowData[7].value == 'Revolving Loan (KMK)'? "#5198ea" : "black"), fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
2344 2345
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
2346
                                                                disabled={this.state.get_for == 'view'? true : tableMeta.rowData[7] == null? true : tableMeta.rowData[7].value == 'Revolving Loan (KMK)'? false : true}
Deni Rinaldi's avatar
Deni Rinaldi committed
2347
                                                                value={Number(tableMeta.rowData[16]).toFixed(1)}
d.arizona's avatar
d.arizona committed
2348 2349 2350
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 16)
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
2351 2352 2353 2354
                                                            />
                                                        }
                                                    />
                                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2355 2356 2357 2358 2359 2360 2361
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2362 2363 2364 2365 2366 2367 2368 2369
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2370
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2371 2372 2373 2374 2375 2376 2377 2378 2379
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[17], tableMeta, 17)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2380 2381 2382 2383 2384 2385 2386
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2387
                                                                style={{ color: this.state.get_for == 'view'? "black" : (tableMeta.rowData[7] == null? "black" : tableMeta.rowData[7].value == 'Revolving Loan (KMK)'? "#5198ea" : "black"), fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
2388 2389
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
2390
                                                                disabled={this.state.get_for == 'view'? true : tableMeta.rowData[7] == null? true : tableMeta.rowData[7].value == 'Revolving Loan (KMK)'? false : true}
Deni Rinaldi's avatar
Deni Rinaldi committed
2391
                                                                value={Number(tableMeta.rowData[17]).toFixed(1)}
d.arizona's avatar
d.arizona committed
2392 2393 2394
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 17)
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
2395 2396 2397 2398
                                                            />
                                                        }
                                                    />
                                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            }, {
                name: `Outstanding Loan (Others)`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >
                            {/* <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> */}
faisalhamdi's avatar
faisalhamdi committed
2415
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
r.kurnia's avatar
r.kurnia committed
2416 2417
                            <div className="grid grid-3x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky", backgroundColor: '#07a7d0' }}>
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
2418 2419
                                    <span>{"Type"}</span>
                                </div>
r.kurnia's avatar
r.kurnia committed
2420
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, borderLeft: "1px #fff solid", borderRight: "1px #fff solid" }}>
faisalhamdi's avatar
faisalhamdi committed
2421 2422
                                    <span>{"Amount Original (Currency)"}</span>
                                </div>
r.kurnia's avatar
r.kurnia committed
2423
                                <div className="column-3" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, width: 120 }}>
faisalhamdi's avatar
faisalhamdi committed
2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438
                                    <span>{"Amount (IDR Equivalent)"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
d.arizona's avatar
d.arizona committed
2439
                                <div className="grid grid-3x content-center" style={{alignItems: 'center'}}>
faisalhamdi's avatar
faisalhamdi committed
2440 2441 2442 2443
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2444
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
d.arizona's avatar
d.arizona committed
2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461
                                                null
                                                    // <div style={{ flex: 1 }}>
                                                    //     <FormControlLabel
                                                    //         style={{ margin: 0 }}
                                                    //         value={val}
                                                    //         control={
                                                    //             <NumberFormat
                                                    //                 thousandSeparator={true}
                                                    //                 style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                    //                 type="text"
                                                    //                 placeholder=""
                                                    //                 disabled={true}
                                                    //                 value={tableMeta.rowData[18]}
                                                    //             />
                                                    //         }
                                                    //     />
                                                    // </div>
2462
                                                :
d.arizona's avatar
d.arizona committed
2463
                                                <div style={{ padding: 0, margin: 0 }}>
2464
                                                    <textarea disabled={this.state.get_for == 'view'? true : tableMeta.rowData[7] == null? true : tableMeta.rowData[7].value == 'Others'? false : true} style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? 'black' : tableMeta.rowData[7] == null? 'black' : tableMeta.rowData[7].value == 'Others'? '#5198ea' : 'black' , backgroundColor: this.state.get_for == 'view'? 'white' : tableMeta.rowData[7] == null? 'white' : (tableMeta.rowData[18] == '' && tableMeta.rowData[7].value == 'Others' ? '#ffac99' : 'white') }} type="text" defaultValue={tableMeta.rowData[18]} 
d.arizona's avatar
d.arizona committed
2465
                                                    onBlur={(event) => handleChange(event.target.value, tableMeta, 18)} />
faisalhamdi's avatar
faisalhamdi committed
2466 2467 2468 2469 2470 2471 2472 2473
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2474 2475 2476 2477 2478 2479 2480 2481
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2482
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2483 2484 2485
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
d.arizona's avatar
d.arizona committed
2486
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[19], tableMeta, 19)).toFixed(1)}
2487 2488 2489 2490 2491
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2492 2493 2494 2495 2496 2497 2498
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2499
                                                                style={{ color: this.state.get_for == 'view'? "black" : (tableMeta.rowData[7] == null? "black" : tableMeta.rowData[7].value == 'Others'? "#5198ea" : "black"), fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
2500 2501
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
2502
                                                                disabled={this.state.get_for == 'view'? true : tableMeta.rowData[7] == null? true : tableMeta.rowData[7].value == 'Others'? false : true}
d.arizona's avatar
d.arizona committed
2503
                                                                value={Number(tableMeta.rowData[19]).toFixed(1)}
d.arizona's avatar
d.arizona committed
2504
                                                                onBlur={(event) => {
d.arizona's avatar
d.arizona committed
2505
                                                                    handleChange(event.target.value, tableMeta, 19)
d.arizona's avatar
d.arizona committed
2506
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-3">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
d.arizona's avatar
d.arizona committed
2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[20], tableMeta, 20)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2536 2537 2538 2539 2540 2541 2542
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2543
                                                                style={{ color: this.state.get_for == 'view'? "black" : (tableMeta.rowData[7] == null? "black" : tableMeta.rowData[7].value == 'Others'? "#5198ea" : "black"), fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
2544 2545
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
2546
                                                                disabled={this.state.get_for == 'view'? true : tableMeta.rowData[7] == null? true : tableMeta.rowData[7].value == 'Others'? false : true}
Deni Rinaldi's avatar
Deni Rinaldi committed
2547
                                                                value={Number(tableMeta.rowData[20]).toFixed(1)}
d.arizona's avatar
d.arizona committed
2548 2549 2550
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 20)
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            },  {
                name: `Total Outstanding Loan`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
r.kurnia's avatar
r.kurnia committed
2570
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, borderRight: "1px #fff solid", backgroundColor: '#07a7d0' }}>
faisalhamdi's avatar
faisalhamdi committed
2571 2572
                                    <span>{"Amount Original (Currency)"}</span>
                                </div>
r.kurnia's avatar
r.kurnia committed
2573
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, backgroundColor: '#07a7d0' }}>
faisalhamdi's avatar
faisalhamdi committed
2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588
                                    <span>{"Amount (IDR Equivalent)"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
r.kurnia's avatar
r.kurnia committed
2589
                                <div className="grid grid-2x content-center">
faisalhamdi's avatar
faisalhamdi committed
2590 2591 2592 2593
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2594 2595 2596 2597 2598 2599 2600 2601
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2602
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2603 2604 2605 2606 2607 2608 2609 2610 2611
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[21], tableMeta, 21)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={true}
d.arizona's avatar
d.arizona committed
2623
                                                                value={(Number(handleFormulaHardcode(tableMeta.rowData[21], tableMeta, 21)).toFixed(1))}
faisalhamdi's avatar
faisalhamdi committed
2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2635 2636 2637 2638 2639 2640 2641 2642
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2643
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2644 2645 2646 2647 2648 2649 2650 2651 2652
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[22], tableMeta, 22)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={true}
d.arizona's avatar
d.arizona committed
2664
                                                                value={(Number(handleFormulaHardcode(tableMeta.rowData[22], tableMeta, 22)).toFixed(1))}
faisalhamdi's avatar
faisalhamdi committed
2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            },  {
                name: `Remaining Plafond`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2683
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
r.kurnia's avatar
r.kurnia committed
2684
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, borderRight: "1px #fff solid", backgroundColor: '#07a7d0' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
2685 2686
                                    <span>{"Amount Original (Currency)"}</span>
                                </div>
r.kurnia's avatar
r.kurnia committed
2687
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', padding: 5, paddingBottom: dataTable2.length == 0 ? 5 : 6, backgroundColor: '#07a7d0' }}>
Deni Rinaldi's avatar
Deni Rinaldi committed
2688 2689
                                    <span>{"Amount (IDR Equivalent)"}</span>
                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2690
                            </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
r.kurnia's avatar
r.kurnia committed
2703
                                <div className="grid grid-2x content-center">
Deni Rinaldi's avatar
Deni Rinaldi committed
2704 2705 2706 2707
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2708 2709 2710 2711 2712 2713 2714 2715
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2716
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2717 2718 2719 2720 2721 2722 2723 2724 2725
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[23], tableMeta, 23)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={true}
d.arizona's avatar
d.arizona committed
2737
                                                                value={(Number(handleFormulaHardcode(tableMeta.rowData[23], tableMeta, 23)).toFixed(1))}
faisalhamdi's avatar
faisalhamdi committed
2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
                                            {tableMeta.rowData[0] === 4 ?
                                                null :
2749 2750 2751 2752 2753 2754 2755 2756
                                                tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                                    <div style={{ flex: 1 }}>
                                                        <FormControlLabel
                                                            style={{ margin: 0 }}
                                                            value={val}
                                                            control={
                                                                <NumberFormat
                                                                    thousandSeparator={true}
d.arizona's avatar
d.arizona committed
2757
                                                                    style={{ color: "black", fontSize: 12, textAlign: 'right', fontWeight: 'bold', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
2758 2759 2760 2761 2762 2763 2764 2765 2766
                                                                    type="text"
                                                                    placeholder=""
                                                                    disabled={true}
                                                                    value={Number(handleFormulaHardcode(tableMeta.rowData[24], tableMeta, 24)).toFixed(1)}
                                                                />
                                                            }
                                                        />
                                                    </div>
                                                :
faisalhamdi's avatar
faisalhamdi committed
2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={true}
d.arizona's avatar
d.arizona committed
2778
                                                                value={(Number(handleFormulaHardcode(tableMeta.rowData[24], tableMeta, 24)).toFixed(1))}
faisalhamdi's avatar
faisalhamdi committed
2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
r.kurnia's avatar
r.kurnia committed
2791
            },  {
d.arizona's avatar
d.arizona committed
2792
                name: `Current Ratio`,
faisalhamdi's avatar
faisalhamdi committed
2793
                options: {
d.arizona's avatar
d.arizona committed
2794 2795 2796 2797
                    customHeadRender: (columnMeta, tableMeta) => {
                        // console.log(columnMeta)
                        // console.log(tableMeta)
                        return (                      
d.arizona's avatar
d.arizona committed
2798
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
faisalhamdi's avatar
faisalhamdi committed
2799 2800
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
d.arizona's avatar
d.arizona committed
2801
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", height: 43, display: 'grid', alignItems: 'center', backgroundColor: '#07a7d0', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 14 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
2802 2803
                                    <span>{"Financial Covenant"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
2804
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 14 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
2805 2806 2807 2808
                                    <span>{"Current Testing"}</span>
                                </div>
                            </div>
                        </th>
d.arizona's avatar
d.arizona committed
2809 2810
                        )
                    },
faisalhamdi's avatar
faisalhamdi committed
2811 2812 2813 2814 2815 2816 2817 2818 2819 2820
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
r.kurnia's avatar
r.kurnia committed
2821
                                <div className="grid grid-2x content-center">
faisalhamdi's avatar
faisalhamdi committed
2822 2823
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
2824
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
2825 2826
                                                null :
                                                <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={this.state.get_for == 'view'}
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[25]).toFixed(2)}
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 25)
                                                                }}
                                                            />
                                                        }
                                                    />
faisalhamdi's avatar
faisalhamdi committed
2846 2847 2848 2849 2850 2851
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
2852
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864
                                                null :
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={true}
d.arizona's avatar
d.arizona committed
2865
                                                                value={Number(handleTableRatio(tableMeta.rowData[26], tableMeta, 26, "Current Ratio")).toFixed(2)}
faisalhamdi's avatar
faisalhamdi committed
2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            },  {
d.arizona's avatar
d.arizona committed
2879
                name: `DER`,
faisalhamdi's avatar
faisalhamdi committed
2880 2881 2882 2883 2884
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
d.arizona's avatar
d.arizona committed
2885
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", height: 43, display: 'grid', alignItems: 'center', backgroundColor: '#07a7d0', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 14 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
2886 2887
                                    <span>{"Financial Covenant"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
2888
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 14 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903
                                    <span>{"Current Testing"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
r.kurnia's avatar
r.kurnia committed
2904
                                <div className="grid grid-2x content-center">
faisalhamdi's avatar
faisalhamdi committed
2905 2906
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
2907
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
2908 2909
                                                null :
                                                <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={this.state.get_for == 'view'}
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[27]).toFixed(2)}
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 27)
                                                                }}
                                                            />
                                                        }
                                                    />
faisalhamdi's avatar
faisalhamdi committed
2929
                                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2930 2931 2932 2933 2934
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
2935
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
Deni Rinaldi's avatar
Deni Rinaldi committed
2936
                                                null :
faisalhamdi's avatar
faisalhamdi committed
2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={true}
d.arizona's avatar
d.arizona committed
2948
                                                                value={Number(handleTableRatio(tableMeta.rowData[28], tableMeta, 28, "Debt to Equity Ratio")).toFixed(2)}
faisalhamdi's avatar
faisalhamdi committed
2949 2950 2951 2952
                                                            />
                                                        }
                                                    />
                                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
2953 2954 2955 2956 2957 2958 2959 2960
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
faisalhamdi's avatar
faisalhamdi committed
2961
            },  {
d.arizona's avatar
d.arizona committed
2962
                name: `Debt to EBITDA`,
faisalhamdi's avatar
faisalhamdi committed
2963 2964 2965 2966 2967
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
d.arizona's avatar
d.arizona committed
2968
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", height: 43, display: 'grid', alignItems: 'center', backgroundColor: '#07a7d0', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 14 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
2969 2970
                                    <span>{"Financial Covenant"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
2971
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 14 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986
                                    <span>{"Current Testing"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
r.kurnia's avatar
r.kurnia committed
2987
                                <div className="grid grid-2x content-center">
faisalhamdi's avatar
faisalhamdi committed
2988 2989
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
2990
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
2991 2992
                                                null :
                                                <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={this.state.get_for == 'view'}
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[29]).toFixed(2)}
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 29)
                                                                }}
                                                            />
                                                        }
                                                    />
faisalhamdi's avatar
faisalhamdi committed
3012 3013 3014 3015 3016 3017
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3018
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030
                                                null :
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={true}
d.arizona's avatar
d.arizona committed
3031
                                                                value={Number(handleTableRatio(tableMeta.rowData[30], tableMeta, 30, "Debt to EBITDA - YTD")).toFixed(2)}
faisalhamdi's avatar
faisalhamdi committed
3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            },  {
d.arizona's avatar
d.arizona committed
3045
                name: `EBITDA to Interest (ISCR)`,
faisalhamdi's avatar
faisalhamdi committed
3046 3047 3048 3049
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
d.arizona's avatar
d.arizona committed
3050
                            <div className="grid grid-2x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
d.arizona's avatar
d.arizona committed
3051
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", height: 43, display: 'grid', alignItems: 'center', backgroundColor: '#07a7d0', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 14 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
3052 3053
                                    <span>{"Financial Covenant"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3054
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 14 : 6 }}>
faisalhamdi's avatar
faisalhamdi committed
3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069
                                    <span>{"Current Testing"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
d.arizona's avatar
d.arizona committed
3070
                                <div className="grid grid-2x content-center">
faisalhamdi's avatar
faisalhamdi committed
3071 3072
                                    <div className="col-1">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3073
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3074 3075
                                                null :
                                                <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={this.state.get_for == 'view'}
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[31]).toFixed(2)}
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 31)
                                                                }}
                                                            />
                                                        }
                                                    />
faisalhamdi's avatar
faisalhamdi committed
3095 3096 3097 3098 3099 3100
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3101
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113
                                                null :
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={true}
d.arizona's avatar
d.arizona committed
3114
                                                                value={Number(handleTableRatio(tableMeta.rowData[32], tableMeta, 32, "EBITDA to Interest - YTD")).toFixed(2)}
faisalhamdi's avatar
faisalhamdi committed
3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            },  {
d.arizona's avatar
d.arizona committed
3128
                name: `Other Ratio 1`,
faisalhamdi's avatar
faisalhamdi committed
3129 3130 3131 3132
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
r.kurnia's avatar
r.kurnia committed
3133
                            <div className="grid grid-3x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
d.arizona's avatar
d.arizona committed
3134
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3135 3136
                                    <span>{"Ratio Name"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3137
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3138 3139
                                    <span>{"Financial Covenant"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3140
                                <div className="column-3" style={{ placeSelf: 'center', textAlign: 'center', backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155
                                    <span>{"Current Testing"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
d.arizona's avatar
d.arizona committed
3156
                                <div className="grid grid-3x content-center" style={{alignItems: 'center'}}>
faisalhamdi's avatar
faisalhamdi committed
3157
                                    <div className="col-1">
d.arizona's avatar
d.arizona committed
3158
                                        <div style={{ textAlign: 'left', width: 90 }}>
3159
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3160
                                                null :
d.arizona's avatar
d.arizona committed
3161
                                                // <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182
                                                <div style={{ padding: 0, margin: 0 }}>
                                                    <textarea disabled={this.state.get_for == 'view'} style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: 'transparent' }} type="text" defaultValue={tableMeta.rowData[33]} 
                                                    onBlur={(event) => handleChange(event.target.value, tableMeta, 33)} />
                                                </div>
                                                    // <ThemeProvider theme={this.state.get_for == 'view'? theme3 : theme}>
                                                    //     <Input
                                                    //         disableUnderline={true}
                                                    //         style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'left', borderColor: 'transparent', margin: 0, backgroundColor: 'transparent' }}
                                                    //         type="text"
                                                    //         placeholder=""
                                                    //         disabled={this.state.get_for == 'view'}
                                                    //         defaultValue={tableMeta.rowData[33]}
                                                    //         multiline={true}
                                                    //         onBlur={(event) => {
                                                    //             // // // console.log(event.target.value)
                                                    //             // updateValue(event.target.value)
                                                    //             handleChange(event.target.value, tableMeta, 33)
                                                    //             // // // console.log(dataTable2)
                                                    //         }}
                                                    //     />
                                                    // </ThemeProvider>
d.arizona's avatar
d.arizona committed
3183
                                                // </div>
faisalhamdi's avatar
faisalhamdi committed
3184 3185 3186 3187 3188
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3189
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3190 3191
                                                null :
                                                <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={this.state.get_for == 'view'}
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[34]).toFixed(2)}
                                                                onBlur={(event) => {
d.arizona's avatar
d.arizona committed
3206
                                                                    handleChange(event.target.value, tableMeta, 34)
d.arizona's avatar
d.arizona committed
3207 3208 3209 3210
                                                                }}
                                                            />
                                                        }
                                                    />
faisalhamdi's avatar
faisalhamdi committed
3211 3212 3213 3214 3215 3216
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-3">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3217
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3218 3219 3220 3221 3222 3223 3224 3225
                                                null :
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
3226
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
3227 3228
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
3229
                                                                disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
3230 3231 3232
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[35]).toFixed(2)}
d.arizona's avatar
d.arizona committed
3233 3234 3235
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 35)
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            },  {
                name: `Other Ratio 2`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
r.kurnia's avatar
r.kurnia committed
3254
                            <div className="grid grid-3x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
d.arizona's avatar
d.arizona committed
3255
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3256 3257
                                    <span>{"Ratio Name"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3258
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3259 3260
                                    <span>{"Financial Covenant"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3261
                                <div className="column-3" style={{ placeSelf: 'center', textAlign: 'center', backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276
                                    <span>{"Current Testing"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
d.arizona's avatar
d.arizona committed
3277
                                <div className="grid grid-3x content-center" style={{alignItems: 'center'}}>
faisalhamdi's avatar
faisalhamdi committed
3278
                                    <div className="col-1">
d.arizona's avatar
d.arizona committed
3279
                                        <div style={{ textAlign: 'left', width: 90 }}>
3280
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3281
                                                null :
d.arizona's avatar
d.arizona committed
3282 3283 3284 3285
                                                <div style={{ padding: 0, margin: 0 }}>
                                                    <textarea disabled={this.state.get_for == 'view'} style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: 'transparent' }} type="text" defaultValue={tableMeta.rowData[36]} 
                                                    onBlur={(event) => handleChange(event.target.value, tableMeta, 36)} />
                                                </div>
d.arizona's avatar
d.arizona committed
3286
                                                // <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303
                                                    // <ThemeProvider theme={this.state.get_for == 'view'? theme3 : theme}>
                                                    //     <Input
                                                    //         disableUnderline={true}
                                                    //         style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'left', borderColor: 'transparent', margin: 0, backgroundColor: 'transparent' }}
                                                    //         type="text"
                                                    //         placeholder=""
                                                    //         disabled={this.state.get_for == 'view'}
                                                    //         defaultValue={tableMeta.rowData[36]}
                                                    //         multiline={true}
                                                    //         onBlur={(event) => {
                                                    //             // // // console.log(event.target.value)
                                                    //             // updateValue(event.target.value)
                                                    //             handleChange(event.target.value, tableMeta, 36)
                                                    //             // // // console.log(dataTable2)
                                                    //         }}
                                                    //     />
                                                    // </ThemeProvider>
d.arizona's avatar
d.arizona committed
3304
                                                // </div>
faisalhamdi's avatar
faisalhamdi committed
3305 3306 3307 3308 3309
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3310
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3311 3312
                                                null :
                                                <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={this.state.get_for == 'view'}
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[37]).toFixed(2)}
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 37)
                                                                }}
                                                            />
                                                        }
                                                    />
faisalhamdi's avatar
faisalhamdi committed
3332 3333 3334 3335 3336 3337
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-3">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3338
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3339 3340 3341 3342 3343 3344 3345 3346
                                                null :
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
3347
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
3348 3349
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
3350
                                                                disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
3351 3352 3353
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[38]).toFixed(2)}
d.arizona's avatar
d.arizona committed
3354
                                                                onBlur={(event) => {
d.arizona's avatar
d.arizona committed
3355
                                                                    handleChange(event.target.value, tableMeta, 38)
d.arizona's avatar
d.arizona committed
3356
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            },  {
                name: `Other Ratio 3`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
r.kurnia's avatar
r.kurnia committed
3375
                            <div className="grid grid-3x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
d.arizona's avatar
d.arizona committed
3376
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3377 3378
                                    <span>{"Ratio Name"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3379
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3380 3381
                                    <span>{"Financial Covenant"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3382
                                <div className="column-3" style={{ placeSelf: 'center', textAlign: 'center', backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397
                                    <span>{"Current Testing"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
d.arizona's avatar
d.arizona committed
3398
                                <div className="grid grid-3x content-center" style={{alignItems: 'center'}}>
faisalhamdi's avatar
faisalhamdi committed
3399
                                    <div className="col-1">
d.arizona's avatar
d.arizona committed
3400
                                        <div style={{ textAlign: 'left', width: 90 }}>
3401
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3402
                                                null :
d.arizona's avatar
d.arizona committed
3403 3404 3405 3406
                                                <div style={{ padding: 0, margin: 0 }}>
                                                    <textarea disabled={this.state.get_for == 'view'} style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: 'transparent' }} type="text" defaultValue={tableMeta.rowData[39]} 
                                                    onBlur={(event) => handleChange(event.target.value, tableMeta, 39)} />
                                                </div>
d.arizona's avatar
d.arizona committed
3407
                                                // <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424
                                                    // <ThemeProvider theme={this.state.get_for == 'view'? theme3 : theme}>
                                                    //     <Input
                                                    //         disableUnderline={true}
                                                    //         style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'left', borderColor: 'transparent', margin: 0, backgroundColor: 'transparent' }}
                                                    //         type="text"
                                                    //         placeholder=""
                                                    //         disabled={this.state.get_for == 'view'}
                                                    //         multiline={true}
                                                    //         defaultValue={tableMeta.rowData[39]}
                                                    //         onBlur={(event) => {
                                                    //             // // // console.log(event.target.value)
                                                    //             // updateValue(event.target.value)
                                                    //             handleChange(event.target.value, tableMeta, 39)
                                                    //             // // // console.log(dataTable2)
                                                    //         }}
                                                    //     />
                                                    // </ThemeProvider>
d.arizona's avatar
d.arizona committed
3425
                                                // </div>
faisalhamdi's avatar
faisalhamdi committed
3426 3427 3428 3429 3430
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3431
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3432 3433
                                                null :
                                                <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={this.state.get_for == 'view'}
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[40]).toFixed(2)}
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 40)
                                                                }}
                                                            />
                                                        }
                                                    />
faisalhamdi's avatar
faisalhamdi committed
3453 3454 3455 3456 3457 3458
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-3">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3459
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3460 3461 3462 3463 3464 3465 3466 3467
                                                null :
                                                <div style={{ flex: 1 }}>
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
3468
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
3469 3470
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
3471
                                                                disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
3472 3473 3474
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[41]).toFixed(2)}
d.arizona's avatar
d.arizona committed
3475
                                                                onBlur={(event) => {
d.arizona's avatar
d.arizona committed
3476
                                                                    handleChange(event.target.value, tableMeta, 41)
d.arizona's avatar
d.arizona committed
3477
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495
                                                            />
                                                        }
                                                    />
                                                </div>
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            },  {
                name: `Other Ratio 4`,
                options: {
                    customHeadRender: (columnMeta) => (
                        <th style={{ ...style2, color: '#fff', backgroundColor: '#1c71b8', fontSize: 13, fontWeight: 1, width: 150, borderRight: "1px solid rgb(255, 255, 255)", padding: 0 }} >                           
                            <div style={{ borderBottom: "1px #fff solid", backgroundColor: '#1c71b8', justifyContent: 'center', display: 'flex', alignItems: 'center', height: 43, fontSize: 12, fontWeight: 'bold', padding: 5, textAlign: 'center' }}>{columnMeta.name}</div>
r.kurnia's avatar
r.kurnia committed
3496
                            <div className="grid grid-3x" style={{ ...style2, color: '#fff', fontSize: 12, fontWeight: 'bold', position: "sticky" }}>
d.arizona's avatar
d.arizona committed
3497
                                <div className="column-1" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3498 3499
                                    <span>{"Ratio Name"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3500
                                <div className="column-2" style={{ placeSelf: 'center', textAlign: 'center', borderRight: "1px #fff solid", backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3501 3502
                                    <span>{"Financial Covenant"}</span>
                                </div>
d.arizona's avatar
d.arizona committed
3503
                                <div className="column-3" style={{ placeSelf: 'center', textAlign: 'center', backgroundColor: '#07a7d0', height: 43, display: 'grid', alignItems: 'center', padding: dataTable2.length == 0 ? 13 : 5, paddingBottom: dataTable2.length == 0 ? 48 : 5 }}>
faisalhamdi's avatar
faisalhamdi committed
3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518
                                    <span>{"Current Testing"}</span>
                                </div>
                            </div>
                        </th>
                    ),
                    setCellProps: () => ({
                        style: {
                            paddingLeft: 0,
                            paddingRight: 0
                        }
                    }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        // console.log(tableMeta);
                        return (
                            <div>
d.arizona's avatar
d.arizona committed
3519
                                <div className="grid grid-3x content-center" style={{alignItems: 'center'}}>
faisalhamdi's avatar
faisalhamdi committed
3520
                                    <div className="col-1">
d.arizona's avatar
d.arizona committed
3521
                                        <div style={{ textAlign: 'left', width: 90 }}>
3522
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3523
                                                null :
d.arizona's avatar
d.arizona committed
3524 3525 3526 3527
                                                <div style={{ padding: 0, margin: 0 }}>
                                                    <textarea disabled={this.state.get_for == 'view'} style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: 'transparent' }} type="text" defaultValue={tableMeta.rowData[42]} 
                                                    onBlur={(event) => handleChange(event.target.value, tableMeta, 42)} />
                                                </div>
d.arizona's avatar
d.arizona committed
3528
                                                // <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545
                                                    // <ThemeProvider theme={this.state.get_for == 'view'? theme3 : theme}>
                                                    //     <Input
                                                    //         disableUnderline={true}
                                                    //         style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'left', borderColor: 'transparent', margin: 0, backgroundColor: 'transparent' }}
                                                    //         type="text"
                                                    //         placeholder=""
                                                    //         disabled={this.state.get_for == 'view'}
                                                    //         multiline={true}
                                                    //         defaultValue={tableMeta.rowData[42]}
                                                    //         onBlur={(event) => {
                                                    //             // // // console.log(event.target.value)
                                                    //             // updateValue(event.target.value)
                                                    //             handleChange(event.target.value, tableMeta, 42)
                                                    //             // // // console.log(dataTable2)
                                                    //         }}
                                                    //     />
                                                    // </ThemeProvider>
d.arizona's avatar
d.arizona committed
3546
                                                // </div>
faisalhamdi's avatar
faisalhamdi committed
3547 3548 3549 3550 3551
                                            }
                                        </div>
                                    </div>
                                    <div className="col-2">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3552
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3553 3554
                                                null :
                                                <div style={{ flex: 1 }}>
d.arizona's avatar
d.arizona committed
3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
                                                                type="text"
                                                                placeholder=""
                                                                disabled={this.state.get_for == 'view'}
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[43]).toFixed(2)}
                                                                onBlur={(event) => {
                                                                    handleChange(event.target.value, tableMeta, 43)
                                                                }}
                                                            />
                                                        }
                                                    />
faisalhamdi's avatar
faisalhamdi committed
3574 3575 3576 3577 3578 3579
                                                </div>
                                            }
                                        </div>
                                    </div>
                                    <div className="col-3">
                                        <div style={{ textAlign: 'right', width: 90 }}>
3580
                                            {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
faisalhamdi's avatar
faisalhamdi committed
3581
                                                null :
d.arizona's avatar
d.arizona committed
3582
                                                // <div style={{ flex: 1 }}>
faisalhamdi's avatar
faisalhamdi committed
3583 3584 3585 3586 3587 3588
                                                    <FormControlLabel
                                                        style={{ margin: 0 }}
                                                        value={val}
                                                        control={
                                                            <NumberFormat
                                                                thousandSeparator={true}
d.arizona's avatar
d.arizona committed
3589
                                                                style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'right', borderColor: 'transparent', margin: 0, width: 96, backgroundColor: 'transparent' }}
faisalhamdi's avatar
faisalhamdi committed
3590 3591
                                                                type="text"
                                                                placeholder=""
d.arizona's avatar
d.arizona committed
3592
                                                                disabled={this.state.get_for == 'view'}
d.arizona's avatar
d.arizona committed
3593 3594 3595
                                                                fixedDecimalScale={2}
                                                                decimalScale={2}
                                                                value={Number(tableMeta.rowData[44]).toFixed(2)}
d.arizona's avatar
d.arizona committed
3596
                                                                onBlur={(event) => {
d.arizona's avatar
d.arizona committed
3597
                                                                    handleChange(event.target.value, tableMeta, 44)
d.arizona's avatar
d.arizona committed
3598
                                                                }}
faisalhamdi's avatar
faisalhamdi committed
3599 3600 3601
                                                            />
                                                        }
                                                    />
d.arizona's avatar
d.arizona committed
3602
                                                // </div>
faisalhamdi's avatar
faisalhamdi committed
3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614
                                            }
                                        </div>
                                    </div>
                                </div>
                            </div>
                        )
                    }
                }
            }, {
                name: "Notes",
                options: {
                    customHeadRender: (columnMeta) => (
d.arizona's avatar
d.arizona committed
3615
                        <TableCell style={{ ...style2, top: 0, zIndex: 99, backgroundColor: '#37b5e6', width: 96, height: 42, borderRight: '1px #fff solid' }}>
faisalhamdi's avatar
faisalhamdi committed
3616 3617 3618 3619 3620 3621
                            <Typography style={{ color: 'white', fontSize: 12, fontWeight: 'bold', textAlign: 'center' }}>{columnMeta.name}</Typography>
                        </TableCell>
                    ),
                    setCellProps: () => ({ style2 }),
                    customBodyRender: (val, tableMeta, updateValue) => {
                        return (
d.arizona's avatar
d.arizona committed
3622
                            <div style={{ textAlign: 'left', width: 90 }}>
3623 3624
                                {tableMeta.rowData[0] === 4 || tableMeta.rowData[0] === 8 || tableMeta.rowData[0] === 9?
                                    null :
d.arizona's avatar
d.arizona committed
3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647
                                    <div style={{ padding: 0, margin: 0 }}>
                                        <textarea disabled={this.state.get_for == 'view'} style={{  borderColor: 'white', width: 96, textAlign: 'center', justifyContent:'center', padding: 0, margin: 0, color: this.state.get_for == 'view'? "black" : "#5198ea", backgroundColor: 'transparent' }} type="text" defaultValue={tableMeta.rowData[45]} 
                                        onBlur={(event) => handleChange(event.target.value, tableMeta, 45)} />
                                    </div>
                                    // <FormControlLabel
                                    //     style={{ margin: 0 }}
                                    //     control={
                                    //         <ThemeProvider theme={theme}>
                                    //             <Input
                                    //                 disableUnderline={true}
                                    //                 style={{ color: this.state.get_for == 'view'? "black" : "#5198ea", fontSize: 12, textAlign: 'left', borderColor: 'transparent', margin: 0, width: 75, backgroundColor: 'transparent' }}
                                    //                 type="text"
                                    //                 placeholder=""
                                    //                 multiline={true}
                                    //                 defaultValue={tableMeta.rowData[45]}
                                    //                 disabled={this.state.get_for == 'view'}
                                    //                 onBlur={(event) => {
                                    //                     handleChange(event.target.value, tableMeta, 45)
                                    //                 }}
                                    //             />
                                    //         </ThemeProvider>
                                    //     }
                                    // />
3648
                                }
faisalhamdi's avatar
faisalhamdi committed
3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752
                            </div>
                        )
                    }
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
            }, {
                name: "",
                options: {
                    display: false
                }
d.arizona's avatar
d.arizona committed
3753 3754 3755 3756 3757 3758
            }, {
                name: "",
                options: {
                    display: false
                }
            },
Deni Rinaldi's avatar
Deni Rinaldi committed
3759 3760
        ]

d.arizona's avatar
d.arizona committed
3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771
        const loadingComponent = (
            <div style={{ position: 'absolute', zIndex: 110, top: 0, left: 0, width: '100%', height: '100%', display: 'flex', justifyContent: 'center', alignItems: 'center', background: 'rgba(255,255,255,0.8)' }}>
                <PropagateLoader
                    // css={override}
                    size={20}
                    color={"#274B80"}
                    loading={this.state.loading}
                />
            </div>
        );

d.arizona's avatar
d.arizona committed
3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782
        const handleClose = (event, reason) => {
            if (reason === 'clickaway') {
              return;
            }
        
            this.setState({
                snekbar: false,
                snekbarMsg: ''
            })
        };

Deni Rinaldi's avatar
Deni Rinaldi committed
3783 3784 3785 3786 3787 3788
        return (
            <div>
                <div className={"main-color"} style={{ height: 78, flex: 1, display: 'flex', alignItems: 'center', paddingLeft: 20 }}>
                    <Typography style={{ fontSize: '16px', color: 'white' }}>Monthly Report</Typography>
                </div>
                <div style={{ flex: 1, padding: 20, width: '100%' }}>
d.arizona's avatar
d.arizona committed
3789
                {this.state.visibleLOCFMR ? 
Deni Rinaldi's avatar
Deni Rinaldi committed
3790
                    <Paper style={{ paddingTop: 10, paddingBottom: 20 }}>
d.arizona's avatar
d.arizona committed
3791
                        <Snackbar open={this.state.snekbar} autoHideDuration={3000} onClose={handleClose}>
d.arizona's avatar
d.arizona committed
3792 3793 3794 3795
                            <Alert onClose={handleClose} severity="error">
                                {this.state.snekbarMsg}
                            </Alert>
                        </Snackbar>
Deni Rinaldi's avatar
Deni Rinaldi committed
3796 3797
                        <div style={{ borderBottom: 'solid 1px #c4c4c4' }} >
                            <Typography style={{ fontSize: '12px', color: '#4b4b4b', margin: 10 }}>Monthly Report - List Of Credit Facilities</Typography>
Deni Rinaldi's avatar
Deni Rinaldi committed
3798
                        </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
3799 3800 3801 3802
                        <div style={{ padding: 20 }}>
                            <div style={{ display: 'flex', justifyContent: 'space-between' }}>
                                <div>
                                    <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>{this.props.company.company_name}</Typography>
d.arizona's avatar
d.arizona committed
3803
                                    <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>Period : {String(this.props.month.month_value).toLocaleUpperCase()} {this.props.periode} (rev.{this.props.revision})</Typography>
Deni Rinaldi's avatar
Deni Rinaldi committed
3804 3805
                                    <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>in IDR mn</Typography>
                                </div>
d.arizona's avatar
d.arizona committed
3806 3807
                                <div style={{ width: '50%' }}>
                                    <div style={{ justifyContent: 'flex-end', display: 'flex', flexFlow: 'wrap' }}>
d.arizona's avatar
d.arizona committed
3808
                                        {(this.state.get_for == 'edit' && 
d.arizona's avatar
d.arizona committed
3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824
                                            <div>
                                                <a data-tip={'Download Template'} data-for="template">
                                                    <button
                                                        style={{
                                                            backgroundColor: 'transparent',
                                                            cursor: 'pointer',
                                                            borderColor: 'transparent',
                                                            margin: 5
                                                        }}
                                                        onClick={() => this.downloadTemplate()}
                                                    >
                                                        <img src={Images.template} />
                                                    </button>
                                                </a>
                                                <ReactTooltip border={true} id="template" place="bottom" type="light" effect="solid" />
                                            </div>
d.arizona's avatar
d.arizona committed
3825
                                        )}
d.arizona's avatar
d.arizona committed
3826
                                        {(this.state.get_for == 'edit' && 
d.arizona's avatar
d.arizona committed
3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844
                                            <div>
                                                <a data-tip={'Upload'} data-for="upload">
                                                    <button
                                                        style={{
                                                            backgroundColor: 'transparent',
                                                            cursor: 'pointer',
                                                            borderColor: 'transparent',
                                                            margin: 5
                                                        }}
                                                        onClick={() => 
                                                            this.setState({ visibleUpload: true })
                                                        }
                                                    >
                                                        <img src={Images.upload} />
                                                    </button>
                                                </a>
                                                <ReactTooltip border={true} id="upload" place="bottom" type="light" effect="solid" />
                                            </div>
d.arizona's avatar
d.arizona committed
3845
                                        )} 
d.arizona's avatar
d.arizona committed
3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868
                                        <a data-tip={'Download'} data-for="download">
                                            <button
                                                style={{
                                                    backgroundColor: 'transparent',
                                                    cursor: 'pointer',
                                                    borderColor: 'transparent',
                                                    margin: 5
                                                }}
                                                onClick={() => 
                                                    this.setState({ loading: true }, () => {
                                                        setTimeout(() => {
                                                            this.downloadAllData()
                                                        }, 100);
                                                    })
                                                }
                                            >
                                                <img src={Images.download} />
                                            </button>
                                        </a>
                                        <ReactTooltip border={true} id="download" place="bottom" type="light" effect="solid" />
                                    </div>
                                    {/* } */}
                                </div>
Deni Rinaldi's avatar
Deni Rinaldi committed
3869
                            </div>
d.arizona's avatar
d.arizona committed
3870
                            
Deni Rinaldi's avatar
Deni Rinaldi committed
3871
                            <div style={{ marginTop: 20, width: this.props.width - (this.props.open === true ? 400 : 150) }}>
d.arizona's avatar
d.arizona committed
3872
                                {this.state.loading && loadingComponent}
d.arizona's avatar
d.arizona committed
3873
                                {!this.state.loading && <MuiThemeProvider theme={getMuiTheme()}>
d.arizona's avatar
d.arizona committed
3874 3875 3876 3877 3878
                                    <MUIDataTable
                                        data={dataTable2}
                                        columns={columns}
                                        options={options}
                                    />
d.arizona's avatar
d.arizona committed
3879
                                </MuiThemeProvider>}
d.arizona's avatar
d.arizona committed
3880 3881
                            </div>

d.arizona's avatar
d.arizona committed
3882
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15, marginTop: 5}}>
d.arizona's avatar
d.arizona committed
3883
                                <div>
d.arizona's avatar
d.arizona committed
3884
                                    <Typography style={{ fontSize: '12px', color: '#4b4b4b', marginTop: 10 }}>Last Updated by : {this.state.updateBy}</Typography>
d.arizona's avatar
d.arizona committed
3885
                                </div>
d.arizona's avatar
d.arizona committed
3886 3887
                                <div style={{display: 'flex', flexDirection: 'row'}}>
                                    <div style={{padding: 5}}>
d.arizona's avatar
d.arizona committed
3888
                                        <Typography style={{ fontSize: '12px', color: '#4b4b4b' }}>Total Outstanding Loan</Typography>
d.arizona's avatar
d.arizona committed
3889
                                    </div>
d.arizona's avatar
d.arizona committed
3890
                                    <div style={{border: '1px solid black', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end'}}>
d.arizona's avatar
d.arizona committed
3891
                                        <Typography style={{ fontSize: '14px', color: '#4b4b4b' }}><NumberFormat value={this.state.perBS} displayType={'text'} thousandSeparator={true} prefix={''}/></Typography>
d.arizona's avatar
d.arizona committed
3892 3893 3894
                                    </div>
                                </div>
                            </div>
d.arizona's avatar
d.arizona committed
3895
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
d.arizona's avatar
d.arizona committed
3896
                                <div>
d.arizona's avatar
d.arizona committed
3897
                                    <Typography style={{ fontSize: '12px', color: '#4b4b4b', marginTop: 10 }}>Notes : {this.state.notes}</Typography>
d.arizona's avatar
d.arizona committed
3898
                                </div>
d.arizona's avatar
d.arizona committed
3899 3900
                                <div style={{display: 'flex', flexDirection: 'row'}}>
                                    <div style={{padding: 5}}>
d.arizona's avatar
d.arizona committed
3901
                                        <Typography style={{ fontSize: '12px', color: '#4b4b4b' }}>Diff</Typography>
d.arizona's avatar
d.arizona committed
3902
                                    </div>
d.arizona's avatar
d.arizona committed
3903
                                    <div style={{borderStyle: 'solid', borderWidth: '0px 1px 1px 1px', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end'}}>
d.arizona's avatar
d.arizona committed
3904
                                        <Typography style={{ fontSize: '14px', color: Number(this.state.diff) > 0? 'red' :'#4b4b4b' }}><NumberFormat value={this.state.diff} displayType={'text'} thousandSeparator={true} prefix={''}/></Typography>
d.arizona's avatar
d.arizona committed
3905 3906 3907
                                    </div>
                                </div>
                            </div>
d.arizona's avatar
d.arizona committed
3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926
                            <div style={{ display: 'flex', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 5, fontWeight: 'bold', textDecorationLine: 'underline'}}>Keterangan:</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 0 }}>1. Current ratio = Current Assets / Current Liabilities</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 0 }}>2. DER = Interest Bearing Debt / Total Equity (dimana Interest Bearing Debt = Short term loan + Current maturities of long term debt + Long term loan + Due to affiliated companies + Due to shareholder)</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 0 }}>3. Debt to EBITDA = Interest Bearing Debt / EBITDA (dimana Interest Bearing Debt = Short term loan + Current maturities of long term debt + Long term loan + Due to affiliated companies + Due to shareholder</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginLeft: 10 }}>& EBITDA = Income from operations 2 (EBIT 2) + depreciation)</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 0 }}>4. EBITDA to Interest (ISCR) = EBITDA / Interest Expenses (dimana EBITDA = Income from operations 2 (EBIT 2) + depreciation)</Typography>
                            </div>
                            
d.arizona's avatar
d.arizona committed
3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946
                            {/* <div style={{ display: 'flex', justifyContent: 'flex-end', maxWidth: '100%', paddingLeft: 15, paddingRight: 15, marginTop: 5}}>
                                <div style={{display: 'flex', flexDirection: 'row'}}>
                                    <div style={{padding: 5}}>
                                        <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>Total Outstanding Loan</Typography>
                                    </div>
                                    <div style={{border: '1px solid black', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end'}}>
                                        <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>{formatSeparator(this.state.totalOutStand)}</Typography>
                                    </div>
                                </div>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'flex-end', maxWidth: '100%', paddingLeft: 15, paddingRight: 15}}>
                                <div style={{display: 'flex', flexDirection: 'row'}}>
                                    <div style={{padding: 5}}>
                                        <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>Diff</Typography>
                                    </div>
                                    <div style={{borderStyle: 'solid', borderWidth: '0px 1px 1px 1px', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end'}}>
                                        <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>{formatSeparator(this.state.diff)}</Typography>
                                    </div>
                                </div>
                            </div> */}
d.arizona's avatar
d.arizona committed
3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963
                        </div>
                        <div className="grid grid-2x" style={{ marginTop: 20 }}>
                            <div className="col-1">
                                <button
                                    type="button"
                                    onClick={() => this.setState({ loading: true }, () => {
                                        setTimeout(() => {
                                            this.props.onClickClose()
                                        }, 100);
                                    })}
                                    style={{
                                        backgroundColor: 'transparent',
                                        cursor: 'pointer',
                                        borderColor: 'transparent',
                                        outline: 'none'
                                    }}
                                >
d.arizona's avatar
d.arizona committed
3964
                                    <div style={{ backgroundColor: '#019ce5', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center', marginLeft: 10}}>
d.arizona's avatar
d.arizona committed
3965 3966 3967 3968
                                        <Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Back</Typography>
                                    </div>
                                </button>
                            </div>
d.arizona's avatar
d.arizona committed
3969 3970 3971
                        {/* (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') ? */}

                            {this.props.isApprover === true ? null :
d.arizona's avatar
d.arizona committed
3972
                            <div className="col-2" style={{ display: 'flex', justifyContent: 'flex-end', maxWidth: '100%' }}>
d.arizona's avatar
d.arizona committed
3973
                                {this.state.get_for == 'view' && this.state.viewOnly && <button
d.arizona's avatar
d.arizona committed
3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993
                                    className="button"
                                    type="button"
                                    style={{
                                        backgroundColor: 'transparent',
                                        cursor: 'pointer',
                                        borderColor: 'transparent',
                                        outline: 'none',
                                        marginRight: 20
                                    }}
                                    onClick={() => {
                                        this.setState({loading: true}, () => {
                                            this.handleGetFor('edit')
                                        })
                                    }}
                                >
                                    <div style={{ backgroundColor: '#fff', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center', border: 'solid 1px #354960' }}>
                                        <Typography style={{ fontSize: '11px', color: '#354960', textAlign: 'center' }}>Edit</Typography>
                                    </div>
                                </button>}
                                {this.state.get_for == 'edit' && <button
d.arizona's avatar
d.arizona committed
3994 3995 3996 3997 3998 3999 4000 4001 4002
                                    className="button"
                                    type="button"
                                    style={{
                                        backgroundColor: 'transparent',
                                        cursor: 'pointer',
                                        borderColor: 'transparent',
                                        outline: 'none',
                                        marginRight: 20
                                    }}
d.arizona's avatar
d.arizona committed
4003
                                    onClick={() => this.setState({totalOutStand: totalLoan, saveTambahan: false}, () => {
d.arizona's avatar
d.arizona committed
4004 4005
                                        this.handleCalculate()
                                    })}
d.arizona's avatar
d.arizona committed
4006 4007 4008 4009
                                >
                                    <div style={{ backgroundColor: '#fff', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center', border: 'solid 1px #354960' }}>
                                        <Typography style={{ fontSize: '11px', color: '#354960', textAlign: 'center' }}>Calculate</Typography>
                                    </div>
d.arizona's avatar
d.arizona committed
4010 4011
                                </button>}
                                {this.state.get_for == 'edit' && <button
d.arizona's avatar
d.arizona committed
4012 4013 4014
                                    className="button"
                                    type="button"
                                    onClick={() => 
d.arizona's avatar
d.arizona committed
4015
                                        this.state.saveDraft === true || this.state.saveTambahan?
d.arizona's avatar
d.arizona committed
4016
                                        this.setState({snekbar: true, snekbarMsg: 'Data Incomplete'})
d.arizona's avatar
d.arizona committed
4017
                                        :
d.arizona's avatar
d.arizona committed
4018 4019 4020 4021 4022 4023 4024 4025 4026
                                            this.state.handleTekTekTek == 1 ? null :
                                                this.setState({ handleTekTekTek: 1, loading: true }, () => {
                                                    setTimeout(() => {
                                                        this.backToMonthlyReport('draft')
                                                    }, 100);
                                                })
                                    }
                                    style={{
                                        backgroundColor: 'transparent',
d.arizona's avatar
d.arizona committed
4027
                                        cursor: 'pointer',
d.arizona's avatar
d.arizona committed
4028 4029 4030 4031 4032 4033
                                        borderColor: 'transparent',
                                        outline: 'none',
                                        marginRight: 20
                                    }}
                                >
                                    <div style={{ backgroundColor: '#354960', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center' }}>
d.arizona's avatar
d.arizona committed
4034
                                        <Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Save as Draft</Typography>
d.arizona's avatar
d.arizona committed
4035
                                    </div>
d.arizona's avatar
d.arizona committed
4036 4037
                                </button>}
                                {this.state.get_for == 'edit' && <button
d.arizona's avatar
d.arizona committed
4038 4039 4040
                                    type="button"
                                    // disabled={this.state.buttonError}
                                    onClick={() => 
d.arizona's avatar
d.arizona committed
4041
                                        this.state.saveComp || this.state.saveTambahan?
d.arizona's avatar
d.arizona committed
4042
                                            this.setState({snekbar: true, snekbarMsg: 'Data Incomplete / Diff must be 0'})
d.arizona's avatar
d.arizona committed
4043 4044 4045 4046 4047 4048 4049 4050 4051 4052
                                            :
                                            this.state.handleTekTekTek == 1 ? null :
                                                this.setState({ handleTekTekTek: 1, loading: true }, () => {
                                                    setTimeout(() => {
                                                        this.backToMonthlyReport('submitted')
                                                    }, 100);
                                                })
                                    }
                                    style={{
                                        backgroundColor: 'transparent',
d.arizona's avatar
d.arizona committed
4053
                                        cursor: 'pointer',
d.arizona's avatar
d.arizona committed
4054 4055 4056 4057 4058
                                        borderColor: 'transparent',
                                        outline: 'none'
                                    }}
                                >
                                    <div style={{ backgroundColor: '#354960', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center', marginRight: 20 }}>
d.arizona's avatar
d.arizona committed
4059
                                        <Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Save & Complete</Typography>
d.arizona's avatar
d.arizona committed
4060
                                    </div>
d.arizona's avatar
d.arizona committed
4061 4062
                                </button>}
                            </div>}
d.arizona's avatar
d.arizona committed
4063
                            {/* : null } */}
Deni Rinaldi's avatar
Deni Rinaldi committed
4064 4065
                        </div>
                    </Paper>
d.arizona's avatar
d.arizona committed
4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078
                    :
                    <Paper style={{ paddingTop: 10, paddingBottom: 20 }}>
                        <Snackbar open={this.state.snekbar} autoHideDuration={6000} onClose={handleClose}>
                            <Alert onClose={handleClose} severity="error">
                                {this.state.snekbarMsg}
                            </Alert>
                        </Snackbar>
                        <div style={{ borderBottom: 'solid 1px #c4c4c4' }} >
                            <Typography style={{ fontSize: '12px', color: '#4b4b4b', margin: 10 }}>Monthly Report - List Of Credit Facilities</Typography>
                        </div>
                        <div style={{ padding: 20 }}>
                            <div>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>{this.props.company.company_name}</Typography>
d.arizona's avatar
d.arizona committed
4079
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>Period : {String(this.props.month.month_value).toLocaleUpperCase()} {this.props.periode} (rev.{this.props.revision})</Typography>
d.arizona's avatar
d.arizona committed
4080 4081 4082 4083 4084
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>in IDR mn</Typography>
                            </div>
                            
                            <div style={{ marginTop: 20, width: this.props.width - (this.props.open === true ? 400 : 150) }}>
                                {this.state.loading && loadingComponent}
d.arizona's avatar
d.arizona committed
4085
                                {this.state.dataLoaded && !this.state.loading && <MuiThemeProvider theme={getMuiTheme()}>
d.arizona's avatar
d.arizona committed
4086 4087 4088 4089 4090
                                    <MUIDataTable
                                        data={dataTable2}
                                        columns={columns}
                                        options={options}
                                    />
d.arizona's avatar
d.arizona committed
4091
                                </MuiThemeProvider>}
d.arizona's avatar
d.arizona committed
4092 4093
                            </div>

d.arizona's avatar
d.arizona committed
4094
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15, marginTop: 5}}>
d.arizona's avatar
d.arizona committed
4095
                                <div>
d.arizona's avatar
d.arizona committed
4096
                                    <Typography style={{ fontSize: '12px', color: '#4b4b4b', marginTop: 10 }}>Last Updated by : {this.state.updateBy}</Typography>
d.arizona's avatar
d.arizona committed
4097 4098 4099
                                </div>
                                <div style={{display: 'flex', flexDirection: 'row'}}>
                                    <div style={{padding: 5}}>
d.arizona's avatar
d.arizona committed
4100
                                        <Typography style={{ fontSize: '12px', color: '#4b4b4b' }}>Total Outstanding Loan</Typography>
d.arizona's avatar
d.arizona committed
4101 4102
                                    </div>
                                    <div style={{border: '1px solid black', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end'}}>
d.arizona's avatar
d.arizona committed
4103
                                        <Typography style={{ fontSize: '14px', color: '#4b4b4b' }}><NumberFormat value={this.state.perBS} displayType={'text'} thousandSeparator={true} prefix={''}/></Typography>
d.arizona's avatar
d.arizona committed
4104 4105 4106
                                    </div>
                                </div>
                            </div>
d.arizona's avatar
d.arizona committed
4107
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
d.arizona's avatar
d.arizona committed
4108
                                <div>
d.arizona's avatar
d.arizona committed
4109
                                    <Typography style={{ fontSize: '12px', color: '#4b4b4b', marginTop: 10 }}>Notes : {this.state.notes}</Typography>
d.arizona's avatar
d.arizona committed
4110 4111 4112
                                </div>
                                <div style={{display: 'flex', flexDirection: 'row'}}>
                                    <div style={{padding: 5}}>
d.arizona's avatar
d.arizona committed
4113
                                        <Typography style={{ fontSize: '12px', color: '#4b4b4b' }}>Diff</Typography>
d.arizona's avatar
d.arizona committed
4114
                                    </div>
d.arizona's avatar
d.arizona committed
4115
                                    <div style={{borderStyle: 'solid', borderWidth: '0px 1px 1px 1px', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end'}}>
d.arizona's avatar
d.arizona committed
4116
                                        <Typography style={{ fontSize: '14px', color: Number(this.state.diff) > 0? 'red' :'#4b4b4b' }}><NumberFormat value={this.state.diff} displayType={'text'} thousandSeparator={true} prefix={''}/></Typography>
d.arizona's avatar
d.arizona committed
4117 4118 4119
                                    </div>
                                </div>
                            </div>
d.arizona's avatar
d.arizona committed
4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138
                            
                            <div style={{ display: 'flex', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 5, fontWeight: 'bold', textDecorationLine: 'underline'}}>Keterangan:</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 0 }}>1. Current ratio = Current Assets / Current Liabilities</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 0 }}>2. DER = Interest Bearing Debt / Total Equity (dimana Interest Bearing Debt = Short term loan + Current maturities of long term debt + Long term loan + Due to affiliated companies + Due to shareholder)</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 0 }}>3. Debt to EBITDA = Interest Bearing Debt / EBITDA (dimana Interest Bearing Debt = Short term loan + Current maturities of long term debt + Long term loan + Due to affiliated companies + Due to shareholder</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginLeft: 10 }}>& EBITDA = Income from operations 2 (EBIT 2) + depreciation)</Typography>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'space-between', maxWidth: '100%', paddingLeft: 5, paddingRight: 15}}>
                                <Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 0 }}>4. EBITDA to Interest (ISCR) = EBITDA / Interest Expenses (dimana EBITDA = Income from operations 2 (EBIT 2) + depreciation)</Typography>
                            </div>
d.arizona's avatar
d.arizona committed
4139 4140

                            {/* <div style={{ display: 'flex', justifyContent: 'flex-end', maxWidth: '100%', paddingLeft: 15, paddingRight: 15, marginTop: 5}}>
d.arizona's avatar
d.arizona committed
4141 4142 4143 4144
                                <div style={{display: 'flex', flexDirection: 'row'}}>
                                    <div style={{padding: 5}}>
                                        <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>Total Outstanding Loan</Typography>
                                    </div>
d.arizona's avatar
d.arizona committed
4145
                                    <div style={{border: '1px solid black', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end'}}>
d.arizona's avatar
d.arizona committed
4146
                                        <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>{formatSeparator(this.state.totalOutStand)}</Typography>
d.arizona's avatar
d.arizona committed
4147 4148 4149 4150 4151 4152 4153 4154
                                    </div>
                                </div>
                            </div>
                            <div style={{ display: 'flex', justifyContent: 'flex-end', maxWidth: '100%', paddingLeft: 15, paddingRight: 15}}>
                                <div style={{display: 'flex', flexDirection: 'row'}}>
                                    <div style={{padding: 5}}>
                                        <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>Diff</Typography>
                                    </div>
d.arizona's avatar
d.arizona committed
4155
                                    <div style={{borderStyle: 'solid', borderWidth: '0px 1px 1px 1px', padding: 5, minWidth: 200, display: 'flex', justifyContent: 'flex-end'}}>
d.arizona's avatar
d.arizona committed
4156
                                        <Typography style={{ fontSize: '11px', color: '#4b4b4b' }}>{(formatSeparator(this.state.diff))}</Typography>
d.arizona's avatar
d.arizona committed
4157 4158
                                    </div>
                                </div>
d.arizona's avatar
d.arizona committed
4159
                            </div> */}
d.arizona's avatar
d.arizona committed
4160 4161 4162 4163 4164 4165 4166 4167 4168
                        </div>
                        <div className="grid grid-2x" style={{ marginTop: 20 }}>
                            <div className="col-1">
                                <button
                                    type="button"
                                    onClick={() => {
                                        this.getBankData()
                                        this.getTypeOfCredit()
                                        this.getSubmission()
d.arizona's avatar
d.arizona committed
4169
                                        }
d.arizona's avatar
d.arizona committed
4170 4171 4172 4173 4174 4175 4176 4177
                                    }
                                    style={{
                                        backgroundColor: 'transparent',
                                        cursor: 'pointer',
                                        borderColor: 'transparent',
                                        outline: 'none'
                                    }}
                                >
d.arizona's avatar
d.arizona committed
4178
                                    <div style={{ backgroundColor: '#019ce5', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center', marginLeft: 10 }}>
d.arizona's avatar
d.arizona committed
4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195
                                        <Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Back</Typography>
                                    </div>
                                </button>
                            </div>
                            {/* {this.props.isApprover === true || this.state.dataTable.length == 0 ? null :
                                (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') ? */}
                            <div className="col-2" style={{ display: 'flex', justifyContent: 'flex-end', maxWidth: '100%' }}>
                                <button
                                    className="button"
                                    type="button"
                                    style={{
                                        backgroundColor: 'transparent',
                                        cursor: 'pointer',
                                        borderColor: 'transparent',
                                        outline: 'none',
                                        marginRight: 20
                                    }}
d.arizona's avatar
d.arizona committed
4196
                                    onClick={() => this.setState({totalOutStand: totalLoan, saveTambahan: false}, () => {
d.arizona's avatar
d.arizona committed
4197 4198
                                        this.handleCalculate()
                                    })}
d.arizona's avatar
d.arizona committed
4199 4200 4201 4202 4203 4204 4205 4206 4207
                                >
                                    <div style={{ backgroundColor: '#fff', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center', border: 'solid 1px #354960' }}>
                                        <Typography style={{ fontSize: '11px', color: '#354960', textAlign: 'center' }}>Calculate</Typography>
                                    </div>
                                </button>
                                <button
                                    className="button"
                                    type="button"
                                    onClick={() => 
d.arizona's avatar
d.arizona committed
4208
                                        this.state.saveDraft === true || this.state.saveTambahan?
d.arizona's avatar
d.arizona committed
4209
                                            this.setState({snekbar: true, snekbarMsg: 'Data Incomplete'})
d.arizona's avatar
d.arizona committed
4210
                                            :
d.arizona's avatar
d.arizona committed
4211 4212 4213
                                            this.state.handleTekTekTek == 1 ? null :
                                                this.setState({ handleTekTekTek: 1, loading: true }, () => {
                                                    setTimeout(() => {
d.arizona's avatar
d.arizona committed
4214
                                                        this.uploadLOCF('draft')
d.arizona's avatar
d.arizona committed
4215 4216 4217 4218 4219
                                                    }, 100);
                                                })
                                    }
                                    style={{
                                        backgroundColor: 'transparent',
d.arizona's avatar
d.arizona committed
4220
                                        cursor: 'pointer',
d.arizona's avatar
d.arizona committed
4221 4222 4223 4224 4225 4226
                                        borderColor: 'transparent',
                                        outline: 'none',
                                        marginRight: 20
                                    }}
                                >
                                    <div style={{ backgroundColor: '#354960', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center' }}>
d.arizona's avatar
d.arizona committed
4227
                                        <Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Save as Draft</Typography>
d.arizona's avatar
d.arizona committed
4228 4229 4230 4231 4232 4233
                                    </div>
                                </button>
                                <button
                                    type="button"
                                    // disabled={this.state.buttonError}
                                    onClick={() => 
d.arizona's avatar
d.arizona committed
4234
                                        this.state.saveComp || this.state.saveTambahan?
d.arizona's avatar
d.arizona committed
4235
                                            this.setState({snekbar: true, snekbarMsg: 'Data Incomplete / Diff must be 0'})
d.arizona's avatar
d.arizona committed
4236 4237 4238 4239
                                            :
                                            this.state.handleTekTekTek == 1 ? null :
                                                this.setState({ handleTekTekTek: 1, loading: true }, () => {
                                                    setTimeout(() => {
d.arizona's avatar
d.arizona committed
4240
                                                        this.uploadLOCF('submitted')
d.arizona's avatar
d.arizona committed
4241 4242 4243 4244 4245
                                                    }, 100);
                                                })
                                    }
                                    style={{
                                        backgroundColor: 'transparent',
d.arizona's avatar
d.arizona committed
4246
                                        cursor: 'pointer',
d.arizona's avatar
d.arizona committed
4247 4248 4249 4250 4251
                                        borderColor: 'transparent',
                                        outline: 'none'
                                    }}
                                >
                                    <div style={{ backgroundColor: '#354960', width: 105, height: 25, borderRadius: 3, justifyContent: 'center', display: 'flex', alignItems: 'center', marginRight: 20 }}>
d.arizona's avatar
d.arizona committed
4252
                                        <Typography style={{ fontSize: '11px', color: '#fff', textAlign: 'center' }}>Save & Complete</Typography>
d.arizona's avatar
d.arizona committed
4253 4254
                                    </div>
                                </button>
d.arizona's avatar
d.arizona committed
4255
                            </div>
d.arizona's avatar
d.arizona committed
4256
                            {/* : null } */}
d.arizona's avatar
d.arizona committed
4257 4258
                        </div>
                    </Paper>}
Deni Rinaldi's avatar
Deni Rinaldi committed
4259
                </div>
d.arizona's avatar
d.arizona committed
4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289

                {this.state.visibleUpload && (
                    <div className="test app-popup-show">
                        <div className="popup-content background-white border-radius" style={{ borderRadius: 8 }}>
                            <div className="popup-panel grid grid-2x main-color" style={{ height: 64, borderTopRightRadius: 8, borderTopLeftRadius: 8 }}>
                                <div className="col-1" style={{ maxWidth: "inherit", display: 'flex', alignItems: 'center' }}>
                                    <div className="popup-title">
                                        <span style={{ color: '#fff', fontSize: 16, fontWeight: 'bold' }}>Upload File</span>
                                    </div>
                                </div>
                                <div className="col-2 content-right" style={{ maxWidth: "inherit", alignSelf: 'center' }}>
                                    <button
                                        type="button"
                                        className="btn btn-circle btn-white"
                                        onClick={() => this.setState({ visibleUpload: false })}
                                    >
                                        <img src={Images.close} />
                                    </button>
                                </div>
                            </div>
                            <UploadFile
                                type={this.state.uploadStatus}
                                percentage={this.state.percentage}
                                result={this.state.result}
                                acceptedFiles={["xlsx"]}
                                onHandle={(dt) => {
                                    this.fileHandler(dt)
                                    this.setState({ uploadStatus: 'idle', percentage: '0' })
                                }}
                                onUpload={() => {
d.arizona's avatar
d.arizona committed
4290
                                    String(this.state.judulColumn).includes("TEMPLATE") && String(this.state.judulColumn).includes("UPLOAD") && String(this.state.judul).includes("LIST") && String(this.state.judul).includes("CREDIT") && String(this.state.judul).includes("MONTHLY") && String(this.state.judul).includes("REPORT") ?
d.arizona's avatar
d.arizona committed
4291
                                        this.checkUpload() :
d.arizona's avatar
d.arizona committed
4292
                                        this.setState({snekbar: true, snekbarMsg: 'Invalid Template', tipeAlert: 'warning'})
d.arizona's avatar
d.arizona committed
4293 4294 4295 4296 4297
                                }}
                            />
                        </div>
                    </div>
                )}
Deni Rinaldi's avatar
Deni Rinaldi committed
4298 4299 4300 4301 4302
            </div>
        )
    }

}