Página 25 de 28

Re: Formas de envio pelo Correios do Brasil

Enviado: 09 Dez 2014, 09:45
por andersonbr
Não achei comentários para uma dúvida que tenho, por isso vou postar aqui:

É possível modificar o resultado do que aparece na tela da pessoa ao simular o frete?

Por exemplo: gostaria que a opção PAC fosse a primeira a aparecer, ao invés do Sedex.

Obrigado!

Re: Formas de envio pelo Correios do Brasil

Enviado: 17 Dez 2014, 11:04
por andersonbr
??????????? ninguém???

:(

Re: Formas de envio pelo Correios do Brasil

Enviado: 17 Dez 2014, 12:23
por veteranodf
Não sei como esta o código fonte do seu módulo mais no meu "catalog/model/shipping/correios.php" é só inverter a seguinte ordem dos scripts abaixo, pegue como exemplo e adapte do seu código;


// serviços sem contrato
if($this->config->get('correios_' . $this->correios['SEDEX'])){
$this->nCdServico[] = $this->correios['SEDEX'];
}
if($this->config->get('correios_' . $this->correios['PAC'])){
$this->nCdServico[] = $this->correios['PAC'];
}

Para

// serviços sem contrato
if($this->config->get('correios_' . $this->correios['PAC'])){
$this->nCdServico[] = $this->correios['PAC'];
}
if($this->config->get('correios_' . $this->correios['SEDEX'])){
$this->nCdServico[] = $this->correios['SEDEX'];
}

Re: Formas de envio pelo Correios do Brasil

Enviado: 17 Dez 2014, 13:14
por andersonbr
Já fiz esta mudança, mas dá erro.
Estou usando a parte onde tem contrato.

// serviços com contrato
if(trim($this->config->get('correios_contrato_codigo')) != "" && trim($this->config->get('correios_contrato_senha')) != ""){
$this->contrato_codigo = $this->config->get('correios_contrato_codigo');
$this->contrato_senha = $this->config->get('correios_contrato_senha');

if($this->config->get('correios_' . $this->correios['SEDEX a Cobrar - contrato'])){
$this->nCdServico[] = $this->correios['SEDEX a Cobrar - contrato'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 1'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 1'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 2'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 2'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 3'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 3'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 4'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 4'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 5'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 5'];
}
if($this->config->get('correios_' . $this->correios['PAC - contrato'])){
$this->nCdServico[] = $this->correios['PAC - contrato'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX'])){
$this->nCdServico[] = $this->correios['e-SEDEX'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX Prioritario'])){
$this->nCdServico[] = $this->correios['e-SEDEX Prioritario'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX Express'])){
$this->nCdServico[] = $this->correios['e-SEDEX Express'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX grupo 1'])){
$this->nCdServico[] = $this->correios['e-SEDEX grupo 1'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX grupo 2'])){
$this->nCdServico[] = $this->correios['e-SEDEX grupo 2'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX grupo 3'])){
$this->nCdServico[] = $this->correios['e-SEDEX grupo 3'];
}
}




O erro que dá quando inverto:
Parse error: syntax error, unexpected 'private' (T_PRIVATE) in /home/.../.../qmod/vqcache/vq2-catalog_model_shipping_correios.php on line 357

Re: Formas de envio pelo Correios do Brasil

Enviado: 17 Dez 2014, 17:02
por veteranodf
Você utiliza opção de frete com CONTRATO?, se não reveja o exemplo que postei;

Re: Formas de envio pelo Correios do Brasil

Enviado: 17 Dez 2014, 19:28
por andersonbr
Sim.
A empresa tem contrato com o correio.

Re: Formas de envio pelo Correios do Brasil

Enviado: 17 Dez 2014, 23:02
por veteranodf
Inverter as ordens não causa o erro informado, você deve ter esquecido de fechar alguma chave "}" ou outra coisa obrigatória e básica no código, pode não ser nas linhas postadas e sim em outra linha, o erro informado é referente a erro de syntax do PHP;

Re: Formas de envio pelo Correios do Brasil

Enviado: 18 Dez 2014, 07:14
por andersonbr
Meu código está assim:


// serviços com contrato
if(trim($this->config->get('correios_contrato_codigo')) != "" && trim($this->config->get('correios_contrato_senha')) != ""){
$this->contrato_codigo = $this->config->get('correios_contrato_codigo');
$this->contrato_senha = $this->config->get('correios_contrato_senha');

if($this->config->get('correios_' . $this->correios['SEDEX a Cobrar - contrato'])){
$this->nCdServico[] = $this->correios['SEDEX a Cobrar - contrato'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 1'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 1'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 2'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 2'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 3'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 3'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 4'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 4'];
}
if($this->config->get('correios_' . $this->correios['SEDEX - contrato 5'])){
$this->nCdServico[] = $this->correios['SEDEX - contrato 5'];
}
if($this->config->get('correios_' . $this->correios['PAC - contrato'])){
$this->nCdServico[] = $this->correios['PAC - contrato'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX'])){
$this->nCdServico[] = $this->correios['e-SEDEX'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX Prioritario'])){
$this->nCdServico[] = $this->correios['e-SEDEX Prioritario'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX Express'])){
$this->nCdServico[] = $this->correios['e-SEDEX Express'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX grupo 1'])){
$this->nCdServico[] = $this->correios['e-SEDEX grupo 1'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX grupo 2'])){
$this->nCdServico[] = $this->correios['e-SEDEX grupo 2'];
}
if($this->config->get('correios_' . $this->correios['e-SEDEX grupo 3'])){
$this->nCdServico[] = $this->correios['e-SEDEX grupo 3'];
}
}

Re: Formas de envio pelo Correios do Brasil

Enviado: 18 Dez 2014, 19:12
por veteranodf
Cara como te falei esse erro não é causado pela mudança da ordem, pode ser em outra linha do script, acima do código postado ou abaixo pois eu peguei essas linhas postadas por você colei no meu script de frete testei o mesmo e funcionou sem erros; Uma pergunta você esta preenchendo os dados na admin do módulo com os dados do contrato do cliente com os correios e senha?

Re: Formas de envio pelo Correios do Brasil

Enviado: 19 Dez 2014, 08:20
por andersonbr
Sim.
O módulo tá funcionando tudo ok.

O problema mesmo é inverter.

Pode me passar esta modificação que vc fez no meu código para eu ver se funciona aqui?