Ejemplo n.º 1
0
 public function inserir()
 {
     try {
         if (!$this->load->checkPermissao->check(false, URL . 'produtos/gerenciar/cadastrar')) {
             $this->http->response("Ação não permitida");
             return false;
         }
         $this->load->model('produtos/produtosModel');
         $this->load->model('produtos/marcasModel');
         $this->load->model('produtos/categoriasModel');
         $this->load->model('produtos/unidadeMedidaModel');
         $this->load->model('produtos/unidadeMedidaEstoqueModel');
         $this->load->model('produtos/precosModel');
         $this->load->dao('produtos/precosDao');
         $this->load->dao('produtos/produtosDao');
         //obtendo os dados enviados pela requisição
         $dataFormat = new dataFormat();
         $foto = isset($_FILES['foto']) ? $_FILES['foto'] : '';
         $nome = $this->http->getRequest('nome');
         $codigoBarra = $this->http->getRequest('codigobarras');
         $marca = $this->http->getRequest('marca');
         $categoria = $this->http->getRequest('categoria');
         $preco = $dataFormat->formatar($this->http->getRequest('preco'), 'decimal', 'banco');
         $controlarvalidade = (bool) $this->http->getRequest('controlarvalidade');
         $descricao = $this->http->getRequest('descricao');
         $fornecedores = (array) $this->http->getRequest('fornecedores');
         $unidadeMedidaEstoque = $this->http->getRequest('unidadeMedidaEstoque');
         //validação dos dados
         $dataValidator = new dataValidator();
         $dataValidator->set('Nome', $nome, 'nome')->is_required()->min_length(3);
         $dataValidator->set('Marca', $marca, 'marca')->is_required();
         $dataValidator->set('Categoria', $categoria, 'categoria')->is_required();
         $dataValidator->set('Preço', $preco, 'preco')->is_required();
         $dataValidator->set('Fornecedores', $fornecedores, 'fornecedores')->is_required()->min_value(3);
         $dataValidator->set('Unidades de medidas de estoque', $unidadeMedidaEstoque, 'unidadeMedidaEstoque')->is_required();
         if ($dataValidator->validate()) {
             //PRODUTOS
             $produtosModel = new produtosModel();
             //MARCA
             $marcasModel = new marcasModel();
             $marcasModel->setId($marca);
             //CATEGORIA
             $categoriasModel = new categoriasModel();
             $categoriasModel->setId($categoria);
             //UNIDADES DE MEDIDA DE ESTOQUE -- obtendo as unidades de medida
             foreach ($unidadeMedidaEstoque as $unidade) {
                 $unidade['venda'] = $unidade['venda'] == "true" ? true : false;
                 $unidade['estoque'] = $unidade['estoque'] == "true" ? true : false;
                 $fator = $dataFormat->formatar($unidade['fator_unidade'], 'decimal', 'banco');
                 $unidadeMedidaModel = new unidadeMedidaModel();
                 $unidadeMedidaModel->setId($unidade['idUnidadeMedida']);
                 $unidadeMedidaEstoqueModel = new unidadeMedidaEstoqueModel();
                 $unidadeMedidaEstoqueModel->setId($unidade['idUnidadeMedidaProduto']);
                 $unidadeMedidaEstoqueModel->setUnidadeMedida($unidadeMedidaModel);
                 $unidadeMedidaEstoqueModel->setParaVenda($unidade['venda']);
                 $unidadeMedidaEstoqueModel->setParaEstoque($unidade['estoque']);
                 $unidadeMedidaEstoqueModel->setFator($fator);
                 $unidadeMedidaEstoqueModel->setOrdem($unidade['ordem']);
                 //adicionando as unidades no produto
                 $produtosModel->addUnidadeMedidaEstoque($unidadeMedidaEstoqueModel);
             }
             //FORNECEDORES -- obtendo os fonecedores do produto
             $this->load->model('fornecedores/fornecedoresModel');
             $this->load->model('produtos/produtofornecedorModel');
             foreach ($fornecedores as $fornec) {
                 $fornecedoresModel = new fornecedoresModel();
                 $fornecedoresModel->setId($fornec['id']);
                 $produtofornecedorModel = new produtofornecedorModel();
                 $produtofornecedorModel->setFornecedor($fornecedoresModel);
                 //adicionando os fornecedores ao produto
                 $produtosModel->addFornecedor($produtofornecedorModel);
             }
             //IMAGEM
             //obtendo a imagem e realizando o upload
             $nome_foto = '';
             if (!empty($foto)) {
                 //obtendo o tamanho do corte da imagem
                 $cropValues = array('w' => $this->http->getRequest('w'), 'h' => $this->http->getRequest('h'), 'x1' => $this->http->getRequest('x1'), 'y1' => $this->http->getRequest('y1'));
                 //definindo o tamanho da imagem após o upload
                 $tamanho = array('p' => array('w' => 404, 'h' => 158));
                 //renomeando a imagem
                 $nome_foto = md5(date('dmYHis'));
                 // realizando o upload
                 $this->load->library('uploadFoto');
                 $upload = new uploadFoto('produtos', $foto, $nome_foto, $tamanho, $cropValues);
                 $nome_foto = $upload->getNomeArquivo();
             }
             // //FORMATAÇÃO DOS DADOS
             $produtosModel->setFoto($nome_foto);
             $produtosModel->setCodigoBarra($codigoBarra);
             $produtosModel->setNome($nome);
             $produtosModel->setMarca($marcasModel);
             $produtosModel->setCategoria($categoriasModel);
             $produtosModel->setDescricao($descricao);
             $produtosModel->setDataCadastro(date('Y-m-d h:i:s'));
             //definindo controle de validade
             if ($controlarvalidade == true) {
                 $produtosModel->ativarControleValidade();
             } else {
                 $produtosModel->desativarControleValidade();
             }
             //adicionando o preço padrão ao produto
             $precosModel = new precosModel();
             $precosModel->setPreco($preco);
             $precosModel->setPadrao(true);
             //PRODUTOS DAO
             $produtosDao = new produtosDao();
             $produtosModel = $produtosDao->inserir($produtosModel);
             //se o produto foi cadastrado corretamente
             if ($produtosModel->getId() != '') {
                 //insere o preço padrão
                 $precosDao = new precosDao();
                 $precosDao->inserir($produtosModel, $precosModel);
                 $this->http->response(true);
             }
         } else {
             //exibindo os erro de validação
             $this->http->response(json_encode($dataValidator->get_errors()));
         }
     } catch (dbException $e) {
         //se tiver algum erro no banco
         $this->http->response($e->getMessageError());
         return false;
     } catch (Exception $e) {
         //se tiver algum erro no envio da imagem ou outro erro que seja diferente do banco
         $this->http->response($e->getMessage());
         return false;
     }
 }
