Create.php 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <?php
  2. /**
  3. * Copyright © Magento, Inc. All rights reserved.
  4. * See COPYING.txt for license details.
  5. */
  6. namespace Magento\Sales\Block\Adminhtml\Order\Creditmemo;
  7. /**
  8. * Adminhtml creditmemo create
  9. *
  10. * @api
  11. * @since 100.0.2
  12. */
  13. class Create extends \Magento\Backend\Block\Widget\Form\Container
  14. {
  15. /**
  16. * Core registry
  17. *
  18. * @var \Magento\Framework\Registry
  19. */
  20. protected $_coreRegistry = null;
  21. /**
  22. * @param \Magento\Backend\Block\Widget\Context $context
  23. * @param \Magento\Framework\Registry $registry
  24. * @param array $data
  25. */
  26. public function __construct(
  27. \Magento\Backend\Block\Widget\Context $context,
  28. \Magento\Framework\Registry $registry,
  29. array $data = []
  30. ) {
  31. $this->_coreRegistry = $registry;
  32. parent::__construct($context, $data);
  33. }
  34. /**
  35. * Constructor
  36. *
  37. * @return void
  38. */
  39. protected function _construct()
  40. {
  41. $this->_objectId = 'order_id';
  42. $this->_controller = 'adminhtml_order_creditmemo';
  43. $this->_mode = 'create';
  44. parent::_construct();
  45. $this->buttonList->remove('delete');
  46. $this->buttonList->remove('save');
  47. }
  48. /**
  49. * Retrieve creditmemo model instance
  50. *
  51. * @return \Magento\Sales\Model\Order\Creditmemo
  52. */
  53. public function getCreditmemo()
  54. {
  55. return $this->_coreRegistry->registry('current_creditmemo');
  56. }
  57. /**
  58. * Get header text
  59. *
  60. * @return string
  61. */
  62. public function getHeaderText()
  63. {
  64. if ($this->getCreditmemo()->getInvoice()) {
  65. $header = __('New Credit Memo for Invoice #%1', $this->getCreditmemo()->getInvoice()->getIncrementId());
  66. } else {
  67. $header = __('New Credit Memo for Order #%1', $this->getCreditmemo()->getOrder()->getRealOrderId());
  68. }
  69. return $header;
  70. }
  71. /**
  72. * Get back url
  73. *
  74. * @return string
  75. */
  76. public function getBackUrl()
  77. {
  78. return $this->getUrl(
  79. 'sales/order/view',
  80. ['order_id' => $this->getCreditmemo() ? $this->getCreditmemo()->getOrderId() : null]
  81. );
  82. }
  83. }