public function getComments() { $html = ''; $comments = Comments::getAllByCriteria('entityName = ? AND type = ? AND entityId = ?', array('PurchaseOrder', Comments::TYPE_PURCHASING, $this->order->getId()), true, 1, 5, array('comm.id' => 'desc')); if (count($comments) === 0) { return ''; } foreach ($comments as $comment) { $html .= '<div style="max-width: 670px; word-wrap: break-word; font-weight: bold; color: brown;">' . $comment->getComments() . '</div>'; } return $html; }
private function execute($sql, Order $order, array $params) { $statement = $this->getDb()->prepare($sql); $this->executeStatement($statement, $params); if (!$order->getId()) { return $this->findById($this->getDb()->lastInsertId()); } if (!$statement->rowCount()) { throw new NotFoundException('USER with ID "' . $order->getId() . '" does not exist.'); } return $order; }
/** * @param ItemDao $item_dao * @return void **/ public function __construct(ItemDao $item_dao) { $fp = fopen(ROOT . '/data/AbstractFactory/order.csv', 'r'); while ($data = fgetcsv($fp, 1000, ',')) { $order = new Order(); $order->setId($data[0]); foreach (explode(',', $data[1]) as $item_id) { $item = $item_dao->findById($item_id); if (!is_null($item)) { $order->addItem($item); } } $this->orders[$order->getId()] = $order; } }
$orderBookId = $_POST['data']['orders']['Order Book Id']; $client = $cdi->getClientById($clientId); $order = new Order(""); $order->setOrderDate($orderDate); if (strcmp(strtolower($orderValid), 'true') === 0) { $order->setValid(true); } else { $order->setValid(false); } $order->setClient($client); if (strcmp(strtolower($orderBookId), 'none') !== 0) { $ordb = $obi->getOrderBooksById(intval($orderBookId)); $order->addOrderBook($ordb); } $entityManager->flush(); $array['DT_RowId'] = $order->getId(); $see['Order Date'] = $order->getDate()->format("d-m-Y"); if ($order->getValid()) { $see['Valid'] = 'true'; } else { $see['Valid'] = 'false'; } $see['Client Id'] = "" . $client->getId() . ""; $see['Order Book Id'] = "" . $orderBookId . ""; $see['Client Name'] = $client->getName(); $array['orders'] = $see; $seeall['id'] = "" . $orderBookId . ""; $tmp['id'] = "" . $clientId . ""; $array['Order Book Ids'] = $seeall; $array['Client Ids'] = $tmp; echo json_encode(array('row' => $array));
?> <input type="submit" value="Complete" onClick="setCompleted()"> <?php //} ?> <hr> <table> <tr><td style="width:200px;">Order Code</td> <td style="width:200px;">Title</td> <td style="width:200px;">Client</td> <td style="width:200px;">Destination</td> <td style="width:200px;">Action</td> </tr> <?php for ($i = 0; $i < sizeof($orderList); $i++) { $mOrder = new Order($orderList[$i]); $mClient = new Client($mOrder->getClient()); echo "<tr>"; echo "<td><a href='../order/detail.php?id=" . $mOrder->getId() . "'>" . $mOrder->getCode() . "</a></td>"; echo "<td>" . $mOrder->getTitle() . "</td>"; echo "<td><a href='../client/detail.php?id=" . $mClient->getId() . "'>" . $mClient->getName() . "</a></td>"; echo "<td>" . $mOrder->getDestination() . "</td>"; echo "<td><input type='submit' value='Assign'><input type='submit' value='Track'></td>"; echo "</tr>"; } ?> </table> <div> </div> </body>
public function getComments() { $comments = Comments::getAllByCriteria('entityId = ? and entityName = ? and type = ?', array($this->order->getId(), get_class($this->order), Comments::TYPE_SALES), true, 1, 1, array('id' => 'desc')); return count($comments) === 0 ? '' : $comments[0]->getComments(); }
public function __construct(ItemDao $item_dao) { $fp = fopen('order_data.txt', 'r'); $dummy = fgets($fp, 4096); $this->orders = array(); while ($buffer = fgets($fp, 4096)) { $order_id = trim(substr($buffer, 0, 10)); $item_ids = trim(substr($buffer, 10)); $order = new Order($order_id); foreach (split(',', $item_ids) as $item_id) { $item = $item_dao->findById($item_id); if (!is_null($item)) { $order->addItem($item); } } $this->orders[$order->getId()] = $order; } fclose($fp); }
private function getParams(Order $order) { $params = array(':id' => $order->getId(), ':status' => $order->getStatus(), ':assigned_to' => $order->getAssignedTo()); return $params; }
/** * Adds an object to the instance pool. * * Propel keeps cached copies of objects in an instance pool when they are retrieved * from the database. In some cases -- especially when you override doSelect*() * methods in your stub classes -- you may need to explicitly add objects * to the cache in order to ensure that the same objects are always returned by doSelect*() * and retrieveByPK*() calls. * * @param Order $value A Order object. * @param string $key (optional) key to use for instance map (for performance boost if key was already calculated externally). */ public static function addInstanceToPool(Order $obj, $key = null) { if (Propel::isInstancePoolingEnabled()) { if ($key === null) { $key = (string) $obj->getId(); } // if key === null self::$instances[$key] = $obj; } }
public function setOrder(Order $order) { $this->order = $order; $this->id_order = $order->getId(); return true; }
/** * Getting the selling item * * @param OrderItem $orderItem * @param string $serialNo * @param string $description * @param Order $order * @param Product $product * @param string $activeOnly * @param string $pageNo * @param unknown $pageSize * @param unknown $orderBy * @param unknown $stats * @return Ambigous <Ambigous, multitype:, multitype:BaseEntityAbstract > */ public static function getSellingItems(OrderItem $orderItem = null, $serialNo = '', $description = '', Order $order = null, Product $product = null, $activeOnly = true, $pageNo = null, $pageSize = DaoQuery::DEFAUTL_PAGE_SIZE, $orderBy = array(), &$stats = array()) { $where = $params = array(); if (trim($serialNo) !== '') { $where[] = 'serialNo like ?'; $params[] = $serialNo; } if (trim($description) !== '') { $where[] = 'description like ?'; $params[] = '%' . $description . '%'; } if ($orderItem instanceof OrderItem) { $where[] = 'orderItemId = ?'; $params[] = $orderItem->getId(); } if ($order instanceof Order) { $where[] = 'orderId = ?'; $params[] = $order->getId(); } if ($product instanceof Product) { $where[] = 'productId = ?'; $params[] = $product->getId(); } if (count($where) === 0) { return SellingItem::getAll($activeOnly, $pageNo, $pageSize, $orderBy, $stats); } $results = SellingItem::getAllByCriteria(implode(' AND ', $where), $params, $activeOnly, $pageNo, $pageSize, $orderBy, $stats); return $results; }
public function completeOrder($tid) { $transaction = Transaction::getTransactionBasedOnTID($tid); $user = new User($transaction->getUser()); $order = new Order(); $order->setTid($transaction->getTid()); $order->setUser($transaction->getUser()); $order->setCustomerName($user->getName()); $order->setUserEmail($user->getEmail()); $order->setPhone($transaction->getPhone()); $order->setShippingStreet($transaction->getShippingStreet()); $order->setShippingCity($transaction->getShippingCity()); $order->setShippingPostal($transaction->getShippingPostal()); $order->setShippingProvince($transaction->getShippingProvince()); $order->setShippingCountry($transaction->getShippingCountry()); $order->setBillingStreet($transaction->getBillingStreet()); $order->setBillingCity($transaction->getBillingCity()); $order->setBillingPostal($transaction->getBillingPostal()); $order->setBillingProvince($transaction->getBillingProvince()); $order->setBillingCountry($transaction->getBillingCountry()); $order->setCostSubtotal($transaction->getCostSubtotal()); $order->setCostTax($transaction->getCostTax()); $order->setCostShipping($transaction->getCostShipping()); $order->setCostTotal($transaction->getCostTotal()); $order->setIp($transaction->getIp()); $order->setShippingClass($transaction->getShippingClass()); $order->setPaymentClass($transaction->getPaymentClass()); $order->setDeliveryInstructions($transaction->getDeliveryInstructions()); $order->setStatus('Pending'); $order->save(); $cartItems = CartItem::getAll($transaction->getSession()); foreach ($cartItems as $cartItem) { $product = new Product($cartItem->getProduct()); $orderDetail = new OrderDetail(); $orderDetail->setOrderNb($order->getId()); $orderDetail->setProduct($product->getId()); $orderDetail->setProductName($product->getName()); $orderDetail->setQuantity($cartItem->getQuantity()); $orderDetail->save(); $cartItem->delete(); } $transaction->delete(); //Send an email to the user $this->sendEmailOrderComplete($order->getId()); return true; }
public function addOrder(Order $order) { $this->orders[$order->getId()] = $order; }
private static function makeDealsWith(Deal $deal) { $order = new Order(); $order->findById($deal->getOrderId()); if ($order->getType() == OrderType::SELL) { $oppositeDeals = Deal::getOpenedBuyDeals($order->getPrice(), $order->getRateId()); } else { $oppositeDeals = Deal::getOpenedSellDeals($order->getPrice(), $order->getRateId()); } foreach ($oppositeDeals as $oppDeal) { $oppositeDeal = new Deal(); $oppositeDeal->findById($oppDeal['id']); $oppositeOrder = new Order(); $oppositeOrder->findById($oppositeDeal->getOrderId()); $difference = $deal->getVolume() - $oppositeDeal->getVolume(); if ($difference == 0) { $deal->setPrice($oppositeDeal->getPrice()); $deal->setDone(1); $deal->save(); $order->setPart(1.0); $order->setStatus(OrderStatus::DONE); $order->save(); $oppositeDeal->setDone(1); $oppositeDeal->setDate($deal->getDate()); $oppositeDeal->save(); $oppositeOrder->setPart(1.0); $oppositeOrder->setStatus(OrderStatus::DONE); $oppositeOrder->setDate($deal->getDate()); $oppositeOrder->save(); self::transferMoney($deal, $oppositeDeal); break; } $intermediateDeal = new Deal(); $intermediateDeal->setRateId($order->getRateId()); $intermediateDeal->setDate($deal->getDate()); $intermediateDeal->setDone(1); if ($difference < 0) { $deal->setPrice($oppositeDeal->getPrice()); $deal->setDone(1); $deal->save(); $order->setPart(1.0); $order->setStatus(OrderStatus::DONE); $order->save(); $intermediateDeal->setOrderId($oppositeOrder->getId()); $intermediateDeal->setUserId($oppositeOrder->getUserId()); $intermediateDeal->setType($oppositeOrder->getType()); $intermediateDeal->setPrice($oppositeDeal->getPrice()); $intermediateDeal->setVolume($deal->getVolume()); $intermediateDeal->insert(); $oppositeOrder->updatePart(); $oppositeOrder->setDate($deal->getDate()); $oppositeOrder->save(); $oppositeDeal->setVolume(-$difference); $oppositeDeal->setDate($deal->getDate()); $oppositeDeal->save(); self::transferMoney($deal, $intermediateDeal); break; } else { $deal->setVolume($difference); $deal->save(); $intermediateDeal->setOrderId($order->getId()); $intermediateDeal->setUserId($order->getUserId()); $intermediateDeal->setType($order->getType()); $intermediateDeal->setPrice($oppositeDeal->getPrice()); $intermediateDeal->setVolume($oppositeDeal->getVolume()); $intermediateDeal->insert(); $order->updatePart(); $order->save(); $oppositeDeal->setDone(1); $oppositeDeal->setDate($deal->getDate()); $oppositeDeal->save(); $oppositeOrder->setPart(1.0); $oppositeOrder->setStatus(OrderStatus::DONE); $oppositeOrder->setDate($deal->getDate()); $oppositeOrder->save(); self::transferMoney($intermediateDeal, $oppositeDeal); } } }
/** * Getting the order item via order and product * * @param Order $order * @param Product $product * @param bool $activeOnly * @param int $pageNo * @param int $pageSize * @param array $orderBy * @param array $stats * * @return Ambigous <Ambigous, multitype:, multitype:BaseEntityAbstract > */ public static function getItems(Order $order, Product $product = null, $activeOnly = true, $pageNo = null, $pageSize = DaoQuery::DEFAUTL_PAGE_SIZE, $orderBy = array(), &$stats = array()) { $where = 'orderId = ?'; $params = array($order->getId()); if ($product instanceof Product) { $where .= ' AND productId = ?'; $params[] = $product->getId(); } return self::getAllByCriteria($where, $params, $activeOnly, $pageNo, $pageSize, $orderBy, $stats); }
/** * Checks and repairs the internal consistency of the object. * * This method is executed after an already-instantiated object is re-hydrated * from the database. It exists to check any foreign keys to make sure that * the objects related to the current object are correct based on foreign key. * * You can override this method in the stub class, but you should always invoke * the base method from the overridden method (i.e. parent::ensureConsistency()), * in case your model changes. * * @throws PropelException */ public function ensureConsistency() { if ($this->aOrder !== null && $this->order_id !== $this->aOrder->getId()) { $this->aOrder = null; } }
/** * Import Orders * * @param string $lastUpdatedTime The datatime string * * @return B2BConnector */ public function importOrders($lastUpdatedTime = '') { $totalItems = 0; $this->_log(0, get_class($this), 'starting ...', self::LOG_TYPE, 'start', __FUNCTION__); if (($lastUpdatedTime = trim($lastUpdatedTime)) === '') { $this->_log(0, get_class($this), 'Getting the last updated time', self::LOG_TYPE, '$lastUpdatedTime is blank', __FUNCTION__); // $lastImportTime = new UDate(SystemSettings::getSettings(SystemSettings::TYPE_B2B_SOAP_LAST_IMPORT_TIME), SystemSettings::getSettings(SystemSettings::TYPE_B2B_SOAP_TIMEZONE)); $lastUpdatedTime = trim(SystemSettings::getSettings(SystemSettings::TYPE_B2B_SOAP_LAST_IMPORT_TIME)); } //getting the lastest order since last updated time $orders = $this->getlastestOrders($lastUpdatedTime); $this->_log(0, get_class($this), 'Found ' . count($orders) . ' order(s) since "' . $lastUpdatedTime . '".', self::LOG_TYPE, '', __FUNCTION__); if (is_array($orders) && count($orders) > 0) { $transStarted = false; try { try { Dao::beginTransaction(); } catch (Exception $e) { $transStarted = true; } foreach ($orders as $index => $order) { $this->_log(0, get_class($this), 'Found order from Magento with orderNo = ' . trim($order->increment_id) . '.', self::LOG_TYPE, '', __FUNCTION__); $order = $this->getOrderInfo(trim($order->increment_id)); if (!is_object($order)) { $this->_log(0, get_class($this), 'Found no object from $order, next element!', self::LOG_TYPE, '$index = ' . $index, __FUNCTION__); continue; } if (($status = trim($order->state)) === '') { $this->_log(0, get_class($this), 'Found no state Elment from $order, next element!', self::LOG_TYPE, '$index = ' . $index, __FUNCTION__); continue; } //saving the order $orderDate = new UDate(trim($order->created_at), SystemSettings::getSettings(SystemSettings::TYPE_B2B_SOAP_TIMEZONE)); $orderDate->setTimeZone('UTC'); // $totalPaid = (!isset($order->total_paid) ? 0 : trim($order->total_paid)); $shippingAddr = $billingAddr = null; if (($o = Order::getByOrderNo(trim($order->increment_id))) instanceof Order) { //skip, if order exsits $this->_log(0, get_class($this), 'Found order from DB, ID = ' . $o->getId(), self::LOG_TYPE, '$index = ' . $index, __FUNCTION__); continue; // $shippingAddr = $o->getShippingAddr(); // $billingAddr = $o->getBillingAddr(); } $o = new Order(); $this->_log(0, get_class($this), 'Found no order from DB, create new', self::LOG_TYPE, '$index = ' . $index, __FUNCTION__); $customer = Customer::create(isset($order->billing_address) && isset($order->billing_address->company) && trim($order->billing_address->company) !== '' ? trim($order->billing_address->company) : (isset($order->customer_firstname) ? trim($order->customer_firstname) . ' ' . trim($order->customer_lastname) : ''), '', trim($order->customer_email), $this->_createAddr($order->billing_address, $billingAddr), true, '', $this->_createAddr($order->shipping_address, $shippingAddr), isset($order->customer_id) ? trim($order->customer_id) : 0); $o->setOrderNo(trim($order->increment_id))->setOrderDate(trim($orderDate))->setTotalAmount(trim($order->grand_total))->setStatus(strtolower($status) === 'canceled' ? OrderStatus::get(OrderStatus::ID_CANCELLED) : OrderStatus::get(OrderStatus::ID_NEW))->setIsFromB2B(true)->setShippingAddr($customer->getShippingAddress())->setBillingAddr($customer->getBillingAddress())->setCustomer($customer)->save(); $this->_log(0, get_class($this), 'Saved the order, ID = ' . $o->getId(), self::LOG_TYPE, '$index = ' . $index, __FUNCTION__); $totalShippingCost = StringUtilsAbstract::getValueFromCurrency(trim($order->shipping_amount)) * 1.1; //create order info $this->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_CUS_NAME), trim($customer->getName()))->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_CUS_EMAIL), trim($customer->getEmail()))->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_QTY_ORDERED), intval(trim($order->total_qty_ordered)))->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_MAGE_ORDER_STATUS), trim($order->status))->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_MAGE_ORDER_STATE), trim($order->state))->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_MAGE_ORDER_TOTAL_AMOUNT), trim($order->grand_total))->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_MAGE_ORDER_SHIPPING_METHOD), trim($order->shipping_description))->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_MAGE_ORDER_SHIPPING_COST), $totalShippingCost)->_createOrderInfo($o, OrderInfoType::get(OrderInfoType::ID_MAGE_ORDER_PAYMENT_METHOD), !isset($order->payment) ? '' : (!isset($order->payment->method) ? '' : trim($order->payment->method))); $this->_log(0, get_class($this), 'Updated order info', self::LOG_TYPE, '$index = ' . $index, __FUNCTION__); //saving the order item $totalItemCost = 0; foreach ($order->items as $item) { $this->_createItem($o, $item); $totalItemCost = $totalItemCost * 1 + StringUtilsAbstract::getValueFromCurrency($item->row_total) * 1.1; } if (($possibleSurchargeAmount = $o->getTotalAmount() - $totalShippingCost - $totalItemCost) > 0 && ($product = Product::getBySku('surcharge')) instanceof Product) { OrderItem::create($o, $product, $possibleSurchargeAmount, 1, $possibleSurchargeAmount); } //record the last imported time for this import process SystemSettings::addSettings(SystemSettings::TYPE_B2B_SOAP_LAST_IMPORT_TIME, trim($order->created_at)); $this->_log(0, get_class($this), 'Updating the last updated time :' . trim($order->created_at), self::LOG_TYPE, '', __FUNCTION__); $totalItems++; } if ($transStarted === false) { Dao::commitTransaction(); } } catch (Exception $e) { if ($transStarted === false) { Dao::rollbackTransaction(); } throw $e; } } $this->_log(0, get_class($this), $lastUpdatedTime . " => " . SystemSettings::getSettings(SystemSettings::TYPE_B2B_SOAP_LAST_IMPORT_TIME) . ' => ' . $totalItems, self::LOG_TYPE, '', __FUNCTION__); return $this; }
public function delete(Order $order) { $id = intval($order->getId()); $query = 'DELETE FROM order WHERE id = ' . $id; $res = $this->db->exec($query); if ($res) { return true; } else { throw new Exception('Internal server error'); } }