fix update rol de colaboradores

This commit is contained in:
Mariela Bonilla 2021-07-31 01:25:10 -06:00
parent 089f508fa7
commit c3b03ee372
2 changed files with 55 additions and 9 deletions

View File

@ -438,7 +438,7 @@
role="dialog" role="dialog"
aria-labelledby="verColaboradoresTitle" aria-labelledby="verColaboradoresTitle"
aria-hidden="true" aria-hidden="true"
*ngIf="colaborador" *ngIf="colaborador && isAutor()"
> >
<div class="modal-dialog modal-dialog-centered" role="document"> <div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content"> <div class="modal-content">
@ -462,11 +462,17 @@
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button id="btnCancelColaboradores" type="button" class="ds-btn ds-btn--secondary" data-dismiss="modal"> <button id="btnCancelUbdateColaboradores" type="button" class="ds-btn ds-btn--secondary" data-dismiss="modal">
<fa-icon icon="arrow-left"></fa-icon>&nbsp;&nbsp;<span>Volver</span> <fa-icon icon="arrow-left"></fa-icon>&nbsp;&nbsp;<span>Volver</span>
</button> </button>
<button id="btnUpdateColaboradores" type="submit" class="ds-btn ds-btn--primary" data-cy="entityUpdateButton"> <button
<fa-icon icon="arrow-left"></fa-icon>&nbsp;&nbsp;<span>Guardar cambios</span> id="btnUpdateColaboradores"
type="submit"
class="ds-btn ds-btn--primary"
data-cy="entityUpdateButton"
[disabled]="isSavingCollab"
>
&nbsp;<span>Guardar cambios</span>
</button> </button>
</div> </div>
</form> </form>

View File

@ -17,7 +17,7 @@ import { IEncuesta, Encuesta } from '../encuesta.model';
import { EncuestaService } from '../service/encuesta.service'; import { EncuestaService } from '../service/encuesta.service';
import { ICategoria } from 'app/entities/categoria/categoria.model'; import { ICategoria } from 'app/entities/categoria/categoria.model';
import { CategoriaService } from 'app/entities/categoria/service/categoria.service'; import { CategoriaService } from 'app/entities/categoria/service/categoria.service';
import { IUsuarioExtra } from 'app/entities/usuario-extra/usuario-extra.model'; import { IUsuarioExtra, UsuarioExtra } from 'app/entities/usuario-extra/usuario-extra.model';
import { UsuarioExtraService } from 'app/entities/usuario-extra/service/usuario-extra.service'; import { UsuarioExtraService } from 'app/entities/usuario-extra/service/usuario-extra.service';
import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
@ -37,6 +37,8 @@ import { Router } from '@angular/router';
import { UsuarioEncuestaService } from 'app/entities/usuario-encuesta/service/usuario-encuesta.service'; import { UsuarioEncuestaService } from 'app/entities/usuario-encuesta/service/usuario-encuesta.service';
import { IUsuarioEncuesta } from '../../usuario-encuesta/usuario-encuesta.model'; import { IUsuarioEncuesta } from '../../usuario-encuesta/usuario-encuesta.model';
import { RolColaborador } from '../../enumerations/rol-colaborador.model'; import { RolColaborador } from '../../enumerations/rol-colaborador.model';
import { Account } from '../../../core/auth/account.model';
import { AccountService } from 'app/core/auth/account.service';
@Component({ @Component({
selector: 'jhi-encuesta-update', selector: 'jhi-encuesta-update',
@ -58,6 +60,8 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
usuariosColaboradores: IUsuarioEncuesta[] = []; usuariosColaboradores: IUsuarioEncuesta[] = [];
colaborador: IUsuarioEncuesta | null = null; colaborador: IUsuarioEncuesta | null = null;
account: Account | null = null;
usuarioExtra: UsuarioExtra | null = null;
// editForm = this.fb.group({ // editForm = this.fb.group({
// id: [], // id: [],
// nombre: [null, [Validators.required, Validators.minLength(1), Validators.maxLength(50)]], // nombre: [null, [Validators.required, Validators.minLength(1), Validators.maxLength(50)]],
@ -118,7 +122,8 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
protected parametroAplicacionService: ParametroAplicacionService, protected parametroAplicacionService: ParametroAplicacionService,
protected ePreguntaAbiertaService: EPreguntaAbiertaService, protected ePreguntaAbiertaService: EPreguntaAbiertaService,
protected usuarioEncuestaService: UsuarioEncuestaService, protected usuarioEncuestaService: UsuarioEncuestaService,
protected router: Router protected router: Router,
protected accountService: AccountService
) {} ) {}
loadAll(): void { loadAll(): void {
@ -181,6 +186,15 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
// this.loadRelationshipsOptions(); // this.loadRelationshipsOptions();
}); });
// Get jhi_user and usuario_extra information
this.accountService.getAuthenticationState().subscribe(account => {
if (account !== null) {
this.usuarioExtraService.find(account.id).subscribe(usuarioExtra => {
this.usuarioExtra = usuarioExtra.body;
});
}
});
} }
ngAfterViewChecked(): void { ngAfterViewChecked(): void {
@ -576,15 +590,41 @@ export class EncuestaUpdateComponent implements OnInit, AfterViewChecked {
this.rolSeleccionado = c.rol; this.rolSeleccionado = c.rol;
} }
openColaborator(event: any) {}
saveCollab(): void { saveCollab(): void {
this.isSavingCollab = true; this.isSavingCollab = true;
const collab = this.colaborador; const collab = this.colaborador;
if (collab !== null) { if (collab !== null) {
collab.rol = this.editFormUpdateCollab.get('rol')!.value; collab.rol = this.editFormUpdateCollab.get('rol')!.value;
collab.fechaAgregado = dayjs(this.colaborador?.fechaAgregado, DATE_TIME_FORMAT); collab.fechaAgregado = dayjs(this.colaborador?.fechaAgregado, DATE_TIME_FORMAT);
this.usuarioEncuestaService.update(collab); /*this.usuarioEncuestaService.update(collab).subscribe(
res => {},
(error) => {console.log(error)}
);*/
this.subscribeToSaveResponseUpdateCollab(this.usuarioEncuestaService.update(collab));
} }
} }
protected subscribeToSaveResponseUpdateCollab(result: Observable<HttpResponse<IUsuarioEncuesta>>): void {
result.pipe(finalize(() => this.onSaveFinalizeUpdateCollab())).subscribe(
() => this.onSaveSuccessUpdateCollab(),
() => this.onSaveErrorUpdateCollab()
);
}
protected onSaveSuccessUpdateCollab(): void {
this.loadAll();
$('#btnCancelUbdateColaboradores').click();
}
protected onSaveErrorUpdateCollab(): void {
// Api for inheritance.
}
protected onSaveFinalizeUpdateCollab(): void {
this.isSavingCollab = false;
}
isAutor() {
return this.usuarioExtra?.id == this.encuesta?.usuarioExtra?.id;
}
} }