= 8) { $valor = str_replace(".", "", $valor); } $valor = str_replace(",", ".", $valor); return (float)$valor; } function __removerAcentos(string $texto): string { $texto = trim($texto); $map = [ 'Á'=>'A','À'=>'A','Â'=>'A','Ã'=>'A','Ä'=>'A', 'á'=>'a','à'=>'a','â'=>'a','ã'=>'a','ä'=>'a', 'É'=>'E','È'=>'E','Ê'=>'E','Ë'=>'E', 'é'=>'e','è'=>'e','ê'=>'e','ë'=>'e', 'Í'=>'I','Ì'=>'I','Î'=>'I','Ï'=>'I', 'í'=>'i','ì'=>'i','î'=>'i','ï'=>'i', 'Ó'=>'O','Ò'=>'O','Ô'=>'O','Õ'=>'O','Ö'=>'O', 'ó'=>'o','ò'=>'o','ô'=>'o','õ'=>'o','ö'=>'o', 'Ú'=>'U','Ù'=>'U','Û'=>'U','Ü'=>'U', 'ú'=>'u','ù'=>'u','û'=>'u','ü'=>'u', 'Ç'=>'C','ç'=>'c' ]; $texto = strtr($texto, $map); return preg_replace('/[^A-Za-z0-9\s\-\.\,\/]/', '', $texto); } function __usaICMSST($empresa, $cst, $cfop){ if (!$empresa->substituto_tributario) { return false; } $cstPermitidos = ['10','30','70','90']; if (!in_array($cst, $cstPermitidos)) { return false; } $cfopsST = ['5401','5402','5403','6401','6402','6403']; if (!in_array($cfop, $cfopsST)) { return false; } return true; } function __itensPagina(){ if(!Auth::user()->empresa){ return env('PAGINACAO') ?? 30; } $empresa_id = Auth::user()->empresa->empresa_id; $config = ConfigGeral::where('empresa_id', $empresa_id)->first(); if($config == null){ return env('PAGINACAO') ?? 30; } return $config->itens_por_pagina ?? 30; } function __validaObjetoEmpresa($objeto) { if(!Auth::user()->empresa){ return true; } $empresa_id = Auth::user()->empresa->empresa_id; if(isset($objeto->empresa_id)){ if($objeto->empresa_id != $empresa_id){ abort(403); } } return true; } function valor_por_extenso($valor = 0, $maiusculas = false) { $singular = array("centavo", "real", "mil", "milhão", "bilhão", "trilhão", "quatrilhão"); $plural = array("centavos", "reais", "mil", "milhões", "bilhões", "trilhões", "quatrilhões"); $c = array("", "cem", "duzentos", "trezentos", "quatrocentos", "quinhentos", "seiscentos", "setecentos", "oitocentos", "novecentos"); $d = array("", "dez", "vinte", "trinta", "quarenta", "cinquenta", "sessenta", "setenta", "oitenta", "noventa"); $d10 = array("dez", "onze", "doze", "treze", "quatorze", "quinze", "dezesseis", "dezesete", "dezoito", "dezenove"); $u = array("", "um", "dois", "três", "quatro", "cinco", "seis", "sete", "oito", "nove"); $z = 0; $rt = ""; $valor = number_format($valor, 2, ".", "."); $inteiro = explode(".", $valor); for($i=0;$i 0 ? 1 : 2); for ($i=0;$i 100) && ($valor < 200)) ? "cento" : $c[$valor[0]]; $rd = ($valor[1] < 2) ? "" : $d[$valor[1]]; $ru = ($valor > 0) ? (($valor[1] == 1) ? $d10[$valor[2]] : $u[$valor[2]]) : ""; $r = $rc.(($rc && ($rd || $ru)) ? " e " : "").$rd.(($rd && $ru) ? " e " : "").$ru; $t = count($inteiro)-1-$i; $r .= $r ? " ".($valor > 1 ? $plural[$t] : $singular[$t]) : ""; if ($valor == "000")$z++; elseif ($z > 0) $z--; if (($t==1) && ($z>0) && ($inteiro[0] > 0)) $r .= (($z>1) ? " de " : "").$plural[$t]; if ($r) $rt = $rt . ((($i > 0) && ($i <= $fim) && ($inteiro[0] > 0) && ($z < 1)) ? ( ($i < $fim) ? ", " : " e ") : " ") . $r; } if(!$maiusculas){ return($rt ? $rt : "zero"); } else { if ($rt) $rt=ereg_replace(" E "," e ",ucwords($rt)); return (($rt) ? ($rt) : "Zero"); } } function __validaObjetoEmpresaContador($contador_empresa_id, $empresa_id) { $item = ContadorEmpresa::where('empresa_id', $empresa_id) ->where('contador_id', $contador_empresa_id)->first(); if($item == null){ abort(403, 'Você não possui acesso a esse registro!'); } return true; } function __tipoMenu() { if(!Auth::user()->empresa){ return env('MENU_PADRAO'); } $empresa_id = Auth::user()->empresa->empresa_id; $config = ConfigGeral::where('empresa_id', $empresa_id)->first(); if($config == null){ return env('MENU_PADRAO'); } return $config->tipo_menu; } function __tipoSmallHeader() { if(!Auth::user()->empresa){ return '../images/small/small-4.jpg'; } $empresa_id = Auth::user()->empresa->empresa_id; $config = ConfigGeral::where('empresa_id', $empresa_id)->first(); if($config == null){ return '../images/small/small-4.jpg'; } return '../images/small/'.$config->small_header_user; } function __infoTopoMenu(){ $config = ConfiguracaoSuper::first(); if($config == null || $config->info_topo_menu == 1) return 1; return 0; } function __casas_decimais_quantidade() { try{ if(!Auth::user()->empresa){ return 2; } $empresa_id = Auth::user()->empresa->empresa_id; $config = ConfigGeral::where('empresa_id', $empresa_id)->first(); if($config == null){ return 2; } return $config->casas_decimais_quantidade; }catch(\Exception $e){ return 2; } } function __dataTopBar() { if(!Auth::user()->empresa){ return 'light'; } $empresa_id = Auth::user()->empresa->empresa_id; $config = ConfigGeral::where('empresa_id', $empresa_id)->first(); if($config == null){ return 'light'; } return $config->cor_top_bar; } function __usuarioEscolherPlano(){ $config = ConfiguracaoSuper::first(); if($config == null || $config->usuario_alterar_plano == 1) return 1; return 0; } function __finalizacaoPdv(){ if(Auth::user()->finalizacao_pdv == null) return 'todos'; return Auth::user()->finalizacao_pdv; } function __dataMenuBar() { if(!Auth::user()->empresa){ return 'light'; } $empresa_id = Auth::user()->empresa->empresa_id; $config = ConfigGeral::where('empresa_id', $empresa_id)->first(); if($config == null){ return 'light'; } return $config->cor_menu; } function __dataThemeDefault() { if(Auth::user() && Auth::user()->tema_padrao){ return Auth::user()->tema_padrao; } $config = ConfiguracaoSuper::first(); if($config == null){ return 'light'; } return $config->tema_padrao; } function __moeda($valor, $casas_decimais = 2) { return number_format($valor, $casas_decimais, ',', '.'); } function __qtd($valor) { return number_format($valor, __casas_decimais_quantidade(), ',', '.'); } function __calcPercentual($v1, $v2){ if($v1 > $v2){ return number_format(100+(($v2-$v1)/$v1*100), 1); }else{ return 100; } } function __moedaInput($valor, $casas_decimais = 2) { return number_format($valor, $casas_decimais, ',', ''); } function __data_pt($data, $hora = true) { if ($hora) { return \Carbon\Carbon::parse($data)->format('d/m/Y H:i'); } else { return \Carbon\Carbon::parse($data)->format('d/m/Y'); } } function __hora_pt($data) { return \Carbon\Carbon::parse($data)->format('H:i'); } function __isMaster() { if (Auth::user()->email == env("MAILMASTER")) { return 1; } return 0; } function __isSuporte() { return Auth::user()->suporte; } function __isEmpresaMaster($empresa) { foreach($empresa->usuarios as $u){ if($u->usuario->email == env("MAILMASTER")){ return 1; } } return 0; } function __isContador() { if (Auth::user()->tipo_contador == 1) { return 1; } return 0; } function __isContadorPlano() { if (Auth::user()->empresa->empresa->cadastrar_planos == 1) { return 1; } return 0; } function __escolheLocalidade() { return Auth::user()->escolher_localidade_venda; } function __empresasDoContador() { $contador_id = Auth::user()->empresa->empresa_id; return ContadorEmpresa::where('contador_id', $contador_id)->get(); } function __faturaBoleto() { if(!Auth::user()->empresa) return null; $empresa_id = Auth::user()->empresa->empresa_id; if(Auth::user()->empresa->empresa->receber_com_boleto == 0) return null; $fatura = FinanceiroBoleto::where('empresa_id', $empresa_id) ->whereMonth('vencimento', date('m')) ->where('status', 0) ->first(); if($fatura != null){ $config = ConfiguracaoSuper::first(); $dif = strtotime($fatura->vencimento) - strtotime(date("Y-m-d")); $dif = (int)floor($dif / (60 * 60 * 24)); if($dif <= $config->dias_alerta_boleto){ // dd($fatura); return $fatura; } } return null; } function __isAdmin() { return Auth::user()->admin; } function __getError($e) { return "Linha: " . $e->getLine() . ", mensagem: " . $e->getMessage() . ", arquivo: " . $e->getFile(); } function __isCaixaAberto() { $usuario_id = Auth::user()->id; return Caixa::where('usuario_id', $usuario_id)->where('status', 1)->first(); } function get_id_user() { $usr = Auth::user()->id; return $usr; } function get_name_user() { $usr = Auth::user()->name; return $usr; } function __mask($val, $mask){ $maskared = ''; $k = 0; for ($i = 0; $i <= strlen($mask) - 1; ++$i) { if ($mask[$i] == '#') { if (isset($val[$k])) { $maskared .= $val[$k++]; } } else { if (isset($mask[$i])) { $maskared .= $mask[$i]; } } } return $maskared; } function __setMask($doc){ $doc = preg_replace('/[^0-9]/', '', $doc); $mask = '##.###.###/####-##'; if (strlen($doc) == 11) { $mask = '###.###.###-##'; } return __mask($doc, $mask); } function __isPlanoFiscal(){ $empresa = auth::user()->empresa; if(!$empresa) return false; $plano = $empresa->empresa->plano; if($plano){ if($plano->plano->fiscal) return 1; } if(__isContador()){ return 1; } return false; } function __periodoExpirar(){ $empresa = auth::user()->empresa; if(!$empresa) return false; $plano = $empresa->empresa->plano; if(!$plano) return false; // $plano->data_expiracao = "2025-04-16"; $dif = strtotime($plano->data_expiracao) - strtotime(date("Y-m-d")); $dif = floor($dif / (60 * 60 * 24)); if($dif <= 5) return 1; return 0; } function __isActivePlan($empresa, $menu){ if(!$empresa) return false; $plano = $empresa->empresa->plano; if($plano){ $modulos = json_decode($plano->plano->modulos) ?? []; if(in_array($menu, $modulos)) return true; else return false; } return false; } function __isInternacionalizar($empresa){ if(!$empresa) return false; $config = $empresa->empresa->configuracaoCardapio; if(!$config) return false; if($config->intercionalizar == 1) return 1; return false; } function __isNotificacao($empresa){ if(!$empresa) return false; $config = $empresa->empresa->configuracaoCardapio; if(!$config) return false; return 1; } function __isNotificacaoMarketPlace($empresa){ if(!$empresa) return false; $config = $empresa->empresa->configuracaoMarketPlace; if(!$config) return false; return 1; } function __isNotificacaoEcommerce($empresa){ if(!$empresa) return false; $config = $empresa->empresa->configuracaoEcommerce; if(!$config) return false; return 1; } function __countLocalAtivo(){ try{ if(!Auth::user()->empresa){ return 0; } $empresa_id = Auth::user()->empresa->empresa_id; return Localizacao::where('empresa_id', $empresa_id) ->where('status', 1)->count(); }catch(\Exception $e){ return 0; } } function __getLocaisAtivos(){ $empresa_id = Auth::user()->empresa->empresa_id; return Localizacao::where('empresa_id', $empresa_id) ->where('status', 1)->get(); } function __getLocalAtivo(){ if(!Auth::user()->empresa){ return 0; } $empresa_id = Auth::user()->empresa->empresa_id; return Localizacao::where('empresa_id', $empresa_id) ->where('status', 1)->first(); } function __getLocaisAtivoUsuario(){ $usuario_id = Auth::user()->id; return Localizacao::where('usuario_localizacaos.usuario_id', $usuario_id) ->select('localizacaos.*') ->join('usuario_localizacaos', 'usuario_localizacaos.localizacao_id', '=', 'localizacaos.id') ->where('localizacaos.status', 1)->get(); } function __objetoParaEmissao($empresa, $local_id){ $primeiraLocalizacao = Localizacao::where('empresa_id', $empresa->id) ->where('status', 1)->first(); $count = Localizacao::where('empresa_id', $empresa->id) ->where('status', 1)->count(); if($count <= 1) return $empresa; $localizacao = Localizacao::findOrFail($local_id); if($primeiraLocalizacao == $localizacao) return $empresa; return $localizacao; } function __createLog($empresa_id, $local, $acao, $descricao){ AcaoLog::create([ 'empresa_id' => $empresa_id, 'local' => $local, 'acao' => $acao, 'descricao' => substr($descricao, 0, 255), ]); } function __createApiLog($empresa_id, $token, $status, $descricao, $tipo, $prefixo){ ApiLog::create([ 'empresa_id' => $empresa_id, 'token' => $token, 'status' => $status, 'descricao' => substr($descricao, 0, 255), 'tipo' => $tipo, 'prefixo' => $prefixo ]); } function __validaPermissaoToken($token, $permissao){ $item = ApiConfig::where('token', $token)->first(); if($item){ $permissoes_acesso = $item->permissoes_acesso != 'null' ? json_decode($item->permissoes_acesso) : []; if(in_array($permissao, $permissoes_acesso)) return 1; } return 0; } function __isSegmentoPlanoOtica(){ $empresa = auth::user()->empresa; if(!$empresa) return false; $plano = $empresa->empresa->plano; if($plano){ if($plano->plano->segmento && $plano->plano->segmento->nome == 'Ótica') return 1; } return false; } function __isSegmentoServico($empresa_id){ $config = MarketPlaceConfig::where('empresa_id', $empresa_id)->first(); if($config == null) return 0; $segmento = json_decode($config->segmento); if(in_array('servicos', $segmento)) return 1; return 0; } function __isSegmentoProduto($empresa_id){ $config = MarketPlaceConfig::where('empresa_id', $empresa_id)->first(); if($config == null) return 0; $segmento = json_decode($config->segmento); if(in_array('produtos', $segmento)) return 1; return 0; } function __isProdutoServicoDelivery($empresa_id){ if(__isSegmentoProduto($empresa_id) && __isSegmentoServico($empresa_id)) return 1; return 0; } function __tributacaoProdutoLocal($item, $campo, $local_id){ $itemLocal = ProdutoTributacaoLocal::where('produto_id', $item->id) ->where('local_id', $local_id)->first(); if($itemLocal != null){ return $itemLocal[$campo]; } return $item[$campo]; } function __tributacaoProdutoLocalNcm($item, $local_id){ $itemLocal = ProdutoTributacaoLocal::where('produto_id', $item->id) ->where('local_id', $local_id)->first(); if($itemLocal != null){ return $itemLocal->_ncm ? [$itemLocal->ncm => $itemLocal->_ncm->descricao] : []; } return $item->_ncm ? [$item->ncm => $item->_ncm->descricao] : []; } function __primeiroLocal($local_id, $empresa_id){ $local = Localizacao::where('empresa_id', $empresa_id) ->where('status', 1)->first(); return $local_id == $local->id; } function __tributacaoProdutoLocalVenda($produto, $local_id){ $itemLocal = ProdutoTributacaoLocal::where('produto_id', $produto->id) ->where('local_id', $local_id)->first(); if($itemLocal == null || __primeiroLocal($local_id, $produto->empresa_id)){ return $produto; } $produto->ncm = $itemLocal->ncm; $produto->perc_icms = $itemLocal->perc_icms; $produto->perc_pis = $itemLocal->perc_pis; $produto->perc_cofins = $itemLocal->perc_cofins; $produto->perc_ipi = $itemLocal->perc_ipi; $produto->cest = $itemLocal->cest; $produto->origem = $itemLocal->origem; $produto->cst_csosn = $itemLocal->cst_csosn; $produto->cst_pis = $itemLocal->cst_pis; $produto->cst_cofins = $itemLocal->cst_cofins; $produto->cst_ipi = $itemLocal->cst_ipi; $produto->valor_unitario = $itemLocal->valor_unitario; $produto->cfop_estadual = $itemLocal->cfop_estadual; $produto->cfop_outro_estado = $itemLocal->cfop_outro_estado; return $produto; } function __valorProdutoLocal($produto, $local_id){ $itemLocal = ProdutoTributacaoLocal::where('produto_id', $produto->id) ->where('local_id', $local_id)->first(); if($itemLocal == null || __primeiroLocal($local_id, $produto->empresa_id)){ return $produto->valor_unitario; } return $itemLocal->valor_unitario; } function __getPais($codigo){ if(isset(__getPaises()[$codigo])){ return __getPaises()[$codigo]; } return 'Brasil'; } function __getPaises(){ return [ '0132' => "Afeganistão", '7560' => "África do Sul", '0175' => "Albânia, República da", '0230' => "Alemanha", '0370' => "Andorra Sim", '0400' => "Angola", '0418' => "Anguilla Sim", '0434' => "Antigua e Barbuda Sim", '0477' => "Antilhas Holandesas Sim", '0531' => "Arábia Saudita", '0590' => "Argélia", '0639' => "Argentina", '0647' => "Armênia, República da", '0655' => "Aruba", '0698' => "Austrália", '0728' => "Áustria", '0736' => "Azerbaijão, República do", '0779' => "Bahamas, Ilhas Sim", '0809' => "Bahrein, Ilhas Sim", '0817' => "Bangladesh", '0833' => "Barbados Sim", '0850' => "Belarus", '0876' => "Bélgica", '0884' => "Belize Sim", '2291' => "Benin", '0906' => "Bermudas Sim", '0973' => "Bolívia", '0981' => "Bósnia-Herzegovina", '1015' => "Botsuana", '1058' => "Brasil", '1082' => "Brunei", '1112' => "Bulgária, República da", '0310' => "Burkina Faso", '1155' => "Burundi", '1198' => "Butão", '1279' => "Cabo Verde, República de", '1457' => "Camarões", '1414' => "Camboja", '1490' => "Canadá", '1504' => "Canal, Ilhas do (Jersey e Guernsey) Sim", '1511' => "Canárias, Ilhas", '1546' => "Catar", '1376' => "Cayman, Ilhas Sim", '1538' => "Cazaquistão, República do", '7889' => "Chade", '1589' => "Chile", '1600' => "China, República Popular da", '1635' => "Chipre Sim", '5118' => "Christmas, Ilha (Navidad)", '7412' => "Cingapura", '1651' => "Cocos (Keeling), Ilhas", '1694' => "Colômbia", '1732' => "Comores, Ilhas", '8885' => "Congo, República Democrática do", '1775' => "Congo, República do", '1830' => "Cook, Ilhas Sim", '1872' => "Coréia, Rep. Pop. Democrática da", '1902' => "Coréia, República da", '1937' => "Costa do Marfim", '1961' => "Costa Rica Sim", '1988' => "Coveite", '1953' => "Croácia, República da", '1996' => "Cuba", '2321' => "Dinamarca", '7838' => "Djibuti Sim", '2356' => "Dominica, Ilha Sim", '2402' => "Egito", '6874' => "El Salvador", '2445' => "Emirados Árabes Unidos", '2399' => "Equador", '2437' => "Eritréia", '6289' => "Escócia", '2470' => "Eslovaca, República", '2461' => "Eslovênia, República da", '2453' => "Espanha", '2496' => "Estados Unidos", '2518' => "Estônia, República da", '2534' => "Etiópia", '2550' => "Falkland (Ilhas Malvinas)", '2593' => "Feroe, Ilhas", '8702' => "Fiji", '2674' => "Filipinas", '2712' => "Finlândia", '1619' => "Formosa (Taiwan)", '2755' => "França", '2810' => "Gabão", '6289' => "Gales, País de", '2852' => "Gâmbia", '2895' => "Gana", '2917' => "Geórgia, República da", '2933' => "Gibraltar Sim", '6289' => "Grã-Bretanha", '2976' => "Granada Sim", '3018' => "Grécia", '3050' => "Groenlândia", '3093' => "Guadalupe", '3131' => "Guam", '3174' => "Guatemala", '3379' => "Guiana", '3255' => "Guiana Francesa", '3298' => "Guiné", '3344' => "Guiné-Bissau", '3310' => "Guiné-Equatorial", '3417' => "Haiti", '5738' => "Holanda (Países Baixos)", '3450' => "Honduras", '3514' => "Hong Kong, Região Adm. Especial", '3557' => "Hungria, República da", '3573' => "Iêmen", '3611' => "Índia", '3654' => "Indonésia", '6289' => "Inglaterra", '3727' => "Irã, República Islâmica do", '3697' => "Iraque", '3751' => "Irlanda", '6289' => "Irlanda do Norte", '3794' => "Islândia", '3832' => "Israel", '3867' => "Itália", '3883' => "Iugoslávia, República Fed. da", '3913' => "Jamaica", '3999' => "Japão", '3964' => "Johnston, Ilhas", '4030' => "Jordânia", '4111' => "Kiribati", '4200' => "Laos, Rep. Pop. Democrática do", '4235' => "Lebuan Sim", '4260' => "Lesoto", '4278' => "Letônia, República da", '4316' => "Líbano", '4340' => "Libéria Sim", '4383' => "Líbia", '4405' => "Liechtenstein Sim", '4421' => "Lituânia, República da", '4456' => "Luxemburgo", '4472' => "Macau", '4499' => "Macedônia", '4502' => "Madagascar", '4525' => "Madeira, Ilha da Sim", '4553' => "Malásia", '4588' => "Malavi", '4618' => "Maldivas", '4642' => "Máli", '4677' => "Malta Sim", '3595' => "Man, Ilhas Sim", '4723' => "Marianas do Norte", '4740' => "Marrocos", '4766' => "Marshall, Ilhas Sim", '4774' => "Martinica", '4855' => "Maurício Sim", '4880' => "Mauritânia", '4936' => "México", '0930' => "Mianmar (Birmânia)", '4995' => "Micronésia", '4901' => "Midway, Ilhas", '5053' => "Moçambique", '4944' => "Moldávia, República da", '4952' => "Mônaco Sim", '4979' => "Mongólia", '5010' => "Montserrat, Ilhas Sim", '5070' => "Namíbia", '5088' => "Nauru Sim", '5177' => "Nepal", '5215' => "Nicarágua", '5258' => "Niger", '5282' => "Nigéria", '5312' => "Niue, Ilha Sim", '5355' => "Norfolk, Ilha", '5380' => "Noruega", '5428' => "Nova Caledônia", '5487' => "Nova Zelândia", '5568' => "Omã", '5738' => "Países Baixos (Holanda)", '5754' => "Palau", '5800' => "Panamá Sim", '5452' => "Papua Nova Guiné", '5762' => "Paquistão", '5860' => "Paraguai", '5894' => "Peru", '5932' => "Pitcairn, Ilha", '5991' => "Polinésia Francesa", '6033' => "Polônia, República da", '6114' => "Porto Rico", '6076' => "Portugal", '6238' => "Quênia", '6254' => "Quirguiz, República", '6289' => "Reino Unido", '6408' => "República Centro-Africana", '6475' => "República Dominicana", '6602' => "Reunião, Ilha", '6700' => "Romênia", '6750' => "Ruanda", '6769' => "Rússia", '6858' => "Saara Ocidental", '6777' => "Salomão, Ilhas", '6904' => "Samoa Sim", '6912' => "Samoa Americana", '6971' => "San Marino Sim", '7102' => "Santa Helena", '7153' => "Santa Lúcia Sim", '6955' => "São Cristóvão e Neves Sim", '7005' => "São Pedro e Miquelon", '7200' => "São Tomé e Príncipe, Ilhas", '7056' => "São Vicente e Granadinas Sim", '7285' => "Senegal", '7358' => "Serra Leoa", '7315' => "Seychelles Sim", '7447' => "Síria, República Árabe da", '7480' => "Somália", '7501' => "Sri Lanka", '7544' => "Suazilândia", '7595' => "Sudão", '7641' => "Suécia", '7676' => "Suíça", '7706' => "Suriname", '7722' => "Tadjiquistão", '7765' => "Tailândia", '7803' => "Tanzânia, República Unida da", '7919' => "Tcheca, República", '7820' => "Território Britânico Oc. Índico ", '7951' => "Timor Leste", '8001' => "Togo", '8109' => "Tonga Sim", '8052' => "Toquelau, Ilhas", '8150' => "Trinidad e Tobago", '8206' => "Tunísia", '8230' => "Turcas e Caicos, Ilhas Sim", '8249' => "Turcomenistão, República do", '8273' => "Turquia", '8281' => "Tuvalu", '8311' => "Ucrânia", '8338' => "Uganda", '8451' => "Uruguai", '8478' => "Uzbequistão, República do", '5517' => "Vanuatu Sim", '8486' => "Vaticano, Estado da Cidade do", '8508' => "Venezuela", '8583' => "Vietnã", '8630' => "Virgens, Ilhas (Britânicas) Sim", '8664' => "Virgens, Ilhas (E.U.A.) Sim", '8737' => "Wake, Ilha", '8753' => "Wallis e Futuna, Ilhas", '8907' => "Zâmbia", '6653' => "Zimbábue", '8958' => "Zona do Canal do Panamá" ]; } function __getUltimoNumeroSequencial($empresa_id, $tabela){ $config = ConfigGeral::where('empresa_id', $empresa_id)->first(); $ultimo = DB::table($tabela)->where('empresa_id', $empresa_id) ->orderBy('numero_sequencial', 'desc') ->where('numero_sequencial', '>', 0)->first(); $numero = $ultimo != null ? $ultimo->numero_sequencial : 0; if($config == null){ return $numero; } if($tabela == 'produtos'){ return $config->ultimo_codigo_produto > $numero ? $config->ultimo_codigo_produto : $numero; } if($tabela == 'clientes'){ return $config->ultimo_codigo_cliente > $numero ? $config->ultimo_codigo_cliente : $numero; } if($tabela == 'fornecedors'){ return $config->ultimo_codigo_fornecedor > $numero ? $config->ultimo_codigo_fornecedor : $numero; } } function __setUltimoNumeroSequencial($empresa_id, $tabela, $numero){ $config = ConfigGeral::where('empresa_id', $empresa_id)->first(); if($config != null){ if($tabela == 'produtos'){ $config->ultimo_codigo_produto = (int)$numero; } if($tabela == 'clientes'){ $config->ultimo_codigo_cliente = (int)$numero; } if($tabela == 'fornecedors'){ $config->ultimo_codigo_fornecedor = (int)$numero; } $config->save(); } }