gpupo / netshoes-sdk
SDK Não Oficial para integração a partir de aplicações PHP com APIs da Netshoes Marketplace
Installs: 370
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/gpupo/netshoes-sdk
Requires
- php: ^5.6 || ^7.0
- ext-curl: *
- gpupo/common-schema: ^1.1.8
- gpupo/common-sdk: ^2.2.4
README
SDK Não Oficial para integração a partir de aplicações PHP com as APIs da Netshoes Marketplace
Requisitos para uso
- PHP >= 5.6
- curl extension
- Composer Dependency Manager
Este componente não é uma aplicação Stand Alone e seu objetivo é ser utilizado como biblioteca. Sua implantação deve ser feita por desenvolvedores experientes.
Isto não é um Plugin!
As opções que funcionam no modo de comando apenas servem para depuração em modo de desenvolvimento.
A documentação mais importante está nos testes unitários. Se você não consegue ler os testes unitários, eu recomendo que não utilize esta biblioteca.
Direitos autorais e de licença
Este componente está sob a licença MIT
Para a informação dos direitos autorais e de licença você deve ler o arquivo de licença que é distribuído com este código-fonte.
Resumo da licença
Exigido:
- Aviso de licença e direitos autorais
Permitido:
- Uso comercial
- Modificação
- Distribuição
- Sublicenciamento
Proibido:
- Responsabilidade Assegurada
Indicadores de qualidade
Agradecimentos
- A todos os que contribuiram com patchs;
- Aos que fizeram sugestões importantes;
- Aos desenvolvedores que criaram as bibliotecas utilizadas neste componente.
Instalação
Adicione o pacote netshoes-sdk ao seu projeto utilizando composer:
composer require gpupo/netshoes-sdk
Acesso ao componente:
<?php use Gpupo\NetshoesSdk\Factory; $sdk = Factory::getInstance()->setup([ 'client_id' => 'foo', 'access_token' => 'bar', 'version' => 'sandbox', ]); $manager = $sdk->factoryManager('product');
| Parâmetro | Descrição | Valores possíveis |
|---|---|---|
client_id |
Chave da loja | string |
access_token |
Token de autorização da aplicação | string |
version |
Identificação do Ambiente | sandbox, prod (produção) |
registerPath |
Quando informado, registra no diretório informado, os dados de cada requisição executada |
Registro (log)
Adicione log para as atividades do componente:
<?php //.. use Monolog\Logger; use Monolog\Handler\StreamHandler; //.. $logger = new Logger('foo'); $logger->pushHandler(new StreamHandler('var/log/main.log', Logger::DEBUG)); $sdk->setLogger($logger);
Administração de Produtos
Para informações do formato de $data veja o arquivo vendor/gpupo/netshoes-sdk/Resources/fixture/Product/new.json
Acesso a lista de produtos cadastrados
<?php //.. $produtosCadastrados = $sdk->factoryManager('product')->fetch(); // Collection de Objetos Product
Acesso a informações de um produto cadastrado e com identificador conhecido:
<?php //.. $produto = $sdk->factoryManager('product')->findById(9)); // Objeto Produto echo $product->getName(); // Acesso ao nome do produto de Id 9
Acesso ao Status de um Product
<?php //.. $status = $sdk->factoryManager('product')->fetchStatusById(9)); // Objeto Status $status->isPending(); // boolean ou RuntimeException code 404 (inexistente)
Criação de um produto
<?php $product = $sdk->createProduct($data);
Gravação de Product
<?php //.. $sdk->factoryManager('product')->save($product);
Atualização de Product
<?php $manager = $sdk->factoryManager('product'); $previous = $sdk->createProduct($previousData); $product = $sdk->createPrevious($data); $manager->update($product, $previous);
A atualização compara $product com $previous é uma instância de Product
para identificar apenas os campos que precisam de atualização;
Importante: $previous deve ser armazenada localmente, para reduzir a quantidade de requisições à API;
Atualização de Sku
<?php $manager = $sdk->factoryManager('sku'); $previous = $sdk->createSku($previousData); $sku = $sdk->createSku($data); $manager->update($sku, $previous);
A atualização compara o SKU atual com $previous é uma instância de Sku
para identificar apenas os campos que precisam de atualização;
Importante: $previous deve ser armazenada localmente, para reduzir a quantidade de requisições à API;
Administração de Pedidos
Fluxo de status dos pedidos:
Created --> Approved --> Invoiced --> Shipped --> Delivered
Para informações do formato de $data veja o arquivo vendor/gpupo/netshoes-sdk/Resources/fixture/Order/new.json
A seguir seguem exemplos de mudanças de status de um pedido:
Invoiced
<?php //.. $order = $sdk->createOrder($data)->setOrderStatus('invoiced'); $invoice = $sdk->createInvoice([ 'number' => 4003, 'line' => 1, 'accessKey' => '1789616901235555001000004003000004003', 'issueDate' => '2016-05-10T09:44:54.000-03:00', ]); $order->getShipping()->setInvoice($invoice); echo $sdk->factoryManager('order')->update($order)->getHttpStatusCode()); // 200
Shipped
<?php //.. $order = $sdk->createOrder($data)->setOrderStatus('shipped'); $transport = $sdk->createTransport([ "carrier" => "Correios", "trackingNumber" => "PJ521644335BR", "shipDate" => "2016-05-10T10:46:00.000-03:00", "estimatedDeliveryDate" => "2016-05-10T10:46:00.000-03:00", ]); $order->getShipping()->setTransport($transport); echo $sdk->factoryManager('order')->update($order)->getHttpStatusCode()); // 200
Delivered
<?php //.. $order = $sdk->createOrder($data) ->setOrderStatus('delivered') ->getShipping()->getTransport() ->setDeliveryDate("2016-05-10T10:53:00.000-03:00"); echo $sdk->factoryManager('order')->update($order)->getHttpStatusCode()); // 200
Trade Order
Acesso ao output padrão Trading Order
<?php //.. use Gpupo\NetshoesSdk\Entity\Order\Order; use Gpupo\NetshoesSdk\Entity\Order\Manager; //... $manager = new Manager(); $tradeOrder = $manager->export($order);
Console
Lista de comandos disponíveis
$ ./vendor/bin/netshoes-sdk
Verificar suas credenciais Netshoes na linha de comando
$ ./vendor/bin/netshoes-sdk credential:test
Product
Verificar a situação de um produto
$ ./vendor/bin/netshoes-sdk produto:view [id]
Inserir um produto a partir de um arquivo json
$ ./vendor/bin/netshoes-sdk product:insert --file=vendor/gpupo/netshoes-sdk/Resources/fixture/Product/new.json
Atualizar um produto a partir de dois arquivos
$ ./vendor/bin/netshoes-sdk product:update \
--file-previous=Resources/fixture/Product/Update/previous.json \
--file-current=Resources/fixture/Product/Update/current.json
Exibe os SKUs de um produto
$ ./vendor/bin/netshoes-sdk product:sku:view 14080
Mostra preço, estoque e situação de um SKU
$ ./vendor/bin/netshoes-sdk product:sku:details 14080
Atualizar um produto a partir de um arquivo json
$ ./vendor/bin/netshoes-sdk product:sku:update --file=vendor/gpupo/netshoes-sdk/Resources/fixture/Product/Sku/update.json
Templates
Lista de Departamentos
./vendor/bin/netshoes-sdk templates:departments NS
Order
Detalhes de um pedido
$./vendor/bin/netshoes-sdk order:view 111111
Movendo um pedido para Approved a partir de seu número e informações contidas em arquivo
$ ./vendor/bin/netshoes-sdk order:update:to:approved 111111 --file=vendor/gpupo/netshoes-sdk/Resources/fixture/Order/Status/Request/toApproved.json
Movendo um pedido para Invoiced a partir de seu número e informações contidas em arquivo
$ ./vendor/bin/netshoes-sdk order:update:to:invoiced 111111 --file=vendor/gpupo/netshoes-sdk/Resources/fixture/Order/Status/Request/toInvoiced.json
Movendo um pedido para Shipped a partir de seu número e informações contidas em arquivo
$ ./vendor/bin/netshoes-sdk order:update:to:shipped 111111 --file=vendor/gpupo/netshoes-sdk/Resources/fixture/Order/Status/Request/toShipped.json
Movendo um pedido para Delivered a partir de seu número e informações contidas em arquivo
$ ./vendor/bin/netshoes-sdk order:update:to:delivered 111111 --file=vendor/gpupo/netshoes-sdk/Resources/fixture/Order/Status/Request/toDelivered.json
Configurações
Você poder criar um arquivo chamado bin/.netshoes.json com suas configurações personalizadas, as quais serão utilizadas na linha de comando
{
"client_id": "foo",
"access_token": "bar"
}
Utilize como modelo o arquivo bin/app.json.dist
Links
-
Netshoes-sdk Composer Package no packagist.org
-
Marketplace-bundle Composer Package - Integração deste pacote com Symfony
Desenvolvimento
git clone --depth=1 git@github.com:gpupo/netshoes-sdk.git
cd netshoes-sdk;
ant;
Personalize a configuração do phpunit:
cp phpunit.xml.dist phpunit.xml;
Personalize os parâmetros!
Dica: Verifique os logs gerados em var/log/main.log
Todo list
- Atualmente os a estrutura de Produtos está relacionando cada SKU a um Product com o mesmo Id, ou seja, não há agrupamento de SKUs em um único Product, por conta da estrutura atual de apresentação de produtos no marketplace da Netshoes. No futuro, quando o agrupamento for implementado, as rotas de Entity/Product/Sku precisam ser revistas.
Propriedades dos objetos
NetshoesSdk\Client\Client
- Sucesso ao definir options
- Gerencia uri de recurso
- Objeto request possui header
- Acesso a lista de pedidos
- Acesso a lista de produtos
- Render authorization
- Falha ao ser usado sem credenciais
NetshoesSdk\Console\Application
- Factory sdk
- Append command
NetshoesSdk\Entity\Order\Decorator\Status\Approved
- Recebe o objeto
Order - Falha ao validar
Ordercom informações mínimas requeridas ausentes - Falha ao tentar submeter uma ordem incompleta para mudança de status
- Tem sucesso ao validar as informações mínimas requeridas para uma mudança de status
- Prepara as informações como de acordo com o pedido na mudança de status
- Prepara JSON de acordo com o pedido na mudança de status
- Lida com as mensagens de validação
- Lida com as mensagens de validação especificando o atributo com problemas
- Possui validação de Order
NetshoesSdk\Entity\Order\Decorator\Status\Canceled
- Falha ao validar
OrdersemCancellation Reason - Recebe o objeto
Order - Falha ao validar
Ordercom informações mínimas requeridas ausentes - Falha ao tentar submeter uma ordem incompleta para mudança de status
- Tem sucesso ao validar as informações mínimas requeridas para uma mudança de status
- Prepara as informações como de acordo com o pedido na mudança de status
- Prepara JSON de acordo com o pedido na mudança de status
- Lida com as mensagens de validação
- Lida com as mensagens de validação especificando o atributo com problemas
- Possui validação de Order
NetshoesSdk\Entity\Order\Decorator\Status\Delivered
- Recebe o objeto
Order - Falha ao validar
Ordercom informações mínimas requeridas ausentes - Falha ao tentar submeter uma ordem incompleta para mudança de status
- Tem sucesso ao validar as informações mínimas requeridas para uma mudança de status
- Prepara as informações como de acordo com o pedido na mudança de status
- Prepara JSON de acordo com o pedido na mudança de status
- Lida com as mensagens de validação
- Lida com as mensagens de validação especificando o atributo com problemas
- Possui validação de Order
NetshoesSdk\Entity\Order\Decorator\Status\Invoiced
- Recebe o objeto
Order - Falha ao validar
Ordercom informações mínimas requeridas ausentes - Falha ao tentar submeter uma ordem incompleta para mudança de status
- Tem sucesso ao validar as informações mínimas requeridas para uma mudança de status
- Prepara as informações como de acordo com o pedido na mudança de status
- Prepara JSON de acordo com o pedido na mudança de status
- Lida com as mensagens de validação
- Lida com as mensagens de validação especificando o atributo com problemas
- Possui validação de Order
NetshoesSdk\Entity\Order\Decorator\Status\Shipped
- Recebe o objeto
Order - Falha ao validar
Ordercom informações mínimas requeridas ausentes - Falha ao tentar submeter uma ordem incompleta para mudança de status
- Tem sucesso ao validar as informações mínimas requeridas para uma mudança de status
- Prepara as informações como de acordo com o pedido na mudança de status
- Prepara JSON de acordo com o pedido na mudança de status
- Lida com as mensagens de validação
- Lida com as mensagens de validação especificando o atributo com problemas
- Possui validação de Order
NetshoesSdk\Entity\Order\Manager
- Administra operações de SKUs
- Possui objeto client
- Get a list of Orders
- Get a empty list of Orders
- Get a list of Common Schema Orders
- Get a list of most recent Common Schema Orders
- Get a order based on order number
- A atualização de status falha quando status não reconhecido
- Update Common Schema Order the shipping status to Approved
- Update the shipping status to Approved
- Falha ao tentar mover o status de um pedido para invoiced sem informar NF
- Update the shipping status to Invoiced
- Update the shipping status to Canceled - Require
Shipping Cancellation Reason - Não atualiza pedido que não alterou status
- Normaliza Shipping
- Update the shipping status to Delivered - Require
Transport Delivery Date - Update the shipping status to Shipped - Require
Transport Info - Pedido em situação
Shippedpossui Invoice - Pedido em situação
Shippedpossui Transport
NetshoesSdk\Entity\Order\OrderCollection
-
Links
-
É uma coleção de objetos
\Gpupo\NetshoesSdk\Entity\Order\Order -
É possui
count()que é um indicador de quantidade de Pedidos -
Possui objeto metadata
-
Metadata self
-
Metadata first
-
Metadata last
NetshoesSdk\Entity\Order\Order
- Possui validação
- Possui método
getShipping()que é um atalho para->getShippings()->first() - Falha ao acessar
getShipping()quando não houver nenhum objeto - Possui método
getInvoice()que é um atalho para->getShippings()->first()->getInvoice() - Possui método
setInvoice()que é um atalho para->getShippings()->first()->setInvoice() - Possui método
getItems()que é um atalho para->getShippings()->first()->getItems() - Possui método
getAgreedDate()para acessar AgreedDate - Possui método
setAgreedDate()que define AgreedDate - Possui método
getBusinessUnit()para acessar BusinessUnit - Possui método
setBusinessUnit()que define BusinessUnit - Possui método
getDevolutionRequested()para acessar DevolutionRequested - Possui método
setDevolutionRequested()que define DevolutionRequested - Possui método
getExchangeRequested()para acessar ExchangeRequested - Possui método
setExchangeRequested()que define ExchangeRequested - Possui método
getOrderDate()para acessar OrderDate - Possui método
setOrderDate()que define OrderDate - Possui método
getOrderNumber()para acessar OrderNumber - Possui método
setOrderNumber()que define OrderNumber - Possui método
getOrderStatus()para acessar OrderStatus - Possui método
setOrderStatus()que define OrderStatus - Possui método
getOrderType()para acessar OrderType - Possui método
setOrderType()que define OrderType - Possui método
getOriginNumber()para acessar OriginNumber - Possui método
setOriginNumber()que define OriginNumber - Possui método
getOriginSite()para acessar OriginSite - Possui método
setOriginSite()que define OriginSite - Possui método
getPaymentDate()para acessar PaymentDate - Possui método
setPaymentDate()que define PaymentDate - Possui método
getShippings()para acessar Shippings - Possui método
setShippings()que define Shippings - Possui método
getTotalCommission()para acessar TotalCommission - Possui método
setTotalCommission()que define TotalCommission - Possui método
getTotalDiscount()para acessar TotalDiscount - Possui método
setTotalDiscount()que define TotalDiscount - Possui método
getTotalFreight()para acessar TotalFreight - Possui método
setTotalFreight()que define TotalFreight - Possui método
getTotalGross()para acessar TotalGross - Possui método
setTotalGross()que define TotalGross - Possui método
getTotalNet()para acessar TotalNet - Possui método
setTotalNet()que define TotalNet - Possui método
getTotalQuantity()para acessar TotalQuantity - Possui método
setTotalQuantity()que define TotalQuantity - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Customer\Address
- Possui método
getCity()para acessar City - Possui método
setCity()que define City - Possui método
getComplement()para acessar Complement - Possui método
setComplement()que define Complement - Possui método
getNeighborhood()para acessar Neighborhood - Possui método
setNeighborhood()que define Neighborhood - Possui método
getNumber()para acessar Number - Possui método
setNumber()que define Number - Possui método
getPostalCode()para acessar PostalCode - Possui método
setPostalCode()que define PostalCode - Possui método
getReference()para acessar Reference - Possui método
setReference()que define Reference - Possui método
getState()para acessar State - Possui método
setState()que define State - Possui método
getStreet()para acessar Street - Possui método
setStreet()que define Street - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Customer\Customer
- Possui método
getAddress()para acessar Address - Possui método
setAddress()que define Address - Possui método
getCellPhone()para acessar CellPhone - Possui método
setCellPhone()que define CellPhone - Possui método
getCustomerName()para acessar CustomerName - Possui método
setCustomerName()que define CustomerName - Possui método
getDocument()para acessar Document - Possui método
setDocument()que define Document - Possui método
getLandLine()para acessar LandLine - Possui método
setLandLine()que define LandLine - Possui método
getRecipientName()para acessar RecipientName - Possui método
setRecipientName()que define RecipientName - Possui método
getStateInscription()para acessar StateInscription - Possui método
setStateInscription()que define StateInscription - Possui método
getTradeName()para acessar TradeName - Possui método
setTradeName()que define TradeName - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Invoice
- Não é validado se número da nota fiscal ausente
- Não é validado se linha da nota fiscal ausente
- Não é validado se data de emissão da nota fiscal ausente
- Não é validado se chave da nota fiscal ausente
- É valido se dados da nota fiscal presente
- Possui método
getNumber()para acessar Number - Possui método
setNumber()que define Number - Possui método
getLine()para acessar Line - Possui método
setLine()que define Line - Possui método
getAccessKey()para acessar AccessKey - Possui método
setAccessKey()que define AccessKey - Possui método
getIssueDate()para acessar IssueDate - Possui método
setIssueDate()que define IssueDate - Possui método
getShipDate()para acessar ShipDate - Possui método
setShipDate()que define ShipDate - Possui método
getUrl()para acessar Url - Possui método
setUrl()que define Url - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Items\Item
- Possui método
getBrand()para acessar Brand - Possui método
setBrand()que define Brand - Possui método
getColor()para acessar Color - Possui método
setColor()que define Color - Possui método
getDepartmentCode()para acessar DepartmentCode - Possui método
setDepartmentCode()que define DepartmentCode - Possui método
getDepartmentName()para acessar DepartmentName - Possui método
setDepartmentName()que define DepartmentName - Possui método
getDiscountUnitValue()para acessar DiscountUnitValue - Possui método
setDiscountUnitValue()que define DiscountUnitValue - Possui método
getEan()para acessar Ean - Possui método
setEan()que define Ean - Possui método
getFlavor()para acessar Flavor - Possui método
setFlavor()que define Flavor - Possui método
getGrossUnitValue()para acessar GrossUnitValue - Possui método
setGrossUnitValue()que define GrossUnitValue - Possui método
getItemId()para acessar ItemId - Possui método
setItemId()que define ItemId - Possui método
getManufacturerCode()para acessar ManufacturerCode - Possui método
setManufacturerCode()que define ManufacturerCode - Possui método
getName()para acessar Name - Possui método
setName()que define Name - Possui método
getNetUnitValue()para acessar NetUnitValue - Possui método
setNetUnitValue()que define NetUnitValue - Possui método
getQuantity()para acessar Quantity - Possui método
setQuantity()que define Quantity - Possui método
getSize()para acessar Size - Possui método
setSize()que define Size - Possui método
getSku()para acessar Sku - Possui método
setSku()que define Sku - Possui método
getStatus()para acessar Status - Possui método
setStatus()que define Status - Possui método
getTotalCommission()para acessar TotalCommission - Possui método
setTotalCommission()que define TotalCommission - Possui método
getTotalDiscount()para acessar TotalDiscount - Possui método
setTotalDiscount()que define TotalDiscount - Possui método
getTotalFreight()para acessar TotalFreight - Possui método
setTotalFreight()que define TotalFreight - Possui método
getTotalGross()para acessar TotalGross - Possui método
setTotalGross()que define TotalGross - Possui método
getTotalNet()para acessar TotalNet - Possui método
setTotalNet()que define TotalNet - Possui método
getCheckInData()para acessar CheckInData - Possui método
setCheckInData()que define CheckInData - Possui método
getDevolutionData()para acessar DevolutionData - Possui método
setDevolutionData()que define DevolutionData - Possui método
getDevolutionExchangeStatus()para acessar DevolutionExchangeStatus - Possui método
setDevolutionExchangeStatus()que define DevolutionExchangeStatus - Possui método
getExchangeProcessCode()para acessar ExchangeProcessCode - Possui método
setExchangeProcessCode()que define ExchangeProcessCode - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Items\Items
-
É uma coleção de objetos
Gpupo\NetshoesSdk\Entity\Order\Shippings\Items\Item -
Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Sender
- Possui método
getSellerCode()para acessar SellerCode - Possui método
setSellerCode()que define SellerCode - Possui método
getSellerName()para acessar SellerName - Possui método
setSellerName()que define SellerName - Possui método
getSupplierCnpj()para acessar SupplierCnpj - Possui método
setSupplierCnpj()que define SupplierCnpj - Possui método
getSupplierName()para acessar SupplierName - Possui método
setSupplierName()que define SupplierName - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Shipping
- Possui método
getShippingCode()para acessar ShippingCode - Possui método
setShippingCode()que define ShippingCode - Possui método
getCustomer()para acessar Customer - Possui método
setCustomer()que define Customer - Possui método
getFreightAmount()para acessar FreightAmount - Possui método
setFreightAmount()que define FreightAmount - Possui método
getInvoice()para acessar Invoice - Possui método
setInvoice()que define Invoice - Possui método
getItems()para acessar Items - Possui método
setItems()que define Items - Possui método
getSender()para acessar Sender - Possui método
setSender()que define Sender - Possui método
getStatus()para acessar Status - Possui método
setStatus()que define Status - Possui método
getTransport()para acessar Transport - Possui método
setTransport()que define Transport - Possui método
getCountry()para acessar Country - Possui método
setCountry()que define Country - Possui método
getCancellationReason()para acessar CancellationReason - Possui método
setCancellationReason()que define CancellationReason - Possui método
getDevolutionItems()para acessar DevolutionItems - Possui método
setDevolutionItems()que define DevolutionItems - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Shippings
-
É uma coleção de objetos
Gpupo\NetshoesSdk\Entity\Order\Shippings\Shipping -
Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Shippings\Transport
- Não é validado se data de entrega ausente
- Possui método
getCarrier()para acessar Carrier - Possui método
setCarrier()que define Carrier - Possui método
getDeliveryDate()para acessar DeliveryDate - Possui método
setDeliveryDate()que define DeliveryDate - Possui método
getEstimatedDeliveryDate()para acessar EstimatedDeliveryDate - Possui método
setEstimatedDeliveryDate()que define EstimatedDeliveryDate - Possui método
getDeliveryService()para acessar DeliveryService - Possui método
setDeliveryService()que define DeliveryService - Possui método
getShipDate()para acessar ShipDate - Possui método
setShipDate()que define ShipDate - Possui método
getTrackingLink()para acessar TrackingLink - Possui método
setTrackingLink()que define TrackingLink - Possui método
getTrackingNumber()para acessar TrackingNumber - Possui método
setTrackingNumber()que define TrackingNumber - Possui método
getTrackingShipDate()para acessar TrackingShipDate - Possui método
setTrackingShipDate()que define TrackingShipDate - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Order\Translator
- Falha ao tentar traduzir para extrangeiro sem possuir nativo
- Falha ao tentar traduzir para nativo sem possuir estrangeiro
-
translateTo() -
translateFrom() -
Traduz sem perder informação
NetshoesSdk\Entity\Product\Attributes\Attribute
- Possui método
getName()para acessar Name - Possui método
setName()que define Name - Possui método
getValue()para acessar Value - Possui método
setValue()que define Value - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Product\Attributes\Attributes
- É uma coleção de objetos
Gpupo\NetshoesSdk\Entity\Product\Attributes\Attribute
NetshoesSdk\Entity\Product\Manager
- Administra operações de Products
- Possui objeto Client
- Obtem a lista de produtos cadastrados
- Entrega lista de produtos no padrão comum
- Tem acesso ao Manager de Sku
- Recupera informações de um produto especifico a partir de Id
- Recupera informações em padrão comum a partir de Id
- Recebe false em caso de produto inexistente
- A Atualização de um Product requer que ele contenha Skus
- Atualiza o SKU de um produto
- Atualiza parcialmente as informações de um produto
NetshoesSdk\Entity\Product\ProductCollection
-
Links
-
É uma coleção de objetos
\Gpupo\NetshoesSdk\Entity\Product\Product -
Possui objeto metadata
-
Metadata self
-
Metadata first
-
Metadata last
NetshoesSdk\Entity\Product\Product
- Possui propriedades e objetos
- Possui uma colecao attributes
- Entrega json
- To patch
- Possui método
getProductId()para acessar ProductId - Possui método
setProductId()que define ProductId - Possui método
getSkus()para acessar Skus - Possui método
setSkus()que define Skus - Possui método
getDepartment()para acessar Department - Possui método
setDepartment()que define Department - Possui método
getProductType()para acessar ProductType - Possui método
setProductType()que define ProductType - Possui método
getBrand()para acessar Brand - Possui método
setBrand()que define Brand - Possui método
getAttributes()para acessar Attributes - Possui método
setAttributes()que define Attributes - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Product\Sku\Image
- Possui método
getUrl()para acessar Url - Possui método
setUrl()que define Url - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Product\Sku\Images
- É uma coleção de objetos
Gpupo\NetshoesSdk\Entity\Product\Sku\Image
NetshoesSdk\Entity\Product\Sku\Item
- Prepara o Json para gravação de preço
- Prepara o Json para gravação de preço promocional
- Prepara o Json para gravação de Estoque
- Prepara o Json para gravação de Situação (disponibilidade)
- Possui método
getId()para acessar Sku Id - Possui método
getSku()para acessar Sku - Possui método
setSku()que define Sku - Possui método
getName()para acessar Name - Possui método
setName()que define Name - Possui método
getDescription()para acessar Description - Possui método
setDescription()que define Description - Possui método
getColor()para acessar Color - Possui método
setColor()que define Color - Possui método
getSize()para acessar Size - Possui método
setSize()que define Size - Possui método
getGender()para acessar Gender - Possui método
setGender()que define Gender - Possui método
getEanIsbn()para acessar EanIsbn - Possui método
setEanIsbn()que define EanIsbn - Possui método
getVideo()para acessar Video - Possui método
setVideo()que define Video - Possui método
getHeight()para acessar Height - Possui método
setHeight()que define Height - Possui método
getWidth()para acessar Width - Possui método
setWidth()que define Width - Possui método
getDepth()para acessar Depth - Possui método
setDepth()que define Depth - Possui método
getWeight()para acessar Weight - Possui método
setWeight()que define Weight - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Product\Sku\Manager
- Administra operações de SKUs
- Possui objeto client
- Dá Acesso a detalhes de um SKU
- Atualiza as informações do SKU
- Não atualiza as informações do SKU desnecessariamente
- Atualiza os detalhes do SKU
- Não atualiza os detalhes do SKU desnecessariamente
- Atualiza os detalhes e as informações do SKU em uma única operação
NetshoesSdk\Entity\Product\Sku\PriceScheduleCollection
- É uma coleção de objetos
PriceSchedule -
getCurrent()Calcula o agendamento válido -
getCurrent()retorna null quando a lista está vazia
NetshoesSdk\Entity\Product\Sku\PriceSchedule
- Formata entradas de data em
ISO 8601 date format - Possui método
setDateInit()que define DateInit - Possui método
setDateEnd()que define DateEnd - A data de início de uma promoção é o momento atual quando não informado
- A data de término de uma promoção é após 1 mês no futuro quando não informado
- Possui método
getPriceFrom()para acessar PriceFrom - Possui método
setPriceFrom()que define PriceFrom - Possui método
getPriceTo()para acessar PriceTo - Possui método
setPriceTo()que define PriceTo - Possui método
getDateInit()para acessar DateInit - Possui método
getDateEnd()para acessar DateEnd - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Product\Sku\Price
- Possui método
getPrice()para acessar Price - Possui método
setPrice()que define Price - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Product\Sku\SkuCollection
-
Links
-
É uma coleção de objetos
\Gpupo\NetshoesSdk\Entity\Product\Sku\Item -
Possui objeto metadata
-
Metadata self
NetshoesSdk\Entity\Product\Sku\Status
- Possui método
getActive()para acessar Active - Possui método
setActive()que define Active - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Product\Sku\Stock
- Possui método
getAvailable()para acessar Available - Possui método
setAvailable()que define Available - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Product\Skus
- Encontra um Sku pelo Id
NetshoesSdk\Entity\Product\Status
- Identifica se um produto está pendente
NetshoesSdk\Entity\Product\Translator
- Falha ao tentar traduzir para extrangeiro sem possuir nativo
- Falha ao tentar traduzir para nativo sem possuir estrangeiro
-
loadMap() -
translateTo() -
translateFrom() -
Traduz sem perder informação de preço
NetshoesSdk\Entity\Templates\Item
- Possui método
getCode()para acessar Code - Possui método
setCode()que define Code - Possui método
getName()para acessar Name - Possui método
setName()que define Name - Possui método
getExternalCode()para acessar ExternalCode - Possui método
setExternalCode()que define ExternalCode - Possui métodos especiais para output de informações
NetshoesSdk\Entity\Templates\Manager
- Possui Acesso a lista de marcas cadastradas
- Cada objeto da lista é uma instância de Item
NetshoesSdk\Entity\Templates\TemplatesCollection
- Links
- Instance
- Possui objeto metadata
- Metadata self
- Cut metadata empty
NetshoesSdk\Factory
- Set client
- Centraliza acesso a managers
- Centraliza criacao de objetos
Lista de dependências (libraries)
| Name | Version | Description |
|---|---|---|
| codeclimate/php-test-reporter | v0.3.2 | PHP client for reporting test coverage to Code Climate |
| doctrine/instantiator | 1.0.5 | A small, lightweight utility to instantiate objects in PHP without invoking their constructors |
| gpupo/cache | 1.3.0 | Caching library that implements PSR-6 |
| gpupo/common | 1.7.3 | Common Objects |
| gpupo/common-sdk | 2.2.0 | Componente de uso comum entre SDKs para integração a partir de aplicações PHP com Restful webservices |
| guzzle/guzzle | v3.9.3 | PHP HTTP client. This library is deprecated in favor of https://packagist.org/packages/guzzlehttp/guzzle |
| monolog/monolog | 1.20.0 | Sends your logs to files, sockets, inboxes, databases and various web services |
| myclabs/deep-copy | 1.5.1 | Create deep copies (clones) of your objects |
| phpdocumentor/reflection-common | 1.0 | Common reflection classes used by phpdocumentor to reflect the code structure |
| phpdocumentor/reflection-docblock | 3.1.0 | With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock. |
| phpdocumentor/type-resolver | 0.2 | |
| phpspec/prophecy | v1.6.1 | Highly opinionated mocking framework for PHP 5.3+ |
| phpunit/php-code-coverage | 4.0.0 | Library that provides collection, processing, and rendering functionality for PHP code coverage information. |
| phpunit/php-file-iterator | 1.4.1 | FilterIterator implementation that filters files based on a list of suffixes. |
| phpunit/php-text-template | 1.2.1 | Simple template engine. |
| phpunit/php-timer | 1.0.8 | Utility class for timing |
| phpunit/php-token-stream | 1.4.8 | Wrapper around PHP's tokenizer extension. |
| phpunit/phpunit | 5.4.6 | The PHP Unit Testing framework. |
| phpunit/phpunit-mock-objects | 3.2.3 | Mock Object library for PHPUnit |
| psr/cache | 1.0.0 | Common interface for caching libraries |
| psr/log | 1.0.0 | Common interface for logging libraries |
| satooshi/php-coveralls | v1.0.1 | PHP client library for Coveralls API |
| sebastian/code-unit-reverse-lookup 1.0.0 | Looks up which function or method a line of code belongs to | |
| sebastian/comparator | 1.2.0 | Provides the functionality to compare PHP values for equality |
| sebastian/diff | 1.4.1 | Diff implementation |
| sebastian/environment | 1.3.7 | Provides functionality to handle HHVM/PHP environments |
| sebastian/exporter | 1.2.2 | Provides the functionality to export PHP variables for visualization |
| sebastian/global-state | 1.1.1 | Snapshotting of global state |
| sebastian/object-enumerator | 1.0.0 | Traverses array structures and object graphs to enumerate all referenced objects |
| sebastian/peek-and-poke | dev-master a8295 | Proxy for accessing non-public attributes and methods of an object |
| sebastian/recursion-context | 1.0.2 | Provides functionality to recursively process PHP variables |
| sebastian/resource-operations | 1.0.0 | Provides a list of PHP built-in functions that operate on resources |
| sebastian/version | 2.0.0 | Library that helps with managing the version number of Git-hosted PHP projects |
| symfony/config | v3.1.2 | Symfony Config Component |
| symfony/console | v3.1.2 | Symfony Console Component |
| symfony/event-dispatcher | v2.8.8 | Symfony EventDispatcher Component |
| symfony/filesystem | v3.1.2 | Symfony Filesystem Component |
| symfony/polyfill-mbstring | v1.2.0 | Symfony polyfill for the Mbstring extension |
| symfony/stopwatch | v3.1.2 | Symfony Stopwatch Component |
| symfony/yaml | v3.1.2 | Symfony Yaml Component |
| twig/twig | v1.24.1 | Twig, the flexible, fast, and secure template language for PHP |
| webmozart/assert | 1.0.2 | Assertions to validate method input/output with nice error messages. |