62 lines
1.5 KiB
JavaScript
62 lines
1.5 KiB
JavaScript
import ngModule from '../module';
|
|
import Descriptor from 'salix/components/descriptor';
|
|
|
|
class Controller extends Descriptor {
|
|
get entity() {
|
|
return super.entity;
|
|
}
|
|
|
|
set entity(value) {
|
|
super.entity = value;
|
|
|
|
if (value && this.$params.sendSMS)
|
|
this.showSMSDialog();
|
|
}
|
|
|
|
get client() {
|
|
return this.entity;
|
|
}
|
|
|
|
set client(value) {
|
|
this.entity = value;
|
|
}
|
|
|
|
get filter() {
|
|
return JSON.stringify({clientFk: this.id});
|
|
}
|
|
|
|
loadData() {
|
|
return this.getData(`Clients/${this.id}/getCard`)
|
|
.then(res => this.entity = res.data);
|
|
}
|
|
|
|
showSMSDialog() {
|
|
const client = this.client || {};
|
|
this.newSMS = {
|
|
destinationFk: this.id,
|
|
destination: this.$params.phone || client.mobile || client.phone,
|
|
message: this.$params.message || ''
|
|
};
|
|
this.$.sms.open();
|
|
}
|
|
|
|
onSmsSend(sms) {
|
|
return this.$http.post(`Clients/${this.id}/sendSms`, sms)
|
|
.then(() => this.vnApp.showSuccess(this.$t('SMS sent')));
|
|
}
|
|
|
|
clientUnpaid() {
|
|
return this.$t(`Unpaid`) + '<br/>'
|
|
+ this.$t(`Unpaid Dated`, {dated: this.client.unpaid.dated}) + '<br/>'
|
|
+ this.$t(`Unpaid Amount`, {amount: this.client.unpaid.amount});
|
|
}
|
|
}
|
|
|
|
ngModule.vnComponent('vnClientDescriptor', {
|
|
template: require('./index.html'),
|
|
controller: Controller,
|
|
bindings: {
|
|
client: '<'
|
|
}
|
|
});
|