{"version":3,"sources":["webpack:///./src/views/modules/ReportView.vue?f0f7","webpack:///./src/views/modules/ReportView.vue?c918","webpack:///src/views/modules/ReportView.vue","webpack:///./src/views/modules/ReportView.vue?bf1a","webpack:///./src/views/modules/ReportView.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","attrs","on","$event","getReportView","_v","class","landscape","_m","_e","directives","name","rawName","value","busy","expression","domProps","_s","reportHtml","staticRenderFns","staticStyle","alert","text","mixins","pageDefaultMixin","data","title","logo","dateNow","user","pageTitle","chartArray","methods","convert","reportError","status","error","response","window","location","href","message","ui","component"],"mappings":"kHAAA,W,gECAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACA,EAAG,MAAM,CAACE,YAAY,qEAAqE,CAACF,EAAG,WAAW,CAACE,YAAY,OAAOC,MAAM,CAAC,QAAU,WAAWC,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAOT,EAAIU,mBAAmB,CAACN,EAAG,yBAAyB,CAACE,YAAY,SAASN,EAAIW,GAAG,gBAAgB,GAAGP,EAAG,WAAW,CAACG,MAAM,CAAC,QAAU,iBAAiB,QAAU,YAAY,CAACH,EAAG,iBAAiB,CAACE,YAAY,SAASN,EAAIW,GAAG,eAAe,IAAI,GAAGP,EAAG,MAAM,CAACQ,MAAM,CAAC,mBAAmBZ,EAAIa,WAAWN,MAAM,CAAC,GAAK,qBAAqB,CAAEP,EAAQ,KAAEI,EAAG,MAAM,CAACE,YAAY,iEAAiE,CAACN,EAAIc,GAAG,KAAKd,EAAIe,KAAKX,EAAG,aAAa,CAACG,MAAM,CAAC,KAAO,SAAS,qBAAqB,oBAAoB,CAACH,EAAG,MAAM,CAACY,WAAW,CAAC,CAACC,KAAK,OAAOC,QAAQ,SAASC,OAAQnB,EAAIoB,KAAMC,WAAW,UAAUf,YAAY,SAASC,MAAM,CAAC,GAAK,mBAAmB,CAACH,EAAG,MAAM,CAACkB,SAAS,CAAC,UAAYtB,EAAIuB,GAAGvB,EAAIwB,oBAAoB,MACrgCC,EAAkB,CAAC,WAAa,IAAIzB,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,UAAU,CAACF,EAAG,MAAM,CAACE,YAAY,uBAAuB,CAACF,EAAG,MAAM,CAACsB,YAAY,CAAC,mBAAmB,mBAAmBtB,EAAG,MAAM,CAACsB,YAAY,CAAC,mBAAmB,mBAAmBtB,EAAG,MAAM,CAACsB,YAAY,CAAC,mBAAmB,yB,uICyD7V,SAAS,EAAT,GACEC,MAAMC,GAGR,OACEC,OAAQ,CAACC,EAAX,MACEb,KAAM,aACNc,KAHF,WAII,MAAO,CACLX,MAAM,EACNY,MAAO,GACPC,KAAM,GACNT,WAAY,GACZU,QAAS,GACTC,KAAM,GACNC,UAAW,YACXC,WAAY,GACZxB,WAAW,IAGfyB,QAAS,CAEPC,QAFJ,SAEA,GACM,EAAN,IAGIC,YANJ,SAMA,GAEMvC,KAAKwC,OAAS,UAEVC,EAAMC,SACsB,MAA1BD,EAAMC,SAASF,OACjBG,OAAOC,SAASC,KAAO,oBACjC,yBACcJ,EAAMC,SAASZ,OACbW,EAAMC,SAASZ,KAAKgB,QACtBC,EAAd,2CAEcA,EAAd,gDAIA,QACQA,EAAR,8BAII,cA3BJ,WA2BA,oKAEA,UAFA,iBAKA,cALA,IAKA,qCACA,kBANA,qCAQA,gBAGA,4DAEA,4FAEA,eAEA,aACA,UACA,oBAEA,gCAEA,gBACA,cAEA,kCA1BA,SA+BA,cACA,kBAEA,kCACA,sBAEA,mBAEA,uBAEA,IAFA,EAEA,IAFA,iBAIA,UAJA,IAIA,0CAEA,mBACA,QACA,iDAGA,+BAEA,KAbA,iCAiBA,KAIA,aAGA,8CA/DA,+CAoEE,QA/GF,WA+GA,+JAOA,8BAPA,SASA,kBATA,+CC7KmW,I,wBCQ/VC,EAAY,eACd,EACAlD,EACA0B,GACA,EACA,KACA,KACA,MAIa,aAAAwB,E","file":"js/chunk-0cc213d3.69e6a17a.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/@vue/cli-service/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!./ReportView.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"d-print-none d-flex justify-content-center align-items-center p-3\"},[_c('b-button',{staticClass:\"mr-3\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.getReportView()}}},[_c('b-icon-arrow-clockwise',{staticClass:\"mr-2\"}),_vm._v(\" Atualizar \")],1),_c('b-button',{attrs:{\"onclick\":\"window.print()\",\"variant\":\"primary\"}},[_c('b-icon-printer',{staticClass:\"mr-2\"}),_vm._v(\" Imprimir \")],1)],1),_c('div',{class:{'report-landscape':_vm.landscape},attrs:{\"id\":\"container_report\"}},[(_vm.busy)?_c('div',{staticClass:\"h-100-header d-flex justify-content-center align-items-center\"},[_vm._m(0)]):_vm._e(),_c('transition',{attrs:{\"mode\":\"out-in\",\"enter-active-class\":\"animated fadeIn\"}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.busy),expression:\"!busy\"}],staticClass:\"fadeIn\",attrs:{\"id\":\"content-report\"}},[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.reportHtml)}})])])],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"loader\"},[_c('div',{staticClass:\"ball-scale-multiple\"},[_c('div',{staticStyle:{\"background-color\":\"rgb(51,51,51)\"}}),_c('div',{staticStyle:{\"background-color\":\"rgb(51,51,51)\"}}),_c('div',{staticStyle:{\"background-color\":\"rgb(51,51,51)\"}})])])}]\n\nexport { render, staticRenderFns }","<template>\n\n  <div>\n\n    <div class=\"d-print-none d-flex justify-content-center align-items-center p-3\">\n\n      <b-button class=\"mr-3\" variant=\"primary\" @click=\"getReportView()\">\n        <b-icon-arrow-clockwise class=\"mr-2\"/>\n        Atualizar\n\n      </b-button>\n\n      <b-button onclick=\"window.print()\" variant=\"primary\">\n        <b-icon-printer class=\"mr-2\"/>\n        Imprimir\n      </b-button>\n\n    </div>\n\n    <div id=\"container_report\" :class=\"{'report-landscape':landscape}\">\n\n\n      <div class=\"h-100-header d-flex justify-content-center align-items-center\" v-if=\"busy\">\n\n        <div class=\"loader\">\n          <div class=\"ball-scale-multiple\">\n            <div style=\"background-color: rgb(51,51,51);\"></div>\n            <div style=\"background-color: rgb(51,51,51);\"></div>\n            <div style=\"background-color: rgb(51,51,51);\"></div>\n          </div>\n        </div>\n\n      </div>\n\n      <transition mode=\"out-in\"\n                  enter-active-class=\"animated fadeIn\">\n\n        <div v-show=\"!busy\" class=\"fadeIn\" id=\"content-report\">\n\n          <div v-html=\"reportHtml\"></div>\n\n        </div>\n\n      </transition>\n\n\n    </div>\n\n  </div>\n\n\n</template>\n<script>\nimport pageDefaultMixin from \"@/mixins/page/pageDefaultMixin\"\nimport {crudGeneral} from \"@/services/resource/GeneralCRUD.service\";\nimport ui from \"@/assets/scripts/ui\";\nimport ApexCharts from \"apexcharts\";\n\nfunction convert(text) {\n  alert(text)\n}\n\nexport default {\n  mixins: [pageDefaultMixin],\n  name: 'ReportView',\n  data() {\n    return {\n      busy: true,\n      title: \"\",\n      logo: \"\",\n      reportHtml: \"\",\n      dateNow: \"\",\n      user: \"\",\n      pageTitle: \"Relatório\",\n      chartArray: [],\n      landscape: false,\n    }\n  },\n  methods: {\n\n    convert(text) {\n      convert(text)\n    },\n\n    reportError(error) {\n\n      this.status = \"subject\"\n\n      if (error.response) {\n        if (error.response.status === 401) {\n          window.location.href = \"/login?logout=yes\";\n        } else if (error.response.status === 500) {\n          if (error.response.data) {\n            if (error.response.data.message) {\n              ui.msgError(this, 'Erro', error.response.data)\n            } else {\n              ui.msgError(this, error.response.data.general[0])\n            }\n          }\n        }\n      } else if (error !== '') {\n        ui.msgError(this, \"Erro\", error)\n      }\n    },\n\n    async getReportView() {\n\n      this.busy = true\n\n      //Remove outros gráficos gerados anteriormente\n      for (let item of this.chartArray) {\n        item.chart.destroy()\n      }\n      this.chartArray = []\n      //--------------------------------------------\n\n      let url = \"general/report/generate?platform=web&type=R&format=html\";\n\n      Object.entries(this.$route.query).forEach(([key, value]) => {\n\n        const valueConverted = decodeURI(value)\n\n        if (key === 'title') {\n          this.title = valueConverted\n          this.pageTitle = this.title\n\n          url += `&${key}=${valueConverted}`\n\n        } else if (key === 'landscape') {\n          this.landscape = valueConverted\n        } else {\n          url += `&${key}=${valueConverted}`\n        }\n\n      })\n\n      await crudGeneral.get(url)\n          .then(response => {\n\n            const reportRender = ui.reportRender(response.data)\n            this.reportHtml = reportRender.report\n\n            if (reportRender.charts.length > 0) {\n\n              setTimeout(() => {\n\n                let i = 0\n\n                for (const chart of reportRender.charts) {\n\n                  this.chartArray.push({\n                    id: chart.id,\n                    chart: new ApexCharts(document.getElementById(chart.id), chart)\n                  })\n\n                  this.chartArray[i].chart.render()\n\n                  i++\n\n                }\n\n              }, 100)\n\n            }\n\n            this.busy = false\n\n\n          }).catch(error => this.reportError(error))\n\n    }\n\n  },\n  async mounted() {\n\n\n    //this.logo = ui.getTemplateLogo()\n    //this.dateNow = ui.currentDateTime()\n    //this.user = ui.getUser()\n\n    ui.setFavicon(\"document\")\n\n    await this.getReportView()\n\n  },\n}\n</script>\n<style>\n.table thead th {\n  text-align: center;\n  vertical-align: middle;\n}\n\nbody {\n  background-color: #363636;\n}\n\n#container_report {\n  max-width: 1000px;\n  background-color: #FFFFFF;\n  margin: auto;\n  padding: 15px;\n  height: calc(100vh - 100px);\n  overflow: auto;\n}\n\n.report-landscape{\n  max-width: 100%;\n}\n\n@media print {\n\n  body {\n    background-color: #FFFFFF;\n    print-color-adjust: exact;\n    -webkit-print-color-adjust: exact;\n  }\n\n  #container_report {\n    height: 100%;\n  }\n\n  .apexcharts-toolbar {\n    display: none !important;\n  }\n\n  @page {\n    margin-top: 30px;\n    margin-bottom: 20px;\n  }\n\n}\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReportView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ReportView.vue?vue&type=template&id=6d7b44fc&\"\nimport script from \"./ReportView.vue?vue&type=script&lang=js&\"\nexport * from \"./ReportView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ReportView.vue?vue&type=style&index=0&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  null,\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}