Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev Autor Línea Nro. Línea
276 geraldo 1
import React, { useEffect, useState } from "react";
2
import { axios } from '../../utils';
305 geraldo 3
import List from "./List/List";
301 geraldo 4
import Search from "../../shared/search/Search";
5
import Breadcrumbs from "../../shared/breadcrumbs/Breadcrumbs"
276 geraldo 6
 
7
const SelfEvaluation = (props) => {
283 geraldo 8
 
285 geraldo 9
 
282 geraldo 10
    // get props
11
    const { backendVars } = props;
285 geraldo 12
 
276 geraldo 13
    /**
14
     * Init States
15
     */
305 geraldo 16
    const [data, setData] = useState([]);
301 geraldo 17
    const [test, setTest] = useState();
276 geraldo 18
    const [loading, setLoading] = useState(true);
19
 
20
    /**
21
     * Get All self evaluation tests
22
     */
282 geraldo 23
    const fetchData = async (searchParam = '') => {
24
 
25
        setLoading(true);
285 geraldo 26
        await axios
27
            .get(
28
                "/profile/self-evaluation?search=" + searchParam)
29
            .then((response) => {
30
                if (response.data.success) {
305 geraldo 31
                    setData(response.data.data);
285 geraldo 32
                }
33
            });
276 geraldo 34
        setLoading(false);
285 geraldo 35
    };
282 geraldo 36
 
301 geraldo 37
    /**
38
     * get info test
39
     * @param {*} url
40
     */
41
    const getTestByUrl = async (url) => {
42
        setLoading(true);
43
        await axios
44
            .get(url)
45
            .then((response) => {
304 geraldo 46
                if (response.data.data) {
301 geraldo 47
                    console.log(response.data.data);
48
                    setTest(response.data.data);
49
                }
50
            });
51
        setLoading(false);
52
    };
285 geraldo 53
 
276 geraldo 54
    /**
305 geraldo 55
     * Search data
282 geraldo 56
     * @param {*} e
57
     */
58
    const handleSearch = async (e) => fetchData(e);
59
 
60
    /**
276 geraldo 61
     * componentDidMount
62
     */
63
    useEffect(() => {
282 geraldo 64
        fetchData();
276 geraldo 65
    }, []);
66
 
67
    return (
68
        <section className="companies-info">
302 geraldo 69
            {!test ? (
301 geraldo 70
                <div className="container">
71
                    <div className="row">
72
                        <Breadcrumbs title={backendVars.LBL_SELF_EVALUATION} />
276 geraldo 73
                    </div>
301 geraldo 74
                    <div className="row">
75
                        <Search handleSearch={handleSearch} backendVars={backendVars} />
276 geraldo 76
                    </div>
305 geraldo 77
                    <div className="row">
78
                        <List
79
                            data={data}
80
                            getTestByUrl={getTestByUrl}
81
                            backendVars={backendVars}
82
                            loading={loading}
83
                        />
301 geraldo 84
                    </div>
85
                </div>
305 geraldo 86
            ) : (
87
                <div className="container"></div>
301 geraldo 88
            )}
276 geraldo 89
        </section>
90
 
91
    );
92
};
93
 
94
export default SelfEvaluation;