postulante a reserva

parent 1f701d3e
......@@ -2,7 +2,7 @@
'use strict';
class PostulacionController {
constructor($stateParams, $uibModal, Modal, CargoConvocatoriaService, postulacionService) {
constructor($stateParams, $uibModal, Modal, CargoConvocatoriaService, postulacionService, ReservaService) {
this.errores = {}; // lista de errores
this.modal = $uibModal;
this.Modal = Modal;
......@@ -15,13 +15,21 @@
this.entidadId = $stateParams.entidadId;
this.convocatoriaId = $stateParams.convocatoriaId;
this.cargoConvocatoriaId = $stateParams.cargoConvocatoriaId;
this.postulaciones = {count: 0};
this.cargoConvocatoriaService = CargoConvocatoriaService;
this.ReservaService = ReservaService;
this.service = postulacionService;
this.datosPersonalesBusqueda = [];
this.tags = [];
this.tagsSeleccionados = [];
this.cambiarPagina();
// this.ReservaService.reservas()
// .then((reservas)=>{
//
// })
}
crear() {
......@@ -85,7 +93,7 @@
elementos: 10,
ordenarPor: this.ordenarPor,
orden: this.ordenDescendente,
incluye: [{entidad: 'Cargos'}, {entidad: 'Evaluaciones'}, {entidad: 'Postulaciones'}]
incluye: [{entidad: 'Cargos'}, {entidad: 'Evaluaciones'}, {entidad: 'Postulaciones'}, {entidad: 'Reservas'}]
};
if (this.tagsSeleccionados.length > 0) {
parametros.incluye = [{entidad: 'Tags', buscar: this.tagsBusqueda}]
......@@ -96,6 +104,7 @@
this.cargoConvocatoriaService.postulaciones(this.cargoConvocatoriaId, parametros)
.then(respuesta=> {
this.postulaciones = respuesta;
console.log(respuesta);
if (this.cargoConvocatoriaId)
return this.cargoConvocatoriaService.cargoConvocatoria(this.cargoConvocatoriaId, {
incluye: [{entidad: 'Etapas'}, {entidad: 'Evaluaciones'}]
......@@ -185,6 +194,20 @@
});
})
}
aReserva(personaId, cargoConvocatoriaId){
this.cargoConvocatoriaService.cargoConvocatoria(cargoConvocatoriaId, {})
.then((cargoConvocatoria)=>{
if(cargoConvocatoria){
this.ReservaService.buscarCrearReserva({personaId: personaId, cargoId: cargoConvocatoria.fk_cargo})
.then((reserva)=>{
console.log('Registro reserva');
console.log(reserva);
})
}
})
}
}
angular.module('moduloPersonalApp')
.controller('PostulacionCtrl', PostulacionController);
......
......@@ -46,7 +46,7 @@
<small class="text-default">{{etapa.porcentaje}} %</small>
</th>
<th rowspan="2" class="text-primary">Total</th>
<th rowspan="2" class="text-center text-primary" width="25%">Opciones</th>
<th rowspan="2" class="text-center text-primary" width="28%">Opciones</th>
</tr>
<tr>
<!--<th ng-repeat="evaluacion in vm.cargoConvocatoria.Evaluaciones" class="text-center">-->
......@@ -82,7 +82,7 @@
</table>
</td>
<td width="5%" class="text-right">{{postulacion.total}}</td>
<td width="22%">
<td width="22%" ng-init="reservado=false">
<div class="btn-group" role="group">
<a class="btn btn-success-outline btn-xs" href="#" role="button" ng-disabled="vm.existeRelacionLaboral"
ng-click="vm.contratar(postulacion)" uib-tooltip="Contratar" tooltip-placement="bottom-right">
......@@ -94,9 +94,13 @@
<i class="fa fa-lg fa-user"></i>
</a>
<a class="btn btn-danger-outline btn-xs" href="#" role="button"
ng-click="vm.eliminar(postulacion)" uib-tooltip="Eliminar postulación" tooltip-placement="bottom-left">
ng-click="vm.eliminar(postulacion)" uib-tooltip="Eliminar postulación" tooltip-placement="bottom">
<i class="fa fa-trash fa-lg"></i>
</a>
<a class="btn btn-gray-dark-outline btn-xs" role="button" uib-tooltip="Reserva" tooltip-placement="bottom-left"
ng-click="vm.aReserva(postulacion._id, vm.cargoConvocatoriaId); reservado = true;" >
<i class="fa fa-lg " ng-class="{'fa-check-circle-o':postulacion.Reservas.length > 0 || reservado == true, 'fa-circle-thin':postulacion.Reservas.length < 1}"></i>
</a>
</div>
</td>
</tr>
......
(()=> {
'use strict';
class ReservaService {
constructor($resource, appConfig) {
this.resource = $resource(appConfig.serverAddress + '/api/reservas/:id', {id: '@_id'}, {
update: {method: 'PUT'},
query: {isArray: false},
buscarCrearReserva: {
method: 'POST',
isArray: true,
url: appConfig.serverAddress + '/api/reservas/buscarCrearReserva'
}
})
}
reservas(parametros) {
return this.resource.query(parametros).$promise;
}
reserva(id, parametros = {}) {
parametros.id = id;
return this.resource.get(parametros).$promise;
}
crear(reserva) {
return this.resource.save(reserva).$promise;
}
editar(id, reserva) {
return this.resource.update({id: id}, reserva).$promise;
}
eliminar(id) {
return this.resource.remove({id: id}).$promise;
}
buscarCrearReserva(reserva) {
return this.resource.buscarCrearReserva(reserva).$promise;
}
}
angular.module('moduloPersonalApp')
.service('ReservaService', ReservaService);
})();
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment