/**Step 8 */
// al menos un beneficiario
function Beneficiaries({beneficiariesList, onBeneficiariesListChange}) {
const [openCreateDialog, setOpenCreateDialog] = React.useState(false)
const styles = {
tableCell: {
padding: '4px 24px',
},
button: {
marginTop: '20px',
float: 'right'
},
icon: {
fontSize: '20px',
marginLeft: '5px',
paddingBottom: '2px',
},
buttonAdd: {
float: 'right',
},
buttonGiveMoney: {
marginTop: '5px',
}
}
const headers = [
'Nombre',
'Parentesco',
'Porcentaje',
'Direccion'
]
function handleDelete(element, index) {
beneficiariesList.splice(index, 1)
onBeneficiariesListChange([...beneficiariesList])
}
return(
Beneficiarios
{
headers.map((header, index) =>
{header}
)
}
Acciones
{
beneficiariesList.length > 0 ?
beneficiariesList.map((item, index) =>
{item.name}
{item.parenthood}
{item.percent}
{item.address}
handleDelete(item, index)}>
delete
)
:
No se han ingresado beneficiarios.
}
)
}
function BeneficiariesDialog({onBeneficiariesListChange, open, setOpenCreateDialog, beneficiariesList = [BeneficiariesModel]}) {
const [beneficiaries, setBeneficiaries] = React.useState(BeneficiariesModel)
const [hasError, setHasError] = React.useState(false)
const [snackBar, setSnackBar] = React.useState({
open: false,
message: "ups"
})
function handleClose() {
setBeneficiaries(BeneficiariesModel)
setOpenCreateDialog(false)
}
function handleSave(){
debugger
let totalPercent = beneficiariesList.reduce((comulative, beneficiary) => comulative + beneficiary["percent"], 0 )
if (totalPercent + beneficiaries.percent > 100){
setSnackBar({
open: true,
message: 'El porcentaje seria mayor al 100%'
})
return
}
if(
!isRequired(beneficiaries.name)
&& !isRequired(beneficiaries.parenthood)
&& !isRequired(beneficiaries.address)
&& !isPercent(beneficiaries.percent)
){
beneficiariesList.push(beneficiaries)
onBeneficiariesListChange(beneficiariesList)
setBeneficiaries(BeneficiariesModel)
setOpenCreateDialog(false)
}else{
setHasError(true)
return
}
}
return(
)
}