|
@@ -0,0 +1,79 @@
|
|
|
+import React, { useState, useEffect, useMemo } from 'react'
|
|
|
+import { useNavigate } from 'react-router-dom'
|
|
|
+import { PlusOutlined } from '@ant-design/icons'
|
|
|
+import { SimpleTableLayout } from '../../../components/layouts'
|
|
|
+import { Tabla, ActionsButton } from '../../../components'
|
|
|
+import { eliminarRegistro, } from '../../../utilities'
|
|
|
+
|
|
|
+const Listado = ({ endPoint, columnas, idModelo, orden, expand }) => {
|
|
|
+
|
|
|
+ const tablaRef = React.useRef(null)
|
|
|
+
|
|
|
+ const navigate = useNavigate()
|
|
|
+
|
|
|
+ const [reqConvenio, setReqConvenio] = useState({})
|
|
|
+ const [buscar, setBuscar] = useState('')
|
|
|
+
|
|
|
+ const btnGroup = [
|
|
|
+ {
|
|
|
+ onClick: () => navigate('agregar'),
|
|
|
+ props: { disabled: false, type: 'primary', block: false },
|
|
|
+ text: 'Agregar',
|
|
|
+ icon: <PlusOutlined/>,
|
|
|
+ }
|
|
|
+ ]
|
|
|
+
|
|
|
+ const columns = [
|
|
|
+ {
|
|
|
+ width: '5%',
|
|
|
+ title: '',
|
|
|
+ render: (_, item) =>
|
|
|
+ <ActionsButton
|
|
|
+ data={[
|
|
|
+ {
|
|
|
+ label: 'Editar',
|
|
|
+ onClick: () => {
|
|
|
+ setReqConvenio(item)
|
|
|
+ navigate(`editar?id=${item[idModelo]}`)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "Eliminar",
|
|
|
+ onClick: () => {
|
|
|
+ eliminarRegistro(item?.nombre, item?.id, `${endPoint}/eliminar`, () =>
|
|
|
+ tablaRef?.current?.refresh()
|
|
|
+ );
|
|
|
+ },
|
|
|
+ danger: true,
|
|
|
+ },
|
|
|
+ ]}
|
|
|
+ />
|
|
|
+ },
|
|
|
+ ...columnas
|
|
|
+ ]
|
|
|
+
|
|
|
+ const handleSearch = (buscar) => {
|
|
|
+ setBuscar(buscar)
|
|
|
+ }
|
|
|
+
|
|
|
+ return (
|
|
|
+ <SimpleTableLayout
|
|
|
+ onSearch={handleSearch}
|
|
|
+ btnGroup={
|
|
|
+ { btnGroup }
|
|
|
+ }
|
|
|
+ >
|
|
|
+ <Tabla
|
|
|
+ nameURL={endPoint}
|
|
|
+ order={orden}
|
|
|
+ extraParams={{buscar: buscar}}
|
|
|
+ columns={columns}
|
|
|
+ ref={tablaRef}
|
|
|
+ idModelo={idModelo}
|
|
|
+ expand={expand}
|
|
|
+ />
|
|
|
+ </SimpleTableLayout>
|
|
|
+ )
|
|
|
+}
|
|
|
+
|
|
|
+export default Listado
|