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