0

I'm want to get data from the grid specific of the specific product when I click on the Accept Button (name of accept button is save) it goes to submit_url and get the data of the product while when I click on the Reject Offer (name of the reject button is save_and_continue) I want to go to another class but it goes to the same class as Accept Button goes mean goes to submit_url now to solve this I tried in RejectButton.php below code

class RejectButton extends GenericButton implements ButtonProviderInterface
{
    /**
     * @return array
     */
    public function getButtonData()
    {
        return [
            'label' => __('Reject Offer'),
            'class' => 'reject',
            'on_click' => sprintf("location.href = '%s';", $this->getUrl('xyz/index/rejectoffer')),
            'sort_order' => 70
        ];
    }
}

after that the reject button goes perfectly to my desired class but now issue is I cannot get the data of the product how can I solve my this problem? my ui_component code is

<?xml version="1.0" encoding="UTF-8"?>
<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
    <argument name="data" xsi:type="array">
        <item name="js_config" xsi:type="array">
            <item name="provider" xsi:type="string">makeanoffer_edit.makeanoffer_data_source</item>
            <item name="deps" xsi:type="string">makeanoffer_edit.makeanoffer_data_source</item>
        </item>
        <item name="label" xsi:type="string" translate="true">Make An Offer</item>
         <item name="config" xsi:type="array">
            <item name="dataScope" xsi:type="string">data</item>
            <item name="namespace" xsi:type="string">makeanoffer_edit</item>
        </item>
        <item name="template" xsi:type="string">templates/form/collapsible</item>
         <item name="buttons" xsi:type="array">
            <item name="back" xsi:type="string">PME\MakeAnOffer\Block\Adminhtml\MakeAnOffer\Edit\BackButton</item>
            <!-- <item name="delete" xsi:type="string">PME\MakeAnOffer\Block\Adminhtml\MakeAnOffer\Edit\DeleteButton</item> -->
            <item name="reset" xsi:type="string">PME\MakeAnOffer\Block\Adminhtml\MakeAnOffer\Edit\ResetButton</item>
            <!-- <item name="save_and_continue" xsi:type="string">PME\MakeAnOffer\Block\Adminhtml\MakeAnOffer\Edit\RejectButton</item> -->
            <item name="reject" xsi:type="string">PME\MakeAnOffer\Block\Adminhtml\MakeAnOffer\Edit\RejectButton</item>
            <item name="save" xsi:type="string">PME\MakeAnOffer\Block\Adminhtml\MakeAnOffer\Edit\AcceptButton</item>
            <!-- <item name="accept" xsi:type="string">PME\MakeAnOffer\Block\Adminhtml\MakeAnOffer\Edit\AcceptButton</item> -->

        </item>        
    </argument>
    <dataSource name="makeanoffer_data_source">
        <argument name="dataProvider" xsi:type="configurableObject">
            <argument name="class" xsi:type="string">PME\MakeAnOffer\Model\MakeAnOffer\DataProvider</argument>
            <argument name="name" xsi:type="string">makeanoffer_data_source</argument>
            <argument name="primaryFieldName" xsi:type="string">makeanoffer_id</argument>
            <argument name="requestFieldName" xsi:type="string">id</argument>

            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="submit_url" xsi:type="url" path="makeanoffer/index/acceptoffer"/>
                </item>
            </argument>

           <!--  <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="submit_url" xsi:type="url" path="makeanoffer/index/acceptoffer"/>
                </item>
            </argument> -->

        </argument>
        <argument name="data" xsi:type="array">
            <item name="js_config" xsi:type="array">
                <item name="component" xsi:type="string">Magento_Ui/js/form/provider</item>
            </item>
        </argument>
    </dataSource>
    <fieldset name="general">
        <argument name="data" xsi:type="array">
            <item name="config" xsi:type="array">
                <item name="label" xsi:type="string"/>
            </item>
        </argument>
        <field name="makeanoffer_id">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="visible" xsi:type="boolean">false</item>
                    <item name="dataType" xsi:type="string">text</item>
                    <item name="formElement" xsi:type="string">input</item>
                    <item name="source" xsi:type="string">makeanoffer</item>
                </item>
            </argument>
        </field>
        <field name="product_name">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="label" xsi:type="string">Product Name:</item>
                    <item name="visible" xsi:type="boolean">true</item>
                    <item name="dataType" xsi:type="string">text</item>
                    <item name="disabled" xsi:type="boolean">true</item>
                    <item name="formElement" xsi:type="string">input</item>
                    <item name="source" xsi:type="string">makeanoffer</item>
                </item>
            </argument>
        </field>
        <field name="name">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="label" xsi:type="string">Customer Name:</item>  
                    <item name="visible" xsi:type="boolean">true</item>
                    <item name="dataType" xsi:type="string">text</item>
                    <item name="formElement" xsi:type="string">input</item>
                    <item name="disabled" xsi:type="boolean">true</item>
                    <item name="source" xsi:type="string">makeanoffer</item>
                    <item name="validation" xsi:type="array">
                        <item name="required-entry" xsi:type="boolean">false</item>
                    </item>
                </item>
            </argument>
        </field>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.