53 lines
1.2 KiB
JavaScript
53 lines
1.2 KiB
JavaScript
|
import ngModule from '../module';
|
||
|
import Descriptor from 'salix/components/descriptor';
|
||
|
|
||
|
class Controller extends Descriptor {
|
||
|
get invoiceOut() {
|
||
|
return this.entity;
|
||
|
}
|
||
|
|
||
|
set invoiceOut(value) {
|
||
|
this.entity = value;
|
||
|
}
|
||
|
|
||
|
get hasInvoicing() {
|
||
|
return this.aclService.hasAny(['invoicing']);
|
||
|
}
|
||
|
|
||
|
get filter() {
|
||
|
if (this.invoiceOut)
|
||
|
return JSON.stringify({refFk: this.invoiceOut.ref});
|
||
|
|
||
|
return null;
|
||
|
}
|
||
|
|
||
|
loadData() {
|
||
|
const filter = {
|
||
|
include: [
|
||
|
{
|
||
|
relation: 'company',
|
||
|
scope: {
|
||
|
fields: ['id', 'code']
|
||
|
}
|
||
|
}, {
|
||
|
relation: 'client',
|
||
|
scope: {
|
||
|
fields: ['id', 'name', 'email']
|
||
|
}
|
||
|
}
|
||
|
]
|
||
|
};
|
||
|
|
||
|
return this.getData(`InvoiceOuts/${this.id}`, {filter})
|
||
|
.then(res => this.entity = res.data);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
ngModule.vnComponent('vnInvoiceOutDescriptor', {
|
||
|
template: require('./index.html'),
|
||
|
controller: Controller,
|
||
|
bindings: {
|
||
|
invoiceOut: '<',
|
||
|
}
|
||
|
});
|