Browse Source

show puestos with new token

amenpunk 2 years ago
parent
commit
58a2e3f457
4 changed files with 162 additions and 165 deletions
  1. 1 2
      src/Components/Routes.js
  2. 0 1
      src/Pages/Home.jsx
  3. 1 1
      src/Pages/Login.jsx
  4. 160 161
      src/Pages/Puestos.jsx

+ 1 - 2
src/Components/Routes.js

@@ -22,8 +22,7 @@ import { RestorePassword } from '../Pages/RestorePassword'
22 22
 
23 23
 import { HomeUser } from '../Pages/HomeUser'
24 24
 import { Prueba } from '../Pages/Prueba.jsx'
25
-
26
-import RequireAuth, { RequireToken } from '../Components/PrivateRoute'
25
+import { RequireToken } from '../Components/PrivateRoute'
27 26
 
28 27
 export default function MyRoutes() {
29 28
 

+ 0 - 1
src/Pages/Home.jsx

@@ -7,7 +7,6 @@ import Candidatos from '../Components/Home/Candidatos'
7 7
 import { Card } from '../Components/Card';
8 8
 import { useSelector } from 'react-redux';
9 9
 
10
-
11 10
 export function Home() {
12 11
 
13 12
   const profile = useSelector((state) => state.user.profile)

+ 1 - 1
src/Pages/Login.jsx

@@ -79,7 +79,7 @@ export function Login() {
79 79
           }, 2000)
80 80
 
81 81
         })
