Proyectos de Subversion LeadersLinked - Backend

Rev

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

Rev 10523 Rev 10524
Línea 7... Línea 7...
7
 
7
 
Línea 8... Línea 8...
8
 
8
 
-
 
9
const FormView = ({ actionLink }) => {
-
 
10
 
-
 
11
	// States
-
 
12
	const [generalOptions, setGeneralOptions] = useState({
-
 
13
		uuid: '',
-
 
14
		name: '',
-
 
15
		description: '',
9
const FormView = ({ actionLink }) => {
16
		functions: '',
10
 
17
		objectives: ''
11
	// States
18
	})
12
	const [pointsOptions, setPointsOptions] = useState([
19
	const [pointsOptions, setPointsOptions] = useState([
13
		{ label: 'Evaluación', value: 0 },
20
		{ label: 'Evaluación', value: 0 },
Línea 20... Línea 27...
20
	const [statusOptions, setStatusOptions] = useState([
27
	const [statusOptions, setStatusOptions] = useState([
21
		{ label: 'Estatus', value: '' },
28
		{ label: 'Estatus', value: '' },
22
		{ label: 'Aceptado', value: 'a' },
29
		{ label: 'Aceptado', value: 'a' },
23
		{ label: 'Rechazado', value: 'r' }
30
		{ label: 'Rechazado', value: 'r' }
24
	])
31
	])
-
 
32
	const [vacancyOptions, setVacancyOptions] = useState([
-
 
33
		{ label: 'Estatus', value: '' },
-
 
34
		{ label: 'Aceptado', value: 'a' },
-
 
35
		{ label: 'Rechazado', value: 'r' }
-
 
36
	])
-
 
37
	const [candidatesOptions, setCandidatesOptions] = useState([
-
 
38
		{ label: 'Estatus', value: '' },
-
 
39
		{ label: 'Aceptado', value: 'a' },
-
 
40
		{ label: 'Rechazado', value: 'r' }
-
 
41
	])
Línea 25... Línea 42...
25
 
42
 
26
	// Hooks
43
	// Hooks
27
	const { setValue, register, watch } = useForm()
44
	const { setValue, register, watch } = useForm()
28
	const history = useHistory()
45
	const history = useHistory()
Línea 45... Línea 62...
45
					}
62
					}
Línea 46... Línea 63...
46
 
63
 
47
					setValue('comment', resData.interview.comment)
64
					setValue('comment', resData.interview.comment)
48
					setValue('points', resData.interview.points)
65
					setValue('points', resData.interview.points)
-
 
66
					setValue('status', resData.interview.status)
-
 
67
					setGeneralOptions({
49
					setValue('status', resData.interview.status)
68
						...generalOptions,
50
					setValue('vacancy', resData.vacancy.name)
69
						name: resData.vacancy.name,
51
					setValue('candidate', `${resData.candidate.first_name} ${resData.candidate.last_name}`)
70
						uuid: resData.vacancy.uuid,
-
 
71
						description: resData.vacancy.description,
-
 
72
						functions: dataExaple.job_description.functions,
-
 
73
						objectives: dataExaple.job_description.objectives
52
					setValue('vacancy-description', resData.vacancy.description)
74
					})
53
				})
75
				})
54
		}
76
		}
Línea 55... Línea 77...
55
	}, [action])
77
	}, [action])
Línea 127... Línea 149...
127
					<div className="col-12">
149
					<div className="col-12">
128
						<div className='card'>
150
						<div className='card'>
129
							<div className="card-header">
151
							<div className="card-header">
130
								<ul className="nav nav-tabs" id="myTab" role="tablist">
152
								<ul className="nav nav-tabs" id="myTab" role="tablist">
131
									<li className="nav-item" role="presentation">
153
									<li className="nav-item" role="presentation">
132
										<button className="nav-link active" id="home-tab" data-toggle="tab" data-target="#home" type="button" role="tab" aria-controls="home" aria-selected="true">Home</button>
154
										<button className="nav-link active" id="home-tab" data-toggle="tab" data-target="#home" type="button" role="tab" aria-controls="home" aria-selected="true">General</button>
133
									</li>
155
									</li>
134
									<li className="nav-item" role="presentation">
156
									<li className="nav-item" role="presentation">
135
										<button className="nav-link" id="profile-tab" data-toggle="tab" data-target="#profile" type="button" role="tab" aria-controls="profile" aria-selected="false">Profile</button>
157
										<button className="nav-link" id="profile-tab" data-toggle="tab" data-target="#profile" type="button" role="tab" aria-controls="profile" aria-selected="false">Competencias</button>
136
									</li>
158
									</li>
137
									<li className="nav-item" role="presentation">
