Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 6788 | Rev 6790 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
6788 stevensc 1
import React, { useState } from 'react'
6789 stevensc 2
import DeleteModal from '../../settings/company-sizes/view/DeleteModal';
6680 stevensc 3
import TableFilters from "../components/TableFilters"
6628 stevensc 4
 
6680 stevensc 5
const JobsTableView = ({ allowAdd, allowEdit, allowDelete, link_table, link_add }) => {
6
 
7
    const [companyData, setCompanyData] = useState({});
8
    const [showModal, setShowModal] = useState(false);
9
    const [showDeleteModal, setShowDeleteModal] = useState(false);
10
    const [actionLink, setActionLink] = useState(link_add);
11
    const headers = [
12
        { key: "last_date_of_application", label: "Último día de aplicación", isSorteable: true },
13
        { key: "title", label: "Título", isSorteable: true },
14
        { key: "details", label: "Detalles", isSorteable: true },
15
        { key: "actions", label: "Acciones", isSorteable: false }
16
    ]
17
 
18
    const getData = (search, start, length) => {
19
        axios.get(
20
            link_table,
21
            {
22
                params: {
23
                    search: search,
24
                    start: start,
25
                    length: length
26
                }
27
            })
28
            .then(({ data }) => {
29
                if (data.success) {
30
                    setCompanyData(data.data)
31
 
32
                    return data.data
33
                }
34
            })
35
            .catch((err) => console.log(err))
36
    }
37
 
38
    const closeModal = () => {
39
        setShowModal(false)
40
        setActionLink(link_add)
41
    }
42
 
43
    const closeDeleteModal = () => {
44
        setShowDeleteModal(false)
45
        setActionLink(link_add)
46
    }
47
 
48
    const deleteItem = (item) => {
49
        setActionLink(item.actions.link_delete);
50
        setShowDeleteModal(true);
51
    }
52
 
53
    const addItem = () => {
54
        setActionLink(link_add)
55
        setShowModal(true);
56
    }
57
 
6628 stevensc 58
    return (
59
        <>
60
            <section className="content-header">
61
                <div className="container-fluid">
62
                    <div className="row mb-2">
63
                        <div className="col-sm-12">
6680 stevensc 64
                            <h1>Empleos</h1>
6628 stevensc 65
                        </div>
66
                    </div>
67
                </div>
68
            </section>
6680 stevensc 69
            <TableFilters
70
                data={companyData}
71
                getData={getData}
72
                onDelete={deleteItem}
73
                onAdd={addItem}
74
                headers={headers}
75
                allowAdd={allowAdd}
76
                allowEdit={allowEdit}
77
                allowDelete={allowDelete}
78
            />
79
            <DeleteModal
80
                isOpen={showDeleteModal}
81
                closeModal={closeDeleteModal}
82
                url={actionLink}
83
                action={getData}
84
            />
6628 stevensc 85
        </>
86
    )
87
}
88
 
89
export default JobsTableView