Prestashop 1.7 moduli: Mamlakat va shtat nomlari, Mahsulotlar va Buyurtma xabarini olish kerak

Men modulni ishlab chiqyapman, u buyurtma nizomi administrator tomonidan yuborilgan ga o‘zgartirilsa, api yordamida uchinchi tomon ilovasiga joylashtirish uchun u buyurtma tafsilotlarini oladi. Men Prestashop V 1.7.7.0.dan foydalanmoqdaman

Men hali ham mamlakat va shtat nomlari, mahsulotlar va buyurtma xabarini olishim kerak. Iltimos, buni qanday qilishim mumkin?

Bundan tashqari, modulni prestashop-ga o'rnatib bo'lmaydi. Mening kodim to'g'rimi?

Yordam kerak. Rahmat

public function hookActionOrderStatusPostUpdate($params)
    {
        if($params['newOrderStatus']->id == 13)
        {
            $order = new Order((int)$params['id_order']);
            $address = new Address((int)$order->id_address_delivery);
            $customer = new Customer((int)($address->id_customer));
            $country = new Country((int)($address->id_country));
            $state = new Country((int)($address->id_state));
            
            $tel_cl = $address->phone;
            $name_lastname_cl = $address->lastname . ' ' . $address->firstname;
            $country_cl = **Not yet**;
            $state_cl = **Not yet**;
            $adress_cl = $address->address1 . ' ' . $address->address2;
            $tel_2_cl = $address->phone_mobile
            $products = **Not yet**;
            $quantity = "1"
            $cod = $order->total_paid
            $note = **Not yet(order message)**;

            $Url_str = 'http://example.com/api/set_parcel_post.php?id=123&tel_cl='.$tel_cl.'&name_lastname_cl='.$name_lastname_cl.'&country_cl='.$country_cl.'&state_cl='.$state_cl.'&address_cl='.$address_cl.'&tel_2_cl='.$tel_2_cl.'&products='.$products.'&cod='.$cod.'&Quantity='.$Quantity.'&note='.$note;

    $json = file_get_contents($Url_str);
    $result = json_decode($json);
        }
    }

person Wajdi    schedule 24.04.2021    source manba
comment
Prestashop-ga modulni o'rnatib bo'lmaydi degani nimani anglatadi? Buning ma'nosi yo'q.   -  person Fran Cerezo    schedule 24.04.2021
comment
Siz Country klassi va Zone sinfini tekshirishingiz va manzildan identifikator bo'yicha nomlarni olish uchun funktsiyadan foydalanishingiz mumkin   -  person Arun Vishwakarama    schedule 24.04.2021
comment
Salom va javobingiz uchun rahmat, @Fran Cerezo, modulimni o'rnatmoqchi bo'lganimda, xato xabari oldim. Shunday qilib, men kodda xatolik bor deb o'ylayman .. Mening kodim to'g'rimi? rahmat   -  person Wajdi    schedule 24.04.2021
comment
Salom va yordamingiz uchun rahmat @Arun Vishwakarama, men buni qildim, lekin modulimni o'rnatishga harakat qilganimda hali ham xatolik yuz berdi, mening kodim to'g'rimi? rahmat   -  person Wajdi    schedule 24.04.2021
comment
O'rnatish uchun xato xabari va modul fayl kodini qo'shing, shunda xatolik mavjudligini ko'ring   -  person Arun Vishwakarama    schedule 24.04.2021
comment
Nima uchun modul error.log da o'rnatilmaganini ko'ring, sizga yordam berish uchun bizga ma'lumot kerak.   -  person Fran Cerezo    schedule 25.04.2021


Javoblar (1)


Siz id_state yordamida Country obyektini yarata olmaysiz, shuning uchun:

 $state = new Country((int)($address->id_state));

noto'g'ri va shunday bo'lishi kerak

 $state = new State((int) $address->id_state);

Shunday qilib, siz $state->name kabi davlat nomini olishingiz mumkin, mahsulot buyurtmalarini olish uchun siz buyurtma mahsulotlari va uning ma'lumotlari (nomi, narxi va boshqalar) bilan to'ldirilgan massivni qaytaradigan $order->getProducts(); dan foydalanishingiz mumkin.

person GaimZz    schedule 24.04.2021
comment
Salom va yordamingiz uchun rahmat @GaimZz. Men buni qo'shdim: mening kodim to'g'rimi? $OrderProducts = $order-›getProducts(); foreach($OrderProducts as $product) {$products = $products . {$product.name} . <br>; $quantity = $quantity + {$product.quantity}; } - person Wajdi; 26.04.2021
comment
Men sizga PHP uchun tahrirlash va sintaktik xatolar haqida maslahat beradigan qandaydir tahlil vositalaridan foydalanishni tavsiya qilaman, masalan, atom, vscode, sublimetext3 va hokazo... Siz qo'ygan kod yaxshi tahlil qilinmagan, shuning uchun ishonchim komil emasmi? voqea harakat qildimi? - person GaimZz; 26.04.2021
comment
OK, tushundim, yo'q, men hali sinab ko'rmadim. Men sizning maslahatingizni sinab ko'raman. Yordamingiz uchun katta rahmat @GaimZz - person Wajdi; 26.04.2021
comment
sizga ham rahmat :) - person GaimZz; 27.04.2021