{"version":3,"sources":["webpack:///./src/invoices/components/invoices-dialog/invoices-dialog.vue?d753","webpack:///./src/invoices/components/invoices-dialog/invoices-dialog.ts","webpack:///./src/invoices/components/invoices-dialog/invoices-dialog.ts?6d88","webpack:///./src/invoices/components/invoices-dialog/invoices-dialog.vue","webpack:///./src/dashboard/views/dashboard.vue?735d","webpack:///./src/dashboard/views/dashboard.ts","webpack:///./src/dashboard/views/dashboard.ts?9fdf","webpack:///./src/dashboard/views/dashboard.vue","webpack:///./src/invoices/models/invoice-state.ts","webpack:///./src/invoices/components/invoice-badge/invoice-badge.vue?3c91","webpack:///./src/invoices/components/invoice-badge/invoice-badge.ts","webpack:///./src/invoices/components/invoice-badge/invoice-badge.ts?eaf7","webpack:///./src/invoices/components/invoice-badge/invoice-badge.vue","webpack:///./src/itineraries/mixins/itineraries-mixin.ts","webpack:///./src/itineraries/components/itinerary-dialog/itinerary-dialog.vue?d657","webpack:///./src/invoices/views/invoice-preview.vue?8e08","webpack:///./src/invoices/services/invoices-service.ts","webpack:///./src/invoices/components/invoices-table/invoices-table.vue?9cb7","webpack:///./src/invoices/components/invoices-table/invoices-table.ts","webpack:///./src/invoices/components/invoices-table/invoices-table.ts?9b3d","webpack:///./src/invoices/components/invoices-table/invoices-table.vue","webpack:///./src/itineraries/services/tax-rates-service.ts","webpack:///./src/invoices/views/invoice-preview.vue?cee0","webpack:///./src/invoices/views/invoice-preview.ts","webpack:///./src/invoices/views/invoice-preview.ts?d5a2","webpack:///./src/invoices/views/invoice-preview.vue?b56f","webpack:///./src/customers/views/categories.vue?abaa","webpack:///./src/customers/views/categories.ts","webpack:///./src/customers/views/categories.ts?bf3c","webpack:///./src/customers/views/categories.vue","webpack:///./src/itineraries/services/itineraries-service.ts","webpack:///./src/invoices/models/payment-method.ts","webpack:///./src/locations/services/countries-service.ts","webpack:///./src/invoices/views/invoices.vue?8651","webpack:///./src/invoices/models/invoice-filter.ts","webpack:///./src/invoices/views/invoices.ts","webpack:///./src/invoices/views/invoices.ts?5a0f","webpack:///./src/invoices/views/invoices.vue","webpack:///./src/itineraries/components/itinerary-dialog/itinerary-dialog.vue?c905","webpack:///./src/itineraries/models/itinerary.ts","webpack:///./src/itineraries/models/itinerary-leg.ts","webpack:///./src/itineraries/components/itinerary-dialog/itinerary-dialog.ts","webpack:///./src/itineraries/components/itinerary-dialog/itinerary-dialog.ts?ba30","webpack:///./src/itineraries/components/itinerary-dialog/itinerary-dialog.vue","webpack:///./src/itineraries/components/itineraries-table/itineraries-table.vue?4a9a","webpack:///./src/itineraries/components/itineraries-table/itineraries-table.ts","webpack:///./src/itineraries/components/itineraries-table/itineraries-table.ts?57cd","webpack:///./src/itineraries/components/itineraries-table/itineraries-table.vue","webpack:///./src/customers/views/customers.vue?4578","webpack:///./src/invoices/components/invoice-badge/invoice-badge.vue?85d0","webpack:///./src/invoices/components/invoice-state-select.vue?249a","webpack:///./src/invoices/components/invoice-state-select.vue","webpack:///./src/invoices/components/invoice-state-select.vue?ef38","webpack:///./src/invoices/components/invoice-state-select.vue?79d7","webpack:///./src/itineraries/components/itineraries-table/itineraries-table.vue?b130","webpack:///./src/itineraries/store/itineraries-module.ts","webpack:///./src/locations/components/country-select/country-select.vue?d0e6","webpack:///./src/locations/components/country-select/country-select.ts","webpack:///./src/locations/components/country-select/country-select.ts?f21b","webpack:///./src/locations/components/country-select/country-select.vue","webpack:///./src/locations/components/address-line/address-line.vue?7193","webpack:///./src/locations/components/address-line/address-line.ts","webpack:///./src/locations/components/address-line/address-line.ts?3500","webpack:///./src/locations/components/address-line/address-line.vue","webpack:///./src/locations/models/address.ts","webpack:///./src/customers/views/customers.vue?6ee4","webpack:///./src/customers/views/customers.ts","webpack:///./src/customers/views/customers.ts?aef3","webpack:///./src/customers/views/customers.vue","webpack:///./src/itineraries/components/itinerary-selection/itinerary-selection.vue?219b","webpack:///./src/itineraries/components/itinerary-selection/itinerary-selection.ts","webpack:///./src/itineraries/components/itinerary-selection/itinerary-selection.ts?6136","webpack:///./src/itineraries/components/itinerary-selection/itinerary-selection.vue","webpack:///./src/invoices/models/invoice-stakes.ts","webpack:///./src/invoices/models/invoice.ts","webpack:///./src/itineraries/views/itineraries.vue?693f","webpack:///./src/locations/models/country.ts","webpack:///./src/itineraries/models/tax-rate.ts","webpack:///./src/itineraries/views/itineraries.ts","webpack:///./src/itineraries/views/itineraries.ts?f4cd","webpack:///./src/itineraries/views/itineraries.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","ref","invoice","isReadonly","on","selectRides","$vuetify","breakpoint","xsOnly","model","value","callback","$$v","dialog","expression","staticClass","_v","_s","dialogTitle","scopedSlots","_u","key","fn","_g","_f","date","isArchived","datePickerMenu","$event","directives","name","rawName","errors","collect","length","openRideMultiselectDialog","jobNr","invoiceStateItems","$set","paymentMethodItems","_e","customer","openInvoicePreview","invoiceState","createCreditNote","cancel","any","save","staticRenderFns","Pending","text","Canceled","Paid","FirstDunning","SecondDunning","ThirdDunning","CreditNote","Invoice","Cash","CreditCard","editMode","selectedRides","isNew","invoiceNo","console","log","tenantId","setDate","$validator","reset","ride","rides","getJobDescription","loadRidesAsync","id","customerId","findOneAsync","invoiceId","findAllForInvoiceAsync","ridesMultiselectDialog","open","jobs","map","r","join","selected","haveSameCustomer","every","$emit","confirm","validateAll","filter","isTemplate","ridesToCreate","toRegularRide","isReminder","reminderCharges","mom","format","HTML5_FMT","DATETIME_LOCAL_SECONDS","component","VBtn","VCard","VCardActions","VCardText","VCardTitle","VContainer","VDatePicker","VDialog","VFlex","VForm","VLayout","VMenu","VSelect","VSpacer","VTextField","contractExpired","$auth","isInRole","membershipNumber","contractExpiringWithoutAutoRenew","daysUntilContractExpiration","enableContractAutoRenewal","contractExpiringWithAutoRenew","evaluationStart","daysUntilEvaluationExpiration","class","md6","isTenant","md12","isDriver","driversRidesOnly","itinerariesLoading","itineraries","loading","shift","periodShift","gotoToday","loadingPrint","print","fetchShift","update","remove","periodOpen","fetchOpen","findShiftAsync","findOpenAsync","start","end","generateRidesPdfAsync","pdfUrl","window","initPeriodShift","fetchAll","createAsync","updateRemarksAsync","updateAsync","deleteAsync","updateHasAutoRenewalContract","startOf","toISOString","add","getCurrent","tenant","evaluationEnd","diff","subtract","timeIncluded","VAlert","VCheckbox","InvoiceState","invoiceColor","invoiceText","paymentMethod","DirectBilling","VChip","ItinerariesMixin","itinerariesModule","InvoicesService","url","resource","get","pdf","obj","paging","post","res","pagedList","headers","invoices","pPagination","totalItems","itemsPerPageText","onClick","item","amount","cost","page","itemsPerPage","sortable","align","type","Boolean","default","VDataTable","VIcon","TaxRatesService","list","printConfirmed","back","staticStyle","logoUrl","company","addressLine","countryId","postalCode","city","phone","email","vat","firstName","lastName","number","_l","origin","destination","remarks","distance","netCost","stakes","netSum","taxSum","totalSum","share","idx","taxRate","countryName","tax","totalCost","bank","bic","iban","generating","pdfWindow","$router","go","printConfirmDialog","generatePdfAsync","location","href","fetch","authModule","store","Date","getTime","VSheet","VToolbar","create","categoryHeaders","categories","editCategory","deleteCategory","proxy","categoryDialog","customerCategoryFormTitle","editedCategory","closeEditCategory","saveEditCategory","snackbarOpened","snackbarText","categoriesLoading","editedCategoryIndex","fetchAllCategories","findAllCategoriesAsync","response","category","indexOf","Object","assign","removeCategoryAsync","updateCategoryAsync","saveCategoryAsync","VCol","VRow","VSnackbar","ItinerariesService","params","PaymentMethod","CountriesService","code","exportList","arg","pagination","edit","preview","status","excludestatus","Settled","numberFormatter","Intl","NumberFormat","minimumFractionDigits","maximumFractionDigits","useGrouping","val","filterAllAsync","items","csvHeader","csvContent","forEach","kind","getPaymentMethod","getInvoiceState","getCustomer","invoiceAmount","replace","encodeURIComponent","link","document","createElement","setAttribute","click","state","invStat","method","pm","push","newVal","oldVal","sortBy","sortDesc","deep","itinerary","leg","refInFor","rates","onChange","delete_","empty","legs","isDefault","taxRateId","shares","range","v","l","addDefaultRate","filledLegs","emptyLegs","rateAT","find","self","extend","getMessage","validate","sum","reduce","acc","parseInt","toString","other","Array","isArray","otherName","otherVals","$refs","otherVal","VAvatar","_b","change","$attrs","ItinerariesModule","_loading","_itineraries","_rates","context","commit","isFilled","isOutlined","doHideDetails","vValidate","search","country","select","old","queryText","itemText","toLowerCase","c","outlined","filled","hideDetails","findAllAsync","VListItem","VListItemContent","VList","VListItemTitle","address","required","Address","clearAndFetchAll","sortItems","sorting","customers","removeConfirmed","debounced","confirmDialog","VPagination","VProgressCircular","disabled","itineraryId","i","setDefaultItinerary","defaultItinerary","isHidden","rate","description","fetchItineraries","snacks","error","tmpRates","splice"],"mappings":"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","file":"js/app~21833f8f.8125c56e.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{attrs:{\"row\":\"\",\"justify-center\":\"\"}},[_c('rides-multiselect-dialog',{ref:\"ridesMultiselectDialog\",attrs:{\"invoice\":_vm.invoice,\"readonly\":_vm.isReadonly},on:{\"select\":_vm.selectRides}}),_c('v-dialog',{attrs:{\"max-width\":\"800px\",\"fullscreen\":_vm.$vuetify.breakpoint.xsOnly},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"primary\"},[_c('span',{staticClass:\"white--text\"},[_vm._v(_vm._s(_vm.dialogTitle))])]),_c('v-card-text',{staticClass:\"primary\"},[_c('v-form',[_c('v-container',{attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\"}},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"transition\":\"scale-transition\",\"offset-y\":\"\",\"min-width\":\"290px\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-text-field',_vm._g({attrs:{\"value\":_vm._f(\"date\")(_vm.date),\"label\":\"Datum\",\"readonly\":\"\",\"disabled\":_vm.invoice.isArchived,\"filled\":\"\",\"hide-details\":\"\"}},on))]}}]),model:{value:(_vm.datePickerMenu),callback:function ($$v) {_vm.datePickerMenu=$$v},expression:\"datePickerMenu\"}},[_c('v-date-picker',{attrs:{\"disabled\":_vm.invoice.isArchived,\"first-day-of-week\":\"1\"},on:{\"input\":function($event){_vm.datePickerMenu = false}},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}})],1)],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\"}},[_c('v-text-field',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"name\":\"ridesSelected\",\"label\":\"Aufträge\",\"readonly\":\"\",\"filled\":\"\",\"error-messages\":_vm.errors.collect('ridesSelected'),\"hide-details\":_vm.errors.collect('ridesSelected').length === 0},on:{\"click\":function($event){return _vm.openRideMultiselectDialog()}},model:{value:(_vm.jobNr),callback:function ($$v) {_vm.jobNr=$$v},expression:\"jobNr\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.invoiceStateItems,\"label\":\"Status\",\"item-value\":\"value\",\"item-text\":\"text\",\"filled\":\"\",\"hide-details\":\"\"},model:{value:(_vm.invoice.invoiceState),callback:function ($$v) {_vm.$set(_vm.invoice, \"invoiceState\", $$v)},expression:\"invoice.invoiceState\"}})],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\"}},[_c('v-select',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"name\":\"paymentMethod\",\"items\":_vm.paymentMethodItems,\"label\":\"Zahlungsart\",\"item-value\":\"value\",\"item-text\":\"text\",\"filled\":\"\",\"error-messages\":_vm.errors.collect('paymentMethod'),\"hide-details\":_vm.errors.collect('paymentMethod').length === 0},model:{value:(_vm.invoice.paymentMethod),callback:function ($$v) {_vm.$set(_vm.invoice, \"paymentMethod\", $$v)},expression:\"invoice.paymentMethod\"}})],1),(_vm.isReminder)?_c('v-flex',{attrs:{\"xs12\":\"\",\"md6\":\"\"}},[_c('x-money-input',{staticClass:\"mt-0\",attrs:{\"name\":\"reminderCharges\",\"label\":\"Mahngebühren\",\"suffix\":\"€\",\"filled\":\"\",\"error-messages\":_vm.errors.collect('reminderCharges'),\"hide-details\":_vm.errors.collect('reminderCharges').length === 0},model:{value:(_vm.invoice.reminderCharges),callback:function ($$v) {_vm.$set(_vm.invoice, \"reminderCharges\", $$v)},expression:\"invoice.reminderCharges\"}})],1):_vm._e()],1)],1)],1)],1),_c('v-card-text',{staticClass:\"optional\"},[_c('v-form',[_c('v-container',{attrs:{\"grid-list-md\":\"\"}},[_c('h4',{staticClass:\"mt-4 mb-2\"},[_vm._v(\"Details\")]),_c('icon-block',{attrs:{\"icon-class\":\"icon icon-single-neutral\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"md12\":\"\"}},[_c('customer-select',{attrs:{\"disabled\":_vm.invoice.isArchived},model:{value:(_vm.customer),callback:function ($$v) {_vm.customer=$$v},expression:\"customer\"}})],1)],1)],1),_c('remarks',{attrs:{\"disabled\":_vm.invoice.isArchived},model:{value:(_vm.invoice.remarks),callback:function ($$v) {_vm.$set(_vm.invoice, \"remarks\", $$v)},expression:\"invoice.remarks\"}})],1)],1)],1),_c('v-card-actions',{staticClass:\"px-5 pb-5\"},[(_vm.editMode)?_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"accent\"},on:{\"click\":function($event){return _vm.openInvoicePreview()}}},[_vm._v(\"Rechnung\")]):_vm._e(),(_vm.invoice.invoiceState != 2 && _vm.invoice.invoiceState != 6)?_c('v-btn',{attrs:{\"depressed\":\"\"},on:{\"click\":function($event){return _vm.createCreditNote()}}},[_vm._v(\"Gutschrift\")]):_vm._e(),_c('v-spacer'),_c('v-btn',{staticClass:\"primary--text\",attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancel()}}},[_vm._v(\"Abbrechen\")]),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"primary\",\"disabled\":_vm.errors.any()},on:{\"click\":function($event){return _vm.save(_vm.invoice)}}},[_vm._v(\"Speichern\")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Arrays from \"@/app/utils/arrays\";\r\nimport Dates from \"@/app/utils/dates\";\r\nimport Customer from \"@/customers/entities/customer\";\r\nimport customersService from \"@/customers/services/customers-service\";\r\nimport Invoice from \"@/invoices/models/invoice\";\r\nimport { InvoiceState } from \"@/invoices/models/invoice-state\";\r\nimport { PaymentMethod } from \"@/invoices/models/payment-method\";\r\nimport RidesMultiselectDialog from \"@/rides/components/rides-multiselect-dialog/rides-multiselect-dialog\";\r\nimport Ride from \"@/rides/models/ride\";\r\nimport ridesService from \"@/rides/services/rides-service\";\r\nimport cloneDeep from \"lodash/cloneDeep\";\r\nimport moment, { duration } from \"moment\";\r\nimport { Component, Prop, Ref, Vue } from \"vue-property-decorator\";\r\nimport Guid from \"@/app/utils/guid\";\r\nimport Rides from \"@/rides/utils/rides\";\r\nimport { RuleResult } from \"vee-validate\";\r\n\r\n@Component\r\nexport default class InvoicesDialog extends Vue {\r\n @Ref()\r\n private ridesMultiselectDialog!: RidesMultiselectDialog;\r\n\r\n private invoiceStateItems = [\r\n { value: InvoiceState.Pending, text: \"offen\" },\r\n { value: InvoiceState.Canceled, text: \"storniert\" },\r\n { value: InvoiceState.Paid, text: \"bezahlt\" },\r\n { value: InvoiceState.FirstDunning, text: \"erste Mahnung\" },\r\n { value: InvoiceState.SecondDunning, text: \"zweite Mahnung\" },\r\n { value: InvoiceState.ThirdDunning, text: \"dritte Mahnung\" },\r\n { value: InvoiceState.CreditNote, text: \"Gutschrift\" },\r\n ];\r\n\r\n private paymentMethodItems = [\r\n { value: PaymentMethod.Invoice, text: \"Rechnung\" },\r\n { value: PaymentMethod.Cash, text: \"Bar\" },\r\n { value: PaymentMethod.CreditCard, text: \"Kreditkarte\" },\r\n ];\r\n\r\n private dialog: boolean = false;\r\n private editMode: boolean = false;\r\n private invoice: Invoice = new Invoice();\r\n private customer: Customer | null = null;\r\n private selectedRides: Ride[] = [];\r\n\r\n private date = \"\";\r\n private datePickerMenu: boolean = false;\r\n\r\n private jobNr: string | null = null;\r\n\r\n private get dialogTitle(): string {\r\n return `${\r\n this.invoice.invoiceState == InvoiceState.CreditNote\r\n ? \"Gutschrift\"\r\n : \"Rechnung\"\r\n } ${this.invoice.isNew ? \"hinzufügen\" : \"bearbeiten\"} ${\r\n this.invoice.invoiceNo ? \"| \" + this.invoice.invoiceNo : \"\"\r\n }`;\r\n }\r\n\r\n get isReminder() {\r\n return (\r\n this.invoice.invoiceState == InvoiceState.FirstDunning ||\r\n this.invoice.invoiceState == InvoiceState.SecondDunning ||\r\n this.invoice.invoiceState == InvoiceState.ThirdDunning\r\n );\r\n }\r\n\r\n get isReadonly() {\r\n console.log(this.invoice.tenantId);\r\n return this.invoice.isArchived\r\n && this.invoice.tenantId != 'd7934a40-0b9d-4b94-e11a-08daee72541c'\r\n }\r\n\r\n // get jobNr() {\r\n // if (this.selectedRides !== null) {\r\n // if (this.selectedRides.length < 2) {\r\n // return this.selectedRides\r\n // .map((r) => r.jobNr)\r\n // .join(', ')\r\n // }\r\n // return `Sammelrechnung (${this.selectedRides.length})`\r\n // }\r\n // return 'Aufträge auswählen'\r\n // }\r\n\r\n public async create(invoice?: Invoice) {\r\n this.invoice = invoice || new Invoice();\r\n this.setDate();\r\n this.customer = null;\r\n this.selectedRides = [];\r\n this.jobNr = null;\r\n this.dialog = true;\r\n this.editMode = false;\r\n this.$validator.reset();\r\n }\r\n\r\n public async createFromRide(ride: Ride) {\r\n var rides = [ride];\r\n\r\n this.invoice = new Invoice();\r\n this.setDate();\r\n this.customer = ride.customer;\r\n this.selectedRides = rides;\r\n this.jobNr = null;\r\n this.dialog = true;\r\n this.editMode = false;\r\n this.$validator.reset();\r\n this.jobNr = this.getJobDescription();\r\n }\r\n\r\n public async edit(invoice: Invoice) {\r\n this.invoice = cloneDeep(invoice);\r\n this.setDate();\r\n this.customer = invoice.customer;\r\n this.selectedRides = await this.loadRidesAsync(invoice.id);\r\n this.jobNr = this.getJobDescription();\r\n this.dialog = true;\r\n this.editMode = true;\r\n this.$validator.reset();\r\n }\r\n\r\n private loadCustomerAsync(customerId: string | null) {\r\n return customersService.findOneAsync(customerId);\r\n }\r\n\r\n private loadRidesAsync(invoiceId: string) {\r\n return ridesService.findAllForInvoiceAsync(invoiceId);\r\n }\r\n\r\n private openRideMultiselectDialog() {\r\n this.ridesMultiselectDialog.open(this.selectedRides);\r\n }\r\n\r\n private getJobDescription() {\r\n if (this.selectedRides !== null) {\r\n if (this.selectedRides.length === 0) {\r\n return null;\r\n }\r\n if (this.selectedRides.length < 2) {\r\n const jobs = this.selectedRides.map((r) => r.jobNr).join(\", \");\r\n\r\n if (jobs) {\r\n return jobs;\r\n }\r\n return `Auftrag (${this.selectedRides.length})`;\r\n }\r\n return `Sammelrechnung (${this.selectedRides.length})`;\r\n }\r\n return null;\r\n }\r\n\r\n private selectRides(selected: Ride[]) {\r\n this.selectedRides = selected;\r\n this.jobNr = this.getJobDescription();\r\n if (this.customer === null) {\r\n if (this.haveSameCustomer(selected)) {\r\n this.customer = selected[0].customer;\r\n }\r\n }\r\n }\r\n\r\n private haveSameCustomer(selected: Ride[]) {\r\n if (selected.length > 0) {\r\n const customer = selected[0].customer;\r\n if (customer) {\r\n return selected.every(\r\n (r) => r.customer && r.customer.id === customer.id\r\n );\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n private openInvoicePreview() {\r\n this.$emit(\"preview\", this.invoice);\r\n this.dialog = false;\r\n }\r\n\r\n private createCreditNote() {\r\n if (\r\n confirm(\r\n \"Möchten Sie wirklich eine Gutschrift für diese Rechnung erstellen? Die Rechnung kann anschließend nicht mehr geändert werden und bekommt den Status storniert.\"\r\n )\r\n ) {\r\n this.$emit(\"createCreditNote\", this.invoice);\r\n }\r\n this.dialog = false;\r\n }\r\n\r\n private async save() {\r\n if (await this.$validator.validateAll()) {\r\n if (this.customer) {\r\n this.invoice.customerId = this.customer.id;\r\n }\r\n\r\n // Set the invoice date.\r\n this.invoice.date = this.date;\r\n\r\n // Rides that already exist in the DB will be assigned their IDs to rides.\r\n this.invoice.rides = this.selectedRides\r\n .filter((r) => r.isTemplate === false)\r\n .map((r) => r.id);\r\n\r\n // Non-existing Rides need to be created beforehand.\r\n // Turn a recurring ride into a regular ride.\r\n this.invoice.ridesToCreate = this.selectedRides\r\n .filter((r) => r.isTemplate)\r\n .map(Rides.toRegularRide);\r\n\r\n // set reminderCharges = 0 if not reminder\r\n if (!this.isReminder) {\r\n this.invoice.reminderCharges = 0;\r\n }\r\n\r\n // Copy their IDs\r\n this.$emit(this.editMode ? \"update\" : \"save\", this.invoice);\r\n this.dialog = false;\r\n }\r\n }\r\n\r\n private cancel() {\r\n this.$emit(\"cancel\");\r\n this.dialog = false;\r\n }\r\n\r\n private setDate() {\r\n const mom = moment(this.invoice.date);\r\n this.date = mom.format(moment.HTML5_FMT.DATETIME_LOCAL_SECONDS);\r\n }\r\n\r\n // private created() {\r\n // const self = this\r\n\r\n // this.$validator.extend('requiresRides', {\r\n\r\n // getMessage(): string {\r\n // return 'Bitte wählen Sie mindestens einen Auftrag aus.'\r\n // },\r\n\r\n // validate(): RuleResult {\r\n // return self.selectedRides !== null && self.selectedRides.length > 0\r\n // },\r\n // })\r\n // }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./invoices-dialog.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./invoices-dialog.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./invoices-dialog.vue?vue&type=template&id=7f586e63&\"\nimport script from \"./invoices-dialog.ts?vue&type=script&lang=js&\"\nexport * from \"./invoices-dialog.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDatePicker } from 'vuetify/lib/components/VDatePicker';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VContainer,VDatePicker,VDialog,VFlex,VForm,VLayout,VMenu,VSelect,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"dashboard\"},[(_vm.contractExpired && _vm.$auth.isInRole('TENANT'))?_c('v-alert',{attrs:{\"type\":\"error\"}},[_vm._v(\" Ihr Vertrag ist abgelaufen. \"),_c('a',{attrs:{\"href\":'mailto:mobil@wktirol.at?subject=Vertrag%20f%C3%BCr%20Mitglied%20Nr.%20' +\n _vm.membershipNumber}},[_vm._v(\"Bitte kontaktieren Sie uns ehestmöglich.\")])]):_vm._e(),(_vm.contractExpiringWithoutAutoRenew && _vm.$auth.isInRole('TENANT'))?_c('v-alert',{attrs:{\"type\":\"warning\"}},[_vm._v(\" Ihr Vertrag läuft in \"+_vm._s(_vm.daysUntilContractExpiration)+\" Tagen ab und wird nicht automatisch verlängert. Falls Sie das System weiterhin nutzen möchten, \"),_c('a',{attrs:{\"href\":'mailto:mobil@wktirol.at?subject=Vertrag%20f%C3%BCr%20Mitglied%20Nr.%20' +\n _vm.membershipNumber}},[_vm._v(\"kontaktieren Sie uns bitte\")]),_vm._v(\" vor Ablauf des Vertrags. Oder \"),_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":_vm.enableContractAutoRenewal}},[_vm._v(\"klicken Sie hier\")]),_vm._v(\", um Ihren Vertrag auf automatische Verlängerung umzustellen. \")]):_vm._e(),(_vm.contractExpiringWithAutoRenew && _vm.$auth.isInRole('TENANT'))?_c('v-alert',{attrs:{\"type\":\"info\"}},[_vm._v(\"Ihr Vertrag läuft in \"+_vm._s(_vm.daysUntilContractExpiration)+\" Tagen ab und wird dann automatisch verlängert.\")]):_vm._e(),(_vm.evaluationStart && _vm.$auth.isInRole('TENANT'))?_c('v-alert',{attrs:{\"type\":\"warning\"}},[_vm._v(\"Ihre Testphase läuft in \"+_vm._s(_vm.daysUntilEvaluationExpiration)+\" Tagen ab. Bitte teilen Sie uns rechtzeitig mit, ob Sie das System anschließend weiterhin nutzen möchten. Wenn Sie TAXI Office nach 6 Monaten nicht verlängern, werden alle Daten, die Sie bis dorthin ins System eingespeichert haben, unwiederbringlich gelöscht! \")]):_vm._e(),_c('v-container',{attrs:{\"fluid\":\"\",\"grid-list-lg\":\"\",\"pa-0\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{class:{ md6: _vm.$auth.isTenant, md12: _vm.$auth.isDriver },attrs:{\"sm12\":\"\"}},[(this.$auth.isDriver)?_c('v-card',{staticClass:\"pl-5 pr-5 pt-2 pb-2 mb-2\",attrs:{\"flat\":\"\"}},[_c('v-checkbox',{attrs:{\"label\":\"Nur meine Aufträge anzeigen\"},model:{value:(_vm.driversRidesOnly),callback:function ($$v) {_vm.driversRidesOnly=$$v},expression:\"driversRidesOnly\"}})],1):_vm._e(),_c('rides-time-table',{attrs:{\"title\":\"Auftragsübersicht\",\"loading-itineraries\":_vm.itinerariesLoading,\"itineraries\":_vm.itineraries,\"loading\":_vm.loading,\"rides\":_vm.shift,\"count\":_vm.shift.length,\"period\":_vm.periodShift,\"action-title\":\"Heute\",\"action\":_vm.gotoToday,\"action2-title\":\"Auftragsübersicht drucken\",\"loading-action2\":_vm.loadingPrint,\"action2\":_vm.print,\"icon\":\"icon-notes-book\",\"date-selection-disabled\":\"\"},on:{\"update:period\":[function($event){_vm.periodShift=$event},_vm.fetchShift],\"save\":_vm.save,\"update\":_vm.update,\"remove\":_vm.remove}})],1),(_vm.$auth.isTenant)?_c('v-flex',{attrs:{\"sm12\":\"\",\"md6\":\"\"}},[_c('rides-time-table',{attrs:{\"title\":\"Abzurechnende Aufträge\",\"loading-itineraries\":_vm.itinerariesLoading,\"itineraries\":_vm.itineraries,\"loading\":_vm.loading,\"rides\":_vm.open,\"count\":_vm.open.length,\"page-size\":5,\"icon\":\"icon-loading-circle-1\"},on:{\"save\":_vm.save,\"update\":_vm.update,\"remove\":_vm.remove}})],1):_vm._e()],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Period from '@/common/components/periods/period'\r\nimport ItinerariesMixin from '@/itineraries/mixins/itineraries-mixin'\r\nimport Ride from '@/rides/models/ride'\r\nimport tenantService from '@/tenants/services/tenants-service'\r\nimport ridesCalendarService from '@/rides/services/rides-calendar-service'\r\nimport ridesReportsService from '@/rides/services/rides-reports-service'\r\nimport ridesService from '@/rides/services/rides-service'\r\nimport moment from 'moment'\r\nimport { Component, Mixins, Vue, Watch } from 'vue-property-decorator'\r\nimport Dates from '@/app/utils/dates'\r\n\r\n@Component\r\nexport default class Dashboard extends Mixins(ItinerariesMixin) {\r\n\r\n private loading = false\r\n private loadingPrint = false\r\n private contractExpired = false\r\n private contractExpiringWithoutAutoRenew = false\r\n private contractExpiringWithAutoRenew = false\r\n private daysUntilContractExpiration = 0\r\n private membershipNumber = \"\"\r\n private driversRidesOnly = false\r\n private evaluationStart: (Date | null) = null\r\n private daysUntilEvaluationExpiration = 0\r\n\r\n private shift: Ride[] = []\r\n private open: Ride[] = []\r\n\r\n private periodShift: Period = new Period()\r\n private periodOpen: Period = new Period()\r\n\r\n @Watch('driversRidesOnly')\r\n private async onDriversRidesOnlyChanged() {\r\n this.loading = true\r\n this.fetchShift()\r\n this.loading = false\r\n }\r\n\r\n public async fetchAll() {\r\n this.loading = true\r\n await this.fetchShift()\r\n await this.fetchOpen()\r\n this.loading = false\r\n }\r\n\r\n private async fetchShift() {\r\n this.shift = await ridesCalendarService.findShiftAsync(this.periodShift, this.driversRidesOnly)\r\n }\r\n\r\n private async fetchOpen() {\r\n this.open = await ridesCalendarService.findOpenAsync(this.periodOpen)\r\n }\r\n\r\n private async print() {\r\n this.loadingPrint = true\r\n const start = moment(this.periodShift.start)\r\n const end = moment(this.periodShift.end)\r\n const pdfUrl = await ridesReportsService.generateRidesPdfAsync(start, end)\r\n window.open(pdfUrl)\r\n this.loadingPrint = false\r\n }\r\n\r\n private async gotoToday() {\r\n this.initPeriodShift()\r\n await this.fetchAll()\r\n }\r\n\r\n private async save(ride: Ride) {\r\n await ridesService.createAsync(ride)\r\n await this.fetchAll()\r\n }\r\n\r\n private async update(ride: Ride) {\r\n if (this.$auth.isDriver) {\r\n await ridesService.updateRemarksAsync(ride)\r\n } else {\r\n await ridesService.updateAsync(ride)\r\n }\r\n await this.fetchAll()\r\n }\r\n\r\n private async remove(ride: Ride) {\r\n await ridesService.deleteAsync(ride.id)\r\n await this.fetchAll()\r\n }\r\n\r\n private async enableContractAutoRenewal() {\r\n await tenantService.updateHasAutoRenewalContract(true)\r\n this.contractExpiringWithoutAutoRenew = false\r\n this.contractExpiringWithAutoRenew = true\r\n }\r\n\r\n private initPeriodShift() {\r\n this.periodShift.start = moment().startOf('day').toISOString(true)\r\n this.periodShift.end = moment().startOf('day').add(2, 'days').toISOString(true)\r\n }\r\n\r\n private async mounted() {\r\n const tenant = await tenantService.getCurrent()\r\n if (tenant) {\r\n this.evaluationStart = tenant.evaluationStart\r\n const evaluationEnd = moment(tenant.evaluationStart).add(1, 'months')\r\n this.daysUntilEvaluationExpiration = moment(evaluationEnd).diff(moment(), 'days')\r\n }\r\n this.initPeriodShift()\r\n await this.fetchAll()\r\n }\r\n\r\n private async created() {\r\n this.periodOpen.start = moment().subtract(1, 'years').format('YYYY-MM-DD')\r\n this.periodOpen.end = moment().format('YYYY-MM-DD')\r\n\r\n this.periodShift.timeIncluded = true\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./dashboard.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./dashboard.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./dashboard.vue?vue&type=template&id=fc94e936&\"\nimport script from \"./dashboard.ts?vue&type=script&lang=js&\"\nexport * from \"./dashboard.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAlert } from 'vuetify/lib/components/VAlert';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAlert,VCard,VCheckbox,VContainer,VFlex,VLayout})\n","export const enum InvoiceState {\r\n Pending = 0,\r\n Paid = 1,\r\n Canceled = 2,\r\n FirstDunning = 3,\r\n SecondDunning = 4,\r\n ThirdDunning = 5,\r\n CreditNote = 6,\r\n Settled = 7,\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.invoiceState !== null)?_c('v-chip',{staticClass:\"invoice-badge white--text\",attrs:{\"small\":\"\",\"color\":_vm.invoiceColor}},[_vm._v(_vm._s(_vm.invoiceText))]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Invoice from '@/invoices/models/invoice'\r\nimport { InvoiceState } from '@/invoices/models/invoice-state'\r\nimport { PaymentMethod } from '@/invoices/models/payment-method'\r\nimport { Component, Mixins, Prop, Vue, Watch } from 'vue-property-decorator'\r\n\r\n@Component\r\nexport default class InvoiceBadge extends Vue {\r\n\r\n @Prop()\r\n private invoiceState!: InvoiceState\r\n\r\n @Prop()\r\n private paymentMethod!: PaymentMethod\r\n\r\n get invoiceText() {\r\n switch (this.invoiceState) {\r\n case InvoiceState.Pending:\r\n return 'offen'\r\n case InvoiceState.Paid:\r\n switch (this.paymentMethod) {\r\n case PaymentMethod.Cash:\r\n return 'Bargeld'\r\n case PaymentMethod.CreditCard:\r\n return 'Kreditkarte'\r\n case PaymentMethod.Invoice:\r\n return 'Rechnung'\r\n case PaymentMethod.DirectBilling:\r\n return 'Direktverr.'\r\n default:\r\n return 'bezahlt'\r\n }\r\n case InvoiceState.Canceled:\r\n return 'storniert'\r\n case InvoiceState.FirstDunning:\r\n return '1. Mahnung'\r\n case InvoiceState.SecondDunning:\r\n return '2. Mahnung'\r\n case InvoiceState.ThirdDunning:\r\n return '3. Mahnung'\r\n case InvoiceState.CreditNote:\r\n return 'Gutschrift'\r\n default:\r\n return 'unbekannt'\r\n }\r\n }\r\n\r\n get invoiceColor() {\r\n switch (this.invoiceState) {\r\n case InvoiceState.Pending:\r\n return '#FF4848'\r\n case InvoiceState.Paid:\r\n switch (this.paymentMethod) {\r\n case PaymentMethod.Cash:\r\n return 'primary'\r\n case PaymentMethod.CreditCard:\r\n return '#1A9115'\r\n case PaymentMethod.Invoice:\r\n return '#1A9115'\r\n default:\r\n return '#1A9115'\r\n }\r\n case InvoiceState.Canceled:\r\n return '#B0B1B3'\r\n case InvoiceState.FirstDunning:\r\n return '#FF4848'\r\n case InvoiceState.SecondDunning:\r\n return '#FF4848'\r\n case InvoiceState.ThirdDunning:\r\n return '#FF4848'\r\n default:\r\n return '#B0B1B3'\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./invoice-badge.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./invoice-badge.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./invoice-badge.vue?vue&type=template&id=04c9427e&\"\nimport script from \"./invoice-badge.ts?vue&type=script&lang=js&\"\nexport * from \"./invoice-badge.ts?vue&type=script&lang=js&\"\nimport style0 from \"./invoice-badge.vue?vue&type=style&index=0&lang=sass&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VChip } from 'vuetify/lib/components/VChip';\ninstallComponents(component, {VChip})\n","import store from '@/app/store'\r\nimport ItinerariesModule from '@/itineraries/store/itineraries-module'\r\nimport { Component, Mixins, Prop, Vue, Watch } from 'vue-property-decorator'\r\nimport { getModule } from 'vuex-module-decorators'\r\n\r\n@Component\r\nexport default class ItinerariesMixin extends Vue {\r\n\r\n private itinerariesModule = getModule(ItinerariesModule, store)\r\n\r\n get itinerariesLoading() {\r\n return this.itinerariesModule.loading\r\n }\r\n\r\n get itineraries() {\r\n return this.itinerariesModule.itineraries\r\n }\r\n}\r\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./itinerary-dialog.vue?vue&type=style&index=0&lang=sass&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./invoice-preview.vue?vue&type=style&index=0&id=12e1d86a&scoped=true&lang=css&\"","import axios from \"@/app/axios\";\r\nimport Responses from \"@/app/utils/responses\";\r\nimport PaginationRequest from \"@/common/components/pagination/pagination-request\";\r\nimport PaginationResponse from \"@/common/components/pagination/pagination-response\";\r\nimport CrudService from \"@/common/services/crud-service\";\r\nimport Invoice from \"@/invoices/models/invoice\";\r\nimport InvoiceFilter from \"@/invoices/models/invoice-filter\";\r\n\r\nclass InvoicesService extends CrudService {\r\n public async generatePdfAsync(id: string) {\r\n const url = `${this.resource}/${id}/pdf`;\r\n const pdf = await axios.get(url);\r\n return Responses.obj(pdf);\r\n }\r\n public async getPdfAsync(id: string) {\r\n const url = `${this.resource}/${id}/getpdf`;\r\n const pdf = await axios.get(url);\r\n return Responses.obj(pdf);\r\n }\r\n\r\n public async getPdf(id: string) {\r\n const url = `${this.resource}/getpdf2?id=${id}`;\r\n const pdf = await axios.get(url);\r\n return Responses.obj(pdf);\r\n }\r\n\r\n public async filterAllAsync(\r\n filter: InvoiceFilter,\r\n paging: PaginationRequest\r\n ) {\r\n const res = await axios.post>(this.resource, {\r\n filter: filter,\r\n paging: paging,\r\n });\r\n return Responses.pagedList(res);\r\n }\r\n}\r\n\r\nexport default new InvoicesService(\"invoices\");\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"loading\":_vm.loading,\"headers\":_vm.headers,\"items\":_vm.invoices,\"options\":_vm.pPagination,\"server-items-length\":_vm.pPagination.totalItems,\"footer-props\":{ itemsPerPageText: 'Zeilen:' }},on:{\"update:options\":function($event){_vm.pPagination=$event},\"click:row\":_vm.onClick},scopedSlots:_vm._u([{key:\"item.date\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(_vm._s(_vm._f(\"dateTime\")(item.date)))]}},{key:\"item.customer\",fn:function(ref){\nvar item = ref.item;\nreturn [(item.customer)?_c('div',[_c('customer-name',{model:{value:(item.customer),callback:function ($$v) {_vm.$set(item, \"customer\", $$v)},expression:\"item.customer\"}})],1):_vm._e()]}},{key:\"item.state\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('invoice-badge',{attrs:{\"invoice-state\":item.invoiceState,\"payment-method\":item.paymentMethod}})]}},{key:\"item.kind\",fn:function(ref){\nvar item = ref.item;\nreturn [(item.rides.length === 1)?_c('v-icon',[_vm._v(\"crop_square\")]):_c('v-icon',[_vm._v(\"filter_none\")])]}},{key:\"item.cost\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._v(_vm._s(_vm._f(\"money\")(item.amount || item.cost)))]}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import PagedMixin from \"@/app/mixins/paged-mixin\";\r\nimport Invoice from \"@/invoices/models/invoice\";\r\nimport { Component, Mixins, Prop, Vue, Watch } from \"vue-property-decorator\";\r\n\r\n@Component\r\nexport default class InvoicesTable extends Mixins(PagedMixin) {\r\n @Prop({ type: Boolean, default: false })\r\n public loading!: boolean;\r\n\r\n @Prop({ default: () => [] })\r\n public invoices!: Invoice[];\r\n\r\n @Watch(\"invoices\")\r\n private invoicesChanged() {\r\n if (\r\n this.pPagination.totalItems <\r\n (this.pPagination.page - 1) * this.pPagination.itemsPerPage\r\n ) {\r\n this.pPagination.page = 1;\r\n }\r\n }\r\n\r\n get headers() {\r\n return [\r\n { text: \"Rechnung\", value: \"invoiceNo\" },\r\n { text: \"Datum\", value: \"date\" },\r\n { text: \"Kunde\", value: \"customer\" },\r\n { text: \"Status\", value: \"state\" },\r\n { text: \"Art\", value: \"kind\", sortable: false },\r\n { text: \"Betrag\", value: \"cost\", sortable: false, align: \"right\" },\r\n { text: \"Strecke / Kommentar\", value: \"remarks\" },\r\n ];\r\n }\r\n\r\n private onClick(invoice: Invoice) {\r\n this.$emit(\"edit\", invoice);\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./invoices-table.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./invoices-table.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./invoices-table.vue?vue&type=template&id=3d2edd75&\"\nimport script from \"./invoices-table.ts?vue&type=script&lang=js&\"\nexport * from \"./invoices-table.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VDataTable,VIcon})\n","import axios from '@/app/axios'\r\nimport Responses from '@/app/utils/responses'\r\nimport TaxRate from '@/itineraries/models/tax-rate'\r\n\r\nclass TaxRatesService {\r\n\r\n public async fetchAll() {\r\n const res = await axios.get('taxrates')\r\n return Responses.list(res)\r\n }\r\n}\r\n\r\nexport default new TaxRatesService()\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"invoice-preview mb-4\"},[_c('x-confirm-dialog',{ref:\"printConfirmDialog\",attrs:{\"title\":\"Achtung\",\"confirm-button-text\":\"Bestätigen\"},on:{\"confirm\":_vm.printConfirmed}},[_vm._v(\"Mit dieser Aktion wird die Rechnung archiviert und kann anschließend nicht mehr bearbeitet werden. Möchten Sie fortfahren?\")]),_c('v-toolbar',{staticClass:\"px-0\",attrs:{\"flat\":\"\",\"color\":\"transparent\"}},[_c('v-btn',{attrs:{\"text\":\"\",\"icon\":\"\"},on:{\"click\":function($event){return _vm.back()}}},[_c('v-icon',[_vm._v(\"arrow_back\")])],1)],1),_c('v-sheet',{staticClass:\"mt-2 px-10 pt-10 pb-8 center\",staticStyle:{\"max-width\":\"860px\",\"margin-left\":\"auto\",\"margin-right\":\"auto\"}},[_c('div',{staticClass:\"invoice\"},[_c('div',{staticClass:\"invoice--company-logo\"},[_c('img',{staticStyle:{\"max-width\":\"250px\",\"max-height\":\"150px\"},attrs:{\"src\":_vm.logoUrl}})]),_c('div',{staticClass:\"invoice--header\"},[_c('div',{staticClass:\"invoice--company\"},[_c('div',{staticClass:\"invoice--company-address\"},[_c('address',{staticClass:\"font-size-13 rmt-2\"},[_c('div',[_vm._v(_vm._s(_vm.tenant.company))]),_c('div',[_vm._v(_vm._s(_vm.tenant.addressLine))]),_c('div',[_vm._v(_vm._s(_vm.tenant.countryId)+\"-\"+_vm._s(_vm.tenant.postalCode)+\" \"+_vm._s(_vm.tenant.city))]),_c('div',[_vm._v(\"Tel: \"+_vm._s(_vm.tenant.phone))]),_c('div',[_vm._v(\"E-Mail: \"+_vm._s(_vm.tenant.email))]),_c('div',[_vm._v(\"UID: \"+_vm._s(_vm.tenant.vat))])])])]),_c('div',{staticClass:\"invoice--title font-size-20\"},[_vm._v(_vm._s(_vm.invoice.invoiceState == 6 ? 'Gutschrift' : 'Rechnung'))])]),_c('div',{staticClass:\"invoice--customer rmt-2 font-size-13\"},[_c('div',{staticClass:\"invoice--customer-address\"},[_c('strong',[_vm._v(\"Rechnung an:\")]),_c('address',[_c('div',[_vm._v(_vm._s(_vm.customer.company))]),_c('div',[_vm._v(_vm._s(_vm.customer.firstName)+\" \"+_vm._s(_vm.customer.lastName))]),_c('div',[_vm._v(_vm._s(_vm.customer.addressLine))]),_c('div',[_vm._v(_vm._s(_vm.customer.countryId)+\"-\"+_vm._s(_vm.customer.postalCode)+\" \"+_vm._s(_vm.customer.city))]),(_vm.customer.vat)?_c('div',[_vm._v(\"UID: \"+_vm._s(_vm.customer.vat))]):_vm._e(),_c('div',[_vm._v(\"Kdnr. \"+_vm._s(_vm.customer.number))])])]),_c('div',{staticClass:\"invoice--meta align-right\"},[_c('div',{staticClass:\"invoice--meta-date\"},[_c('strong',[_vm._v(\"Rechnungsdatum:\")]),_vm._v(\" \"+_vm._s(_vm._f(\"date\")(_vm.invoice.date))+\" \")]),_c('div',{staticClass:\"invoice--meta-nr\"},[_c('strong',[_vm._v(\"Rechnungsnummer:\")]),_vm._v(\" \"+_vm._s(_vm.invoice.invoiceNo)+\" \")])])]),_c('table',{staticClass:\"invoice--table\"},[_c('thead',[_c('tr',[_c('th',{staticStyle:{\"width\":\"140px\"}},[_vm._v(\"Auftrag\")]),_c('th',{staticStyle:{\"width\":\"60%\"}},[_vm._v(\"Strecke\")]),_c('th',[_vm._v(\"Datum\")]),_c('th',[_vm._v(\"Distanz\")]),_c('th',[_vm._v(\"Betrag\")])])]),_c('tbody',_vm._l((_vm.rides),function(ride){return _c('tr',{key:ride.id},[_c('td',[_vm._v(_vm._s(ride.jobNr))]),_c('td',[(ride.origin && ride.destination)?_c('span',[_vm._v(_vm._s(ride.origin)+\" - \"+_vm._s(ride.destination))]):(ride.remarks)?_c('span',[_vm._v(_vm._s(ride.remarks))]):_vm._e()]),_c('td',[_vm._v(_vm._s(_vm._f(\"date\")(ride.date)))]),_c('td',{staticStyle:{\"text-align\":\"right\"}},[(ride.distance)?_c('span',[_vm._v(_vm._s(ride.distance)+\" km\")]):_vm._e()]),_c('td',{staticStyle:{\"text-align\":\"right\"}},[_vm._v(_vm._s(_vm._f(\"money\")(ride.netCost)))])])}),0)]),_c('div',{staticClass:\"invoice--net-sum font-size-15 rmt-2 align-right\"},[_c('strong',[_vm._v(\"Zwischensumme:\")]),_vm._v(\" \"+_vm._s(_vm._f(\"money\")(_vm.invoice.stakes.netSum))+\" \")]),_c('div',{staticClass:\"invoice--tax font-size-15 align-right\"},[_vm._v(\"+ MWSt./USt: \"+_vm._s(_vm._f(\"money\")(_vm.invoice.stakes.taxSum)))]),(_vm.invoice.stakes.reminderCharges > 0)?_c('div',{staticClass:\"invoice--tax font-size-15 align-right\"},[_vm._v(\"+ Zahlungserinnerung: \"+_vm._s(_vm._f(\"money\")(_vm.invoice.stakes.reminderCharges)))]):_vm._e(),_c('div',{staticClass:\"invoice--sum font-size-15 align-right\"},[_c('strong',[_c('span',{staticClass:\"invoice--sum-title\"},[_vm._v(\"Summe:\")]),_vm._v(\" \"+_vm._s(_vm._f(\"money\")(_vm.invoice.stakes.totalSum))+\" \")])]),_c('table',{staticClass:\"stakes--table\"},[_c('thead',[_c('tr',[_c('th',[_vm._v(\"Steuer\")]),_c('th',{staticStyle:{\"width\":\"40%\"}},[_vm._v(\"Land\")]),_c('th',[_vm._v(\"Netto\")]),_c('th',[_vm._v(\"MWSt./USt\")]),_c('th',[_vm._v(\"Brutto\")])])]),_c('tbody',[_vm._l((_vm.invoice.stakes.shares),function(share,idx){return _c('tr',{key:idx},[_c('td',[_vm._v(_vm._s(share.taxRate * 100)+\"%\")]),_c('td',[_vm._v(_vm._s(share.countryName))]),_c('td',{staticClass:\"align-right\"},[_vm._v(_vm._s(_vm._f(\"money\")(share.netCost)))]),_c('td',{staticClass:\"align-right\"},[_vm._v(_vm._s(_vm._f(\"money\")(share.tax)))]),_c('td',{staticClass:\"align-right\"},[_vm._v(_vm._s(_vm._f(\"money\")(share.totalCost)))])])}),_c('tr',[_c('td'),_c('td'),_c('td',{staticClass:\"align-right\"},[_c('strong',[_vm._v(_vm._s(_vm._f(\"money\")(_vm.invoice.stakes.netSum)))])]),_c('td',{staticClass:\"align-right\"},[_c('strong',[_vm._v(_vm._s(_vm._f(\"money\")(_vm.invoice.stakes.taxSum)))])]),_c('td',{staticClass:\"align-right\"},[_c('strong',[_vm._v(_vm._s(_vm._f(\"money\")(_vm.invoice.stakes.totalSum)))])])])],2)]),_c('div',{staticClass:\"font-size-13 rmt-2 align-center\"},[_c('em',[_vm._v(_vm._s(_vm.invoice.remarks))])]),_c('div',{staticClass:\"font-size-13 align-center rmt-2\"},[_c('div',[_vm._v(\"Bankverbindung: \"+_vm._s(_vm.tenant.bank))]),_c('div',[_vm._v(\"BIC: \"+_vm._s(_vm.tenant.bic)+\" | IBAN: \"+_vm._s(_vm.tenant.iban))])])]),_c('v-toolbar',{staticClass:\"px-0 mt-4\",attrs:{\"flat\":\"\",\"color\":\"transparent\"}},[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"accent\",\"loading\":_vm.generating},on:{\"click\":function($event){return _vm.print()}}},[_vm._v(\"Drucken\")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import store from \"@/app/store\"\r\nimport Customer from \"@/customers/entities/customer\"\r\nimport customersService from \"@/customers/services/customers-service\"\r\nimport Invoice from \"@/invoices/models/invoice\"\r\nimport invoicesService from \"@/invoices/services/invoices-service\"\r\nimport Ride from \"@/rides/models/ride\"\r\nimport ridesService from \"@/rides/services/rides-service\"\r\nimport Tenant from \"@/tenants/entities/tenant\"\r\nimport tenantsService from \"@/tenants/services/tenants-service\"\r\nimport AuthModule from \"@/users/store/auth-module\"\r\nimport {\r\n Component,\r\n Mixins,\r\n Prop,\r\n Ref,\r\n Vue,\r\n Watch,\r\n} from \"vue-property-decorator\"\r\nimport { getModule } from \"vuex-module-decorators\"\r\nimport XConfirmDialog from \"@/common/components/x-confirm-dialog/x-confirm-dialog\"\r\n\r\n@Component\r\nexport default class InvoicePreview extends Vue {\r\n @Prop()\r\n private invoiceId!: string\r\n\r\n @Ref()\r\n private printConfirmDialog!: XConfirmDialog\r\n\r\n private invoice: Invoice = new Invoice()\r\n private customer: Customer = new Customer()\r\n private tenant: Tenant = new Tenant()\r\n private rides: Ride[] = []\r\n private loading: boolean = false\r\n private generating = false\r\n private logoUrl = \"\"\r\n private pdfWindow: Window | null = null\r\n\r\n private async fetch(id: string) {\r\n this.loading = true\r\n const invoice = await invoicesService.findOneAsync(id)\r\n if (invoice) {\r\n this.invoice = invoice\r\n if (this.invoice.customer) {\r\n this.customer = this.invoice.customer\r\n }\r\n const tenant = await tenantsService.findOneAsync(this.invoice.tenantId)\r\n if (tenant) {\r\n this.tenant = tenant\r\n }\r\n this.rides = await ridesService.findAllForInvoiceAsync(id)\r\n }\r\n this.loading = false\r\n }\r\n\r\n private back() {\r\n this.$router.go(-1)\r\n }\r\n\r\n private async print() {\r\n if (this.invoice.isArchived) {\r\n await this.printConfirmed()\r\n } else {\r\n this.printConfirmDialog.open()\r\n }\r\n }\r\n\r\n private async printConfirmed() {\r\n this.generating = true\r\n this.pdfWindow = window.open()\r\n const pdfUrl = await invoicesService.generatePdfAsync(this.invoice.id)\r\n if (this.pdfWindow) {\r\n this.pdfWindow.location.href = pdfUrl\r\n }\r\n // Rechnung neu laden. Sonst poppt der Dialog erneut auf.\r\n this.fetch(this.invoiceId)\r\n this.generating = false\r\n }\r\n\r\n private async send() {}\r\n\r\n private mounted() {\r\n this.fetch(this.invoiceId)\r\n\r\n const authModule = getModule(AuthModule, store)\r\n this.logoUrl = `${process.env.VUE_APP_API_URL}/tenants/logo?id=${\r\n authModule.tenant\r\n }&${new Date().getTime()}`\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./invoice-preview.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./invoice-preview.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./invoice-preview.vue?vue&type=template&id=12e1d86a&scoped=true&\"\nimport script from \"./invoice-preview.ts?vue&type=script&lang=js&\"\nexport * from \"./invoice-preview.ts?vue&type=script&lang=js&\"\nimport style0 from \"./invoice-preview.vue?vue&type=style&index=0&id=12e1d86a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"12e1d86a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VSheet } from 'vuetify/lib/components/VSheet';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VIcon,VSheet,VSpacer,VToolbar})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"categories\"},[_c('v-layout',[_c('v-row',{staticClass:\"mb-5\",attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\",\"md\":\"4\",\"sm\":\"12\"}},[_c('v-btn',{staticClass:\"btn-fab-text\",attrs:{\"rounded\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.create}},[_c('x-icon',{staticClass:\"mr-2\",attrs:{\"icon-class\":\"icon icon-add-2\"}}),_vm._v(\"Neue Kategorie \")],1)],1)],1)],1),_c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"headers\":_vm.categoryHeaders,\"items\":_vm.categories,\"sort-by\":\"title\",\"footer-props\":{ itemsPerPageText: 'Zeilen:' }},scopedSlots:_vm._u([{key:\"item.action\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('v-icon',{staticClass:\"mr-2\",on:{\"click\":function($event){return _vm.editCategory(item)}}},[_vm._v(\"edit\")]),_c('v-icon',{on:{\"click\":function($event){return _vm.deleteCategory(item)}}},[_vm._v(\"delete\")])]}},{key:\"no-data\",fn:function(){return [_vm._v(\" Keine Einträge \")]},proxy:true}])}),_c('v-dialog',{attrs:{\"max-width\":\"500px\"},model:{value:(_vm.categoryDialog),callback:function ($$v) {_vm.categoryDialog=$$v},expression:\"categoryDialog\"}},[_c('v-card',[_c('v-card-title',[_c('span',{staticClass:\"headline\"},[_vm._v(_vm._s(_vm.customerCategoryFormTitle))])]),_c('v-card-text',[_c('v-container',[_c('v-row',[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"12\"}},[_c('v-text-field',{attrs:{\"label\":\"Name\"},model:{value:(_vm.editedCategory.title),callback:function ($$v) {_vm.$set(_vm.editedCategory, \"title\", $$v)},expression:\"editedCategory.title\"}})],1)],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"text\":\"\"},on:{\"click\":_vm.closeEditCategory}},[_vm._v(\"Abbrechen\")]),_c('v-btn',{attrs:{\"color\":\"blue darken-1\",\"text\":\"\"},on:{\"click\":_vm.saveEditCategory}},[_vm._v(\"Speichern\")])],1)],1)],1),_c('v-snackbar',{attrs:{\"timeout\":3000,\"color\":\"success\"},model:{value:(_vm.snackbarOpened),callback:function ($$v) {_vm.snackbarOpened=$$v},expression:\"snackbarOpened\"}},[_vm._v(\" \"+_vm._s(_vm.snackbarText)+\" \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Component, Ref, Vue, Watch } from 'vue-property-decorator'\r\nimport customersService from '@/customers/services/customers-service'\r\nimport CustomerCategory from '@/customers/entities/customer-category'\r\n\r\n@Component\r\nexport default class Categories extends Vue {\r\n private categoryHeaders = [\r\n { text: 'Name', value: 'title' },\r\n { text: '', value: 'action', sortable: false, align: 'right' },\r\n ]\r\n private categoriesLoading = false\r\n private categoryDialog = false\r\n private categories: CustomerCategory[] = []\r\n private editedCategoryIndex = -1\r\n private editedCategory: CustomerCategory = new CustomerCategory\r\n\r\n private snackbarText = 'Erfolgreich gespeichert.'\r\n private snackbarOpened = false\r\n\r\n private async mounted() { \r\n this.fetchAllCategories() \r\n }\r\n\r\n private create() {\r\n this.categoryDialog = true;\r\n }\r\n\r\n private get customerCategoryFormTitle(): string {\r\n return this.editedCategoryIndex === -1 ? 'Neue Kategorie' : 'Kategorie bearbeiten'\r\n }\r\n\r\n private async fetchAllCategories() {\r\n this.categoriesLoading = true\r\n const response = await customersService.findAllCategoriesAsync()\r\n this.categories = response\r\n this.categoriesLoading = false\r\n }\r\n\r\n private editCategory(category: CustomerCategory) {\r\n this.editedCategoryIndex = this.categories.indexOf(category)\r\n this.editedCategory = Object.assign({}, category)\r\n this.categoryDialog = true\r\n }\r\n\r\n private async deleteCategory(category: CustomerCategory) {\r\n const index = this.categories.indexOf(category)\r\n if (confirm('Möchten Sie die Kategorie wirklich löschen?')) {\r\n await customersService.removeCategoryAsync(category.id)\r\n this.fetchAllCategories()\r\n }\r\n }\r\n\r\n private closeEditCategory() {\r\n this.categoryDialog = false\r\n this.editedCategoryIndex = -1\r\n this.editedCategory = new CustomerCategory()\r\n }\r\n\r\n private async saveEditCategory() {\r\n if (this.editedCategoryIndex > -1) {\r\n await customersService.updateCategoryAsync(this.editedCategory)\r\n } else {\r\n await customersService.saveCategoryAsync(this.editedCategory)\r\n }\r\n this.fetchAllCategories()\r\n this.closeEditCategory()\r\n }\r\n}","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./categories.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./categories.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./categories.vue?vue&type=template&id=6d10454c&\"\nimport script from \"./categories.ts?vue&type=script&lang=js&\"\nexport * from \"./categories.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VContainer,VDataTable,VDialog,VIcon,VLayout,VRow,VSnackbar,VSpacer,VTextField})\n","import axios from '@/app/axios'\r\nimport Responses from '@/app/utils/responses'\r\nimport CrudService from '@/common/services/crud-service'\r\nimport Itinerary from '@/itineraries/models/itinerary'\r\n\r\nclass ItinerariesService extends CrudService {\r\n\r\n public async search(text: string) {\r\n const res = await axios.get(`${this.resource}/search`, {\r\n params: { text },\r\n })\r\n return Responses.list(res)\r\n }\r\n\r\n public async fetchAll() {\r\n const res = await axios.get(`${this.resource}/list`)\r\n return Responses.list(res)\r\n }\r\n}\r\n\r\nexport default new ItinerariesService('itineraries')\r\n","export const enum PaymentMethod {\r\n Cash = 0,\r\n CreditCard = 1,\r\n Invoice = 2,\r\n DirectBilling = 3,\r\n}\r\n","import Country from '@/locations/models/country'\r\n\r\nclass CountriesService {\r\n\r\n // TODO: Aus der DB laden.\r\n public findAllAsync(): Country[] {\r\n return [\r\n { code: 'AF', name: 'Afghanistan' },\r\n { code: 'EG', name: 'Ägypten' },\r\n { code: 'AL', name: 'Albanien' },\r\n { code: 'DZ', name: 'Algerien' },\r\n { code: 'AD', name: 'Andorra' },\r\n { code: 'AO', name: 'Angola' },\r\n { code: 'AI', name: 'Anguilla' },\r\n { code: 'AQ', name: 'Antarktis' },\r\n { code: 'AG', name: 'Antigua und Barbuda' },\r\n { code: 'GQ', name: 'Äquatorial Guinea' },\r\n { code: 'AR', name: 'Argentinien' },\r\n { code: 'AM', name: 'Armenien' },\r\n { code: 'AW', name: 'Aruba' },\r\n { code: 'AZ', name: 'Aserbaidschan' },\r\n { code: 'ET', name: 'Äthiopien' },\r\n { code: 'AU', name: 'Australien' },\r\n { code: 'BS', name: 'Bahamas' },\r\n { code: 'BH', name: 'Bahrain' },\r\n { code: 'BD', name: 'Bangladesh' },\r\n { code: 'BB', name: 'Barbados' },\r\n { code: 'BE', name: 'Belgien' },\r\n { code: 'BZ', name: 'Belize' },\r\n { code: 'BJ', name: 'Benin' },\r\n { code: 'BM', name: 'Bermudas' },\r\n { code: 'BT', name: 'Bhutan' },\r\n { code: 'MM', name: 'Birma' },\r\n { code: 'BO', name: 'Bolivien' },\r\n { code: 'BA', name: 'Bosnien-Herzegowina' },\r\n { code: 'BW', name: 'Botswana' },\r\n { code: 'BV', name: 'Bouvet Inseln' },\r\n { code: 'BR', name: 'Brasilien' },\r\n { code: 'IO', name: 'Britisch-Indischer Ozean' },\r\n { code: 'BN', name: 'Brunei' },\r\n { code: 'BG', name: 'Bulgarien' },\r\n { code: 'BF', name: 'Burkina Faso' },\r\n { code: 'BI', name: 'Burundi' },\r\n { code: 'CL', name: 'Chile' },\r\n { code: 'CN', name: 'China' },\r\n { code: 'CX', name: 'Christmas Island' },\r\n { code: 'CK', name: 'Cook Inseln' },\r\n { code: 'CR', name: 'Costa Rica' },\r\n { code: 'DK', name: 'Dänemark' },\r\n { code: 'DE', name: 'Deutschland' },\r\n { code: 'DJ', name: 'Djibuti' },\r\n { code: 'DM', name: 'Dominika' },\r\n { code: 'DO', name: 'Dominikanische Republik' },\r\n { code: 'EC', name: 'Ecuador' },\r\n { code: 'SV', name: 'El Salvador' },\r\n { code: 'CI', name: 'Elfenbeinküste' },\r\n { code: 'ER', name: 'Eritrea' },\r\n { code: 'EE', name: 'Estland' },\r\n { code: 'FK', name: 'Falkland Inseln' },\r\n { code: 'FO', name: 'Färöer Inseln' },\r\n { code: 'FJ', name: 'Fidschi' },\r\n { code: 'FI', name: 'Finnland' },\r\n { code: 'FR', name: 'Frankreich' },\r\n { code: 'GF', name: 'französisch Guyana' },\r\n { code: 'PF', name: 'Französisch Polynesien' },\r\n { code: 'TF', name: 'Französisches Süd-Territorium' },\r\n { code: 'GA', name: 'Gabun' },\r\n { code: 'GM', name: 'Gambia' },\r\n { code: 'GE', name: 'Georgien' },\r\n { code: 'GH', name: 'Ghana' },\r\n { code: 'GI', name: 'Gibraltar' },\r\n { code: 'GD', name: 'Grenada' },\r\n { code: 'GR', name: 'Griechenland' },\r\n { code: 'GL', name: 'Grönland' },\r\n { code: 'UK', name: 'Großbritannien' },\r\n { code: 'GB', name: 'Großbritannien (UK)' },\r\n { code: 'GP', name: 'Guadeloupe' },\r\n { code: 'GU', name: 'Guam' },\r\n { code: 'GT', name: 'Guatemala' },\r\n { code: 'GN', name: 'Guinea' },\r\n { code: 'GW', name: 'Guinea Bissau' },\r\n { code: 'GY', name: 'Guyana' },\r\n { code: 'HT', name: 'Haiti' },\r\n { code: 'HM', name: 'Heard und McDonald Islands' },\r\n { code: 'HN', name: 'Honduras' },\r\n { code: 'HK', name: 'Hong Kong' },\r\n { code: 'IN', name: 'Indien' },\r\n { code: 'ID', name: 'Indonesien' },\r\n { code: 'IQ', name: 'Irak' },\r\n { code: 'IR', name: 'Iran' },\r\n { code: 'IE', name: 'Irland' },\r\n { code: 'IS', name: 'Island' },\r\n { code: 'IL', name: 'Israel' },\r\n { code: 'IT', name: 'Italien' },\r\n { code: 'JM', name: 'Jamaika' },\r\n { code: 'JP', name: 'Japan' },\r\n { code: 'YE', name: 'Jemen' },\r\n { code: 'JO', name: 'Jordanien' },\r\n { code: 'YU', name: 'Jugoslawien' },\r\n { code: 'KY', name: 'Kaiman Inseln' },\r\n { code: 'KH', name: 'Kambodscha' },\r\n { code: 'CM', name: 'Kamerun' },\r\n { code: 'CA', name: 'Kanada' },\r\n { code: 'CV', name: 'Kap Verde' },\r\n { code: 'KZ', name: 'Kasachstan' },\r\n { code: 'KE', name: 'Kenia' },\r\n { code: 'KG', name: 'Kirgisistan' },\r\n { code: 'KI', name: 'Kiribati' },\r\n { code: 'CC', name: 'Kokosinseln' },\r\n { code: 'CO', name: 'Kolumbien' },\r\n { code: 'KM', name: 'Komoren' },\r\n { code: 'CG', name: 'Kongo' },\r\n { code: 'CD', name: 'Kongo, Demokratische Republik' },\r\n { code: 'HR', name: 'Kroatien' },\r\n { code: 'CU', name: 'Kuba' },\r\n { code: 'KW', name: 'Kuwait' },\r\n { code: 'LA', name: 'Laos' },\r\n { code: 'LS', name: 'Lesotho' },\r\n { code: 'LV', name: 'Lettland' },\r\n { code: 'LB', name: 'Libanon' },\r\n { code: 'LR', name: 'Liberia' },\r\n { code: 'LY', name: 'Libyen' },\r\n { code: 'LI', name: 'Liechtenstein' },\r\n { code: 'LT', name: 'Litauen' },\r\n { code: 'LU', name: 'Luxemburg' },\r\n { code: 'MO', name: 'Macao' },\r\n { code: 'MG', name: 'Madagaskar' },\r\n { code: 'MW', name: 'Malawi' },\r\n { code: 'MY', name: 'Malaysia' },\r\n { code: 'MV', name: 'Malediven' },\r\n { code: 'ML', name: 'Mali' },\r\n { code: 'MT', name: 'Malta' },\r\n { code: 'MP', name: 'Marianen' },\r\n { code: 'MA', name: 'Marokko' },\r\n { code: 'MH', name: 'Marshall Inseln' },\r\n { code: 'MQ', name: 'Martinique' },\r\n { code: 'MR', name: 'Mauretanien' },\r\n { code: 'MU', name: 'Mauritius' },\r\n { code: 'YT', name: 'Mayotte' },\r\n { code: 'MK', name: 'Mazedonien' },\r\n { code: 'MX', name: 'Mexiko' },\r\n { code: 'FM', name: 'Mikronesien' },\r\n { code: 'MZ', name: 'Mocambique' },\r\n { code: 'MD', name: 'Moldavien' },\r\n { code: 'MC', name: 'Monaco' },\r\n { code: 'MN', name: 'Mongolei' },\r\n { code: 'MS', name: 'Montserrat' },\r\n { code: 'NA', name: 'Namibia' },\r\n { code: 'NR', name: 'Nauru' },\r\n { code: 'NP', name: 'Nepal' },\r\n { code: 'NC', name: 'Neukaledonien' },\r\n { code: 'NZ', name: 'Neuseeland' },\r\n { code: 'NI', name: 'Nicaragua' },\r\n { code: 'NL', name: 'Niederlande' },\r\n { code: 'AN', name: 'Niederländische Antillen' },\r\n { code: 'NE', name: 'Niger' },\r\n { code: 'NG', name: 'Nigeria' },\r\n { code: 'NU', name: 'Niue' },\r\n { code: 'KP', name: 'Nord Korea' },\r\n { code: 'NF', name: 'Norfolk Inseln' },\r\n { code: 'NO', name: 'Norwegen' },\r\n { code: 'OM', name: 'Oman' },\r\n { code: 'AT', name: 'Österreich' },\r\n { code: 'PK', name: 'Pakistan' },\r\n { code: 'PS', name: 'Palästina' },\r\n { code: 'PW', name: 'Palau' },\r\n { code: 'PA', name: 'Panama' },\r\n { code: 'PG', name: 'Papua Neuguinea' },\r\n { code: 'PY', name: 'Paraguay' },\r\n { code: 'PE', name: 'Peru' },\r\n { code: 'PH', name: 'Philippinen' },\r\n { code: 'PN', name: 'Pitcairn' },\r\n { code: 'PL', name: 'Polen' },\r\n { code: 'PT', name: 'Portugal' },\r\n { code: 'PR', name: 'Puerto Rico' },\r\n { code: 'QA', name: 'Qatar' },\r\n { code: 'RE', name: 'Reunion' },\r\n { code: 'RW', name: 'Ruanda' },\r\n { code: 'RO', name: 'Rumänien' },\r\n { code: 'RU', name: 'Russland' },\r\n { code: 'LC', name: 'Saint Lucia' },\r\n { code: 'ZM', name: 'Sambia' },\r\n { code: 'AS', name: 'Samoa' },\r\n { code: 'WS', name: 'Samoa' },\r\n { code: 'SM', name: 'San Marino' },\r\n { code: 'ST', name: 'Sao Tome' },\r\n { code: 'SA', name: 'Saudi Arabien' },\r\n { code: 'SE', name: 'Schweden' },\r\n { code: 'CH', name: 'Schweiz' },\r\n { code: 'SN', name: 'Senegal' },\r\n { code: 'SC', name: 'Seychellen' },\r\n { code: 'SL', name: 'Sierra Leone' },\r\n { code: 'SG', name: 'Singapur' },\r\n { code: 'SK', name: 'Slowakei -slowakische Republik-' },\r\n { code: 'SI', name: 'Slowenien' },\r\n { code: 'SB', name: 'Solomon Inseln' },\r\n { code: 'SO', name: 'Somalia' },\r\n { code: 'GS', name: 'South Georgia, South Sandwich Isl.' },\r\n { code: 'ES', name: 'Spanien' },\r\n { code: 'LK', name: 'Sri Lanka' },\r\n { code: 'SH', name: 'St. Helena' },\r\n { code: 'KN', name: 'St. Kitts Nevis Anguilla' },\r\n { code: 'PM', name: 'St. Pierre und Miquelon' },\r\n { code: 'VC', name: 'St. Vincent' },\r\n { code: 'KR', name: 'Süd Korea' },\r\n { code: 'ZA', name: 'Südafrika' },\r\n { code: 'SD', name: 'Sudan' },\r\n { code: 'SR', name: 'Surinam' },\r\n { code: 'SJ', name: 'Svalbard und Jan Mayen Islands' },\r\n { code: 'SZ', name: 'Swasiland' },\r\n { code: 'SY', name: 'Syrien' },\r\n { code: 'TJ', name: 'Tadschikistan' },\r\n { code: 'TW', name: 'Taiwan' },\r\n { code: 'TZ', name: 'Tansania' },\r\n { code: 'TH', name: 'Thailand' },\r\n { code: 'TP', name: 'Timor' },\r\n { code: 'TG', name: 'Togo' },\r\n { code: 'TK', name: 'Tokelau' },\r\n { code: 'TO', name: 'Tonga' },\r\n { code: 'TT', name: 'Trinidad Tobago' },\r\n { code: 'TD', name: 'Tschad' },\r\n { code: 'CZ', name: 'Tschechische Republik' },\r\n { code: 'TN', name: 'Tunesien' },\r\n { code: 'TR', name: 'Türkei' },\r\n { code: 'TM', name: 'Turkmenistan' },\r\n { code: 'TC', name: 'Turks und Kaikos Inseln' },\r\n { code: 'TV', name: 'Tuvalu' },\r\n { code: 'UG', name: 'Uganda' },\r\n { code: 'UA', name: 'Ukraine' },\r\n { code: 'HU', name: 'Ungarn' },\r\n { code: 'UY', name: 'Uruguay' },\r\n { code: 'UZ', name: 'Usbekistan' },\r\n { code: 'VU', name: 'Vanuatu' },\r\n { code: 'VA', name: 'Vatikan' },\r\n { code: 'VE', name: 'Venezuela' },\r\n { code: 'AE', name: 'Vereinigte Arabische Emirate' },\r\n { code: 'US', name: 'Vereinigte Staaten von Amerika' },\r\n { code: 'VN', name: 'Vietnam' },\r\n { code: 'VG', name: 'Virgin Island (Brit.)' },\r\n { code: 'VI', name: 'Virgin Island (USA)' },\r\n { code: 'WF', name: 'Wallis et Futuna' },\r\n { code: 'BY', name: 'Weissrussland' },\r\n { code: 'EH', name: 'Westsahara' },\r\n { code: 'CF', name: 'Zentralafrikanische Republik' },\r\n { code: 'ZW', name: 'Zimbabwe' },\r\n { code: 'CY', name: 'Zypern' }, \r\n ]\r\n }\r\n}\r\n\r\nexport default new CountriesService()\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"invoices\"},[_c('v-layout',[_c('v-row',{staticClass:\"mb-5\",attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"6\",\"md\":\"3\"}},[_c('v-btn',{staticClass:\"btn-fab-text\",attrs:{\"rounded\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.create}},[_c('x-icon',{staticClass:\"mr-2\",attrs:{\"icon-class\":\"icon icon-add-2\"}}),_vm._v(\"Neue Rechnung \")],1)],1),_c('v-col',{attrs:{\"cols\":\"6\",\"md\":\"3\"}},[_c('v-btn',{staticClass:\"btn-fab-text\",attrs:{\"rounded\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.exportList}},[_vm._v(\" CSV herunterladen \")])],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_c('v-text-field',{directives:[{name:\"debounce\",rawName:\"v-debounce:500\",value:(_vm.fetchAll),expression:\"fetchAll\",arg:\"500\"}],staticClass:\"mr-md-5\",attrs:{\"hide-details\":\"\",\"append-icon\":\"search\",\"placeholder\":\"Suchen\",\"single-line\":\"\",\"clearable\":\"\"},on:{\"click:clear\":_vm.fetchAll},model:{value:(_vm.text),callback:function ($$v) {_vm.text=$$v},expression:\"text\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_c('invoice-state-select',{attrs:{\"hide-details\":\"\"},model:{value:(_vm.invoiceState),callback:function ($$v) {_vm.invoiceState=$$v},expression:\"invoiceState\"}})],1)],1)],1),_c('invoices-table',{attrs:{\"loading\":_vm.loading,\"invoices\":_vm.invoices,\"pagination\":_vm.pagination},on:{\"update:pagination\":function($event){_vm.pagination=$event},\"edit\":_vm.edit}}),_c('invoices-dialog',{ref:\"dialog\",on:{\"save\":_vm.save,\"update\":_vm.update,\"preview\":_vm.preview,\"createCreditNote\":_vm.createCreditNote}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { InvoiceState } from \"./invoice-state\";\r\n\r\nexport default class InvoiceFilter {\r\n public text: string = \"\";\r\n public status: InvoiceState | null = null;\r\n public excludestatus: InvoiceState | null = InvoiceState.Settled;\r\n}\r\n","import PaginationRequest from \"@/common/components/pagination/pagination-request\";\r\nimport InvoicesDialog from \"@/invoices/components/invoices-dialog/invoices-dialog\";\r\nimport Invoice from \"@/invoices/models/invoice\";\r\nimport invoicesService from \"@/invoices/services/invoices-service\";\r\nimport reportsService from \"@/reports/services/reports-service\";\r\nimport {\r\n Component,\r\n Mixins,\r\n Prop,\r\n Ref,\r\n Vue,\r\n Watch,\r\n} from \"vue-property-decorator\";\r\nimport InvoiceFilter from \"@/invoices/models/invoice-filter\";\r\nimport { InvoiceState } from \"../models/invoice-state\";\r\nimport { PaymentMethod } from \"@/invoices/models/payment-method\";\r\nimport Customer from \"@/customers/entities/customer\";\r\nimport moment from \"moment\";\r\n\r\n@Component\r\nexport default class Invoices extends Vue {\r\n @Prop()\r\n private invoiceId!: string;\r\n\r\n @Ref()\r\n private dialog!: InvoicesDialog;\r\n\r\n private text: string = \"\";\r\n private invoiceState: InvoiceState | null = null;\r\n\r\n private invoices: Invoice[] = [];\r\n private loading: boolean = false;\r\n\r\n private filter = new InvoiceFilter();\r\n\r\n private pagination = new PaginationRequest();\r\n\r\n private numberFormatter = new Intl.NumberFormat(\"de\", {\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2,\r\n useGrouping: false,\r\n });\r\n\r\n @Watch(\"text\")\r\n private textChanged(val: string) {\r\n this.filter.text = val;\r\n }\r\n\r\n @Watch(\"invoiceState\")\r\n private invoiceStateChanged(val: InvoiceState | null) {\r\n this.filter.status = val;\r\n this.fetchAll();\r\n }\r\n\r\n public async fetchAll() {\r\n this.loading = true;\r\n const response = await invoicesService.filterAllAsync(\r\n this.filter,\r\n this.pagination\r\n );\r\n this.invoices = response.items;\r\n this.pagination.totalItems = response.totalItems;\r\n this.loading = false;\r\n }\r\n\r\n public create() {\r\n this.dialog.create();\r\n }\r\n\r\n /**\r\n * exportList\r\n */\r\n public async exportList() {\r\n if (this.invoices.length === 0) {\r\n return;\r\n }\r\n let csvHeader =\r\n \"data:text/csv;charset=utf-8,\\uFEFFRechnung;Datum;Kunde;Status;Art;Betrag;Strecke/Kommentar\";\r\n\r\n let csvContent = '\\r\\n';\r\n\r\n const response = await invoicesService.filterAllAsync(\r\n this.filter,\r\n new PaginationRequest(4096)\r\n );\r\n let invoices = response.items;\r\n\r\n invoices.forEach((invoice) => {\r\n var kind =\r\n invoice.rides.length === 1 ? \"Einzelrechnung\" : \"Sammelrechnung\";\r\n var paymentMethod = this.getPaymentMethod(invoice.paymentMethod);\r\n var invoiceState = this.getInvoiceState(invoice.invoiceState);\r\n var customer = this.getCustomer(invoice.customer);\r\n var invoiceAmount = invoice.amount ? invoice.amount : invoice.cost;\r\n\r\n csvContent +=\r\n invoice.invoiceNo +\r\n \";\" +\r\n moment(invoice.date).format(\"YYYY-MM-DD HH:mm\") +\r\n \";\" +\r\n customer +\r\n \";\" +\r\n invoiceState +\r\n \";\" +\r\n paymentMethod +\r\n \" \" +\r\n kind +\r\n \";\" +\r\n this.numberFormatter.format(invoiceAmount) +\r\n \";\" +\r\n invoice.remarks.replace(\";\", \",\").replace(\"\\n\", \" \").replace(\"\\r\", \" \") +\r\n \"\\r\\n\";\r\n });\r\n\r\n csvContent = csvHeader + encodeURIComponent(csvContent);\r\n const link = document.createElement(\"a\");\r\n\r\n link.setAttribute(\"href\", csvContent);\r\n link.setAttribute(\"download\", \"Rechnungen.csv\");\r\n link.click();\r\n }\r\n\r\n private getCustomer(customer: Customer | null) {\r\n if (customer === null) {\r\n return \"unbekannt\";\r\n } else if (customer.firstName) {\r\n return customer.firstName + \" \" + customer.lastName;\r\n } else {\r\n return customer.company;\r\n }\r\n }\r\n\r\n private getInvoiceState(state: InvoiceState) {\r\n if (state === null) {\r\n return \"n/a\";\r\n }\r\n\r\n /*\r\n Pending = 0,\r\n Paid = 1,\r\n Canceled = 2,\r\n FirstDunning = 3,\r\n SecondDunning = 4,\r\n ThirdDunning = 5,\r\n CreditNote = 6,\r\n Settled = 7\r\n */\r\n let invStat: number = state;\r\n switch (invStat) {\r\n case 0:\r\n return \"Offen\";\r\n case 1:\r\n return \"Bezahlt\";\r\n case 2:\r\n return \"Storniert\";\r\n case 3:\r\n return \"1.Mahnung\";\r\n case 4:\r\n return \"2.Mahnung\";\r\n case 5:\r\n return \"3.Mahnung\";\r\n case 6:\r\n return \"Gutschrift\";\r\n case 7:\r\n return \"Verrechnet\";\r\n }\r\n }\r\n\r\n private getPaymentMethod(method: PaymentMethod | null) {\r\n // Cash = 0,\r\n // CreditCard = 1,\r\n // Invoice = 2,\r\n // DirectBilling = 3,\r\n\r\n if (method === null) {\r\n return \"n/a\";\r\n }\r\n\r\n let pm: number = method;\r\n\r\n switch (pm) {\r\n case 0:\r\n return \"Barzahlung\";\r\n\r\n case 1:\r\n return \"Kreditkarte\";\r\n\r\n case 2:\r\n return \"Rechnung\";\r\n\r\n case 3:\r\n return \"Direktzahlung\";\r\n\r\n default:\r\n return \"n/a\";\r\n }\r\n }\r\n\r\n public edit(invoice: Invoice) {\r\n this.dialog.edit(invoice);\r\n }\r\n\r\n public async save(invoice: Invoice) {\r\n await invoicesService.createAsync(invoice);\r\n await this.fetchAll();\r\n }\r\n\r\n public async update(invoice: Invoice) {\r\n await invoicesService.updateAsync(invoice);\r\n await this.fetchAll();\r\n }\r\n\r\n public async preview(invoice: Invoice) {\r\n this.$router.push({ name: \"invoice\", params: { invoiceId: invoice.id } });\r\n }\r\n\r\n public async createCreditNote(invoice: Invoice) {\r\n await invoicesService.createCreditNote(invoice);\r\n await this.fetchAll();\r\n }\r\n\r\n @Watch(\"pagination\", { deep: true })\r\n private async paginationChanged(\r\n newVal: PaginationRequest,\r\n oldVal: PaginationRequest\r\n ) {\r\n if (newVal !== oldVal) {\r\n await this.fetchAll();\r\n }\r\n }\r\n\r\n private created() {\r\n this.pagination.sortBy = [\"date\"];\r\n this.pagination.sortDesc = [true];\r\n }\r\n\r\n private async mounted() {\r\n if (this.invoiceId) {\r\n const invoice = await invoicesService.findOneAsync(this.invoiceId);\r\n if (invoice) {\r\n this.edit(invoice);\r\n }\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./invoices.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./invoices.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./invoices.vue?vue&type=template&id=9f0bdd50&\"\nimport script from \"./invoices.ts?vue&type=script&lang=js&\"\nexport * from \"./invoices.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCol,VLayout,VRow,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{attrs:{\"row\":\"\",\"justify-center\":\"\"}},[_c('v-dialog',{attrs:{\"max-width\":\"800px\",\"fullscreen\":_vm.$vuetify.breakpoint.xsOnly},model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"primary\"},[_c('span',{staticClass:\"white--text\"},[_vm._v(\"Steuersatz \"+_vm._s(_vm.itinerary.isNew ? 'hinzufügen' : 'bearbeiten'))])]),_c('v-card-text',{staticClass:\"primary\"},[_c('v-form',[_c('v-container',{attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"md4\":\"\"}},[_c('v-text-field',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],attrs:{\"name\":\"name\",\"label\":\"Name\",\"filled\":\"\",\"error-messages\":_vm.errors.collect('name'),\"hide-details\":_vm.errors.collect('name').length === 0},model:{value:(_vm.itinerary.name),callback:function ($$v) {_vm.$set(_vm.itinerary, \"name\", $$v)},expression:\"itinerary.name\"}})],1),_vm._l((_vm.itinerary.legs),function(leg,idx){return [_c('v-flex',{key:'rate-' + idx,attrs:{\"xs12\":\"\",\"md5\":\"\",\"offset-md4\":idx > 0}},[_c('v-select',{ref:'rate' + idx,refInFor:true,attrs:{\"name\":'rate-' + idx,\"items\":_vm.rates,\"item-text\":\"displayName\",\"item-value\":\"id\",\"label\":\"Land/Steuersatz\",\"filled\":\"\",\"hide-details\":\"\"},on:{\"change\":_vm.onChange},model:{value:(leg.taxRateId),callback:function ($$v) {_vm.$set(leg, \"taxRateId\", $$v)},expression:\"leg.taxRateId\"}})],1),_c('v-flex',{key:'share-' + idx,attrs:{\"xs12\":\"\",\"md3\":\"\"}},[_c('v-text-field',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('sum100|requiredCountry:' + 'rate' + idx),expression:\"'sum100|requiredCountry:' + 'rate' + idx\"}],attrs:{\"name\":'share-' + idx,\"label\":\"Anteil (%)\",\"filled\":\"\",\"error-messages\":_vm.errors.collect('share-' + idx),\"hide-details\":_vm.errors.collect('share-' + idx).length === 0},on:{\"change\":_vm.onChange},model:{value:(leg.share),callback:function ($$v) {_vm.$set(leg, \"share\", $$v)},expression:\"leg.share\"}})],1)]})],2)],1)],1)],1),_c('v-card-text',{staticClass:\"optional\"},[_c('v-form',[_c('v-container',{attrs:{\"grid-list-md\":\"\"}},[_c('h4',{staticClass:\"mt-4 mb-2\"},[_vm._v(\"Details\")]),_c('orig-dst',{attrs:{\"origin\":_vm.itinerary.origin,\"destination\":_vm.itinerary.destination},on:{\"update:origin\":function($event){return _vm.$set(_vm.itinerary, \"origin\", $event)},\"update:destination\":function($event){return _vm.$set(_vm.itinerary, \"destination\", $event)}}}),_c('remarks',{model:{value:(_vm.itinerary.remarks),callback:function ($$v) {_vm.$set(_vm.itinerary, \"remarks\", $$v)},expression:\"itinerary.remarks\"}}),_c('v-layout',{attrs:{\"row\":\"\"}},[_c('v-flex',[_c('v-checkbox',{attrs:{\"hide-details\":\"\",\"label\":\"Als Standard festlegen\"},model:{value:(_vm.itinerary.isDefault),callback:function ($$v) {_vm.$set(_vm.itinerary, \"isDefault\", $$v)},expression:\"itinerary.isDefault\"}})],1)],1)],1)],1)],1),_c('v-card-actions',[_c('v-btn',{attrs:{\"color\":\"error\"},on:{\"click\":function($event){return _vm.delete_()}}},[_vm._v(\"Löschen\")]),_c('v-spacer'),_c('v-btn',{staticClass:\"primary--text\",attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.cancel()}}},[_vm._v(\"Abbrechen\")]),_c('v-btn',{attrs:{\"depressed\":\"\",\"color\":\"primary\",\"disabled\":_vm.errors.any()},on:{\"click\":function($event){return _vm.save()}}},[_vm._v(\"Speichern\")])],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Guid from '@/app/utils/guid'\r\nimport ItineraryLeg from './itinerary-leg'\r\n\r\nexport default class Itinerary {\r\n\r\n public id: string = Guid.empty()\r\n public tenantId: string = Guid.empty()\r\n public name: string = ''\r\n public legs: ItineraryLeg[] = []\r\n public origin: string = ''\r\n public destination: string = ''\r\n public remarks: string = ''\r\n public isDefault: boolean = false\r\n\r\n public isNew() {\r\n return this.id === Guid.empty()\r\n }\r\n}\r\n","import Guid from '@/app/utils/guid'\r\nimport TaxRate from './tax-rate'\r\n\r\nexport default class ItineraryLeg {\r\n\r\n public id: string = Guid.empty()\r\n // public itineraryId: string = Guid.empty()\r\n public taxRateId: string = Guid.empty()\r\n public taxRate: TaxRate | null = null\r\n public share: number = 0\r\n}\r\n","import Arrays from '@/app/utils/arrays'\r\nimport Guid from '@/app/utils/guid'\r\nimport Itinerary from '@/itineraries/models/itinerary'\r\nimport ItineraryLeg from '@/itineraries/models/itinerary-leg'\r\nimport TaxRate from '@/itineraries/models/tax-rate'\r\nimport cloneDeep from 'lodash/cloneDeep'\r\nimport { RuleResult } from 'vee-validate'\r\nimport { Component, Prop, Vue } from 'vue-property-decorator'\r\n\r\n@Component\r\nexport default class ItineraryDialog extends Vue {\r\n\r\n @Prop({ default: () => [] })\r\n private rates!: TaxRate[]\r\n\r\n private shares = Arrays\r\n .range(21, 5)\r\n .map((v) => ({ text: `${v}%`, value: v }))\r\n\r\n private dialog: boolean = false\r\n private editMode: boolean = false\r\n private itinerary: Itinerary = new Itinerary()\r\n\r\n get filledLegs() {\r\n return this.itinerary.legs.filter((l) =>\r\n l.taxRateId && l.taxRateId !== Guid.empty())\r\n }\r\n\r\n public create(itinerary?: Itinerary) {\r\n this.itinerary = itinerary || new Itinerary()\r\n this.addDefaultRate(this.itinerary)\r\n this.dialog = true\r\n this.editMode = false\r\n this.$validator.reset()\r\n }\r\n\r\n public edit(itinerary: Itinerary) {\r\n this.itinerary = cloneDeep(itinerary)\r\n this.itinerary.legs.push(new ItineraryLeg())\r\n this.dialog = true\r\n this.editMode = true\r\n this.$validator.reset()\r\n }\r\n\r\n public async save() {\r\n if (await this.$validator.validateAll()) {\r\n this.itinerary.legs = this.filledLegs\r\n this.$emit(this.editMode ? 'update' : 'save', this.itinerary)\r\n this.dialog = false\r\n }\r\n }\r\n\r\n public delete_() {\r\n this.$emit('delete', this.itinerary)\r\n this.dialog = false\r\n }\r\n\r\n public cancel() {\r\n this.$emit('cancel')\r\n this.dialog = false\r\n }\r\n\r\n private async onChange() {\r\n const emptyLegs = this.itinerary.legs.filter((l) =>\r\n l.taxRateId === Guid.empty())\r\n if (emptyLegs.length === 0) {\r\n this.itinerary.legs.push(new ItineraryLeg())\r\n } else if (emptyLegs.length > 1) {\r\n this.itinerary.legs = this.filledLegs\r\n this.itinerary.legs.push(new ItineraryLeg())\r\n }\r\n await this.$validator.reset()\r\n await this.$validator.validateAll()\r\n }\r\n\r\n private addDefaultRate(itinerary: Itinerary) {\r\n const rateAT = this.rates.find((r) => r.countryId === 'AT')\r\n if (rateAT && itinerary.legs.length === 0) {\r\n const leg = new ItineraryLeg()\r\n leg.taxRateId = rateAT.id\r\n leg.taxRate = rateAT\r\n leg.share = 100\r\n this.itinerary.legs.push(leg)\r\n }\r\n }\r\n\r\n private created() {\r\n const self = this\r\n\r\n this.$validator.extend('sum100', {\r\n\r\n getMessage(): string {\r\n return 'Anteile müssen zusammen 100% ergeben.'\r\n },\r\n\r\n validate(): RuleResult {\r\n const sum = self.itinerary.legs.reduce((acc, l) => parseInt(acc.toString()) + parseInt(l.share.toString()), 0)\r\n return sum === 100\r\n },\r\n })\r\n\r\n this.$validator.extend('requiredCountry', {\r\n\r\n getMessage(): string {\r\n return 'Land muss ausgewählt sein.'\r\n },\r\n\r\n validate(val, other): RuleResult {\r\n if (other && Array.isArray(other)) {\r\n const otherName = other[0] as string\r\n const otherVals = self.$refs[otherName]\r\n if (Array.isArray(otherVals)) {\r\n const otherVal = otherVals[0]\r\n // @ts-ignore\r\n return val === 0 || otherVal.value !== Guid.empty()\r\n }\r\n }\r\n return false\r\n },\r\n })\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./itinerary-dialog.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./itinerary-dialog.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./itinerary-dialog.vue?vue&type=template&id=716b9853&\"\nimport script from \"./itinerary-dialog.ts?vue&type=script&lang=js&\"\nexport * from \"./itinerary-dialog.ts?vue&type=script&lang=js&\"\nimport style0 from \"./itinerary-dialog.vue?vue&type=style&index=0&lang=sass&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VForm } from 'vuetify/lib/components/VForm';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCheckbox,VContainer,VDialog,VFlex,VForm,VLayout,VSelect,VSpacer,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-data-table',{staticClass:\"elevation-0\",attrs:{\"loading\":_vm.loading,\"headers\":_vm.headers,\"items\":_vm.itineraries,\"options\":_vm.pPagination,\"server-items-length\":_vm.pPagination.totalItems,\"footer-props\":{ itemsPerPageText: 'Zeilen:' }},on:{\"update:options\":function($event){_vm.pPagination=$event},\"click:row\":_vm.onClick},scopedSlots:_vm._u([{key:\"item.standard\",fn:function(ref){\nvar item = ref.item;\nreturn [(item.isDefault)?_c('v-icon',[_vm._v(\"star\")]):_vm._e()]}},{key:\"item.country\",fn:function(ref){\nvar item = ref.item;\nreturn _vm._l((item.legs),function(leg,idx){return _c('v-chip',{key:idx,staticClass:\"mx-1\",staticStyle:{\"border-color\":\"#B0B1B3\"},attrs:{\"pill\":\"\",\"outlined\":\"\",\"small\":\"\"}},[_c('v-avatar',{staticClass:\"white--text\",attrs:{\"left\":\"\",\"color\":\"#B0B1B3\"}},[_vm._v(_vm._s(leg.taxRate.countryId))]),_vm._v(\" \"+_vm._s(leg.share)+\" % \")],1)})}}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import PagedMixin from '@/app/mixins/paged-mixin'\r\nimport Itinerary from '@/itineraries/models/itinerary'\r\nimport { Component, Mixins, Prop, Vue, Watch } from 'vue-property-decorator'\r\n\r\n@Component\r\nexport default class ItinerariesTable extends Mixins(PagedMixin) {\r\n\r\n @Prop({ type: Boolean, default: false })\r\n public loading!: boolean\r\n\r\n @Prop({ default: () => [] })\r\n public itineraries!: Itinerary[]\r\n\r\n get headers() {\r\n return [\r\n { text: 'Standard', value: 'standard', sortable: false },\r\n { text: 'Name', value: 'name' },\r\n { text: 'Startpunkt', value: 'origin' },\r\n { text: 'Zielpunkt', value: 'destination' },\r\n { text: 'Land', value: 'country', sortable: false },\r\n { text: 'Kommentar', value: 'remarks' },\r\n ]\r\n }\r\n\r\n private calculateForeignShare(itinerary: Itinerary) {\r\n return itinerary.legs\r\n .filter((l) => l.taxRate && l.taxRate.countryId !== 'AT')\r\n .reduce((sum, l) => sum + l.share, 0)\r\n }\r\n\r\n private onClick(itinerary: Itinerary) {\r\n this.$emit('edit', itinerary)\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./itineraries-table.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./itineraries-table.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./itineraries-table.vue?vue&type=template&id=45920eb7&scoped=true&\"\nimport script from \"./itineraries-table.ts?vue&type=script&lang=js&\"\nexport * from \"./itineraries-table.ts?vue&type=script&lang=js&\"\nimport style0 from \"./itineraries-table.vue?vue&type=style&index=0&id=45920eb7&lang=sass&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"45920eb7\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VChip } from 'vuetify/lib/components/VChip';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VAvatar,VChip,VDataTable,VIcon})\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./customers.vue?vue&type=style&index=0&lang=sass&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./invoice-badge.vue?vue&type=style&index=0&lang=sass&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-select',_vm._b({attrs:{\"items\":_vm.items,\"item-text\":\"name\",\"item-value\":\"value\"},on:{\"change\":_vm.change},model:{value:(_vm.status),callback:function ($$v) {_vm.status=$$v},expression:\"status\"}},'v-select',_vm.$attrs,false))}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\r\nimport { Component, Mixins, Prop, Vue, Watch } from \"vue-property-decorator\"\r\nimport { InvoiceState } from \"../models/invoice-state\"\r\n\r\n@Component\r\nexport default class InvoiceStateSelect extends Vue {\r\n @Prop()\r\n public value: InvoiceState | null = null\r\n\r\n public status: InvoiceState | null = null\r\n\r\n public items = [\r\n { name: \"(Status)\", value: null },\r\n { name: \"offen\", value: InvoiceState.Pending },\r\n { name: \"bezahlt\", value: InvoiceState.Paid },\r\n { name: \"storniert\", value: InvoiceState.Canceled },\r\n { name: \"1. Mahnung\", value: InvoiceState.FirstDunning },\r\n { name: \"2. Mahnung\", value: InvoiceState.SecondDunning },\r\n { name: \"3. Mahnung\", value: InvoiceState.ThirdDunning },\r\n { name: \"Gutschrift\", value: InvoiceState.CreditNote },\r\n ]\r\n\r\n private change() {\r\n this.$emit('input', this.status)\r\n }\r\n\r\n private mounted() {\r\n this.status = this.value\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./invoice-state-select.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./invoice-state-select.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./invoice-state-select.vue?vue&type=template&id=1c360f50&\"\nimport script from \"./invoice-state-select.vue?vue&type=script&lang=ts&\"\nexport * from \"./invoice-state-select.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSelect } from 'vuetify/lib/components/VSelect';\ninstallComponents(component, {VSelect})\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./itineraries-table.vue?vue&type=style&index=0&id=45920eb7&lang=sass&scoped=true&\"","import store from '@/app/store'\r\nimport Itinerary from '@/itineraries/models/itinerary'\r\nimport TaxRate from '@/itineraries/models/tax-rate'\r\nimport itinerariesService from '@/itineraries/services/itineraries-service'\r\nimport taxRatesService from '@/itineraries/services/tax-rates-service'\r\nimport { Action, Module, Mutation, MutationAction, VuexModule } from 'vuex-module-decorators'\r\n\r\n@Module({ store, name: 'ItinerariesModule' })\r\nexport default class ItinerariesModule extends VuexModule {\r\n\r\n private _loading = false\r\n private _itineraries: Itinerary[] = []\r\n\r\n private _rates: TaxRate[] = []\r\n\r\n get loading() {\r\n return this._loading\r\n }\r\n\r\n get itineraries() {\r\n return this._itineraries\r\n }\r\n\r\n get rates() {\r\n return this._rates\r\n }\r\n\r\n @Mutation\r\n public setLoading(loading: boolean) {\r\n this._loading = loading\r\n }\r\n\r\n @Mutation\r\n public setItineraries(itineraries: Itinerary[]) {\r\n this._itineraries = itineraries\r\n }\r\n\r\n @Mutation\r\n public setRates(rates: TaxRate[]) {\r\n this._rates = rates\r\n }\r\n\r\n @Action\r\n public async fetchItineraries() {\r\n this.context.commit('setLoading', true)\r\n const itineraries = await itinerariesService.fetchAll()\r\n this.context.commit('setItineraries', itineraries)\r\n this.context.commit('setLoading', false)\r\n }\r\n\r\n @Action\r\n public async fetchAll() {\r\n this.context.commit('setLoading', true)\r\n const rates = await taxRatesService.fetchAll()\r\n const itineraries = await itinerariesService.fetchAll()\r\n this.context.commit('setRates', rates)\r\n this.context.commit('setItineraries', itineraries)\r\n this.context.commit('setLoading', false)\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-select',{staticClass:\"mt-0\",attrs:{\"items\":_vm.items,\"label\":\"Land\",\"filled\":_vm.isFilled,\"outlined\":_vm.isOutlined,\"hide-details\":_vm.doHideDetails,\"v-validate\":_vm.vValidate,\"item-text\":\"name\",\"item-value\":\"code\",\"return-object\":\"\"},scopedSlots:_vm._u([{key:\"no-data\",fn:function(){return [_c('v-list-item',[_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Keine Treffer für \"+_vm._s(_vm.search))])],1)],1)]},proxy:true}]),model:{value:(_vm.country),callback:function ($$v) {_vm.country=$$v},expression:\"country\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Country from '@/locations/models/country'\r\nimport countriesService from '@/locations/services/countries-service'\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator'\r\n\r\n@Component\r\nexport default class CountrySelect extends Vue {\r\n\r\n @Prop()\r\n readonly value!: string\r\n\r\n @Prop({ default: false })\r\n readonly filled!: boolean\r\n\r\n @Prop({ default: true })\r\n readonly outlined!: boolean\r\n\r\n @Prop()\r\n readonly vValidate!: string\r\n\r\n @Prop({ default: true })\r\n readonly hideDetails!: boolean\r\n\r\n private items: Country[] = []\r\n private search = ''\r\n private country: Country | null = this.select(this.value)\r\n\r\n @Watch('value')\r\n private valueChanged(val: string, old: string) {\r\n if (val !== old) {\r\n this.country = this.select(val)\r\n }\r\n }\r\n\r\n @Watch('country')\r\n private countryChanged(val: Country, old: Country) {\r\n if (val && old && val.code !== old.code) {\r\n this.$emit('input', val.code)\r\n }\r\n }\r\n\r\n private filter(item: Country, queryText: string, itemText: string) {\r\n return item.name.toLowerCase().indexOf(queryText.toLowerCase()) > -1\r\n }\r\n\r\n private select(code: string) {\r\n if (this.items) {\r\n const val = this.items.find((c) => c.code === code)\r\n if (val) {\r\n return val\r\n }\r\n }\r\n return null\r\n }\r\n\r\n get isOutlined() {\r\n return this.outlined === true ? true : false\r\n }\r\n\r\n get isFilled() {\r\n return this.filled === true ? true : false\r\n }\r\n\r\n get doHideDetails() {\r\n return this.hideDetails === true ? true : false\r\n }\r\n\r\n private created() {\r\n this.items = countriesService.findAllAsync()\r\n }\r\n\r\n private mounted() {\r\n this.country = this.select(this.value)\r\n console.log(this.country)\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./country-select.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./country-select.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./country-select.vue?vue&type=template&id=705c49ac&\"\nimport script from \"./country-select.ts?vue&type=script&lang=js&\"\nexport * from \"./country-select.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\ninstallComponents(component, {VListItem,VListItemContent,VListItemTitle,VSelect})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.address)?_c('div',[_vm._v(\" \"+_vm._s(_vm.address.addressLine)+\" \"),(_vm.address.addressLine)?_c('span',[_vm._v(\",\")]):_vm._e(),_vm._v(\" \"+_vm._s(_vm.address.countryId)+\" \"),(_vm.address.countryId)?_c('span',[_vm._v(\"-\")]):_vm._e(),_vm._v(\" \"+_vm._s(_vm.address.city)+\" \")]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Address from '@/locations/models/address'\r\nimport { Component, Prop, Vue } from 'vue-property-decorator'\r\n\r\n@Component\r\nexport default class AddressLine extends Vue {\r\n\r\n @Prop({ required: true })\r\n private address!: Address\r\n\r\n\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./address-line.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./address-line.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./address-line.vue?vue&type=template&id=aa56ec5c&\"\nimport script from \"./address-line.ts?vue&type=script&lang=js&\"\nexport * from \"./address-line.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export default class Address {\r\n\r\n public countryId = ''\r\n public countryName = ''\r\n public city = ''\r\n public addressLine = ''\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"customers\"},[_c('v-row',{staticClass:\"mb-5 align-center\"},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_c('v-btn',{staticClass:\"btn-fab-text\",attrs:{\"rounded\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.create}},[_c('x-icon',{attrs:{\"icon-class\":\"icon icon-add-2\"}}),_c('span',{staticClass:\"hidden-sm-and-down\"},[_vm._v(\"  Neuer Kunde\")])],1)],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_c('v-text-field',{directives:[{name:\"debounce\",rawName:\"v-debounce:500\",value:(_vm.fetchAll),expression:\"fetchAll\",arg:\"500\"}],staticClass:\"mx-1 mt-2\",attrs:{\"hide-details\":\"\",\"append-icon\":\"search\",\"placeholder\":\"Suchen\",\"single-line\":\"\",\"clearable\":\"\"},on:{\"click:clear\":_vm.clearAndFetchAll},model:{value:(_vm.text),callback:function ($$v) {_vm.text=$$v},expression:\"text\"}})],1),_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_c('div',{staticClass:\"d-flex w-100 justify-end\"},[_c('v-select',{staticClass:\"customer-sorting\",attrs:{\"items\":_vm.sortItems,\"solo\":\"\",\"flat\":\"\",\"hide-details\":\"\"},model:{value:(_vm.sorting),callback:function ($$v) {_vm.sorting=$$v},expression:\"sorting\"}})],1)])],1),_c('v-row',[_c('v-col',{staticStyle:{\"text-align\":\"center\"},attrs:{\"cols\":\"12\"}},[_vm._v(\"Anzahl: \"+_vm._s(_vm.pagination.totalItems))])],1),(_vm.loading)?_c('div',{staticClass:\"text-center mt-5\"},[_c('v-progress-circular',{attrs:{\"size\":50,\"indeterminate\":\"\"}})],1):(_vm.customers.length === 0 && _vm.pagination.totalItems === 0)?_c('div',{staticClass:\"text-center mt-5\"},[_c('em',[_vm._v(\"Kein Ergebnis zu ihrem Suchbegriff\")])]):_c('div',[_c('v-container',{attrs:{\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"row\":\"\",\"wrap\":\"\"}},_vm._l((_vm.customers),function(customer){return _c('v-flex',{key:customer.id,attrs:{\"xs12\":\"\",\"sm6\":\"\",\"md4\":\"\"}},[_c('customer-card',{attrs:{\"customer\":customer},on:{\"edit\":_vm.edit,\"remove\":_vm.remove}})],1)}),1)],1),_c('div',{staticClass:\"text-xs-right\"},[_c('v-pagination',{staticClass:\"elevation-0\",attrs:{\"total-visible\":5,\"length\":_vm.pagination.length},on:{\"input\":_vm.fetchAll},model:{value:(_vm.pagination.page),callback:function ($$v) {_vm.$set(_vm.pagination, \"page\", $$v)},expression:\"pagination.page\"}})],1)],1),_c('x-confirm-dialog',{ref:\"confirmDialog\",attrs:{\"title\":\"Kunde löschen?\",\"confirm-button-text\":\"Löschen\"},on:{\"confirm\":_vm.removeConfirmed}},[_vm._v(\"Wollen Sie den Kunden wirklich löschen?\")]),_c('customer-dialog',{ref:\"dialog\",on:{\"save\":_vm.save,\"update\":_vm.update}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import PaginationRequest from \"@/common/components/pagination/pagination-request\"\r\nimport XConfirmDialog from \"@/common/components/x-confirm-dialog/x-confirm-dialog\"\r\nimport CustomerDialog from \"@/customers/components/customer-dialog/customer-dialog\"\r\nimport Customer from \"@/customers/entities/customer\"\r\nimport customersService from \"@/customers/services/customers-service\"\r\nimport { DebouncedFunc } from \"lodash\"\r\nimport debounce from \"lodash/debounce\"\r\nimport {\r\n Component,\r\n Mixins,\r\n Prop,\r\n Ref,\r\n Vue,\r\n Watch,\r\n} from \"vue-property-decorator\"\r\n\r\n@Component\r\nexport default class Customers extends Vue {\r\n @Ref()\r\n private confirmDialog!: XConfirmDialog\r\n\r\n @Ref()\r\n private dialog!: CustomerDialog\r\n\r\n private loading: boolean = false\r\n private customers: Customer[] = []\r\n\r\n private debounced: DebouncedFunc<() => Promise> | null = null\r\n private text: string = \"\"\r\n private sorting: string = \"company-asc\"\r\n private pagination = new PaginationRequest(9)\r\n\r\n private sortItems = [\r\n { value: \"company-asc\", text: \"Firma A - Z\" },\r\n { value: \"company-desc\", text: \"Firma Z - A\" },\r\n { value: \"lastname-asc\", text: \"Nachname A - Z\" },\r\n { value: \"lastname-desc\", text: \"Nachname Z - A\" },\r\n ]\r\n\r\n @Watch(\"sorting\")\r\n private sortingChanged(val: string) {\r\n switch (val) {\r\n case \"company-asc\":\r\n this.pagination.sortBy = [\"company\"]\r\n this.pagination.sortDesc = [false]\r\n break\r\n case \"company-desc\":\r\n this.pagination.sortBy = [\"company\"]\r\n this.pagination.sortDesc = [true]\r\n break\r\n case \"lastname-asc\":\r\n this.pagination.sortBy = [\"lastname\"]\r\n this.pagination.sortDesc = [false]\r\n break\r\n case \"lastname-desc\":\r\n this.pagination.sortBy = [\"lastname\"]\r\n this.pagination.sortDesc = [true]\r\n break\r\n }\r\n this.fetchAll()\r\n }\r\n\r\n private async clearAndFetchAll() {\r\n this.text = \"\"\r\n await this.fetchAll()\r\n }\r\n\r\n private async fetchAll() {\r\n this.loading = true\r\n const response = await customersService.filterAllAsync(\r\n this.text,\r\n this.pagination\r\n )\r\n this.customers = response.items\r\n this.pagination.totalItems = response.totalItems\r\n if (\r\n (this.pagination.page - 1) * this.pagination.itemsPerPage >\r\n this.pagination.totalItems\r\n ) {\r\n this.pagination.page = 1\r\n }\r\n this.loading = false\r\n }\r\n\r\n private create() {\r\n this.dialog.create()\r\n }\r\n\r\n private edit(customer: Customer) {\r\n this.dialog.edit(customer)\r\n }\r\n\r\n private async save(customer: Customer) {\r\n await customersService.createAsync(customer)\r\n await this.fetchAll()\r\n }\r\n\r\n private async update(customer: Customer) {\r\n await customersService.updateAsync(customer)\r\n await this.fetchAll()\r\n }\r\n\r\n private async remove(customer: Customer) {\r\n this.confirmDialog.open(customer)\r\n }\r\n\r\n private async removeConfirmed(customer: Customer) {\r\n await customersService.deleteAsync(customer.id)\r\n await this.fetchAll()\r\n }\r\n\r\n private async mounted() {\r\n this.pagination.sortBy = [\"company\"]\r\n this.pagination.sortDesc = [false]\r\n\r\n await this.fetchAll()\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./customers.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./customers.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./customers.vue?vue&type=template&id=2fab4fe2&\"\nimport script from \"./customers.ts?vue&type=script&lang=js&\"\nexport * from \"./customers.ts?vue&type=script&lang=js&\"\nimport style0 from \"./customers.vue?vue&type=style&index=0&lang=sass&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VPagination } from 'vuetify/lib/components/VPagination';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\ninstallComponents(component, {VBtn,VCol,VContainer,VFlex,VLayout,VPagination,VProgressCircular,VRow,VSelect,VTextField})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-select',{attrs:{\"items\":_vm.itineraries,\"item-text\":\"name\",\"item-value\":\"id\",\"label\":\"Steuersatz\",\"filled\":\"\",\"hide-details\":\"\",\"loading\":_vm.loading,\"disabled\":_vm.disabled},model:{value:(_vm.itineraryId),callback:function ($$v) {_vm.itineraryId=$$v},expression:\"itineraryId\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Itinerary from '@/itineraries/models/itinerary'\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator'\r\n// import itinerariesService from '@/itineraries/services/itineraries-service'\r\n\r\n@Component\r\nexport default class ItinerarySelection extends Vue {\r\n\r\n @Prop({ required: true })\r\n private value!: string\r\n\r\n @Prop({ default: () => [] })\r\n private itineraries!: Itinerary[]\r\n\r\n @Prop({ default: false })\r\n private loading!: boolean\r\n\r\n @Prop({ default: false })\r\n private disabled!: boolean\r\n\r\n private itineraryId: string = this.value\r\n\r\n get defaultItinerary() {\r\n return this.itineraries.find((i) => i.isDefault)\r\n }\r\n\r\n @Watch('value')\r\n private watchValue(val: string, old: string) {\r\n if (!val) {\r\n this.setDefaultItinerary()\r\n } else if (val !== old) {\r\n this.itineraryId = val\r\n }\r\n }\r\n\r\n @Watch('itineraryId')\r\n private watchItineraryId(val: string, old: string) {\r\n if (val !== old) {\r\n this.$emit('input', val)\r\n }\r\n }\r\n\r\n // @Watch('itineraries', { deep: true })\r\n // private itinerariesChanged(val: Itinerary[], old: Itinerary[]) {\r\n // if (val !== old) {\r\n // this.setDefaultItinerary()\r\n // }\r\n // }\r\n\r\n private setDefaultItinerary() {\r\n if (this.defaultItinerary) {\r\n this.itineraryId = this.defaultItinerary.id\r\n } else if (this.itineraries.length > 0) {\r\n this.itineraryId = this.itineraries[0].id\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./itinerary-selection.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--13-3!./itinerary-selection.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./itinerary-selection.vue?vue&type=template&id=d17cac5c&\"\nimport script from \"./itinerary-selection.ts?vue&type=script&lang=js&\"\nexport * from \"./itinerary-selection.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSelect } from 'vuetify/lib/components/VSelect';\ninstallComponents(component, {VSelect})\n","import SharesPerCountry from './shares-per-country'\r\n\r\nexport default class InvoiceStakes {\r\n public shares: SharesPerCountry[] = []\r\n public netSum = 0\r\n public taxSum = 0\r\n public reminderCharges = 0\r\n public totalSum = 0\r\n}","import Guid from \"@/app/utils/guid\";\r\nimport { InvoiceState } from \"@/invoices/models/invoice-state\";\r\nimport { PaymentMethod } from \"@/invoices/models/payment-method\";\r\nimport Ride from \"@/rides/models/ride\";\r\nimport moment from \"moment\";\r\nimport Customer from \"@/customers/entities/customer\";\r\nimport InvoiceStakes from \"./invoice-stakes\";\r\n\r\nexport default class Invoice {\r\n public id = Guid.empty();\r\n public tenantId = Guid.empty();\r\n public invoiceNo = \"\";\r\n public date = moment().format(\"YYYY-MM-DD HH:mm\");\r\n public invoiceState = InvoiceState.Pending;\r\n public paymentMethod: PaymentMethod | null = PaymentMethod.Invoice;\r\n public rides: string[] = [];\r\n public ridesToCreate: Ride[] = [];\r\n public cost = 0;\r\n public amount: number | null = null;\r\n public reminderCharges: number | null = null;\r\n public customerId: string | null = null;\r\n public customer: Customer | null = null;\r\n public remarks = \"\";\r\n public isArchived = false;\r\n public isHidden = false;\r\n public stakes = new InvoiceStakes();\r\n\r\n public get isNew() {\r\n return this.id === Guid.empty();\r\n }\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"itineraries\"},[_c('v-layout',[_c('v-row',{staticClass:\"mb-5\",attrs:{\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_c('v-btn',{staticClass:\"btn-fab-text\",attrs:{\"rounded\":\"\",\"color\":\"primary\"},on:{\"click\":_vm.create}},[_c('x-icon',{staticClass:\"mr-2\",attrs:{\"icon-class\":\"icon icon-add-2\"}}),_vm._v(\"Neuer Steuersatz \")],1)],1)],1)],1),_c('itineraries-table',{attrs:{\"loading\":_vm.loading,\"itineraries\":_vm.itineraries,\"pagination\":_vm.pagination},on:{\"update:pagination\":function($event){_vm.pagination=$event},\"edit\":_vm.edit}}),_c('itinerary-dialog',{ref:\"dialog\",attrs:{\"rates\":_vm.rates},on:{\"save\":_vm.save,\"update\":_vm.update,\"delete\":_vm.delete_}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class Country {\r\n\r\n public code = ''\r\n public name = ''\r\n}\r\n","import Guid from '@/app/utils/guid'\r\nimport Country from '@/locations/models/country'\r\n\r\nexport default class TaxRate {\r\n\r\n public id = Guid.empty()\r\n public country = new Country()\r\n public countryId = ''\r\n public rate = 0.0\r\n public description = ''\r\n\r\n constructor(other: TaxRate | null = null) {\r\n if(other != null) {\r\n Object.assign(this, other)\r\n } \r\n }\r\n\r\n public get displayName() {\r\n if(this.description) {\r\n return this.country.name + ' ' + this.description\r\n }\r\n return this.country.name\r\n }\r\n}\r\n","import store from \"@/app/store\"\r\nimport PaginationRequest from \"@/common/components/pagination/pagination-request\"\r\nimport ItineraryDialog from \"@/itineraries/components/itinerary-dialog/itinerary-dialog\"\r\nimport Itinerary from \"@/itineraries/models/itinerary\"\r\nimport TaxRate from \"@/itineraries/models/tax-rate\"\r\nimport itinerariesService from \"@/itineraries/services/itineraries-service\"\r\nimport taxRatesService from \"@/itineraries/services/tax-rates-service\"\r\nimport ItinerariesModule from \"@/itineraries/store/itineraries-module\"\r\nimport { Component, Vue, Watch } from \"vue-property-decorator\"\r\nimport { getModule } from \"vuex-module-decorators\"\r\nimport snacks from \"@/app/services/snacks\"\r\n@Component\r\nexport default class Itineraries extends Vue {\r\n private itinerariesModule = getModule(ItinerariesModule, store)\r\n\r\n private dialog!: ItineraryDialog\r\n private loading: boolean = false\r\n private rates: TaxRate[] = []\r\n private itineraries: Itinerary[] = []\r\n\r\n private pagination = new PaginationRequest()\r\n\r\n public async fetchAll() {\r\n this.loading = true\r\n const response = await itinerariesService.findAllAsync(this.pagination)\r\n this.itineraries = response.items\r\n this.pagination.totalItems = response.totalItems\r\n this.loading = false\r\n }\r\n\r\n public create() {\r\n this.dialog.create()\r\n }\r\n\r\n public edit(itinerary: Itinerary) {\r\n this.dialog.edit(itinerary)\r\n }\r\n\r\n public async save(itinerary: Itinerary) {\r\n // TODO: Think of a canonical approach to this issue.\r\n // Remove object references to tax rates.\r\n itinerary.legs.forEach((l) => (l.taxRate = null))\r\n\r\n await itinerariesService.createAsync(itinerary)\r\n await this.fetchAll()\r\n await this.itinerariesModule.fetchItineraries()\r\n }\r\n\r\n public async update(itinerary: Itinerary) {\r\n // Remove object references to tax rates.\r\n itinerary.legs.forEach((l) => (l.taxRate = null))\r\n\r\n await itinerariesService.updateAsync(itinerary)\r\n await this.fetchAll()\r\n await this.itinerariesModule.fetchItineraries()\r\n }\r\n\r\n public async delete_(itinerary: Itinerary) {\r\n try {\r\n if (confirm(\"Sind Sie sicher?\")) {\r\n itinerariesService.deleteAsync(itinerary.id)\r\n await this.fetchAll()\r\n }\r\n } catch {\r\n snacks.error(\"Der Steuersatz konnte nicht gelöscht werden.\")\r\n }\r\n this.fetchAll()\r\n }\r\n\r\n public async mounted() {\r\n this.dialog = this.$refs.dialog as ItineraryDialog\r\n let tmpRates = await taxRatesService.fetchAll()\r\n this.rates = tmpRates.map((r) => new TaxRate(r))\r\n this.rates.splice(0, 0, new TaxRate())\r\n }\r\n\r\n @Watch(\"pagination\", { deep: true })\r\n private async paginationChanged(\r\n newVal: PaginationRequest,\r\n oldVal: PaginationRequest\r\n ) {\r\n if (newVal !== oldVal) {\r\n await this.fetchAll()\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./itineraries.ts?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!./itineraries.ts?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./itineraries.vue?vue&type=template&id=e34c69fc&\"\nimport script from \"./itineraries.ts?vue&type=script&lang=js&\"\nexport * from \"./itineraries.ts?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VLayout,VRow})\n"],"sourceRoot":""}