listo institucion dia
This commit is contained in:
parent
28c1afa8f7
commit
1363c13676
@ -54,11 +54,13 @@ export class InstitucionDiaService {
|
||||
return this.repository.findOne({ where: { institucion, dia: { id_dia } } });
|
||||
}
|
||||
|
||||
async hoy(id_institucion: number) {
|
||||
hoy(id_institucion: number) {
|
||||
const ahora = moment();
|
||||
|
||||
// Valido que no sea domingo
|
||||
if (ahora.weekday() === 0)
|
||||
throw new ConflictException('No hay servicio los días domingo.');
|
||||
// Busco un institucionDia apartir de la institución enviada y del día de hoy
|
||||
return this.institucionService
|
||||
.findById(id_institucion)
|
||||
.then((institucion) =>
|
||||
@ -69,6 +71,8 @@ export class InstitucionDiaService {
|
||||
update(admin: Operador, attrs: Partial<InstitucionDia>) {
|
||||
return this.findById(attrs.id_institucion_dia)
|
||||
.then((institucionDia) => {
|
||||
// Valido que la institucionDia le pertenezca a la institución del
|
||||
// operador que realiza esta acción
|
||||
if (
|
||||
admin.institucion.id_institucion !=
|
||||
institucionDia.institucion.id_institucion
|
||||
@ -76,36 +80,47 @@ export class InstitucionDiaService {
|
||||
throw new ConflictException(
|
||||
'No puedes actualizar la información de este día porque no le pertenece a tu institución.',
|
||||
);
|
||||
|
||||
// Valido que hora_inicio no sea mayor a hora_fin
|
||||
if (
|
||||
// Si se mando hora_inicio u hora_fin
|
||||
(attrs.hora_inicio || attrs.hora_fin) &&
|
||||
// y si la hora_inicio que se mando, si no hay toma de institucionDia, es mayor que
|
||||
(attrs.hora_inicio || institucionDia.hora_inicio) >
|
||||
// la hora_fin que se mando, si no hay toma de institucionDia
|
||||
(attrs.hora_fin || institucionDia.hora_fin)
|
||||
)
|
||||
throw new BadRequestException(
|
||||
'La hora inicio no puede ser mayor que la hora fin.',
|
||||
);
|
||||
// Valido que hora_fin no sea mayor a hora_extra
|
||||
if (
|
||||
// Si se mando hora_fin u hora_extra
|
||||
(attrs.hora_fin || attrs.hora_extra) &&
|
||||
// y si la hora_fin que se mando, si no hay toma de institucionDia, es mayor que
|
||||
(attrs.hora_fin || institucionDia.hora_fin) >
|
||||
// la hora_extra que se mando, si no hay toma de institucionDia
|
||||
(attrs.hora_extra || institucionDia.hora_extra)
|
||||
)
|
||||
throw new BadRequestException(
|
||||
'La hora fin no puede ser mayor que la hora extra.',
|
||||
);
|
||||
// Valido que hora_extra no sea mayor a hora_tope
|
||||
if (
|
||||
// Si se hora_extra hora_fin u hora_tope
|
||||
(attrs.hora_extra || attrs.hora_tope) &&
|
||||
// y si la hora_extra que se mando, si no hay toma de institucionDia, es mayor que
|
||||
(attrs.hora_extra || institucionDia.hora_extra) >
|
||||
// la hora_tope que se mando, si no hay toma de institucionDia
|
||||
(attrs.hora_tope || institucionDia.hora_tope)
|
||||
)
|
||||
throw new BadRequestException(
|
||||
'La hora extra no puede ser mayor que la hora tope.',
|
||||
);
|
||||
// Asigno valores enviados al objeto
|
||||
Object.assign(institucionDia, attrs);
|
||||
// Guardo cambios
|
||||
return this.repository.save(institucionDia);
|
||||
})
|
||||
.then((_) => ({
|
||||
message: 'Se guardaron los cambios correctamente.',
|
||||
}));
|
||||
.then((_) => ({ message: 'Se guardaron los cambios correctamente.' }));
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user