Ejemplo n.º 2
0
 /**
  * Ação do cadastrar
  */
 public function atualizar()
 {
     $idFornecedor = isset($_POST['id_fornecedor']) ? filter_var($_POST['id_fornecedor']) : '';
     $foto = isset($_FILES['foto']) ? $_FILES['foto'] : '';
     $nome_foto = isset($_POST['nome_foto']) ? $_POST['nome_foto'] : '';
     $razaoSocial = isset($_POST['razao_social']) ? filter_var($_POST['razao_social']) : '';
     $nomeFantasia = isset($_POST['nome_fantasia']) ? filter_var($_POST['nome_fantasia']) : '';
     $cnpj = isset($_POST['cnpj']) ? filter_var(trim($_POST['cnpj'])) : '';
     $cpf = isset($_POST['cpf']) ? filter_var($_POST['cpf']) : '';
     $pessoa = isset($_POST['pessoa']) ? filter_var($_POST['pessoa']) : '';
     $site = isset($_POST['site']) ? filter_var($_POST['site']) : '';
     $observacoes = isset($_POST['observacoes']) ? filter_var($_POST['observacoes']) : '';
     //endereço
     $id_endereco = isset($_POST['id_endereco']) ? filter_var(trim($_POST['id_endereco'])) : '';
     $cep = isset($_POST['cep']) ? filter_var(trim($_POST['cep'])) : '';
     $logradouro = isset($_POST['logradouro']) ? filter_var(trim($_POST['logradouro'])) : '';
     $numero = isset($_POST['numero']) ? filter_var(trim($_POST['numero'])) : '';
     $complemento = isset($_POST['complemento']) ? filter_var(trim($_POST['complemento'])) : '';
     $cidade = isset($_POST['cidade']) ? filter_var(trim($_POST['cidade'])) : '';
     $bairro = isset($_POST['bairro']) ? filter_var(trim($_POST['bairro'])) : '';
     $estado = isset($_POST['estado']) ? filter_var(trim($_POST['estado'])) : '';
     //contato
     $nomeContato = isset($_POST['nomeContato']) ? filter_var($_POST['nomeContato']) : '';
     $telefones = isset($_POST['telefones']) ? filter_var_array($_POST['telefones']) : array();
     $emails = isset($_POST['emails']) ? filter_var_array($_POST['emails']) : array();
     //validação dos dados
     $this->load->library('dataValidator', null, true);
     $this->load->dataValidator->set('Razao Social', $razaoSocial, 'razao_social')->is_required()->min_length(2);
     $this->load->dataValidator->set('Nome Fantasia', $nomeFantasia, 'nome_fantasia')->is_required()->min_length(2);
     $this->load->dataValidator->set('CNPJ', $cnpj, 'cnpj')->is_required()->is_required()->is_cnpj();
     $this->load->dataValidator->set('CPF', $cpf, 'cpf')->is_required()->is_cpf();
     $this->load->dataValidator->set('Pessoa', $pessoa, 'pessoa')->is_required();
     $this->load->dataValidator->set_message('is_required', "Informe pelo menos um e-mail");
     $this->load->dataValidator->set('E-mail', $emails, 'emails')->is_required();
     $this->load->dataValidator->set('CEP', $cep, 'cep')->is_required();
     $this->load->dataValidator->set('Logradouro', $logradouro, 'logradouro')->is_required();
     $this->load->dataValidator->set('Número', $numero, 'numero')->is_required()->is_num();
     $this->load->dataValidator->set('Bairro', $bairro, 'bairro')->is_required();
     $this->load->dataValidator->set('Cidade', $cidade, 'cidade')->is_required();
     $this->load->dataValidator->set('Estado', $estado, 'estado')->is_required();
     if ($this->load->dataValidator->validate()) {
         //TELEFONES
         $telefonesList = array();
         $this->load->model('telefoneModel');
         foreach ($telefones as $key => $telefone) {
             $telefone['idtelefone'] = isset($telefone['idtelefone']) ? $telefone['idtelefone'] : '';
             $telefoneModel = new telefoneModel();
             $telefoneModel->setId($telefone['idtelefone']);
             $telefoneModel->setCategoria($telefone['categoria']);
             $telefoneModel->setNumero($telefone['telefone']);
             $telefoneModel->setOperadora($telefone['operadora']);
             $telefoneModel->setTipo($telefone['tipo_telefone']);
             array_push($telefonesList, $telefoneModel);
             unset($telefoneModel);
         }
         //EMAILS
         $emailList = array();
         $this->load->model('emailModel');
         foreach ($emails as $email) {
             $email['idemail'] = isset($email['idemail']) ? $email['idemail'] : '';
             $emailModel = new emailModel();
             $emailModel->setId($email['idemail']);
             $emailModel->setEmail($email['email']);
             $emailModel->setTipo($email['tipo_email']);
             array_push($emailList, $emailModel);
             unset($emailModel);
         }
         //ENDEREÇO
         $this->load->model('enderecoModel');
         $enderecoModel = new enderecoModel();
         $enderecoModel->setId($id_endereco);
         $enderecoModel->setCep($cep);
         $enderecoModel->setNumero($numero);
         $enderecoModel->setComplemento($complemento);
         $enderecoModel->setLogradouro($logradouro);
         $enderecoModel->setBairro($bairro);
         $enderecoModel->setCidade($cidade);
         $enderecoModel->setEstado($estado);
         //FORMATAÇÃO DOS DADOS
         $this->load->library('dataFormat', null, true);
         if (!empty($foto)) {
             $cropValues = array('w' => $_POST['w'], 'h' => $_POST['h'], 'x1' => $_POST['x1'], 'y1' => $_POST['y1']);
             $tamanho = array('p' => array('w' => 404, 'h' => 158));
             if ($nome_foto == '') {
                 $nome_foto = md5(date('dmYHis'));
             }
             try {
                 $this->load->library('uploadFoto');
                 $upload = new uploadFoto('fornecedores', $foto, $nome_foto, $tamanho, $cropValues);
                 $nome_foto = $upload->getNomeArquivo();
             } catch (Exception $e) {
                 echo $e->getMessage();
                 return false;
             }
         }
         //FORNECEDOR
         $this->load->model('fornecedores/fornecedoresModel');
         $fornecedoresModel = new fornecedoresModel();
         $fornecedoresModel->setId($idFornecedor);
         $fornecedoresModel->setFoto($nome_foto);
         $fornecedoresModel->setRazaoSocial($razaoSocial);
         $fornecedoresModel->setNomeFantasia($nomeFantasia);
         $fornecedoresModel->setCNPJ($cnpj);
         $fornecedoresModel->setCpf($cpf);
         $fornecedoresModel->setPessoa($pessoa);
         $fornecedoresModel->setSite($site);
         $fornecedoresModel->setObservacoes($observacoes);
         $fornecedoresModel->setNomeContato($nomeContato);
         $fornecedoresModel->setEndereco($enderecoModel);
         $fornecedoresModel->setTelefones($telefonesList);
         $fornecedoresModel->setEmails($emailList);
         $fornecedoresModel->setDataCadastro(date('Y-m-d h:i:s'));
         //FORNECEDOR DAO
         $this->load->dao('fornecedores/fornecedoresDao');
         $fornecedoresDao = new fornecedoresDao();
         echo $fornecedoresDao->atualizar($fornecedoresModel);
     } else {
         $todos_erros = $this->load->dataValidator->get_errors();
         echo json_encode($todos_erros);
     }
 }
