<vn-crud-model auto-load="true" url="InvoiceCorrectionTypes" data="invoiceCorrectionTypes"> </vn-crud-model> <vn-icon-button icon="more_vert" vn-popover="menu"> </vn-icon-button> <vn-menu vn-id="menu"> <vn-list> <vn-item vn-acl="administrative" vn-acl-action="remove" ng-click="transferInvoice.show()" translate> Transfer invoice to... </vn-item> <vn-item class="dropdown" vn-click-stop="showInvoiceMenu.show($event, 'left')" name="showInvoicePdf" translate> Show invoice... <vn-menu vn-id="showInvoiceMenu"> <vn-list> <a class="vn-item" href="api/InvoiceOuts/{{$ctrl.id}}/download?access_token={{$ctrl.vnToken.tokenMultimedia}}" target="_blank" name="showInvoicePdf" translate> as PDF </a> <vn-item ng-click="$ctrl.showCsvInvoice()" translate> as CSV </vn-item> </vn-list> </vn-menu> </vn-item> <vn-item class="dropdown" vn-click-stop="sendInvoiceMenu.show($event, 'left')" name="sendInvoice" translate> Send invoice... <vn-menu vn-id="sendInvoiceMenu"> <vn-list> <vn-item ng-click="sendPdfConfirmation.show({email: $ctrl.invoiceOut.client.email})" translate> Send PDF </vn-item> <vn-item ng-click="sendCsvConfirmation.show({email: $ctrl.invoiceOut.client.email})" translate> Send CSV </vn-item> </vn-list> </vn-menu> </vn-item> <vn-item ng-click="deleteConfirmation.show()" vn-acl="invoicing" vn-acl-action="remove" name="deleteInvoice" translate> Delete Invoice </vn-item> <vn-item ng-click="bookConfirmation.show()" vn-acl="invoicing" vn-acl-action="remove" name="bookInvoice" translate> Book invoice </vn-item> <vn-item ng-click="createInvoicePdfConfirmation.show()" ng-show="$ctrl.hasInvoicing || !$ctrl.invoiceOut.hasPdf" name="regenerateInvoice" translate> {{!$ctrl.invoiceOut.hasPdf ? 'Generate PDF invoice': 'Regenerate PDF invoice'}} </vn-item> <vn-item ng-click="$ctrl.showExportationLetter()" ng-show="$ctrl.invoiceOut.serial == 'E'" translate> Show CITES letter </vn-item> </vn-list> </vn-menu> <vn-confirm vn-id="deleteConfirmation" on-accept="$ctrl.deleteInvoiceOut()" question="Are you sure you want to delete this invoice?"> </vn-confirm> <vn-confirm vn-id="bookConfirmation" on-accept="$ctrl.bookInvoiceOut()" question="Are you sure you want to book this invoice?"> </vn-confirm> <vn-client-descriptor-popover vn-id="clientDescriptor"> </vn-client-descriptor-popover> <!-- Create invoice PDF confirmation dialog --> <vn-confirm vn-id="createInvoicePdfConfirmation" on-accept="$ctrl.createPdfInvoice()" question="Are you sure you want to generate/regenerate the PDF invoice?" message="Generate PDF invoice document"> </vn-confirm> <!-- Send PDF invoice confirmation popup --> <vn-dialog vn-id="sendPdfConfirmation" on-accept="$ctrl.sendPdfInvoice($data)" message="Send PDF invoice"> <tpl-body> <span translate>Are you sure you want to send it?</span> <vn-textfield vn-one label="Email" ng-model="sendPdfConfirmation.data.email"> </vn-textfield> </tpl-body> <tpl-buttons> <input type="button" response="cancel" translate-attr="{value: 'Cancel'}"/> <button response="accept" translate>Confirm</button> </tpl-buttons> </vn-dialog> <!-- Send CSV invoice confirmation popup --> <vn-dialog vn-id="sendCsvConfirmation" on-accept="$ctrl.sendCsvInvoice($data)" message="Send CSV invoice"> <tpl-body> <span translate>Are you sure you want to send it?</span> <vn-textfield vn-one label="Email" ng-model="sendCsvConfirmation.data.email"> </vn-textfield> </tpl-body> <tpl-buttons> <input type="button" response="cancel" translate-attr="{value: 'Cancel'}"/> <button response="accept" translate>Confirm</button> </tpl-buttons> </vn-dialog> <vn-dialog vn-id="transferInvoice" title="transferInvoice" on-accept="$ctrl.transferInvoice()"> <tpl-title translate> transferInvoice </tpl-title> <tpl-body> <section class="transferInvoice"> <vn-horizontal> <vn-autocomplete vn-one vn-id="client" required="true" url="Clients" label="Client" show-field="name" value-field="id" search-function="{or: [{id: $search}, {name: {like: '%'+ $search +'%'}}]}" ng-model="$ctrl.clientId" order="id"> <tpl-item> #{{id}} - {{::name}} </tpl-item> </vn-autocomplete> <vn-autocomplete vn-one vn-id="cplusRectificationType" required="true" data="$ctrl.cplusRectificationTypes" show-field="description" value-field="id" ng-model="$ctrl.cplusRectificationType" search-function="{or: [{id: $search}, {description: {like: '%'+ $search +'%'}}]}" label="Rectificative type"> <tpl-item> {{ ::description}} </tpl-item> </vn-autocomplete> </vn-horizontal> <vn-horizontal> <vn-autocomplete vn-one vn-id="siiTypeInvoiceOut" data="$ctrl.siiTypeInvoiceOuts" show-field="description" value-field="id" fields="['id','code','description']" required="true" ng-model="$ctrl.siiTypeInvoiceOut" label="Class"> <tpl-item> {{::code}} - {{::description}} </tpl-item> </vn-autocomplete> <vn-autocomplete vn-one vn-id="invoiceCorrectionType" data="invoiceCorrectionTypes" ng-model="$ctrl.invoiceCorrectionType" show-field="description" value-field="id" required="true" label="Type"> </vn-autocomplete> </vn-horizontal> <vn-horizontal> <vn-check ng-model="$ctrl.isChecked" label="destinationClient" info="transferInvoiceInfo" /> </vn-check> </vn-horizontal> </section> </tpl-body> <tpl-buttons> <button response="accept" translate>Transfer client</button> </tpl-buttons> </vn-dialog>