Beispiel #1
0
 // se atende o estado
 if ($est_parc->select == 2) {
     // todo o estado
     gravaOrcamentoEnviado($orca, $parceiro);
 } else {
     if ($est_parc->select == 1) {
         // parcial
         // descobre a região de cada orçamento
         $ro = cidade::find($orca->cidade_origem);
         $regiao_origem = $ro->regioe_id;
         $rd = cidade::find($orca->cidade_destino);
         $regiao_destino = $rd->regioe_id;
         if ($orca->cidade_origem == $orca->cidade_destino) {
             // se as cidades de origem e destino sao a mesmas
             // busca pela cidade
             $cdd_parc = cdd_atendida::find('first', array('conditions' => array('parceiros_id = ? AND cidades_id = ?', $parceiro->id, $orca->cidade_origem)));
             // busca pela regiao da cidade
             $reg_parc = reg_atendida::find('first', array('conditions' => array('parceiros_id = ? AND estadosregioes_id = ?', $parceiro->id, $regiao_origem)));
             if ($cdd_parc && $cdd_parc->select == 1 || $reg_parc && $reg_parc->select == 2) {
                 gravaOrcamentoEnviado($orca, $parceiro);
             }
         } else {
             // se as cidades de origem e destino forem diferentes
             if ($regiao_origem == $regiao_destino) {
                 // se as regioes das cidades forem as mesmas
                 $reg_parc = reg_atendida::find('first', array('conditions' => array('parceiros_id = ? AND estadosregioes_id = ?', $parceiro->id, $regiao_origem)));
             } else {
                 $reg_parc = reg_atendida::find('first', array('conditions' => array('parceiros_id = ? AND estadosregioes_id in (?)', $parceiro->id, array($regiao_origem, $regiao_destino))));
             }
             if ($reg_parc && $reg_parc->select == 2) {
                 gravaOrcamentoEnviado($orca, $parceiro);