Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Usuario insert(Usuario usuario) {
- if (usuarioService.findByEmail(usuario.getEmail()) == null) {
- usuario = getRepository().save(usuario);
- return usuario;
- }else {
- throw new DataIntegrityException("Email já está em uso");
- }
- }
- @Injectable
- export class UsuarioService{
- url: string = `${API_CONFIG.baseUrl}/usuarios`;
- usuariosChanged = new EventEmitter<Observable<Usuario[]>>();
- constructor(private http: HttpClient){
- }
- findAll(): Observable<Usuario[]>{
- return this.http.get<Usuario[]>(${this.url});
- }
- findById(id: number): Observable<Usuario>{
- return this.http.get<Usuario>(`${this.url}/id/${id}`);
- }
- post(usuario: Usuario): Observable<Usuario>{
- return this.http.post<Usuario>(this.url, usuario)
- .pipe(
- tap(data => this.usuariosChanged.emit(this.findAll())),
- catchError(this.handleError))
- }
- private handleError(error: any) {
- let erro = error.message || 'Server error';
- console.error('Ocorreu um erro', error);
- return Observable.throw(erro);
- }
- }
- onSave(){
- this.usuarioService.post(this.form.value)
- .subscribe(data => {
- this.notificationService.notify("Usuário salvo com sucesso!");
- },
- error => {
- alert("Ocorreu um erro ao salvar!");
- });
- }
- @Injectable()
- export class ErrorInterceptor implements HttpInterceptor{
- constructor(){
- }
- intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>>{
- return next.handle(req).pipe(catchError(err => {
- const error = err.error.message || err.statusText;
- return throwError(error);
- }))
- }
- }
- export const ErrorInterceptorProvider = {
- provide : HTTP_INTERCEPTORS,
- useClass: ErrorInterceptor,
- multi: true,
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement