public function abrirCaixa() { try { //verificação de permissão de acesso if (!$this->load->checkPermissao->check(false, URL . 'caixa/checkout/gerenciar')) { $this->http->response("Você não tem permissão para abrir caixa"); return false; } //VERIFICANDO SE O CAIXA JÁ ESTÀ DEFINIDO PARA A MAQUINA ATUAL if (!isset($_SESSION['caixa'])) { $this->http->response('A Máquina não está configurada corretamente'); return false; } //OBTENDO OS DADOS $dataformat = new dataformat(); $saldoInicial = $dataformat->formatar($this->http->getRequest('saldoinicial'), 'decimal', 'banco'); //VALIDANDO OS DADOS $this->load->library('dataValidator'); $dataValidator = new dataValidator(); $dataValidator->set('Número', $saldoInicial, 'saldoinicial')->is_required(); if ($dataValidator->validate()) { $this->load->dao('caixa/caixasDao'); $this->load->model('caixa/caixaAbertoModel'); $this->load->model('caixa/caixasModel'); $this->load->model('caixa/vendasModel'); $vendasModel = new vendasModel(); $caixaAbertoModel = new caixaAbertoModel(); $caixaAbertoModel->setUsuario(unserialize($_SESSION['user'])); $caixaAbertoModel->setSaldoInicial($saldoInicial); $caixaAbertoModel->setDataAbertura(date('Y-m-d h:i:s')); $caixaAbertoModel->addVenda($vendasModel); //obtendo os dados do caixa da sessão $caixa = unserialize($_SESSION['caixa']); $caixa->addCaixaAberto($caixaAbertoModel); $caixasDao = new caixasDao(); $caixa = $caixasDao->abrirCaixa($caixa); if ($caixa != null) { $_SESSION['caixa'] = serialize($caixa); $this->http->response(true); } else { $this->http->response('Não foi possível abrir o caixa, feche o caixa anterior para poder prosseguir', 400); } } else { $this->http->response('Informe o saldo inicial em caixa', 400); } } catch (dbException $e) { $this->http->response($e->getMessageError(), 400); } }