Ejemplo n.º 3
0
 /**
  * Ação do atualizar
  */
 public function atualizar()
 {
     if (!$this->load->checkPermissao->check(false, URL . 'funcionarios/gerenciar/editar')) {
         $this->http->response("Ação não permitida");
         return false;
     }
     $idFuncionario = filter_var((int) $this->http->getRequest('id_funcionario'));
     $foto = isset($_FILES['foto']) ? $_FILES['foto'] : '';
     $nome_foto = filter_var($this->http->getRequest('nome_foto'));
     $nome = filter_var($this->http->getRequest('nome'));
     $sobrenome = filter_var($this->http->getRequest('sobrenome'));
     $dataNascimento = filter_var($this->http->getRequest('dataNascimento'));
     $sexo = filter_var($this->http->getRequest('sexo'));
     $rg = filter_var($this->http->getRequest('rg'));
     $cpf = filter_var($this->http->getRequest('cpf'));
     $estadoCivil = filter_var($this->http->getRequest('estadoCivil'));
     $escolaridade = filter_var($this->http->getRequest('escolaridade'));
     //endereço
     $id_endereco = filter_var((int) $this->http->getRequest('id_endereco'));
     $cep = filter_var($this->http->getRequest('cep'));
     $logradouro = filter_var($this->http->getRequest('logradouro'));
     $numero = filter_var($this->http->getRequest('numero'));
     $complemento = filter_var($this->http->getRequest('complemento'));
     $bairro = filter_var($this->http->getRequest('bairro'));
     $cidade = filter_var($this->http->getRequest('cidade'));
     $estado = filter_var($this->http->getRequest('estado'));
     //contato
     $telefones = filter_var_array((array) $this->http->getRequest('telefones'));
     $emails = filter_var_array((array) $this->http->getRequest('emails'));
     //DADOS ADMISSIONAIS
     $codigoAdmissao = filter_var($this->http->getRequest('codigoAdmissao'));
     $cargo = filter_var($this->http->getRequest('cargo'));
     $dataAdmissao = filter_var($this->http->getRequest('dataAdmissao'));
     $dataDemissao = filter_var($this->http->getRequest('dataDemissao'));
     //validação dos dados
     $this->load->library('dataValidator', null, true);
     $this->load->dataValidator->set('Nome', $nome, 'nome')->is_required()->min_length(2);
     $this->load->dataValidator->set('Sobrenome', $sobrenome, 'sobrenome')->is_required()->min_length(2);
     $this->load->dataValidator->set('Data de nascimento', $dataNascimento, 'dataNascimento')->is_required()->is_date('d/m/Y');
     $this->load->dataValidator->set('Sexo', $sexo, 'sexo')->is_required();
     $this->load->dataValidator->set('CEP', $cep, 'cep')->is_required();
     $this->load->dataValidator->set('CPF', $cpf, 'cpf')->is_required()->is_cpf();
     $this->load->dataValidator->set('Logradouro', $logradouro, 'logradouro')->is_required();
     $this->load->dataValidator->set('Número', $numero, 'numero')->is_required()->is_num();
     $this->load->dataValidator->set('Bairro', $bairro, 'bairro')->is_required();
     $this->load->dataValidator->set('Cidade', $cidade, 'cidade')->is_required();
     $this->load->dataValidator->set('Estado', $estado, 'estado')->is_required();
     $this->load->dataValidator->set('Cargo', $cargo, 'cargo')->is_required();
     if ($this->load->dataValidator->validate()) {
         $this->load->model('funcionarios/funcionariosModel');
         $this->load->model('emailModel');
         $this->load->model('telefoneModel');
         $this->load->model('funcionarios/cargosModel');
         //FUNCIONARIO
         $funcionariosModel = new funcionariosModel();
         //TELEFONES
         foreach ($telefones as $key => $telefone) {
             $telefone['idtelefone'] = isset($telefone['idtelefone']) ? $telefone['idtelefone'] : '';
             $telefoneModel = new telefoneModel();
             $telefoneModel->setId($telefone['idtelefone']);
             $telefoneModel->setCategoria($telefone['categoria']);
             $telefoneModel->setNumero($telefone['telefone']);
             $telefoneModel->setOperadora($telefone['operadora']);
             $telefoneModel->setTipo($telefone['tipo_telefone']);
             $funcionariosModel->addTelefone($telefoneModel);
         }
         //EMAILS
         foreach ($emails as $email) {
             $email['idemail'] = isset($email['idemail']) ? $email['idemail'] : '';
             $emailModel = new emailModel();
             $emailModel->setId($email['idemail']);
             $emailModel->setEmail($email['email']);
             $emailModel->setTipo($email['tipo_email']);
             $funcionariosModel->addEmail($emailModel);
         }
         //ENDEREÇO
         $this->load->model('enderecoModel');
         $enderecoModel = new enderecoModel();
         $enderecoModel->setId($id_endereco);
         $enderecoModel->setCep($cep);
         $enderecoModel->setNumero($numero);
         $enderecoModel->setComplemento($complemento);
         $enderecoModel->setLogradouro($logradouro);
         $enderecoModel->setBairro($bairro);
         $enderecoModel->setCidade($cidade);
         $enderecoModel->setEstado($estado);
         //FORMATAÇÃO DOS DADOS
         $this->load->library('dataFormat', null, true);
         $dataNascimento = $this->load->dataFormat->formatar($dataNascimento, 'data', 'banco');
         $dataAdmissao = $this->load->dataFormat->formatar($dataAdmissao, 'data', 'banco');
         $dataDemissao = $this->load->dataFormat->formatar($dataDemissao, 'data', 'banco');
         if (!empty($foto)) {
             $cropValues = array('w' => $this->http->getRequest('w'), 'h' => $this->http->getRequest('h'), 'x1' => $this->http->getRequest('x1'), 'y1' => $this->http->getRequest('y1'));
             $tamanho = array('p' => array('w' => 404, 'h' => 158));
             if ($nome_foto == '') {
                 $nome_foto = md5(date('dmYHis'));
             }
             try {
                 $this->load->library('uploadFoto');
                 $upload = new uploadFoto('funcionarios', $foto, $nome_foto, $tamanho, $cropValues);
                 $nome_foto = $upload->getNomeArquivo();
             } catch (Exception $e) {
                 $this->http->response($e->getMessage());
                 return false;
             }
         }
         $funcionariosModel->setId($idFuncionario);
         $funcionariosModel->setFoto($nome_foto);
         $funcionariosModel->setNome($nome);
         $funcionariosModel->setSobrenome($sobrenome);
         $funcionariosModel->setDataNascimento($dataNascimento);
         $funcionariosModel->setSexo($sexo);
         $funcionariosModel->setRg($rg);
         $funcionariosModel->setCpf($cpf);
         $funcionariosModel->setEstadoCivil($estadoCivil);
         $funcionariosModel->setEscolaridade($escolaridade);
         $funcionariosModel->setEndereco($enderecoModel);
         $funcionariosModel->setCodigo($codigoAdmissao);
         $cargosModel = new cargosModel();
         $cargosModel->setId($cargo);
         $funcionariosModel->setCargo($cargosModel);
         $funcionariosModel->setDataAdmissao($dataAdmissao);
         $funcionariosModel->setDataDemissao($dataDemissao);
         //FUNCIONARIO DAO
         $this->load->dao('funcionarios/funcionariosDao');
         $funcionariosDao = new funcionariosDao();
         try {
             $this->http->response($funcionariosDao->atualizar($funcionariosModel));
         } catch (dbException $e) {
             $this->http->response($e->getMessageError());
             exit;
         }
     } else {
         $todos_erros = $this->load->dataValidator->get_errors();
         $this->http->response(json_encode($todos_erros));
     }
 }