budget-list.ts 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. import { Component, OnInit, OnDestroy } from '@angular/core';
  2. import { NavController, ToastController, ActionSheetController, Events } from 'ionic-angular';
  3. import { Slots } from "../../utils/slots";
  4. import { INavigable } from "../../interfaces/navigable-interface";
  5. import { DataProvider } from "../../providers/data-provider";
  6. import { DefaultListable } from "../../defaults/default-listable";
  7. import { DefaultListView } from "../../defaults/default-list-view";
  8. import { SaleOrder } from "../../models/sale.order";
  9. import { BudgetDetailsPage } from "../budget-details/budget-details";
  10. @Component({
  11. selector: 'page-budget-list',
  12. templateUrl: 'budget-list.html'
  13. })
  14. export class BudgetListPage extends DefaultListView implements INavigable {
  15. constructor(
  16. public navCtrl: NavController,
  17. public toastCtrl: ToastController,
  18. public actionSheetCtrl: ActionSheetController,
  19. public events: Events,
  20. public db: DataProvider
  21. ) {
  22. super();
  23. }
  24. /**
  25. *
  26. */
  27. ionViewDidLoad() {
  28. this.initialize();
  29. }
  30. // /**
  31. // *
  32. // */
  33. // ngOnInit() {
  34. // this.events.subscribe(Slots.ITEM_SAVED, data => {
  35. // this.add(data[0]);
  36. // });
  37. // }
  38. // /**
  39. // *
  40. // */
  41. // ngOnDestroy() {
  42. // this.events.unsubscribe(Slots.ITEM_SAVED);
  43. // }
  44. /**
  45. *
  46. */
  47. initialize(): void {
  48. this.events.publish(Slots.APP_LOADING);
  49. this.db.getAll(DataProvider.DOCS.SALE_ORDER).then(orders => {
  50. this.elements = orders.filter(item => {
  51. // return item.state === "draft" && item.doc_state !== "deleted";
  52. return true;
  53. });
  54. this.events.publish(Slots.APP_LOADED);
  55. }, e => {
  56. console.log(e);
  57. this.events.publish(Slots.APP_LOADED);
  58. this.events.publish(Slots.APP_ERROR, "No se ha podido cargar las órdenes de venta");
  59. });
  60. }
  61. /**
  62. *
  63. */
  64. goToPage(page: any) {
  65. this.navCtrl.push(BudgetDetailsPage);
  66. }
  67. /**
  68. *
  69. */
  70. showOptions(e, item): void {
  71. this.actionSheetCtrl.create({
  72. title: "Opciones",
  73. buttons: [
  74. {
  75. text: "Abrir",
  76. icon: "open",
  77. handler: () => console.log("open")
  78. },
  79. {
  80. text: "Eliminar",
  81. icon: "trash",
  82. role: "destructive",
  83. handler: () => console.log("Delete")
  84. },
  85. {
  86. text: "Cancelar",
  87. role: "cancel",
  88. handler: () => console.log("Cancel")
  89. }
  90. ]
  91. }).present();
  92. }
  93. }