You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
95 lines
2.4 KiB
TypeScript
95 lines
2.4 KiB
TypeScript
import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';
|
|
import { TranslatorService } from 'src/app/hmg-common/services/translator/translator.service';
|
|
import { CommonService } from 'src/app/hmg-common/services/common/common.service';
|
|
import { SharedDataService } from 'src/app/hmg-common/services/shared-data-service/shared-data.service';
|
|
import { PaymentService } from './service/payment.service';
|
|
import { PayRequestInfo } from './service/models/pay-request.info';
|
|
import { PaymentInfoModel } from './service/models/payment-info.model';
|
|
import { PaymentValidationResponse } from './service/models/payment-validation.response';
|
|
|
|
@Component({
|
|
selector: 'payment',
|
|
templateUrl: './payment.component.html',
|
|
styleUrls: ['./payment.component.scss'],
|
|
})
|
|
export class PaymentComponent implements OnInit {
|
|
|
|
|
|
public methods = [
|
|
{
|
|
icon: 'visa',
|
|
title: 'payment,visa',
|
|
method: PaymentService.VISA
|
|
},
|
|
{
|
|
icon: 'sadad',
|
|
title: 'payment,sadad',
|
|
method: PaymentService.SADAD
|
|
},
|
|
{
|
|
icon: 'mada',
|
|
title: 'payment,mada',
|
|
method: PaymentService.MADA
|
|
},
|
|
{
|
|
icon: 'mastercard',
|
|
title: 'payment,mastercard',
|
|
method: PaymentService.MASTERCARD
|
|
},
|
|
{
|
|
icon: 'instalment',
|
|
title: 'payment,instalment',
|
|
method: PaymentService.INSTALMENT
|
|
}
|
|
];
|
|
|
|
@Output() success = new EventEmitter();
|
|
@Output() faild = new EventEmitter();
|
|
@Output() cancel = new EventEmitter();
|
|
public orderDescription: string;
|
|
public amount: number;
|
|
private requestInfo: PayRequestInfo;
|
|
constructor(
|
|
public ts: TranslatorService,
|
|
public cs: CommonService,
|
|
public paymentService: PaymentService,
|
|
public sharedData: SharedDataService
|
|
) { }
|
|
|
|
ngOnInit() {
|
|
|
|
}
|
|
|
|
@Input() set payRequestInfo(payRequestInfo: PayRequestInfo) {
|
|
this.requestInfo = payRequestInfo;
|
|
this.amount = payRequestInfo.amount;
|
|
this.orderDescription = payRequestInfo.orderDescription;
|
|
}
|
|
|
|
get payRequestInfo(): PayRequestInfo {
|
|
return this.requestInfo;
|
|
}
|
|
|
|
|
|
public openPayment(method: string) {
|
|
/*this.paymentService.openPayment(this.amount, method, this.orderDescription).subscribe((success) => {
|
|
if (success) {
|
|
this.success.emit(this.requestInfo.data);
|
|
} else {
|
|
this.faild.emit();
|
|
}
|
|
});
|
|
*/
|
|
}
|
|
|
|
public onComplete(info: PaymentInfoModel) {
|
|
|
|
}
|
|
|
|
public onCancel() {
|
|
this.cancel.emit();
|
|
}
|
|
|
|
|
|
}
|