orders.ts 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. import { Component } from '@angular/core';
  2. import { NavController, NavParams, ActionSheetController, AlertController } from 'ionic-angular';
  3. import { BaseListView } from "../../base/base-list-view";
  4. import { SaleOrder } from "../../odoo/models/sale.order";
  5. import { OrderPage } from "../order/order";
  6. @Component({
  7. selector: 'page-orders',
  8. templateUrl: 'orders.html'
  9. })
  10. export class OrdersPage extends BaseListView<SaleOrder> {
  11. constructor(
  12. public navCtrl: NavController,
  13. public navParams: NavParams,
  14. public actionSheetCtrl: ActionSheetController,
  15. public alertCtrl: AlertController
  16. ) {
  17. super(SaleOrder);
  18. super.setTitle(navParams.data.title);
  19. super.setFilters(navParams.data.params.filters);
  20. }
  21. /**
  22. *
  23. */
  24. ionViewDidLoad() {
  25. console.log('ionViewDidLoad OrdersPage');
  26. }
  27. /**
  28. *
  29. */
  30. ionViewDidEnter() {
  31. super.setSelectedIndex(-1);
  32. }
  33. /**
  34. *
  35. * @param item
  36. */
  37. openOptions(item: SaleOrder): void {
  38. super.setSelectedItem(item);
  39. this.actionSheetCtrl.create({
  40. title: "Opciones",
  41. buttons: [
  42. {
  43. text: "Abrir",
  44. icon: "open",
  45. handler: () => {
  46. this.goToDetails();
  47. }
  48. },
  49. {
  50. text: "Convertir a Venta",
  51. icon: "share-alt",
  52. handler: () => {
  53. console.log("convert");
  54. }
  55. },
  56. {
  57. text: "Eliminar",
  58. icon: "close",
  59. role: "destructive",
  60. handler: () => {
  61. this.askIfDelete();
  62. }
  63. },
  64. {
  65. text: "Cancel",
  66. role: "cancel",
  67. handler: () => {
  68. super.setSelectedIndex(-1);
  69. }
  70. },
  71. ]
  72. }).present();
  73. }
  74. /**
  75. *
  76. */
  77. goToDetails(): void {
  78. this.navCtrl.push(OrderPage, {
  79. item: super.getSelectedItem(),
  80. kind: this.navParams.data.params.kind
  81. });
  82. }
  83. /**
  84. *
  85. */
  86. askIfDelete(): void {
  87. this.alertCtrl.create({
  88. title: "Confirmar",
  89. message: "Quieres eliminar este presupuesto?",
  90. buttons: [
  91. {
  92. text: "Cancelar"
  93. },
  94. {
  95. text: "Aceptar",
  96. handler: () => {
  97. super.performDelete();
  98. }
  99. }
  100. ]
  101. }).present();
  102. }
  103. }