From 1d5de89375e3e42da744dd7b1310465377ac059a Mon Sep 17 00:00:00 2001 From: Regis Amaral Date: Mon, 24 Jul 2023 09:54:14 -0300 Subject: [PATCH] =?UTF-8?q?Prototipa=C3=A7=C3=A3o=20do=20objeto=20Pedido?= =?UTF-8?q?=20#16?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/js/model/Comanda.js | 2 +- assets/js/model/Pedido.js | 52 ++++++++++++++++++++++++++++++++++++++ index.html | 2 ++ 3 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 assets/js/model/Pedido.js diff --git a/assets/js/model/Comanda.js b/assets/js/model/Comanda.js index 4c9c2ae..a449c73 100755 --- a/assets/js/model/Comanda.js +++ b/assets/js/model/Comanda.js @@ -21,7 +21,7 @@ class Comanda { }; //inicializa com os valores armazenados no storage (se houver) ao carregar a aplicação - const data = JSON.parse(localStorage.getItem('comanda')); + const data = this.recuperaComandaStorage(); if (data !== null) { this.comanda = data; } else { diff --git a/assets/js/model/Pedido.js b/assets/js/model/Pedido.js new file mode 100644 index 0000000..5ffd9a6 --- /dev/null +++ b/assets/js/model/Pedido.js @@ -0,0 +1,52 @@ +class Pedido { + constructor() { + //inicializa com os valores armazenados no storage (se houver) ao carregar a aplicação + const data = this.recuperaPedidoStorage(); + if (data !== null) { + this.pedido = data; + } else { + //pedido vazio se não houver dados anteriores + this.pedido = { + numero: 0, + comanda: null, + datahora: null, + status: null + }; + } + } + + realizarPedido(){ + // TODO implementar método para realizar pedido + } + + + // Função para adicionar uma comanda ao pedido + adicionarComanda(comanda) { + // TODO implementar adicionar comanda ao pedido + } + + // Função para atualizar o storage com os dados do pedido + atualizaStorage(pedido) { + localStorage.setItem('pedido', JSON.stringify(comanda)); + } + + // Função para recuperar os dados do pedido do storage + recuperaPedidoStorage() { + return JSON.parse(localStorage.getItem('pedido')); + } + + // Função para setar o número do pedido + setNumero(numero) { + this.pedido.numero = numero; + this.atualizaStorage(this.pedido); + } + + // Função para obter o número do pedido + getNumero() { + return this.pedido.numero; + } + + printPedido() { + console.log(this.recuperaPedidoStorage()); + } +} \ No newline at end of file diff --git a/index.html b/index.html index c0f3aec..a976677 100755 --- a/index.html +++ b/index.html @@ -268,6 +268,8 @@

Título

+ +