159
									<li className="nav-item" role="presentation">
138
										<button className="nav-link" id="contact-tab" data-toggle="tab" data-target="#contact" type="button" role="tab" aria-controls="contact" aria-selected="false">Contact</button>
160
										<button className="nav-link" id="contact-tab" data-toggle="tab" data-target="#contact" type="button" role="tab" aria-controls="contact" aria-selected="false">Conclusiones</button>
139
									</li>
161
									</li>
140
								</ul>
162
								</ul>
141
							</div>
163
							</div>
142
							<div className="card-body">
164
							<div className="card-body">
143
								<div className="tab-content" id="myTabContent">
165
								<div className="tab-content" id="myTabContent">
144
									<div className="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
166
									<div className="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">
145
										<div className="row p-3 justify-content-between">
167
										<div className="row p-3 justify-content-between">
146
											<div className="form-group">
168
											<div className="form-group">
147
												<label>Vacantes</label>
169
												<label>Vacantes</label>
148
												<select
-
 
149
													className='form-control'
170
												<select className='form-control' name='points' ref={register}>
150
													name='vacancy'
171
													{
151
													ref={register}
172
														vacancyOptions.map(({ label, value }) => (
-
 
173
															<option selected={generalOptions.name === label} key={value} value={value}>{label}</option>
152
													disabled
174
														))
153
												>
175
													}
154
													<option value={watch('vacancy')}>{watch('vacancy')}</option>
-
 
155
												</select>
176
												</select>
156
											</div>
177
											</div>
157
											<div className="form-group">
178
											<div className="form-group">
158
												<label>Candidatos</label>
179
												<label>Candidatos</label>
159
												<select
-
 
160
													className='form-control'
180
												<select className='form-control' name='points' ref={register}>
161
													name='candidate'
181
													{
162
													ref={register}
182
														candidatesOptions.map(({ label, value }) => (
-
 
183
															<option selected={watch('candidate') === value} key={value} value={value}>{label}</option>
163
													disabled
184
														))
164
												>
185
													}
165
													<option value={watch('candidate')}>{watch('candidate')}</option>
-
 
166
												</select>
186
												</select>
167
											</div>
187
											</div>
168
										</div>
188
										</div>
169
										<div className="card">
189
										<div className="card">
170
											<div className="card-body">
190
											<div className="card-body">
171
												<h5 className="card-title">{watch('vacancy')}</h5>
191
												<h5 className="card-title">{generalOptions.name}</h5>
172
												<p>{watch('vacancy-description')}</p>
192
												<p>{generalOptions.description}</p>
-
 
193
												<h5>Funciones</h5>
-
 
194
												<p>{generalOptions.functions}</p>
-
 
195
												<h5>Objetivos</h5>
-
 
196
												<p>{generalOptions.objectives}</p>
173
											</div>
197
											</div>
174
										</div>
198
										</div>
175
									</div>
199
									</div>
176
									<div className="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab"></div>
200
									<div className="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab"></div>
177
									<div className="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab">
201
									<div className="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab">
Línea 179... Línea 203...
179
											<label>Comentario</label>
203
											<label>Comentario</label>
180
											<input type="text" name="comment" className="form-control" ref={register} />
204
											<input type="text" name="comment" className="form-control" ref={register} />
181
										</div>
205
										</div>
182
										<div className="form-group">
206
										<div className="form-group">
183
											<label>Evaluación</label>
207
											<label>Evaluación</label>
184
											<select
-
 
185
												className='form-control'
208
											<select className='form-control' name='points' ref={register}>
186
												name='points'
-
 
187
												ref={register}
-
 
188
											>
-
 
189
												{
209
												{
190
													pointsOptions.map(({ label, value }) => (
210
													pointsOptions.map(({ label, value }) => (
191
														<option selected={watch('points') === value} key={value} value={value}>{label}</option>
211
														<option selected={watch('points') === value} key={value} value={value}>{label}</option>
192
													))
212
													))
193
												}
213
												}
194
											</select>
214
											</select>
195
										</div>
215
										</div>
196
										<div className="form-group">
216
										<div className="form-group">
197
											<label>Estatus</label>
217
											<label>Estatus</label>
198
											<select
-
 
199
												className='form-control'
218
											<select className='form-control' name='status' ref={register}>
200
												name='status'
-
 
201
												ref={register}
-
 
202
											>
-
 
203
												{
219
												{
204
													statusOptions.map(({ label, value }) => (
220
													statusOptions.map(({ label, value }) => (
205
														<option selected={watch('status') === value} key={value} value={value}>{label}</option>
221
														<option selected={watch('status') === value} key={value} value={value}>{label}</option>
206
													))
222
													))
207
												}
223
												}