Скачать адрес клиента в формате PDF по кнопке onclick
Я отобразил кнопку Загрузить [последний столбец на изображении ниже] на странице продаж Сетка заказов для каждого заказа. Как только я нажму на кнопку, я хочу создать pdf-файл с информацией " Адрес клиента" этого заказа.
Я проверил Firegento & comwrap, но оба будут генерировать только счета-фактуры, доставку, только кредитные авизо.
Приложение/код/сообщество/Raveinfosys/Удалить заказ/Заблокировать/Adminhtml/Продажи/Заказ/Визуализация - Delete.php
class Raveinfosys_Deleteorder_Block_Adminhtml_Sales_Order_Render_Delete extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
{
public function render(Varien_Object $row)
{
$getData = $row->getData();
$orderID = $getData['entity_id'];
$link = '<a href="'.$download.'">Download</a>;';
return $link;
}
}
Пожалуйста, объясните мне это....
1 answers
Попробуйте это:
A. приложение/код/сообщество/Raveinfosys/Удалить заказ/Заблокировать/Adminhtml/Продажи/Заказ/Визуализация - Delete.php
class Raveinfosys_Deleteorder_Block_Adminhtml_Sales_Order_Render_Delete extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Abstract
{
public function render(Varien_Object $row)
{
$getData = $row->getData();
$orderId = $getData['entity_id'];
$link = '<a href="'.$this->getPdfGenerateUrl($orderId).'">Download</a>;';
return $link;
}
public function getPdfGenerateUrl($orderId)
{
return Mage::helper("adminhtml")->getUrl('*/raveinfosys/generatePdf', array('order_id' => $orderId));
}
}
В. Теперь создайте файл с именем RaveinfosysController.php
: app/code/community/Raveinfosys/Deleteorder/controllers/Adminhtml/RaveinfosysController.php с этим содержанием:
<?php
class Raveinfosys_Deleteorder_Adminhtml_RaveinfosysController extends Mage_Adminhtml_Controller_Action
{
public function generatePdfAction()
{
$orderId = $this->getRequest()->getParam('order_id');
$order = Mage::getModel('sales/order')->load($orderId);
$billingAddress = $order->getBillingAddress();
$pdf = new Zend_Pdf();
$page = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);
$font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_TIMES);
$page->setFont($font, 12);
$width = $page->getWidth();
$i=0;
$page->drawText('Order Id# '.$order->getIncrementId(), 20, $page->getHeight()-20);
$page->drawText("TO", 20, $page->getHeight()-40);
$page->drawText($billingAddress->getStreet(). " ". $billingAddress->getRegion(), 20, $page->getHeight()-60);
$page->drawText($billingAddress->getCountry(), 20, $page->getHeight()-80);
$page->drawText($billingAddress->getRegionCode(), 20, $page->getHeight()-100);
$pdf->pages[] = $page;
//$pdf->render();
$this->_prepareDownloadResponse('info'.Mage::getSingleton('core/date')->date('Y-m-d_H-i-s').
'.pdf', $pdf->render(), 'application/pdf');
//$this->_redirectReferer();
}
}
Это должно сработать.