Commit e6137524 authored by rifkaki's avatar rifkaki

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

parents 74e00f82 ec20cceb
......@@ -170,6 +170,7 @@ const create = (type = "") => {
const getAllSettingByType = (body) => api.post('setting/get_all_setting_by_type', body)
const createAllItemReport = (body) => api.post('item_report/create_all_item_report', body)
const deleteAllItemReport = (body) => api.post('/item_report/delete_all_item_report', body)
const deleteAllItemReportLOCF = (body) => api.post('/item_report/delete_all_item_report_locf', body)
//PARAMETER
const getAllParameter = () => api.get('/setting/get_all_setting')
......@@ -210,6 +211,7 @@ const create = (type = "") => {
const getSubmitMonthlyReport = (body) => api.post('transaction/monthly_report/get_latest_periode_submit', body)
const createPeriodeRevision = (body) => api.post('transaction/master_budget/create_periode_revision', body)
const getIdDeleteFromExcel = (body) => api.post('transaction/master_budget/delete_from_excel', body)
const getIdDeleteFromExcelLOCF = (body) => api.post('transaction/locf/monthly_report/delete_from_excel', body)
const getDashboard = (body) => api.get('transaction/get_dashboard')
const historyApproval = (body) => api.post('transaction/master_budget/history_approval', body)
const getDashboardUser = () => api.get('transaction/get_dashboard_sub_co')
......@@ -551,7 +553,9 @@ const create = (type = "") => {
validateSubmitReportOI,
getMonthlyOI,
getParameterByGroupName,
getSubmitMonthlyReport
getSubmitMonthlyReport,
getIdDeleteFromExcelLOCF,
deleteAllItemReportLOCF
}
}
......
......@@ -117,6 +117,7 @@ export default class ListOfCreditFacilities extends Component {
updateBy: '-',
notes: "",
viewOnly: true,
dataDelete: []
}
this.fileHandler = this.fileHandler.bind(this);
}
......@@ -164,7 +165,7 @@ export default class ListOfCreditFacilities extends Component {
checkStatus = false
}
this.setState({viewOnly: !checkApprover && checkLastStatus && checkStatus})
// this.setState({viewOnly: !checkApprover && checkLastStatus && checkStatus})
}
getItemHierarki() {
......@@ -494,6 +495,21 @@ export default class ListOfCreditFacilities extends Component {
}
checkUpload() {
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 })
// }
// }
})
api.create().checkUploadMonthlyReportLOCF(this.state.payload).then(response => {
console.log(JSON.stringify(this.state.payload));
console.log(response)
......@@ -620,7 +636,7 @@ export default class ListOfCreditFacilities extends Component {
)
}
this.setState({ dataTable, dataLoaded: true, loading: false, buttonError: false }, () => {
this.setState({ dataTable, dataLoaded: true, loading: false, buttonError: false, dataDelete: [] }, () => {
this.handleCalculate()
this.state.dataTable.map(item => {
if (item[23].length > 0) {
......@@ -1344,7 +1360,7 @@ export default class ListOfCreditFacilities extends Component {
const handleAction = (typeReport, tableMeta, typeButton) => {
// console.log(typeReport)
if (typeReport == 3) {
if (dataTable2.length == 1) {
if (dataTable2.length == 2) {
if (typeButton == 'add') {
return true
} else {
......@@ -1546,28 +1562,59 @@ export default class ListOfCreditFacilities extends Component {
}
const handleDelete = (index) => {
// if (dataTable2[index][1] !== "") {
// dataDelete.push(dataTable2[index][1])
// }
let dataDelete = this.state.dataDelete
let berapaInput = 0
dataTable2.map((items,indexs) => {
if (items[0] == 3) {
berapaInput += 1
}
})
let rowSblmnya = dataTable2[index-1] == undefined? false : String(dataTable2[index-1][6].value).includes(dataTable2[index][6].value)
if (berapaInput > 1) {
if (String(dataTable2[index+1][6].value).includes('Total') && !rowSblmnya) {
dataTable2.splice(index, 2)
} else {
dataTable2.splice(index, 1)
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(
[3, "", "", "", "", this.props.company.company_name, null, null, "", this.state.currentDate, "0.00", "", "", "0", "", "0", "", "0", "", "", "0", "0", "0", "0", "0", "", "0", "", "0", "", "0", "", "0", "", "", "", "", "", "", "", "", "", "", "", "", "", 0 ],
[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)
}
}
} else {
this.setState({snekbar: true, snekbarMsg: 'Datatable Cannot be Empty'})
dataTable2.splice(index,1)
}
this.setState({ dataTable: dataTable2,}, () => {
this.setState({ dataTable: dataTable2, dataDelete }, () => {
setTimeout(() => {
console.log(this.state.dataDelete)
this.setState({ loading: false })
}, 100)
})
......
......@@ -79,32 +79,11 @@ export default class OperatingIndicatorMR extends Component {
}
handleViewOnly() {
let checkApprover = false
let checkLastStatus = false
let checkStatus = false
let checkCreate = this.props.permission.create
let checkEdit = this.props.permission.edit
let checkIsSubmit = this.props.isSubmit
if (this.props.isApprover) {
checkApprover = true
} else {
checkApprover = false
}
if (this.props.lastStatus == 'SUBMIT' || this.props.lastStatus == 'REVISION') {
checkLastStatus = true
} else {
checkLastStatus = false
}
// else if (this.props.prevRevision) {
// viewOnly = false
// }
if (this.props.status === 'revision' || this.props.status === 'not-yet' || this.props.status === 'draft' || this.props.status === 'submitted') {
checkStatus = true
} else {
checkStatus = false
}
this.setState({viewOnly: !checkApprover && checkLastStatus && checkStatus})
this.setState({viewOnly: checkCreate && checkEdit && checkIsSubmit})
}
handleGetFor(type) {
......@@ -417,6 +396,7 @@ export default class OperatingIndicatorMR extends Component {
monthly_report: payload
}
console.log(body)
console.log(JSON.stringify(body));
this.setState({ payload: body, judul: resp.rows[1][0], judulColumn: resp.rows[0][0] })
}
});
......@@ -430,11 +410,22 @@ export default class OperatingIndicatorMR extends Component {
if (response.data.status === 'success') {
this.setState({ visibleUpload: false, visibleOI: false, loading: true })
let total = 0
let err = false
let dataTable = response.data.data.map((item, index) => {
console.log(item);
if (item.type_report_id != null) {
total += 1
}
// if (item.type_report_id === 3) {
// if (item.mtd_vs_mb === "" && (Number(item.percent_act_vs_mb) < this.state.minValue || Number(item.percent_act_vs_mb) > this.state.maxValue)) {
// err = true
// }
// if (item.mtd_vs_rb === "" && (Number(item.percent_act_vs_rb) < this.state.minValue || Number(item.percent_act_vs_rb) > this.state.maxValue)) {
// console.log('msk 2');
// err = true
// }
// }
return [
item.type_report_id,
item.item_report_id,
......@@ -461,6 +452,7 @@ export default class OperatingIndicatorMR extends Component {
item.error
]
})
console.log(dataTable);
this.setState({ dataTable, dataLoaded: true, loading: false, buttonError: false, templateNull : total > 0 ? true : false })
}
}
......@@ -1418,7 +1410,7 @@ export default class OperatingIndicatorMR extends Component {
defaultValue={tableMeta.rowData[15]}
inputProps={{
style: {
color: Number(tableMeta.rowData[12]) < this.state.minValue || Number(tableMeta.rowData[12]) > this.state.maxValue ? "#5198ea" : '#5198ea',
color: Number(tableMeta.rowData[12]) < this.state.minValue || Number(tableMeta.rowData[12]) > this.state.maxValue ? "#000000b0" : '#000000b0',
textAlign: 'left'
}
}}
......@@ -1498,12 +1490,12 @@ export default class OperatingIndicatorMR extends Component {
defaultValue={tableMeta.rowData[16]}
inputProps={{
style: {
color: Number(tableMeta.rowData[14]) < this.state.minValue || Number(tableMeta.rowData[14]) > this.state.maxValue ? "#5198ea" : '#5198ea',
color: Number(tableMeta.rowData[14]) < this.state.minValue || Number(tableMeta.rowData[14]) > this.state.maxValue ? "#000000b0" : '#000000b0',
textAlign: 'left'
}
}}
onBlur={(event) => {
handleText(event.target.value, tableMeta, 0)
handleText(event.target.value, tableMeta, 1)
}}
/>
:
......@@ -1532,7 +1524,7 @@ export default class OperatingIndicatorMR extends Component {
}
}}
onBlur={(event) => {
handleText(event.target.value, tableMeta, 0)
handleText(event.target.value, tableMeta, 1)
}}
/>
</LightTooltipError>
......@@ -1552,7 +1544,7 @@ export default class OperatingIndicatorMR extends Component {
}
}}
onBlur={(event) => {
handleText(event.target.value, tableMeta, 0)
handleText(event.target.value, tableMeta, 1)
}}
/>
}
......@@ -1675,13 +1667,16 @@ export default class OperatingIndicatorMR extends Component {
<div style={{ marginTop: 20, width: this.props.width - (this.props.open === true ? 400 : 150) }}>
{this.state.loading && loadingComponent}
<MuiThemeProvider theme={getMuiTheme()}>
{!this.state.loading &&
<MuiThemeProvider theme={getMuiTheme()}>
<MUIDataTable
data={dataTable2}
columns={columns}
options={options}
/>
</MuiThemeProvider>
}
</div>
<Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 20 }}>Last Updated by : {this.state.updateBy}</Typography>
<Typography style={{ fontSize: '11px', color: '#4b4b4b', marginTop: 10 }}>Notes : {this.state.notesUpdate}</Typography>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment