Skip to content

Commit

Permalink
Merge pull request #1 from pedro-teixeira/issue/1-code-style-doc
Browse files Browse the repository at this point in the history
Rever code style e documentação
  • Loading branch information
Pedro Teixeira committed Feb 22, 2014
2 parents 9e4ee73 + aa30bf1 commit 0c41064
Show file tree
Hide file tree
Showing 13 changed files with 256 additions and 75 deletions.
5 changes: 1 addition & 4 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
# 4.2.0
---

### Bugfix

Expand All @@ -15,14 +14,13 @@


# 4.1.0
---

### Bugfix

- Desconsiderando duplicidade de produtos configuráveis no cálculo do volume do PAC
- Corrigido problema com a função depreciada slipt()
- Corrigido mensagem de erro de peso e valor de "a cima" para "acima"

### Feature

- Nova estrutura do Model, facilitando o entendimento e manutenção
Expand All @@ -37,7 +35,6 @@


# 4.0.0
---

### Bugfix

Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The MIT License (MIT)

Copyright (c) 2010-2011 Pedro Teixeira
Copyright (c) 2010-2014 Pedro Teixeira

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
202 changes: 202 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,202 @@
# PedroTeixeira_Correios

> Módulo de frete para Magento com tracking

## Testado em Magento

`1.6.2.0`, `1.7.0.2` e `1.8.1.0`


## Instalando por Magento Connect

Magento Connect é uma ferramenta disponibilizada pela Magento para que você instale módulos na sua loja de maneira muito simples e rápida, além de facilitar a atualização:

- Para acessar o Magento Connect Manager você deve utilizar o link: www.sualoja.com.br/downloader (lembre-se de trocar o "www.sualoja.com.br" pelo domínio que você utiliza)
- Preencha seu usuário e senha de acesso a administração
- Abra outra janela do seu browser e acesse a página do módulo pedroteixeira-correios no [Magento Connect](http://www.magentocommerce.com/magento-connect/pedroteixeira-correios.html)
- Clique no botão "Get Extension Key", aceite a licença da extensão e clique novamente em "Get Extension Key"
- Será mostrado um novo campo com o valor `magento-community/PedroTeixeira_Correios`, copie esse texto
- Volte para o Magento Connect Manager e repare que existe um campo nominado como "Paste extension key to install", cole o texto copiado do Magento Connect nesse campo e clique em "Install"
- Será mostrada uma tela de instalação e após alguns minutos o módulo estará instalado, basta configurar e utilizar


## Instalando manualmente

Caso você prefira fazer a instalação manual, basta baixar a última versão do módulo na [página de releases](https://github.com/pedro-teixeira/correios/releases) e seguir os seguintes passos:

- O tarball deve ser descompactado no public_html de sua loja
- <a href="#cache">Atualize o cache</a>
- Se você utiliza Flat Table, <a href="#flattable">atualize sua Flat Table</a>


## Configurando o módulo

Antes de configurar o módulo você deve cadastrar o CEP de origem de sua loja:

- Acesse a administração de sua loja
- No menu superior vá em "Sistema > Configuração"
- No menu esquerdo vá em "Definições de Envio"
- Na aba "Origem" você pode preencher os dados da origem de entrega de sua loja

Para acessar a configuração do módulo:

- Acesse a administração de sua loja
- No menu superior vá em "Sistema > Configuração"
- No menu esquerdo vá em "Métodos de Envio"

Na aba "Correios - Pedro Teixeira" você tem todos os campos de configuração do módulo, os mais importantes são:

- *Habilitar* - Para "ligar" ou "desligar" o módulo
- *Nome do Meio de Entrega* - Nome do serviço de entrega, será mostrado para seu cliente
- *Serviços* - Quais serviços você deseja habilitar, para selecionar mais de um, segure a tecla "Ctrl" e clique nos serviços
- *Serviço para Entrega Gratuita* - Quando houver um desconto de frete grátis, esse serviço terá o valor zero
- *Formato do Peso* - Qual unidade de peso está sendo utilizado no cadastro do produto
- *Validar Dimensões dos Produtos* - Valida todos os produtos na regra de dimensões dos Correios
- *Exibir Prazo de Entrega* - Se será ou não mostrado o prazo de entrega para seu cliente
- *Código Administrativo dos Correios (Serviços Com Contrato)* - Se você possui contrato com os Correios, preencha nesse campo o número do contrato
- *Senha Administrativa dos Correios (Serviços Com Contrato)* - Senha do seu contrato, por padrão são os 8 primeiros dígitos do CNPJ
- *Altura Padrão (cm)* - Se não definido a altura individualmente em cada produto, será utilizado esse valor
- *Comprimento Padrão (cm)* - Se não definido o comprimento individualmente em cada produto, será utilizado esse valor
- *Largura Padrão (cm)* - Se não definido a largura individualmente em cada produto, será utilizado esse valor
- *Taxa de Postagem* - Valor que será adicionado ao valor do frete
- *Adicionar ao Prazo* dos Correios (dias) - Quantidade de dias que será adicionado ao prazo dos Correios


## Suporte

Por favor utilize as [issues do GitHub](https://github.com/pedro-teixeira/correios/issues) para reportar problemas e requisitar features. Antes verifique as issues abertas e envie sua pull request!

Para entrar em contato direto com o criador, vá para [http://www.pteixeira.com.br/](http://www.pteixeira.com.br/).


## FAQ

<a name="cache"></a>
### Como atualizar cache?

O cache é uma funcionalidade do Magento para aumentar a velocidade de sua loja, porém, em alguns casos, é necessário atualizá-lo para aplicar modificações na loja:

- Acesse a administração de sua loja
- No menu superior vá em "Sistema > Cache Management"
- No lado esquerdo, no cabeçalho da tabela, clique no link "Selecionar Tudo"
- No lado direito, no cabeçalho da tabela, selecione o campo "Ações" como "Atualizar" e clique no botão "Enviar"

Você também pode apagar todo o conteúdo da pasta "var/cache" para atualizar seu cache.

<a name="flattable"></a>
### Como atualizar o flat table?

Flat Table é uma funcionalidade do Magento que agrupa todos os atributos de produtos em uma tabela só, por padrão ela vem desativada, mas você ou seu desenvolvedor pode ativá-la para aumentar o desempenho da loja.

O módulo pedroteixeira-correios inclui os campos de volume no cadastro do produto, e quando você utiliza a Flat Table é necessário atualizá-la para aplicar esses campos:

- Acesse a administração de sua loja
- No menu superior vá em "Sistema > Index Management"
- No lado esquerdo, no cabeçalho da tabela, clique no link "Selecionar Tudo"
- No lado direito, no cabeçalho da tabela, selecione o campo "Ações" como "Reindex Data" e clique no botão "Enviar"

<a name="log"></a>
### Como habilitar o log?

O log permite que os erros gerados pelo módulo sejam rastreados para podermos entender melhor o que está acontecendo sem atrapalhar os usuários da loja.

Para habilitar essa funcionalidade:

- Acesse a administração de sua loja;
- No menu superior vá em "Sistema > Configuração"
- No menu esquerdo vá em "Desenvolvedor", a última opção do menu
- Na aba "Log Settings", selecione "Habilitado" como "Sim"
- Clique em "Salvar Config"

A partir de agora sua loja salvará os erros no arquivo `var/log/system.log`.


## Códigos de erros dos Correios

Sempre que o webservice dos Correios retornam um erro, o módulo irá mostrar a frase "Houve um erro inesperado, por favor entre em contato." seguida da mensagem e o código do erro retornado pelos Correios.

`1` Código de serviço inválido

`2` CEP de origem inválido

`3` CEP de destino inválido

`4` Peso excedido

`5` O Valor Declarado não deve exceder R$ 10.000,00

`6` Serviço indisponível para o trecho informado

`7` O Valor Declarado é obrigatório para este serviço

`8` Este serviço não aceita Mão Própria

`9` Este serviço não aceita Aviso de Recebimento

`10` Precificação indisponível para o trecho informado

`11` Para definição do preço deverão ser informados, também, o comprimento, a largura e altura do objeto em centímetros (cm)

`12` Comprimento inválido

`13` Largura inválida

`14` Altura inválida

`15` O comprimento não pode ser maior que 60 cm

`16` A largura não pode ser maior que 60 cm

`17` A altura não pode ser maior que 60 cm

`18` A altura não pode ser inferior a 2 cm

`19` A altura não pode ser maior que o comprimento

`20` A largura não pode ser inferior a 5 cm

`21` A largura não pode ser menor que 11cm, quando o comprimento for menor que 25cm

`22` O comprimento não pode ser inferior a 16 cm

`23` A soma resultante do comprimento + largura + altura não deve superar a 150 cm

`24` Comprimento inválido

`25` Diâmetro inválido

`26` Informe o comprimento

`27` Informe o diâmetro

`28` O comprimento não pode ser maior que 90 cm

`29` O diâmetro não pode ser maior que 90 cm

`30` O comprimento não pode ser inferior a 18 cm

`31` O diâmetro não pode ser inferior a 5 cm

`32` A soma resultante do comprimento + o dobro do diâmetro não deve superar a 104 cm

`33` Sistema temporariamente fora do ar. Favor tentar mais tarde

`34` Código Administrativo ou Senha inválidos

`35` Senha incorreta

`36` Cliente não possui contrato vigente com os Correios

`37` Cliente não possui serviço ativo em seu contrato

`38` Serviço indisponível para este código administrativo

`888` Erro ao calcular a tarifa

`7` Serviço indisponível, tente mais tarde

`99` Outros erros diversos do .Net


[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/pedro-teixeira/correios/trend.png)](https://bitdeli.com/free "Bitdeli Badge")
8 changes: 3 additions & 5 deletions app/code/community/PedroTeixeira/Correios/Helper/Data.php
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
<?php
/**
* This source file is subject to the MIT License.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/MIT
* It is also available through http://opensource.org/licenses/MIT
*
* @category PedroTeixeira
* @package PedroTeixeira_Correios
* @copyright Copyright (c) 2011 Pedro Teixeira (http://www.pteixeira.com.br)
* @copyright Copyright (c) 2014 Pedro Teixeira (http://www.pteixeira.com.br)
* @author Pedro Teixeira <pedro@pteixeira.com.br>
* @license http://opensource.org/licenses/MIT
*/

class PedroTeixeira_Correios_Helper_Data extends Mage_Core_Helper_Abstract
{
}
}
Original file line number Diff line number Diff line change
@@ -1,24 +1,14 @@
<?php
/**
* This source file is subject to the MIT License.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/MIT
* It is also available through http://opensource.org/licenses/MIT
*
* @category PedroTeixeira
* @package PedroTeixeira_Correios
* @copyright Copyright (c) 2011 Pedro Teixeira (http://www.pteixeira.com.br)
* @copyright Copyright (c) 2014 Pedro Teixeira (http://www.pteixeira.com.br)
* @author Pedro Teixeira <pedro@pteixeira.com.br>
* @license http://opensource.org/licenses/MIT
*/

/**
* PedroTeixeira_Correios_Model_Carrier_CorreiosMethod
*
* @category PedroTeixeira
* @package PedroTeixeira_Correios
* @author Pedro Teixeira <pedro@pteixeira.com.br>
*/

class PedroTeixeira_Correios_Model_Carrier_CorreiosMethod
extends Mage_Shipping_Model_Carrier_Abstract
implements Mage_Shipping_Model_Carrier_Interface
Expand All @@ -34,7 +24,7 @@ class PedroTeixeira_Correios_Model_Carrier_CorreiosMethod
/**
* _result property
*
* @var Mage_Shipping_Model_Rate_Result / Mage_Shipping_Model_Tracking_Result
* @var Mage_Shipping_Model_Rate_Result|Mage_Shipping_Model_Tracking_Result
*/
protected $_result = null;

Expand Down Expand Up @@ -70,7 +60,7 @@ class PedroTeixeira_Correios_Model_Carrier_CorreiosMethod
*
* @param Mage_Shipping_Model_Rate_Request $request
*
* @return Mage_Shipping_Model_Rate_Result
* @return bool|Mage_Shipping_Model_Rate_Result|Mage_Shipping_Model_Tracking_Result
*/
public function collectRates(Mage_Shipping_Model_Rate_Request $request)
{
Expand Down Expand Up @@ -144,7 +134,7 @@ public function collectRates(Mage_Shipping_Model_Rate_Request $request)
/**
* Get shipping quote
*
* @return object
* @return Mage_Shipping_Model_Rate_Result|Mage_Shipping_Model_Tracking_Result
*/
protected function _getQuotes()
{
Expand Down Expand Up @@ -215,7 +205,7 @@ protected function _getQuotes()
*
* @param Mage_Shipping_Model_Rate_Request $request
*
* @return boolean
* @return bool
*/
protected function _inicialCheck(Mage_Shipping_Model_Rate_Request $request)
{
Expand Down Expand Up @@ -268,7 +258,7 @@ protected function _inicialCheck(Mage_Shipping_Model_Rate_Request $request)
/**
* Get Correios return
*
* @return bool
* @return bool|SimpleXMLElement[]
*/
protected function _getCorreiosReturn()
{
Expand Down Expand Up @@ -373,9 +363,9 @@ protected function _getCorreiosReturn()
/**
* Apend shipping value to return
*
* @param $shipping_method string
* @param $shippingPrice float
* @param $correiosReturn array
* @param string $shipping_method
* @param int $shippingPrice
* @param int $correiosDelivery
*
* @return void
*/
Expand Down Expand Up @@ -434,12 +424,10 @@ protected function _apendShippingReturn($shipping_method, $shippingPrice = 0, $c
/**
* Throw error
*
* @param $message string
* @param $log string
* @param $line int
* @param $custom string
*
* @return void
* @param string $message
* @param string $log
* @param string|int $line
* @param string $custom
*/
protected function _throwError($message, $log = null, $line = 'NO LINE', $custom = null)
{
Expand Down Expand Up @@ -573,7 +561,7 @@ protected function _cleanCorreiosError($error)
/**
* Check if current carrier offer support to tracking
*
* @return boolean true
* @return bool true
*/
public function isTrackingAvailable()
{
Expand Down Expand Up @@ -621,7 +609,7 @@ public function getTracking($trackings)
*
* @param string $code
*
* @return boolean
* @return bool
*/
protected function _getTracking($code)
{
Expand Down Expand Up @@ -733,10 +721,10 @@ public function getAllowedMethods()
/**
* Define ZIP Code as required
*
* @return boolean
* @return bool
*/
public function isZipCodeRequired()
{
return true;
}
}
}
Loading

0 comments on commit 0c41064

Please sign in to comment.