Bagisto Forum

    Bagisto

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    modify addresses in different files

    General Discussion
    3
    9
    572
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      cmpengineers last edited by

      Dear All

      i'm trying to modify the address but there lots of files and I'm confused should I change all of the them ?

      so we have

      Core/Database/Migrations/2020_01_28_102422_add_new_column_and_rename_name_column_in_customer_addresses_table.php
      
             $table->string('area');
                      $table->string('block');
                      $table->string('street');
                      $table->string('house_building');
                      $table->string('apartment_office');
                      $table->string('floor');
                      $table->string('avenue');
                      $table->string('phone');
                      $table->string('note');
      
       ***  there is below 3 function should I add the new fields ?***
      
          private function migrateCustomerAddresses(): void
          {
              $dbPrefix = DB::getTablePrefix();
      
              $insertCustomerAddresses = <<< SQL
                  INSERT INTO ${dbPrefix}addresses(
                      address_type,
                      customer_id,
                      first_name,
                      last_name,
                      gender,
                      company_name,
                      address1,
                      address2,
                      postcode,
                      city,
                      state,
                      country,
                      email,
                      phone,
                      default_address,
                      additional,
                      created_at,
                      updated_at
                  )
                  SELECT
                      "customer",
                      customer_id,
                      first_name,
                      last_name,
                      (SELECT gender FROM customers c WHERE c.id=ca.customer_id),
                      company_name,
                      address1,
                      address2,
                      postcode,
                      city,
                      state,
                      country,
                      null,
                      phone,
                      default_address,
                      JSON_INSERT('{}', '$.old_customer_address_id', id),
                      created_at,
                      updated_at
                  FROM customer_addresses ca;
      SQL;
      
              DB::unprepared($insertCustomerAddresses);
          }
      
          private function migrateCartAddresses(): void
          {
              $dbPrefix = DB::getTablePrefix();
      
              $insertCustomerAddresses = <<< SQL
                  INSERT INTO ${dbPrefix}addresses(
                      address_type,
                      customer_id,
                      cart_id,
                      first_name,
                      last_name,
                      gender,
                      company_name,
                      address1,
                      address2,
                      postcode,
                      city,
                      state,
                      country,
                      email,
                      phone,
                      additional,
                      created_at,
                      updated_at
                  )
                  SELECT
                      (CASE WHEN ca.address_type='billing' THEN "cart_billing" ELSE "cart_shipping" END),
                      customer_id,
                      cart_id,
                      first_name,
                      last_name,
                      (SELECT gender FROM customers c WHERE c.id=ca.customer_id),
                      company_name,
                      address1,
                      address2,
                      postcode,
                      city,
                      state,
                      country,
                      email,
                      phone,
                      JSON_INSERT('{}', '$.old_cart_address_id', id),
                      created_at,
                      updated_at
                  FROM cart_address ca;
      SQL;
      
              DB::unprepared($insertCustomerAddresses);
          }
      
          private function migrateOrderAddresses(): void
          {
              $dbPrefix = DB::getTablePrefix();
      
              $insertCustomerAddresses = <<< SQL
                  INSERT INTO ${dbPrefix}addresses(
                      address_type,
                      customer_id,
                      order_id,
                      first_name,
                      last_name,
                      gender,
                      company_name,
                      address1,
                      address2,
                      postcode,
                      city,
                      state,
                      country,
                      email,
                      phone,
                      additional,
                      created_at,
                      updated_at
                  )
                  SELECT
                      (CASE WHEN oa.address_type='billing' THEN "order_billing" ELSE "order_shipping" END),
                      customer_id,
                      order_id,
                      first_name,
                      last_name,
                      (SELECT gender FROM customers c WHERE c.id=oa.customer_id),
                      company_name,
                      address1,
                      address2,
                      postcode,
                      city,
                      state,
                      country,
                      email,
                      phone,
                      JSON_INSERT('{}', '$.old_order_address_id', id),
                      created_at,
                      updated_at
                  FROM order_address oa;
      SQL;
      
              DB::unprepared($insertCustomerAddresses);
          }
      
      

      also there is Customer/Database/Migrations/2018_07_24_083025_create_customer_addresses_table.php

      and last Checkout/Database/Migrations/2018_09_19_092845_create_cart_address.php

      as you can see its really confusing which one should I update ?

      it would be great if some one can explain so we can change it the right way instead of messing around

      Best regards

      1 Reply Last reply Reply Quote 0
      • C
        cmpengineers last edited by

        is there any one can help me ?

        1 Reply Last reply Reply Quote 0
        • devansh-webkul
          devansh-webkul last edited by

          Hi @cmpengineers,

          May I know what you are trying to do? Do you want to update the address column in the table or want to update the address for the customer?

          C 2 Replies Last reply Reply Quote 0
          • P
            prateek-webkul last edited by

            @cmpengineers said in modify addresses in different files:

            customer_addresses

            there are multiple types of addresses, what you need to modify. You can easily differentiate the migration files accordingly folder.

            For example: Customer/Database/Migrations/2018_07_24_083025_create_customer_addresses_table.php contains customer addresses...

            1 Reply Last reply Reply Quote 0
            • C
              cmpengineers @devansh-webkul last edited by

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • C
                cmpengineers @devansh-webkul last edited by cmpengineers

                @devansh-webkul

                i want to change the whole address, cart, checkout ..etc anywhere that has an address I want to change?

                i don't understand why there is address and customer address ? there is no table called customer_address only addresses ?

                please just explain so i can understand

                these fields I need to add to address but it has to be in add table that contains address

                  $table->string('area');
                                $table->string('block');
                                $table->string('street');
                                $table->string('house_building');
                                $table->string('apartment_office');
                                $table->string('floor');
                                $table->string('avenue');
                

                regards

                1 Reply Last reply Reply Quote 0
                • C
                  cmpengineers last edited by cmpengineers

                  @devansh-webkul

                  what does view_render_event do ?

                   {!! view_render_event('bagisto.shop.customers.account.address.create_form_controls.area.after') !!}
                  

                  regards

                  1 Reply Last reply Reply Quote 0
                  • devansh-webkul
                    devansh-webkul last edited by

                    Hi @cmpengineers,

                    You need to check this file packages/Webkul/Customer/src/Models/CustomerAddress.php. In this file, we have the CustomerAddress class. But this class is extending the Address Model.

                    In that model, you will see that the linked table is addresses.

                    I hope this will help you.

                    And if you are planning to change migration, I request you to create a new migration file because the existing one won't reflect any changes.

                    C 1 Reply Last reply Reply Quote 0
                    • C
                      cmpengineers @devansh-webkul last edited by

                      @devansh-webkul

                      this is an awesome answer, thank you very much for your help

                      best regards

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post