示例#1
0
 /**
  * Marks every order's items as received
  *
  * @return string|null
  */
 function receive()
 {
     $this->loadRefsOrderItems();
     // we mark all the items as received
     foreach ($this->_ref_order_items as $item) {
         if (!$item->isReceived()) {
             $reception = new CProductOrderItemReception();
             $reception->quantity = $item->quantity - $item->_quantity_received;
             $reception->order_item_id = $item->_id;
             $reception->date = CMbDT::dateTime();
             if ($msg = $reception->store()) {
                 return $msg;
             }
         }
     }
     return null;
 }
 /**
  * Receive the order item
  *
  * @param int  $quantity Quantity
  * @param null $code     Code
  *
  * @return null|string
  */
 function receive($quantity, $code = null)
 {
     if ($this->_id) {
         $reception = new CProductOrderItemReception();
         $reception->order_item_id = $this->_id;
         $reception->quantity = $quantity;
         $reception->date = CMbDT::dateTime();
         $reception->code = $code;
         return $reception->store();
     } else {
         return "{$this->_class}::receive failed : order_item must be stored before";
     }
 }