<?xml version="1.0"?>
<!--
/**
 * Mondial Relay & InPost Shipping Module
 *
 * @author    Magentix
 * @copyright Copyright © 2024 Magentix. All rights reserved.
 * @license   https://www.magentix.fr/en/licence.html Magentix Software Licence
 * @link      https://mondialrelay.magentix.fr/
 */
-->
<schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Setup/Declaration/Schema/etc/schema.xsd">
    <table name="sales_order_address" resource="sales" comment="Sales Flat Order Address">
        <column xsi:type="varchar" name="mondialrelay_pickup_id" nullable="true" length="10" comment="Mondial Relay Pickup Id"/>
        <column xsi:type="varchar" name="mondialrelay_code" nullable="true" length="4" comment="Mondial Relay Code"/>
    </table>
    <table name="sales_order" resource="sales" comment="Sales Flat Order">
        <column xsi:type="decimal" name="mondialrelay_packaging_weight" scale="4" precision="12" nullable="false" default="0" comment="Mondial Relay Packaging Weight"/>
    </table>
    <table name="quote_mondialrelay_pickup" resource="default" engine="innodb" comment="Quote Mondial Relay Pickup Data">
        <column xsi:type="int" name="quote_id" padding="10" nullable="false" unsigned="true" comment="Quote Id"/>
        <column xsi:type="varchar" name="pickup_id" length="10" nullable="true" comment="Pickup Id"/>
        <column xsi:type="varchar" name="country_id" length="2" nullable="true" comment="Country Id"/>
        <column xsi:type="varchar" name="code" length="4" nullable="true" comment="Mondial Relay Code"/>
        <column xsi:type="varchar" name="company" length="255" nullable="true" comment="Pickup Company"/>
        <column xsi:type="varchar" name="street" length="255" nullable="true" comment="Pickup Street"/>
        <column xsi:type="varchar" name="postcode" length="255" nullable="true" comment="Pickup Postcode"/>
        <column xsi:type="varchar" name="city" length="255" nullable="true" comment="Pickup City"/>
        <column xsi:type="varchar" name="telephone" length="255" nullable="true" comment="Pickup Telephone"/>
        <constraint xsi:type="unique" referenceId="QUOTE_MONDIALRELAY_PICKUP_QUOTE_ID">
            <column name="quote_id"/>
        </constraint>
        <constraint xsi:type="foreign" referenceId="QUOTE_MONDIALRELAY_PICKUP_QUOTE_ID_QUOTE_ENTITY_ID" table="quote_mondialrelay_pickup" column="quote_id" referenceTable="quote" referenceColumn="entity_id" onDelete="CASCADE"/>
    </table>
</schema>
