/** * Método que adiciona novas encomendas ao webservice. * * @access public * @param Encomenda $encomenda * @return CorreiosWebService object */ public function add(Encomenda $encomenda) { if ($encomenda->isMultCodigo()) { $codigos = explode(",", $encomenda->codigo); $id = ""; foreach ($codigos as $key => $value) { $object = clone $encomenda; $object->codigo = (int) $value; if ($key == 0) { $this->add($object); $id = $this->lastInsertId(); continue; } //if $this->createUrl($object); $this->encomendas[$id . "_" . $key] = $object; unset($object); } //foreach $this->qtd_encomendas += count($codigos) - 1; unset($codigos, $encomenda); } else { $this->createUrl($encomenda); $this->encomendas[$this->getIndex()] = $encomenda; $this->qtd_encomendas++; } //if return $this; }
public function test_caso_seja_necessario_usuario_pode_setar_mais_de_um_codigo() { $encomenda = new Encomenda(); $encomenda->set("formato", 1)->set("peso", 100)->set("comprimento", 50)->set("altura", 100)->set("largura", 50)->set("diametro", 100)->set("aviso_recebimento", true)->set("mao_propria", true)->setNCodigos(40045)->setNCodigos(40436); $this->assertEquals($encomenda->get("codigo"), "40045,40436"); $this->assertTrue($encomenda->isMultCodigo()); }