member_webapp/@overflow/member/service/member.service.ts
crusader cd1e53f67a ing
2018-06-04 17:25:29 +09:00

63 lines
1.7 KiB
TypeScript

import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';
import 'rxjs/add/operator/map';
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, password: string): Observable<any> {
return this.restService.request<any>('post', '/account/signin', {
body: {
signinID: email,
signinPW: password,
},
});
}
public signup(member: Member, password: string): Observable<Member> {
return this.restService.request<Member>('post', '/account/signup', {
body: {
member: member,
password: password,
},
});
}
public modify(member: Member): Observable<Member> {
return this.rpcService.call<Member>('MemberService.modify', member, '');
}
public sendEmailResetPassword(email: string): Observable<Member> {
// return this.rpcService.call<Member>('MemberService.sendEmailForPassword', email);
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.rpcService.call<Member>('MemberService.sendEmailForPassword', email);
return this.restService.request<Member>('post', '/account/reset_password', {
body: {
token: token,
pw: pw,
confirmPw: confirmPw,
},
});
}
}