member_webapp/@overflow/member/service/member.service.ts
crusader a2bd037b19 ing
2018-07-03 18:36:40 +09:00

59 lines
1.5 KiB
TypeScript

import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
import { RESTService } from '@loafer/ng-rest';
import { RPCService } from '@loafer/ng-rpc';
import { DomainMember } from '@overflow/commons-typescript/model/domain';
import { Member } from '@overflow/commons-typescript/model/member';
@Injectable()
export class MemberService {
public constructor(
private restService: RESTService,
private rpcService: RPCService,
) {
}
public signin(email: string, pw: string): Observable<any> {
return this.restService.request<any>('post', '/account/signin', {
body: {
signinID: email,
signinPW: pw,
},
});
}
public signup(member: Member, pw: string): Observable<Member> {
return this.restService.request<Member>('post', '/account/signup', {
body: {
member: member,
pw: pw,
},
});
}
public modify(member: Member): Observable<Member> {
return this.rpcService.call<Member>('MemberService.modify', member, '');
}
public sendEmailResetPassword(email: string): Observable<Member> {
return this.restService.request<Member>('post', '/account/send_email_pw', {
body: {
signinID: email,
},
});
}
public resetPassword(token: string, pw: string, confirmPw: string): Observable<Member> {
return this.restService.request<Member>('post', '/account/reset_password', {
body: {
token: token,
pw: pw,
confirmPw: confirmPw,
},
});
}
}