configuration_reporting.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. function configuration_reporting (instance, widget) {
  2. "use strict";
  3. var widgets = widget;
  4. widget.ReportingWidget = instance.Widget.extend({
  5. template: 'EiruReporting',
  6. events: {
  7. 'click .report_action > button': 'clickOnReport',
  8. },
  9. reports: [
  10. {
  11. title: 'Resumen de ingresos',
  12. description: 'Permite visualizar de forma global los ingresos obtenidos por la empresa.',
  13. action: 'ReportResumenIngreso'
  14. },
  15. {
  16. title: 'Resumen de egresos',
  17. description: 'Permite visualizar de forma global los egresos realizado por la empresa.',
  18. action: 'ReportResumenEngreso'
  19. },
  20. {
  21. title: 'Histórico de Pagos',
  22. description: 'Permite visualizar de todos los pagos.',
  23. action: 'ReportVoucher'
  24. },
  25. {
  26. title: 'Histórico de Facturas',
  27. description: 'Permite visualizar las facturas',
  28. action: 'ReportInvoiceBalance'
  29. },
  30. // {
  31. // title: 'Histórico de Ventas',
  32. // description: 'Permite visualizar las facturas de ventas',
  33. // action: 'ReportSale'
  34. // },
  35. // {
  36. // title: 'Histórico de Compras',
  37. // description: 'Permite visualizar un histórico de compras realizado por la empresa.',
  38. // action: 'AllPurchases'
  39. // },
  40. // {
  41. // title: 'Histórico de Gastos',
  42. // description: 'Permite visualizar un histórico de gastos realizado por la empresa.',
  43. // action: 'ReposrtExpenses'
  44. // },
  45. {
  46. title: 'Análisis de Ventas',
  47. description: 'Permite realizar un analisis de las facturas de venta.',
  48. action: 'ReportSaleInvoiceAnalysis'
  49. },
  50. {
  51. title: 'Análisis de Compras y Gastos',
  52. description: 'Permite realizar un analisis de las facturas de compra y de gastos',
  53. action: 'ReportPurchaseInvoiceAnalysis'
  54. },
  55. // {
  56. // title: 'Análisis de Gastos',
  57. // description: 'Permite realizar un analisis de las facturas de gastos.',
  58. // action: 'ReportExpenseInvoiceAnalysis'
  59. // },
  60. // {
  61. // title: 'Utilidad de facturas detalladas',
  62. // description: 'Permite visualizar la ganancia de cada ítem de las facturas detalladamente.',
  63. // action: 'ReportInvoiceUtility'
  64. // },
  65. {
  66. title: 'Análisis de stock',
  67. description: 'Permite realizar un analisis de los productos disponibles en el stock.',
  68. action: 'ReportStock'
  69. },
  70. {
  71. title: 'Análisis de Movimientos de Stock',
  72. description: 'Permite realizar un analisis de los productos disponibles en el stock.',
  73. action: 'ReportStockMove'
  74. }
  75. // {
  76. // title: 'Listado de productos',
  77. // description: 'Permite visualizar un listado de productos activos.',
  78. // action: 'ReportStockProduct'
  79. // }
  80. ],
  81. start: function () {
  82. },
  83. clickOnReport: function (e) {
  84. var templateName = this.$el.find(e.target).val();
  85. this.renderReport(templateName);
  86. },
  87. renderReport: function (templateName) {
  88. var Widget = this.getWidgetFromTemplate(templateName);
  89. var WidgetInstance = new Widget(this);
  90. var container = this.$el.find('.oe_form_sheet.oe_form_sheet_width');
  91. container.find('.report_view').hide({
  92. effect: 'fade',
  93. duration: 200,
  94. complete: function () {
  95. WidgetInstance.appendTo(container);
  96. }
  97. });
  98. },
  99. getWidgetFromTemplate: function (templateName) {
  100. var widgetName = `${templateName}Widget`;
  101. return _.pick(widget, widgetName)[widgetName];
  102. },
  103. });
  104. }