Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 12375 | Rev 14393 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 12375 Rev 12712
Línea 25... Línea 25...
25
	const [isShowAddModal, setIsShowAddModal] = useState(false)
25
	const [isShowAddModal, setIsShowAddModal] = useState(false)
26
	const [currentEditLink, setCurrentEditLink] = useState('')
26
	const [currentEditLink, setCurrentEditLink] = useState('')
27
	const [isShowEditModal, setIsShowEditModal] = useState(false)
27
	const [isShowEditModal, setIsShowEditModal] = useState(false)
28
	const [currentVacancy, setCurrentVacancy] = useState(vacancies[0].uuid || '')
28
	const [currentVacancy, setCurrentVacancy] = useState(vacancies[0].uuid || '')
29
	const [actionLink, setActionLink] = useState('')
29
	const [actionLink, setActionLink] = useState('')
-
 
30
	const [items, setItems] = useState([])
30
	const [data, setData] = useState({})
31
	const [total, setTotal] = useState(0)
31
	const [search, setSearch] = useState('')
32
	const [search, setSearch] = useState('')
32
	const [dataLength, setDataLength] = useState(10)
33
	const [dataLength, setDataLength] = useState(10)
33
	const [startItem, setStartItem] = useState(1)
34
	const [startItem, setStartItem] = useState(1)
34
	const [lastItem, setLastItem] = useState(10)
35
	const [lastItem, setLastItem] = useState(10)
35
	const [pages, setPages] = useState({
36
	const [pages, setPages] = useState({
Línea 46... Línea 47...
46
						style: 'danger',
47
						style: 'danger',
47
						msg: 'Ha ocurrido un error'
48
						msg: 'Ha ocurrido un error'
48
					}))
49
					}))
49
				}
50
				}
Línea -... Línea 51...
-
 
51
 
50
 
52
				setItems(data.data.items)
51
				setData(data.data)
53
				setTotal(data.data.total)
52
				setPages({ ...pages, last: Math.ceil(data.data.total / dataLength) })
54
				setPages({ ...pages, last: Math.ceil(data.data.total / dataLength) })
53
			})
55
			})
54
			.catch(() => dispatch(addNotification({
56
			.catch(() => dispatch(addNotification({
55
				style: 'danger',
57
				style: 'danger',
Línea 75... Línea 77...
75
			setStartItem(1)
77
			setStartItem(1)
76
		}
78
		}
77
	}, [pages.current])
79
	}, [pages.current])
Línea 78... Línea 80...
78
 
80
 
79
	useEffect(() => {
81
	useEffect(() => {
80
		if (data.items) {
82
		if (items) {
81
			if (startItem > 1) {
83
			if (startItem > 1) {
82
				setLastItem(startItem + (data.items.length - 1))
84
				setLastItem(startItem + (items.length - 1))
83
			} else {
85
			} else {
84
				setLastItem(data.items.length)
86
				setLastItem(items.length)
85
			}
87
			}
86
		}
88
		}
Línea 87... Línea 89...
87
	}, [data])
89
	}, [items])
88
 
90
 
89
	return (
91
	return (
90
		<ContentTitle title='Preselección'>
92
		<ContentTitle title='Preselección'>
Línea 145... Línea 147...
145
										<SearchInput onChange={(e) => setSearch(e.target.value)} />
147
										<SearchInput onChange={(e) => setSearch(e.target.value)} />
146
									</div>
148
									</div>
147
								</Card.Header>
149
								</Card.Header>
148
								<Card.Body>
150
								<Card.Body>
149
									<div className="table-responsive">
151
									<div className="table-responsive">
150
										<Table data={data.items} headers={headers} setData={setData}>
152
										<Table data={items} headers={headers} setData={setItems}>
151
											{
153
											{
152
												data.items?.map((item, index) => (
154
												items.map((item, index) => (
153
													<tr key={index}>
155
													<tr key={index}>
154
														<td>{item.first_name}</td>
156
														<td>{item.first_name}</td>
155
														<td>{item.last_name}</td>
157
														<td>{item.last_name}</td>
156
														<td>{item.email}</td>
158
														<td>{item.email}</td>
157
														<td>
159
														<td>
Línea 192... Línea 194...
192
											}
194
											}
193
										</Table>
195
										</Table>
194
									</div>
196
									</div>
195
									<div className='row justify-content-between align-items-center'>
197
									<div className='row justify-content-between align-items-center'>
196
										<p className='mb-0'>
198
										<p className='mb-0'>
197
											{`Mostrando registros del ${startItem} al ${lastItem} de un total de ${data.total} registros`}
199
											{`Mostrando registros del ${startItem} al ${lastItem} de un total de ${total} registros`}
198
										</p>
200
										</p>
199
										<TablePagination
201
										<TablePagination
200
											onDecrement={() => setPages({ ...pages, current: pages.current - 1 })}
202
											onDecrement={() => setPages({ ...pages, current: pages.current - 1 })}
201
											onIncrement={() => setPages({ ...pages, current: pages.current + 1 })}
203
											onIncrement={() => setPages({ ...pages, current: pages.current + 1 })}
202
											totalPages={pages.last}
204
											totalPages={pages.last}
Línea 224... Línea 226...
224
			<DeleteModal
226
			<DeleteModal
225
				url={actionLink}
227
				url={actionLink}
226
				isOpen={showDeleteModal}
228
				isOpen={showDeleteModal}
227
				closeModal={() => setShowDeleteModal(false)}
229
				closeModal={() => setShowDeleteModal(false)}
228
				title="Esta seguro de borrar esta vacante?"
230
				title="Esta seguro de borrar esta vacante?"
229
				onComplete={() => setData({ ...data, items: data.items.filter((item) => item.actions.link_delete !== actionLink) })}
231
				onComplete={() => setItems(items.filter((item) => item.actions.link_delete !== actionLink))}
230
				message="Vacante eliminada"
232
				message="Vacante eliminada"
231
			/>
233
			/>
232
		</ContentTitle>
234
		</ContentTitle>
233
	)
235
	)
234
}
236
}