Rev 6353 | Rev 15521 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { useState } from 'react'
import axios from 'axios';
import EditModal from '../../groups-types/view/EditModal';
import TableContainer from '../../company-sizes/view/TableContainer'
import DeleteModal from '../../../shared/DeleteModal';
const DegreesView = ({ urlsVar }) => {
const { linkTable, addUrl, allowAdd, allowEdit, allowDelete } = urlsVar
const [companyData, setCompanyData] = useState({});
const [showModal, setShowModal] = useState(false);
const [showDeleteModal, setShowDeleteModal] = useState(false);
const [selectItem, setSelectItem] = useState(null);
const [actionLink, setActionLink] = useState(addUrl);
const headers = [
{ key: "name", label: "Nombre", isSorteable: true },
{ key: "status", label: "Activo", isSorteable: false },
{ key: "actions", label: "Acciones", isSorteable: false }
]
const getData = (search, start, length) => {
axios.get(
linkTable,
{
params: {
search: search,
start: start,
length: length
}
})
.then(({ data }) => {
if (data.success) {
setCompanyData(data.data)
return data.data
}
})
.catch((err) => console.log(err))
}
const closeModal = () => {
setShowModal(false)
setSelectItem(null)
setActionLink(addUrl)
}
const closeDeleteModal = () => {
setShowDeleteModal(false)
setActionLink(addUrl)
}
const editItem = (item) => {
setSelectItem(item);
setActionLink(item.actions.link_edit);
setShowModal(true);
}
const deleteItem = (item) => {
setActionLink(item.actions.link_delete);
setShowDeleteModal(true);
}
const addItem = () => {
setSelectItem(null);
setActionLink(addUrl)
setShowModal(true);
}
return (
<>
<section className="content">
<section className="content-header">
<div className="container-fluid">
<div className="row mb-2">
<div className="col-sm-12">
<h1>Grados</h1>
</div>
</div>
</div>
</section>
<TableContainer
data={companyData}
getData={getData}
onEdit={editItem}
onDelete={deleteItem}
onAdd={addItem}
headers={headers}
allowAdd={allowAdd}
allowEdit={allowEdit}
allowDelete={allowDelete}
/>
</section>
<EditModal
isOpen={showModal}
title='Grados'
closeModal={closeModal}
isEdit={actionLink !== addUrl}
url={actionLink}
currentItem={selectItem}
action={getData}
/>
<DeleteModal
isOpen={showDeleteModal}
closeModal={closeDeleteModal}
url={actionLink}
action={getData}
/>
</>
)
}
export default DegreesView