Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2020
359
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.42 KB | None | 0 0
  1. public function genInvoice(Varien_Event_Observer $observer)
  2. {
  3.  
  4.  
  5.  
  6. $order = $observer->getEvent()->getInvoice();//->getOrder()
  7.  
  8.  
  9. $store = $order->getStore()->getCode();
  10.  
  11.  
  12. if ($store === 'dott') {
  13. return;
  14. }
  15.  
  16. $moloni = Mage::getModel('Moloni/api');
  17.  
  18.  
  19. //Verificar qual o ID do StateNAme method para essa condicional
  20. if($order->getStateName() == "Paid" || $order->getStateName() == "Pago")
  21. {
  22.  
  23. try{
  24.  
  25. $resource = Mage::getSingleton('core/resource');
  26. $execute = $resource->getConnection('core_write');
  27.  
  28. $orderID = $order->getData('order_id');
  29.  
  30.  
  31.  
  32. /****************** DEFINIÇÕES INICIAIS ********************/
  33. Mage::log($orderID." - A gerar automaticamente factura pelo observer - ".
  34. $order->getData('increment_id'),
  35. null, 'moloni.log'
  36. );
  37.  
  38.  
  39.  
  40. $results = $execute->fetchRow("SELECT * FROM ".$resource->getTableName('sales_flat_order')." WHERE entity_id = '$orderID'");
  41.  
  42. if(isset($results['increment_id']) && is_array($results)){
  43.  
  44.  
  45. $invoice = $moloni->invoiceMake($results);
  46.  
  47.  
  48. //Update Stock
  49. foreach ($order->getAllVisibleItems() as $item) {
  50.  
  51. $currentStock = $item->getQty() - $item->getQtyOrdered();
  52. $item->setQty($currentStock);
  53. $item->save();
  54. }
  55.  
  56.  
  57. Mage::log($orderID." - Acção finalizada com sucesso ".$invoice, null, "moloni.log");
  58. }else{
  59. Mage::log($orderID." - Query:" .$sqlQuery, null, "moloni.log");
  60. Mage::log($orderID." - Acção finalizada: ", null, "moloni.log");
  61. }
  62.  
  63.  
  64.  
  65.  
  66. }catch(Exception $e){
  67. Mage::log($e, null, "moloni.log");
  68. Mage::log("Acção finalizada com erro", null, "moloni.log");
  69.  
  70.  
  71. Mage::throwException($e->getMessage());
  72. }
  73.  
  74. return true;
  75. }
  76.  
  77. Mage::throwException("Não foi possivel gerar a Fatura");
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement