{"version":3,"sources":["webpack:///./src/pages/reports/hotel-sales/hotel-sales-report.shell.vue?fbca","webpack:///./src/pages/reports/hotel-sales/hotel-sales-report.shell.vue","webpack:///./src/pages/reports/hotel-sales/hotel-sales-report.shell.vue?c6d1","webpack:///./src/pages/reports/hotel-sales/hotel-sales-report.shell.vue?33b5"],"names":["render","_vm","this","_h","$createElement","_c","_self","attrs","ref","staticClass","columns","filters","query","on","$event","updateTotals","scopedSlots","_u","key","fn","cleanFilters","exportLoading","exportData","proxy","props","row","type","_v","_s","$t","_e","getTypeColor","orderNumber","isActive","_l","roomType","roomTypeIndex","id","$tc","staticStyle","totals","numberOfRooms","numberOfAdults","numberOfChildren","pax","cost","toFixed","profit","profitMargin","price","currency","cancellationInsurance","adultOvernight","childOvernight","roomOvernight","cardPurchaseCommission","cardSaleCommission","staticRenderFns","HotelsSalesReportShell","_Mixins","_inherits","_super","_createSuper","_this","_classCallCheck","label","$i18n","t","fieldName","value","useChips","multiple","options","start","Date","end","optionName","optionValue","namespace","action","_createClass","_step","data","arguments","length","undefined","result","_iterator","_createForOfIteratorHelper","s","n","done","report","rooms","adults","children","Number","totalCost","totalPrice","cancellationInsurancePrice","err","e","f","status","product","_product$property","PROPERTY_TYPES","includes","property","name","_this2","$nextTick","$refs","table","refresh","_exportData","_asyncToGenerator","_regeneratorRuntime","mark","_callee","queryFilter","filter","_yield$compass$do","orders","workbook","worksheet","buffer","link","wrap","_context","prev","next","forEach","$gte","moment","set","hour","minute","seconds","format","$lte","Array","isArray","$in","_objectSpread","compass","do","sent","Workbook","addWorksheet","header","o","_step2","profitPercent","total","_iterator2","propertyProducts","propertyProduct","calculations","remaining","hotel","checkInDate","checkOutDate","childrenAges","join","costCurrency","priceCurrency","concat","addRow","_step3","_iterator3","cancellationInsuranceProducts","cancellationInsuranceProduct","remainingCollection","xlsx","writeBuffer","document","createElement","href","URL","createObjectURL","Blob","setAttribute","body","appendChild","click","stop","apply","orderId","balancePaymentId","$router","push","params","map","get","results","sortable","align","style","field","bookingDate","permissions","populate","path","select","sort","Mixins","TableMixin","__decorate","Getter","Watch","Component","components","component"],"mappings":"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","file":"js/chunk-2d0d83e6.94606dcc.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('layout',{attrs:{\"name\":\"default\"}},[_c('toolbar'),_c('q-data-table',{ref:\"table\",staticClass:\"q-px-md\",attrs:{\"columns\":_vm.columns,\"filters\":_vm.filters,\"query\":_vm.query,\"action\":\"hotelSales\",\"namespace\":\"reports\"},on:{\"update-data\":function($event){return _vm.updateTotals($event)}},scopedSlots:_vm._u([{key:\"top-right\",fn:function(){return [_c('q-btn',{attrs:{\"color\":\"blue\",\"icon\":\"mdi-cancel\",\"label\":\"Clean Filters\",\"flat\":\"\",\"no-caps\":\"\"},on:{\"click\":_vm.cleanFilters}}),_c('q-btn',{attrs:{\"color\":\"green\",\"icon-right\":\"mdi-file-excel\",\"label\":\"Excel\",\"no-caps\":\"\",\"loading\":_vm.exportLoading},on:{\"click\":_vm.exportData}})]},proxy:true},{key:\"body-cell-type\",fn:function(props){return [_c('q-td',{attrs:{\"auto-width\":true,\"props\":props}},[(props.row.type === 'NEW')?_c('div',{staticClass:\"text-positive\"},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.NEW'))+\" \")]):(props.row.type === 'CHANGE')?_c('div',{staticClass:\"text-orange\"},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.CHANGED'))+\" \")]):(props.row.type === 'CANCEL')?_c('div',{staticClass:\"text-negative\"},[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.CANCELLED'))+\" \")]):_vm._e()])]}},{key:\"body-cell-orderNumber\",fn:function(props){return [_c('q-td',{attrs:{\"auto-width\":true,\"props\":props}},[_c('q-badge',{attrs:{\"color\":_vm.getTypeColor(props.row.type)}},[_vm._v(\" \"+_vm._s(props.row.orderNumber)+\" \")])],1)]}},{key:\"body-cell-isActive\",fn:function(props){return [_c('q-td',{attrs:{\"auto-width\":true,\"props\":props}},[_c('q-icon',{attrs:{\"color\":props.row.isActive ? 'positive' : 'negative',\"name\":props.row.isActive ? 'mdi-check-circle-outline' : 'mdi-close-circle-outline',\"size\":\"18px\"}})],1)]}},{key:\"body-cell-roomTypes\",fn:function(props){return [(props.row.roomTypes)?_c('q-td',{attrs:{\"auto-width\":true,\"props\":props}},_vm._l((props.row.roomTypes),function(roomType,roomTypeIndex){return _c('div',{key:props.row.id + 'r' + roomTypeIndex},[_c('q-badge',[_vm._v(\" \"+_vm._s(roomType)+\" \")])],1)}),0):_vm._e()]}},{key:\"body-cell-actions\",fn:function(props){return [_c('q-td',{attrs:{\"auto-width\":true,\"props\":props}},[_c('q-btn',{staticClass:\"menu-button\",attrs:{\"color\":\"primary\",\"flat\":\"\",\"icon\":\"mdi-dots-vertical\",\"round\":\"\"}},[_c('q-menu',{attrs:{\"auto-close\":\"\"}},[_c('q-list',{attrs:{\"bordered\":\"\",\"separator\":\"\"}},[_c('q-item',{attrs:{\"to\":(\"/sales/payments/\" + (props.row.id)),\"clickable\":\"\"}},[_c('q-item-section',[_vm._v(\" \"+_vm._s(_vm.$t('GENERAL.PAYMENTS'))+\" \")])],1)],1),_c('q-list',{attrs:{\"bordered\":\"\",\"separator\":\"\"}},[_c('q-item',{attrs:{\"to\":(\"/sales/order-documents/\" + (props.row.id)),\"clickable\":\"\"}},[_c('q-item-section',[_vm._v(\" \"+_vm._s(_vm.$tc('GENERAL.DOCUMENT', 2))+\" \")])],1)],1)],1)],1)],1)]}},{key:\"top-row\",fn:function(){return [_c('th'),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.numberOfRooms))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.numberOfAdults))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.numberOfChildren))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.pax))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.cost.toFixed(2)))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.profit.toFixed(2)))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.profitMargin.toFixed(2)))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.price.toFixed(2)))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(_vm._s(_vm.totals.currency))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.cancellationInsurance))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.adultOvernight))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.childOvernight))]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.roomOvernight))]),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-left text-primary\",staticStyle:{\"font-size\":\"14px\"}}),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\" T: \"+_vm._s(_vm.totals.cardPurchaseCommission.toFixed(2))+\" \")]),_c('th',{staticClass:\"text-center text-primary\",staticStyle:{\"font-size\":\"14px\"}},[_vm._v(\"T: \"+_vm._s(_vm.totals.cardSaleCommission.toFixed(2)))])]},proxy:true}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { IProductType, PROPERTY_TYPES } from '@resclick/data-access';\nimport { Component, Mixins, Watch } from 'vue-property-decorator';\nimport TableMixin from '@/mixins/table.mixin';\nimport { Getter } from 'vuex-class';\nimport moment from 'moment';\nimport { compass } from '@resclick/compass';\nimport { Workbook } from 'exceljs';\n\n@Component({\n components: {},\n})\nexport default class HotelsSalesReportShell extends Mixins(TableMixin) {\n @Getter('user/defaultCurrency') currency!: string;\n @Getter('user/ownedPermissions') permissions!: string;\n\n totals = {\n numberOfRooms: 0,\n numberOfAdults: 0,\n numberOfChildren: 0,\n pax: 0,\n cost: 0,\n price: 0,\n profit: 0,\n profitMargin: 0,\n cancellationInsurance: 0,\n adultOvernight: 0,\n childOvernight: 0,\n roomOvernight: 0,\n cardPurchaseCommission: 0,\n cardSaleCommission: 0,\n // pax: 0,\n // productsCount: 0,\n // ordersCount: 0,\n // turnover: 0,\n };\n\n updateTotals(data: any = []) {\n const result = {\n numberOfRooms: 0,\n numberOfAdults: 0,\n numberOfChildren: 0,\n pax: 0,\n cost: 0,\n price: 0,\n profit: 0,\n profitMargin: 0,\n currency: '',\n cancellationInsurance: 0,\n adultOvernight: 0,\n childOvernight: 0,\n roomOvernight: 0,\n cardPurchaseCommission: 0,\n cardSaleCommission: 0,\n };\n\n for (const report of data) {\n result.numberOfRooms += report.rooms;\n result.numberOfAdults += report.adults;\n result.numberOfChildren += report.children;\n result.pax += report.pax;\n result.cost += Number(report.totalCost);\n result.price += Number(report.totalPrice);\n result.currency = report.currency;\n result.cancellationInsurance += Number(report.cancellationInsurancePrice);\n result.adultOvernight += report.adultOvernight;\n result.childOvernight += report.childOvernight;\n result.roomOvernight += report.roomOvernight;\n result.cardPurchaseCommission += Number(report.cardPurchaseCommission);\n result.cardSaleCommission += Number(report.cardSaleCommission);\n result.profit += Number(report.profit);\n\n result.profitMargin += Number(report.profitMargin);\n }\n\n result.profitMargin = result.profitMargin / data.length;\n\n this.totals = result;\n }\n\n exportLoading = false;\n\n get columns() {\n const results: any[] = [\n { label: '#', name: 'orderNumber', sortable: true, align: 'center' },\n\n {\n label: 'GENERAL.CUSTOMER',\n name: 'customer',\n sortable: true,\n },\n {\n label: 'GENERAL.HOTEL',\n name: 'property',\n sortable: true,\n },\n {\n label: 'GENERAL.COMPANY',\n name: 'company',\n sortable: true,\n },\n {\n label: 'GENERAL.BOOKING_DATE',\n name: 'bookingDate',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n field: (row: any) => row.bookingDate && moment(row.bookingDate).format('DD/MM/YYYY HH:mm'),\n },\n\n {\n label: 'GENERAL.CHECK_IN',\n name: 'checkInDate',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n field: (row: any) => row.checkInDate && moment(row.checkInDate).format('DD/MM/YYYY'),\n },\n {\n label: 'GENERAL.CHECK_OUT',\n name: 'checkOutDate',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n field: (row: any) => row.checkOutDate && moment(row.checkOutDate).format('DD/MM/YYYY'),\n },\n\n {\n label: 'GENERAL.ROOM',\n name: 'roomTypes',\n sortable: true,\n },\n {\n label: 'GENERAL.NUMBER_OF_ROOMS',\n name: 'rooms',\n sortable: true,\n },\n {\n label: 'GENERAL.NUMBER_OF_ADULTS',\n name: 'adults',\n sortable: true,\n },\n {\n label: 'GENERAL.NUMBER_OF_CHILDREN',\n name: 'children',\n sortable: true,\n },\n {\n label: 'GENERAL.PAX',\n name: 'pax',\n sortable: true,\n },\n ];\n\n if (this.permissions.includes('VIEW_COST')) {\n results.push({\n label: 'GENERAL.COST',\n name: 'totalCost',\n style: 'width:1px',\n sortable: true,\n // field: (row: any) => `${this.$formatMoney(row.totalCost.value || 0)}`,\n });\n\n results.push({\n label: 'GENERAL.PROFIT',\n name: 'profit',\n style: 'width:1px; text-align: center',\n sortable: true,\n });\n\n results.push({\n label: 'GENERAL.PROFIT_MARGIN',\n name: 'profitMargin',\n style: 'width:1px; text-align: center',\n sortable: true,\n field: (row: any) => row.profitMargin + '%',\n });\n }\n\n results.push(\n ...[\n {\n label: 'GENERAL.SALES_AMOUNT',\n name: 'totalPrice',\n sortable: true,\n align: 'center',\n style: 'width:1px',\n },\n {\n label: 'GENERAL.CURRENCY',\n name: 'currency',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n {\n label: 'GENERAL.CANCELLATION_INSURANCE',\n name: 'cancellationInsurancePrice',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n {\n label: 'GENERAL.ADULT_OVERNIGHT',\n name: 'adultOvernight',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n {\n label: 'GENERAL.CHILD_OVERNIGHT',\n name: 'childOvernight',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n {\n label: 'GENERAL.ROOM_OVERNIGHT',\n name: 'roomOvernight',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n {\n label: 'GENERAL.AVERAGE_PP_PURCHASE',\n name: 'averagePpPurchase',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n {\n label: 'GENERAL.AVERAGE_PP_SALE',\n name: 'averagePpSale',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n {\n label: 'GENERAL.CARD_PURCHASE_COMMISSION',\n name: 'cardPurchaseCommission',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n {\n label: 'GENERAL.CARD_SALE_COMMISSION',\n name: 'cardSaleCommission',\n sortable: true,\n style: 'width:1px',\n align: 'center',\n },\n ],\n );\n\n return results;\n }\n\n filters = [\n { label: this.$i18n.t('GENERAL.VOUCHER'), type: 'number', fieldName: 'orderNumber' },\n {\n label: this.$i18n.t('GENERAL.TYPE'),\n type: 'select',\n value: [],\n useChips: true,\n multiple: true,\n fieldName: 'type',\n options: [\n { label: 'New', value: 'NEW' },\n { label: 'Cancel', value: 'CANCEL' },\n { label: 'Change', value: 'CHANGE' },\n ],\n },\n\n {\n label: this.$i18n.t('GENERAL.BOOKING_DATE'),\n type: 'date-range',\n value: { start: new Date(), end: new Date() },\n fieldName: 'bookingDate',\n },\n { label: this.$i18n.t('GENERAL.CUSTOMER'), type: 'text', value: '', fieldName: 'customerName' },\n { label: this.$i18n.t('GENERAL.HOTEL'), type: 'text', value: '', fieldName: 'hotelName' },\n {\n label: this.$i18n.t('GENERAL.CHECK_IN'),\n type: 'date-range',\n value: { start: '', end: '' },\n fieldName: 'products.checkInDate',\n },\n {\n label: this.$i18n.t('GENERAL.CHECK_OUT'),\n type: 'date-range',\n value: { start: '', end: '' },\n fieldName: 'products.checkOutDate',\n },\n {\n label: this.$i18n.t('GENERAL.COMPANY'),\n type: 'selectDynamic',\n value: [],\n optionName: 'name',\n optionValue: 'id',\n useChips: true,\n multiple: true,\n fieldName: 'company',\n namespace: 'companies',\n action: 'find',\n },\n\n // { label: this.$i18n.t('GENERAL.AGENT'), type: 'text', value: '', fieldName: 'agentName' },\n\n /*\n {\n label: this.$i18n.t('GENERAL.ACCOMMODATION_DATE'),\n type: 'date-range',\n value: { start: new Date(), end: new Date('20.12.1987') },\n },\n */\n ];\n\n get query() {\n return {\n populate: [\n { path: 'company', select: ['name'] },\n { path: 'products.property', select: ['name'] },\n // { path: 'products.room', select: ['displayName'] },\n { path: 'payments' },\n { path: 'balancePayments' },\n { path: 'specialDiscounts' },\n ],\n select: ['+calculations'],\n sort: { orderNumber: 'desc' },\n currency: this.currency,\n };\n }\n\n getTypeColor(type: string) {\n switch (type) {\n case 'NEW': {\n return 'positive';\n }\n case 'CHANGE': {\n return 'orange';\n }\n case 'CANCEL': {\n return 'negative';\n }\n }\n }\n\n getPaymentColor(status: string) {\n if (status === 'PENDING') {\n return 'orange';\n } else if (status === 'ACCEPTED') {\n return 'positive';\n } else if (status === 'REJECTED') {\n return 'negative';\n } else {\n return 'primary';\n }\n }\n\n getProductName(product: IProductType) {\n if (PROPERTY_TYPES.includes(product.type as any)) {\n return (product as any).property?.name;\n }\n }\n\n @Watch('query.currency')\n onCurrencyChange() {\n this.$nextTick(() => {\n this.$refs.table.refresh();\n });\n }\n\n async exportData() {\n this.exportLoading = true;\n const queryFilter: any = {};\n\n this.filters.forEach((f: any) => {\n switch (f.type) {\n case 'date-range':\n if (f.value.start || f.value.end) {\n queryFilter[f.fieldName] = {\n $gte: moment(f.value.start).set({ hour: 0, minute: 0, seconds: 0 }).format('YYYY-MM-DD'),\n $lte: moment(f.value.end).set({ hour: 23, minute: 59, seconds: 59 }),\n };\n }\n\n return;\n\n case 'number':\n if (f.value !== '') {\n queryFilter[f.fieldName] = f.value;\n }\n\n return;\n\n case 'select':\n if (Array.isArray(f.value) && f.value.length === 0) {\n delete queryFilter[f.fieldName];\n } else {\n queryFilter[f.fieldName] = { $in: f.value };\n }\n\n return;\n case 'selectDynamic':\n if (Array.isArray(f.value) && f.value.length === 0) {\n delete queryFilter[f.fieldName];\n } else {\n queryFilter[f.fieldName] = { $in: f.value };\n }\n\n return;\n default:\n queryFilter[f.fieldName] = f.value;\n return;\n }\n });\n\n const filter = {\n ...queryFilter,\n // @ts-ignore\n ...this.query.filter,\n };\n\n const { data: orders } = await compass.do('orders', 'excel', {\n filter,\n ...this.query,\n });\n\n const workbook = new Workbook();\n const worksheet = workbook.addWorksheet('orders');\n\n let columns = [\n { header: 'Voucher', key: 'voucher' },\n { header: 'Type', key: 'type' },\n { header: 'Status', key: 'status' },\n { header: 'Company', key: 'company' },\n { header: 'Agent', key: 'agent' },\n { header: 'Booking Date', key: 'bookingDate' },\n { header: 'Total', key: 'total' },\n { header: 'Currency', key: 'currency' },\n { header: 'Total Cost', key: 'totalCost' },\n { header: 'Total Cost Currency', key: 'totalCostCurrency' },\n { header: 'Confirmation Status', key: 'confirmationStatus' },\n { header: 'Customer', key: 'customer' },\n { header: 'Customer', key: 'customer' },\n { header: 'Sales Amount', key: 'salesAmount' },\n { header: 'Sales Amount Currency', key: 'salesAmountCurrency' },\n { header: 'Remaining Amount', key: 'remainingAmount' },\n { header: 'Remaining Amount Currency', key: 'remainingAmountCurrency' },\n // { header: 'Remaining Collection Amount', key: 'remainingCollectionAmount' },\n // { header: 'Remaining Collection Amount Currency', key: 'remainingCollectionAmountCurrency' },\n {\n header: 'Product Type',\n key: 'productType',\n },\n { header: 'Hotel', key: 'hotel' },\n { header: 'Room', key: 'room' },\n { header: 'Check In', key: 'checkInDate' },\n { header: 'Check Out', key: 'checkOutDate' },\n { header: 'Adults', key: 'adults' },\n { header: 'Children', key: 'children' },\n { header: 'Children Ages', key: 'childrenAges' },\n { header: 'Cost', key: 'cost' },\n { header: 'Cost Currency', key: 'costCurrency' },\n { header: 'Price', key: 'price' },\n { header: 'Price Currency', key: 'priceCurrency' },\n { header: 'Profit', key: 'profit' },\n ];\n\n worksheet.columns = columns;\n\n orders.forEach((o: any) => {\n const profitPercent = (o.totalCost / o.total - 1) * -100;\n\n for (const propertyProduct of o.propertyProducts) {\n o['salesAmount'] = o.calculations.total.value;\n o['salesAmountCurrency'] = o.calculations.total.currency;\n o['remainingAmount'] = o.calculations.remaining.value;\n o['remainingAmountCurrency'] = o.calculations.remaining.currency;\n o['remainingAmount'] = o.calculations.remaining.value;\n o['remainingAmountCurrency'] = o.calculations.remaining.currency;\n // o['remainingCollectionAmount'] = o.calculations.remainingCollection.value;\n // o['remainingCollectionAmountCurrency'] = o.calculations.remainingCollection.currency;\n\n o[`productType`] = propertyProduct.type;\n o[`hotel`] = propertyProduct.hotel;\n o[`room`] = propertyProduct.roomType;\n o[`checkInDate`] = propertyProduct.checkInDate;\n o[`checkOutDate`] = propertyProduct.checkOutDate;\n o[`adults`] = propertyProduct.adults;\n o[`children`] = propertyProduct.children;\n o[`childrenAges`] = propertyProduct.childrenAges.join(' , ');\n o[`cost`] = propertyProduct.cost;\n o[`costCurrency`] = propertyProduct.costCurrency;\n o[`price`] = propertyProduct.price;\n o[`priceCurrency`] = propertyProduct.priceCurrency;\n o[`profit`] = `${profitPercent.toFixed(2)} %`;\n\n worksheet.addRow(o);\n }\n\n for (const cancellationInsuranceProduct of o.cancellationInsuranceProducts) {\n o['salesAmount'] = o.calculations.total.value;\n o['salesAmountCurrency'] = o.calculations.total.currency;\n o['remainingAmount'] = o.calculations.remaining.value;\n o['remainingAmountCurrency'] = o.calculations.remaining.currency;\n o['remainingAmount'] = o.calculations.remaining.value;\n o['remainingAmountCurrency'] = o.calculations.remaining.currency;\n o['remainingCollectionAmount'] = o.calculations.remainingCollection.value;\n o['remainingCollectionAmountCurrency'] = o.calculations.remainingCollection.currency;\n\n o[`productType`] = cancellationInsuranceProduct.type;\n o[`price`] = cancellationInsuranceProduct.price;\n o[`priceCurrency`] = cancellationInsuranceProduct.priceCurrency;\n o[`profit`] = `${profitPercent.toFixed(2)} %`;\n\n worksheet.addRow(o);\n }\n });\n\n const buffer = await workbook.xlsx.writeBuffer();\n\n const link = document.createElement('a');\n\n link.href = URL.createObjectURL(\n new Blob([buffer], {\n type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n }),\n );\n\n link.setAttribute('download', `export-${moment().format('DD-MM-YYYY-HH-mm')}.xlsx`);\n\n document.body.appendChild(link);\n\n link.click();\n this.exportLoading = false;\n }\n\n redirectToPayment(orderId: string, balancePaymentId: string) {\n this.$router.push({\n name: 'payments-with-balance',\n params: { balancePaymentId, id: orderId },\n });\n }\n\n cleanFilters() {\n this.filters = this.filters.map((f: any) => {\n switch (f.type) {\n case 'number':\n f.value = null;\n return f;\n case 'string':\n f.value = '';\n return f;\n case 'date-range':\n f.value = { start: '', end: '' };\n return f;\n case 'date':\n f.value = { start: '', end: '' };\n return f;\n default:\n return f;\n }\n });\n }\n}\n","import mod from \"-!../../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??ref--15-3!../../../../../../node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./hotel-sales-report.shell.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??ref--15-3!../../../../../../node_modules/@vue/cli-service/node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./hotel-sales-report.shell.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./hotel-sales-report.shell.vue?vue&type=template&id=6e46ac6c&scoped=true&\"\nimport script from \"./hotel-sales-report.shell.vue?vue&type=script&lang=ts&\"\nexport * from \"./hotel-sales-report.shell.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6e46ac6c\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}