82
-        .catch(err => {
82
+        .catch(_err => {
83 83
           setOpen(false)
84 84
           toast.error("Ups! usuario o contraseña incorrectos")
85 85
         })

+ 160 - 161
src/Pages/Puestos.jsx

@@ -1,15 +1,14 @@
1
-import React, { useState, useCallback, useRef} from 'react';
1
+import React, { useState, useCallback } from 'react';
2 2
 import { Row, Col } from 'react-bootstrap'
3 3
 import { Toaster } from 'react-hot-toast';
4 4
 
5 5
 import {
6
-    ToggleButton, ToggleButtonGroup, Box,
7
-    Paper, Pagination,Chip
6
+  ToggleButton, ToggleButtonGroup, Box,
7
+  Paper, Pagination, Chip
8 8
 } from '@mui/material';
9 9
 
10 10
 import { ViewList as ViewListIcon, ViewModule as ViewModuleIcon, } from '@mui/icons-material';
11 11
 
12
-import { default as useAuth } from '../Auth/useAuth';
13 12
 import { Service } from '../Utils/HTTP';
14 13
 import { Divide } from '../Utils/Paginate';
15 14
 
@@ -26,175 +25,175 @@ import { Add as AddIcon, } from '@mui/icons-material/'
26 25
 
27 26
 import { Loading } from '../Components/Generics/loading'
28 27
 import { ErrorMessage } from '../Components/Generics/Error'
28
+import { useSelector } from 'react-redux';
29 29
 
30 30
 import { useQuery } from 'react-query';
31 31
 
32 32
 export function Puestos() {
33 33
 
34
-    const auth = useAuth();
35
-    const token = useRef(auth.getToken());
36
-    const [page, setPage] = useState(1);
37
-
38
-    const getAll = async () => {
39
-        let rest = new Service("/plaza/getall")
40
-        let response =  await rest.getQuery(token.current); 
41
-        return response;
42
-    }
43
-
44
-    const { isLoading, error, data : result } = useQuery('puestos', getAll);
45
-    const changePage = useCallback((_, value) => setPage(value),[]);
46
-    const [alignment, setAlignment] = React.useState('grid');
47
-    const handleChange = useCallback((_event, newAlignment) => setAlignment(newAlignment),[])
48
-
49
-    const children = [
50
-        <ToggleButton value="list" key="list">
51
-            <ViewListIcon />
52
-        </ToggleButton>,
53
-        <ToggleButton value="grid" key="grid">
54
-            <ViewModuleIcon />
55
-        </ToggleButton>,
56
-    ];
57
-
58
-    const control = {
59
-        value: alignment,
60
-        onChange: handleChange,
61
-        exclusive: true,
62
-    };
63
-
64
-    let [manual, setManual] = React.useState(false);
65
-    let [expres, setExpress] = React.useState(false);
66
-
67
-    let [puesto, setPuesto] = React.useState(false);
68
-    let [edit, setEdit] = React.useState(false);
69
-    let [del, setDelete] = React.useState(false);
70
-    let [show, setShow] = React.useState(false);
71
-
72
-    const toggle = useCallback((type,puesto) => {
73
-        setPuesto(puesto)
74
-        switch(type){
75
-            case "VER": {
76
-                setShow(!show);
77
-                break;
78
-            }
79
-            case "EDIT": {
80
-                setEdit(!edit)
81
-                break;
82
-            }
83
-            case "DEL": {
84
-                setDelete(!del)
85
-                break;
86
-            }
87
-            default: break;
88
-        }
89
-    },[edit,del,show])
90
-
91
-    if (isLoading){
92
-        return(
93
-            <Paper sx={{ mb: 2, padding: 2, height: '100%', minHeight: '95vh' }}>
94
-                <main id="loading_or_content">
95
-                    <Loading />
96
-                </main>
97
-            </Paper>
98
-        )
99
-    } 
100
-
101
-    if (error) {
102
-        return (
103
-            <Paper sx={{ mb: 2, padding: 2, height: '100%', minHeight: '95vh' }}>
104
-                <main id="loading_or_content">
105
-                    <ErrorMessage/>
106
-                </main>
107
-            </Paper>
108
-        )
34
+  const auth = useSelector((state) => state.token)
35
+  const [page, setPage] = useState(1);
36
+
37
+  const getAll = async () => {
38
+    let rest = new Service("/plaza/getall")
39
+    let response = await rest.getQuery(auth.token);
40
+    return response;
41
+  }
42
+
43
+  const { isLoading, error, data: result } = useQuery('puestos', getAll);
44
+  const changePage = useCallback((_, value) => setPage(value), []);
45
+  const [alignment, setAlignment] = React.useState('grid');
46
+  const handleChange = useCallback((_event, newAlignment) => setAlignment(newAlignment), [])
47
+
48
+  const children = [
49
+    <ToggleButton value="list" key="list">
50
+      <ViewListIcon />
51
+    </ToggleButton>,
52
+    <ToggleButton value="grid" key="grid">
53
+      <ViewModuleIcon />
54
+    </ToggleButton>,
55
+  ];
56
+
57
+  const control = {
58
+    value: alignment,
59
+    onChange: handleChange,
60
+    exclusive: true,
61
+  };
62
+
63
+  let [manual, setManual] = React.useState(false);
64
+  let [expres, setExpress] = React.useState(false);
65
+
66
+  let [puesto, setPuesto] = React.useState(false);
67
+  let [edit, setEdit] = React.useState(false);
68
+  let [del, setDelete] = React.useState(false);
69
+  let [show, setShow] = React.useState(false);
70
+
71
+  const toggle = useCallback((type, puesto) => {
72
+    setPuesto(puesto)
73
+    switch (type) {
74
+      case "VER": {
75
+        setShow(!show);
76
+        break;
77
+      }
78
+      case "EDIT": {
79
+        setEdit(!edit)
80
+        break;
81
+      }
82
+      case "DEL": {
83
+        setDelete(!del)
84
+        break;
85
+      }
86
+      default: break;
109 87
     }
88
+  }, [edit, del, show])
110 89
 
111
-    const total_items = Divide(result.data).length
90
+  if (isLoading) {
91
+    return (
92
+      <Paper sx={{ mb: 2, padding: 2, height: '100%', minHeight: '95vh' }}>
93
+        <main id="loading_or_content">
94
+          <Loading />
95
+        </main>
96
+      </Paper>
97
+    )
98
+  }
112 99
 
100
+  if (error) {
113 101
     return (
114
-        <div className="content-section">
115
-            <div className="main">
116
-                <Box>
117
-                    <Paper sx={{ mb: 2, padding: 2, }}>
118
-
119
-                        <Row style={{ paddingBottom: 15 }}>
120
-                            <Col md="2" sm="2" xs="2">
121
-                                <div className="breadcrumb-header">
122
-                                    <Box sx={{ float: 'left', display: 'flex', flexDirection: 'column', alignItems: 'center', '& > :not(style) + :not(style)': { mt: 2 }, }} >
123
-                                        <ToggleButtonGroup size="small" {...control}>
124
-                                            {children}
125
-                                        </ToggleButtonGroup>
126
-                                    </Box>
127
-                                </div>
128
-                            </Col>
129
-                            <Col md="10" sm='10' xs="10">
130
-                                <div className="add_producto">
131
-                                    <div onClick={() => setManual(true)} className="btn_add_producto">
132
-                                        <span className="btn_plaza_common" >Agregar manual <AddIcon fontSize="small" /></span>
133
-                                    </div>
134
-                                </div>
135
-                                <div onClick={() => setExpress(true)} className="add_producto">
136
-                                    <div className="btn_add_producto">
137
-                                        <span className="btn_plaza_common">Agregar express <AddIcon fontSize="small" /></span>
138
-                                    </div>
139
-                                </div>
140
-                            </Col>
141
-                        </Row>
142
-
143
-                        <div>
144
-                            <div className={`main_productos ${alignment === 'grid' ? 'activar_vista' : 'desactivar_vista'}`} id="grid_view">
145
-                                <Row>
146
-                                    <GridMode
147
-                                        toggle={toggle}
148
-                                        showing={alignment}
149
-                                        data={Divide( result.data )}
150
-                                        index={page - 1}
151
-                                    />
152
-                                </Row>
153
-                            </div>
154
-                            <div className={`main_list_products ${alignment === 'list' ? 'activar_vista' : 'desactivar_vista'}`} id="list_view_products">
155
-                                <Row>
156
-                                    <ListMode
157
-                                        toggle={toggle}
158
-                                        showing={alignment}
159
-                                        data={Divide( result.data )}
160
-                                        index={page - 1}
161
-                                    />
162
-                                </Row>
163
-                            </div>
164
-
165
-                            <div id="pagi_bottom">
166
-                                <Pagination
167
-                                    sx={{
168
-                                        "& ul": {
169
-                                            paddingTop: "20px",
170
-                                            justifyContent: "center"
171
-                                        }
172
-                                    }}
173
-                                    siblingCount={2}
174
-                                    boundaryCount={2}
175
-                                    shape='rounded'
176
-                                    count={total_items}
177
-                                    page={page}
178
-                                    onChange={changePage}
179
-                                    />
180
-
181
-                                <Chip label={"Total: "+ ( result? result.data.length : 0 ) } />
182
-                            </div>
183
-
184
-                        </div>
185
-                    </Paper>
186
-                </Box>
102
+      <Paper sx={{ mb: 2, padding: 2, height: '100%', minHeight: '95vh' }}>
103
+        <main id="loading_or_content">
104
+          <ErrorMessage />
105
+        </main>
106
+      </Paper>
107
+    )
108
+  }
109
+
110
+  const total_items = Divide(result.data).length
111
+
112
+  return (
113
+    <div className="content-section">
114
+      <div className="main">
115
+        <Box>
116
+          <Paper sx={{ mb: 2, padding: 2, }}>
117
+
118
+            <Row style={{ paddingBottom: 15 }}>
119
+              <Col md="2" sm="2" xs="2">
120
+                <div className="breadcrumb-header">
121
+                  <Box sx={{ float: 'left', display: 'flex', flexDirection: 'column', alignItems: 'center', '& > :not(style) + :not(style)': { mt: 2 }, }} >
122
+                    <ToggleButtonGroup size="small" {...control}>
123
+                      {children}
124
+                    </ToggleButtonGroup>
125
+                  </Box>
126
+                </div>
127
+              </Col>
128
+              <Col md="10" sm='10' xs="10">
129
+                <div className="add_producto">
130
+                  <div onClick={() => setManual(true)} className="btn_add_producto">
131
+                    <span className="btn_plaza_common" >Agregar manual <AddIcon fontSize="small" /></span>
132
+                  </div>
133
+                </div>
134
+                <div onClick={() => setExpress(true)} className="add_producto">
135
+                  <div className="btn_add_producto">
136
+                    <span className="btn_plaza_common">Agregar express <AddIcon fontSize="small" /></span>
137
+                  </div>
138
+                </div>
139
+              </Col>
140
+            </Row>
141
+
142
+            <div>
143
+              <div className={`main_productos ${alignment === 'grid' ? 'activar_vista' : 'desactivar_vista'}`} id="grid_view">
144
+                <Row>
145
+                  <GridMode
146
+                    toggle={toggle}
147
+                    showing={alignment}
148
+                    data={Divide(result.data)}
149
+                    index={page - 1}
150
+                  />
151
+                </Row>
152
+              </div>
153
+              <div className={`main_list_products ${alignment === 'list' ? 'activar_vista' : 'desactivar_vista'}`} id="list_view_products">
154
+                <Row>
155
+                  <ListMode
156
+                    toggle={toggle}
157
+                    showing={alignment}
158
+                    data={Divide(result.data)}
159
+                    index={page - 1}
160
+                  />
161
+                </Row>
162
+              </div>
163
+
164
+              <div id="pagi_bottom">
165
+                <Pagination
166
+                  sx={{
167
+                    "& ul": {
168
+                      paddingTop: "20px",
169
+                      justifyContent: "center"
170
+                    }
171
+                  }}
172
+                  siblingCount={2}
173
+                  boundaryCount={2}
174
+                  shape='rounded'
175
+                  count={total_items}
176
+                  page={page}
177
+                  onChange={changePage}
178
+                />
179
+
180
+                <Chip label={"Total: " + (result ? result.data.length : 0)} />
181
+              </div>
182
+
187 183
             </div>
184
+          </Paper>
185
+        </Box>
186
+      </div>
188 187
 
189
-            <Express setExpress={setExpress} visible={expres} onClose={() => setExpress(false)} />
190
-            <Manual visible={manual} onClose={() => setManual(false)} />
188
+      <Express setExpress={setExpress} visible={expres} onClose={() => setExpress(false)} />
189
+      <Manual visible={manual} onClose={() => setManual(false)} />
191 190
 
192
-            <Mostrar puesto={puesto} visible={show} toggle={toggle} />
193
-            <Editar  puesto={puesto} visible={edit} toggle={toggle} />
194
-            <Eliminar visible={del} onClose={() => setDelete(false)} />
191
+      <Mostrar puesto={puesto} visible={show} toggle={toggle} />
192
+      <Editar puesto={puesto} visible={edit} toggle={toggle} />
193
+      <Eliminar visible={del} onClose={() => setDelete(false)} />
195 194
 
196
-            <Toaster position="bottom-right" />
195
+      <Toaster position="bottom-right" />
197 196
 
198
-        </div>
199
-    )
197
+    </div>
198
+  )
200 199
 }