当前位置: 首页>>代码示例>>PHP>>正文


PHP Customization::retrieveQuantitiesFromIds方法代码示例

本文整理汇总了PHP中Customization::retrieveQuantitiesFromIds方法的典型用法代码示例。如果您正苦于以下问题:PHP Customization::retrieveQuantitiesFromIds方法的具体用法?PHP Customization::retrieveQuantitiesFromIds怎么用?PHP Customization::retrieveQuantitiesFromIds使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Customization的用法示例。


在下文中一共展示了Customization::retrieveQuantitiesFromIds方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: postProcess


//.........这里部分代码省略.........
             $productList = Tools::getValue('id_order_detail');
             $customizationList = Tools::getValue('id_customization');
             $qtyList = Tools::getValue('cancelQuantity');
             $customizationQtyList = Tools::getValue('cancelCustomizationQuantity');
             $full_product_list = $productList;
             $full_quantity_list = $qtyList;
             if ($customizationList) {
                 foreach ($customizationList as $key => $id_order_detail) {
                     $full_product_list[$id_order_detail] = $id_order_detail;
                     $full_quantity_list[$id_order_detail] = $customizationQtyList[$key];
                 }
             }
             if ($productList or $customizationList) {
                 if ($productList) {
                     $id_cart = Cart::getCartIdByOrderId($order->id);
                     $customization_quantities = Customization::countQuantityByCart($id_cart);
                     foreach ($productList as $key => $id_order_detail) {
                         $qtyCancelProduct = abs($qtyList[$key]);
                         if (!$qtyCancelProduct) {
                             $this->_errors[] = Tools::displayError('No quantity selected for product.');
                         }
                         // check actionable quantity
                         $order_detail = new OrderDetail($id_order_detail);
                         $customization_quantity = 0;
                         if (array_key_exists($order_detail->product_id, $customization_quantities) && array_key_exists($order_detail->product_attribute_id, $customization_quantities[$order_detail->product_id])) {
                             $customization_quantity = (int) $customization_quantities[$order_detail->product_id][$order_detail->product_attribute_id];
                         }
                         if ($order_detail->product_quantity - $customization_quantity - $order_detail->product_quantity_refunded - $order_detail->product_quantity_return < $qtyCancelProduct) {
                             $this->_errors[] = Tools::displayError('Invalid quantity selected for product.');
                         }
                     }
                 }
                 if ($customizationList) {
                     $customization_quantities = Customization::retrieveQuantitiesFromIds(array_keys($customizationList));
                     foreach ($customizationList as $id_customization => $id_order_detail) {
                         $qtyCancelProduct = abs($customizationQtyList[$id_customization]);
                         $customization_quantity = $customization_quantities[$id_customization];
                         if (!$qtyCancelProduct) {
                             $this->_errors[] = Tools::displayError('No quantity selected for product.');
                         }
                         if ($qtyCancelProduct > $customization_quantity['quantity'] - ($customization_quantity['quantity_refunded'] + $customization_quantity['quantity_returned'])) {
                             $this->_errors[] = Tools::displayError('Invalid quantity selected for product.');
                         }
                     }
                 }
                 if (!sizeof($this->_errors) and $productList) {
                     foreach ($productList as $key => $id_order_detail) {
                         $qtyCancelProduct = abs($qtyList[$key]);
                         $orderDetail = new OrderDetail((int) $id_order_detail);
                         // Reinject product
                         if (!$order->hasBeenDelivered() or $order->hasBeenDelivered() and Tools::isSubmit('reinjectQuantities')) {
                             $reinjectableQuantity = (int) $orderDetail->product_quantity - (int) $orderDetail->product_quantity_reinjected;
                             $quantityToReinject = $qtyCancelProduct > $reinjectableQuantity ? $reinjectableQuantity : $qtyCancelProduct;
                             if (!Product::reinjectQuantities($orderDetail, $quantityToReinject)) {
                                 $this->_errors[] = Tools::displayError('Cannot re-stock product') . ' <span class="bold">' . $orderDetail->product_name . '</span>';
                             } else {
                                 $updProductAttributeID = !empty($orderDetail->product_attribute_id) ? (int) $orderDetail->product_attribute_id : NULL;
                                 $newProductQty = Product::getQuantity((int) $orderDetail->product_id, $updProductAttributeID);
                                 $product = get_object_vars(new Product((int) $orderDetail->product_id, false, (int) $cookie->id_lang));
                                 if (!empty($orderDetail->product_attribute_id)) {
                                     $updProduct['quantity_attribute'] = (int) $newProductQty;
                                     $product['quantity_attribute'] = $updProduct['quantity_attribute'];
                                 } else {
                                     $updProduct['stock_quantity'] = (int) $newProductQty;
                                     $product['stock_quantity'] = $updProduct['stock_quantity'];
                                 }
开发者ID:srikanthash09,项目名称:codetestdatld,代码行数:67,代码来源:AdminOrders.php

示例2: postProcess


//.........这里部分代码省略.........
                 if ($customizationQtyList) {
                     $customizationQtyList = array_map('intval', $customizationQtyList);
                 }
                 $full_product_list = $productList;
                 $full_quantity_list = $qtyList;
                 if ($customizationList) {
                     foreach ($customizationList as $key => $id_order_detail) {
                         $full_product_list[(int) $id_order_detail] = $id_order_detail;
                         if (isset($customizationQtyList[$key])) {
                             $full_quantity_list[(int) $id_order_detail] += $customizationQtyList[$key];
                         }
                     }
                 }
                 if ($productList || $customizationList) {
                     if ($productList) {
                         $id_cart = Cart::getCartIdByOrderId($order->id);
                         $customization_quantities = Customization::countQuantityByCart($id_cart);
                         foreach ($productList as $key => $id_order_detail) {
                             $qtyCancelProduct = abs($qtyList[$key]);
                             if (!$qtyCancelProduct) {
                                 $this->errors[] = Tools::displayError('No quantity has been selected for this product.');
                             }
                             $order_detail = new OrderDetail($id_order_detail);
                             $customization_quantity = 0;
                             if (array_key_exists($order_detail->product_id, $customization_quantities) && array_key_exists($order_detail->product_attribute_id, $customization_quantities[$order_detail->product_id])) {
                                 $customization_quantity = (int) $customization_quantities[$order_detail->product_id][$order_detail->product_attribute_id];
                             }
                             if ($order_detail->product_quantity - $customization_quantity - $order_detail->product_quantity_refunded - $order_detail->product_quantity_return < $qtyCancelProduct) {
                                 $this->errors[] = Tools::displayError('An invalid quantity was selected for this product.');
                             }
                         }
                     }
                     if ($customizationList) {
                         $customization_quantities = Customization::retrieveQuantitiesFromIds(array_keys($customizationList));
                         foreach ($customizationList as $id_customization => $id_order_detail) {
                             $qtyCancelProduct = abs($customizationQtyList[$id_customization]);
                             $customization_quantity = $customization_quantities[$id_customization];
                             if (!$qtyCancelProduct) {
                                 $this->errors[] = Tools::displayError('No quantity has been selected for this product.');
                             }
                             if ($qtyCancelProduct > $customization_quantity['quantity'] - ($customization_quantity['quantity_refunded'] + $customization_quantity['quantity_returned'])) {
                                 $this->errors[] = Tools::displayError('An invalid quantity was selected for this product.');
                             }
                         }
                     }
                     if (!count($this->errors) && $productList) {
                         foreach ($productList as $key => $id_order_detail) {
                             $qty_cancel_product = abs($qtyList[$key]);
                             $order_detail = new OrderDetail((int) $id_order_detail);
                             if (!$order->hasBeenDelivered() || $order->hasBeenDelivered() && Tools::isSubmit('reinjectQuantities') && $qty_cancel_product > 0) {
                                 $this->reinjectQuantity($order_detail, $qty_cancel_product);
                             }
                             // Delete product
                             $order_detail = new OrderDetail((int) $id_order_detail);
                             if (!$order->deleteProduct($order, $order_detail, $qty_cancel_product)) {
                                 $this->errors[] = Tools::displayError('An error occurred while attempting to delete the product.') . ' <span class="bold">' . $order_detail->product_name . '</span>';
                             }
                             // Update weight SUM
                             $order_carrier = new OrderCarrier((int) $order->getIdOrderCarrier());
                             if (Validate::isLoadedObject($order_carrier)) {
                                 $order_carrier->weight = (double) $order->getTotalWeight();
                                 if ($order_carrier->update()) {
                                     $order->weight = sprintf("%.3f " . Configuration::get('PS_WEIGHT_UNIT'), $order_carrier->weight);
                                 }
                             }
                             Hook::exec('actionProductCancel', array('order' => $order, 'id_order_detail' => (int) $id_order_detail), null, false, true, false, $order->id_shop);
开发者ID:,项目名称:,代码行数:67,代码来源:

示例3: postProcess


//.........这里部分代码省略.........
             $productList = Tools::getValue('id_order_detail');
             $customizationList = Tools::getValue('id_customization');
             $qtyList = Tools::getValue('cancelQuantity');
             $customizationQtyList = Tools::getValue('cancelCustomizationQuantity');
             $full_product_list = $productList;
             $full_quantity_list = $qtyList;
             if ($customizationList) {
                 foreach ($customizationList as $key => $id_order_detail) {
                     $full_product_list[$id_order_detail] = $id_order_detail;
                     $full_quantity_list[$id_order_detail] = $customizationQtyList[$key];
                 }
             }
             if ($productList or $customizationList) {
                 if ($productList) {
                     $id_cart = Cart::getCartIdByOrderId($order->id);
                     $customization_quantities = Customization::countQuantityByCart($id_cart);
                     foreach ($productList as $key => $id_order_detail) {
                         $qtyCancelProduct = abs($qtyList[$key]);
                         if (!$qtyCancelProduct) {
                             $this->_errors[] = Tools::displayError('No quantity selected for product.');
                         }
                         // check actionable quantity
                         $order_detail = new OrderDetail($id_order_detail);
                         $customization_quantity = 0;
                         if (array_key_exists($order_detail->product_id, $customization_quantities) && array_key_exists($order_detail->product_attribute_id, $customization_quantities[$order_detail->product_id])) {
                             $customization_quantity = (int) $customization_quantities[$order_detail->product_id][$order_detail->product_attribute_id];
                         }
                         if ($order_detail->product_quantity - $customization_quantity - $order_detail->product_quantity_refunded - $order_detail->product_quantity_return < $qtyCancelProduct) {
                             $this->_errors[] = Tools::displayError('Invalid quantity selected for product.');
                         }
                     }
                 }
                 if ($customizationList) {
                     $customization_quantities = Customization::retrieveQuantitiesFromIds(array_keys($customizationList));
                     foreach ($customizationList as $id_customization => $id_order_detail) {
                         $qtyCancelProduct = abs($customizationQtyList[$id_customization]);
                         $customization_quantity = $customization_quantities[$id_customization];
                         if (!$qtyCancelProduct) {
                             $this->_errors[] = Tools::displayError('No quantity selected for product.');
                         }
                         if ($qtyCancelProduct > $customization_quantity['quantity'] - ($customization_quantity['quantity_refunded'] + $customization_quantity['quantity_returned'])) {
                             $this->_errors[] = Tools::displayError('Invalid quantity selected for product.');
                         }
                     }
                 }
                 if (!sizeof($this->_errors) and $productList) {
                     foreach ($productList as $key => $id_order_detail) {
                         $qtyCancelProduct = abs($qtyList[$key]);
                         $orderDetail = new OrderDetail((int) $id_order_detail);
                         // Reinject product
                         if (!$order->hasBeenDelivered() or $order->hasBeenDelivered() and Tools::isSubmit('reinjectQuantities')) {
                             $reinjectableQuantity = (int) $orderDetail->product_quantity - (int) $orderDetail->product_quantity_reinjected;
                             $quantityToReinject = $qtyCancelProduct > $reinjectableQuantity ? $reinjectableQuantity : $qtyCancelProduct;
                             if (!Product::reinjectQuantities($orderDetail, $quantityToReinject)) {
                                 $this->_errors[] = Tools::displayError('Cannot re-stock product') . ' <span class="bold">' . $orderDetail->product_name . '</span>';
                             } else {
                                 $updProductAttributeID = !empty($orderDetail->product_attribute_id) ? (int) $orderDetail->product_attribute_id : NULL;
                                 $newProductQty = Product::getQuantity((int) $orderDetail->product_id, $updProductAttributeID);
                                 $product = get_object_vars(new Product((int) $orderDetail->product_id, false, (int) $cookie->id_lang));
                                 if (!empty($orderDetail->product_attribute_id)) {
                                     $updProduct['quantity_attribute'] = (int) $newProductQty;
                                     $product['quantity_attribute'] = $updProduct['quantity_attribute'];
                                 } else {
                                     $updProduct['stock_quantity'] = (int) $newProductQty;
                                     $product['stock_quantity'] = $updProduct['stock_quantity'];
                                 }
开发者ID:priyankajsr19,项目名称:indusdiva2,代码行数:67,代码来源:AdminOrders.php


注:本文中的Customization::retrieveQuantitiesFromIds方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。