function find($criteria = null, $order = null, $limit = 1000, $from = 0) { $result = $this->database->query($this->buildFindQuery($criteria, $order, $limit, $from)); if (!is_null($result->getError())) { return $result->getError(); } $events = array(); while ($row = $result->fetchRow()) { $event = new Event(); $value = $row[0]; $event->setId($value); $value = $row[1]; $event->setPid($value); $value = $row[2]; $event->setCid($value); $value = $row[3]; $event->setSid($value); $value = $row[4]; $event->setValid_date($value); $value = $row[5]; $event->setReminde_date($value); $value = $row[6]; $event->setAmount($value); $value = $row[7]; $event->setState($value); $value = $row[8]; $event->setMoved($value); $value = $row[9]; $value = $this->database->toBoolean($value); $event->setDelay($value); $value = $row[10]; $event->setDelays($value); $value = $row[11]; $event->setComment($value); $value = $row[12]; $event->setIncome($value); $value = $row[13]; $event->setCost($value); $value = $row[14]; $event->setProfit($value); $value = $row[15]; $event->setWasted_time($value); $value = $row[16]; $event->setR_date($value); $value = $row[17]; $event->setDate($value); if ($order != null) { array_push($events, $event); } else { $events[$event->getId()] = $event; } } return $events; }
$usageEvent1->setMerchantEventId("eventID-1-" . $testId); // unique Id $usageEvent1->setEventDate('2015-03-27T06:29:34-07:00'); $usageEvent1->setDescription("Service usage"); $usageEvent1->setMerchantAutoBillId("subscriptionID101"); // CashBox will automatically identify which AutoBill item the event should be // applied to if there are no more than one item with same product. If the // subscription $usageEvent1->setMerchantProductId("ratedPriceProduct"); $usageEvent1->setAmount(14902); // Separate event related to another subscription can be reported in a single call $usageEvent2 = new Event(); $usageEvent2->setMerchantEventId("eventID-2-" . $testId); // unique Id $usageEvent2->setEventDate('2015-03-28T23:59:00-07:00'); $usageEvent2->setDescription("Service usage"); $usageEvent2->setMerchantAutoBillId("subscriptionID102"); $usageEvent2->setMerchantProductId("regular-product"); $usageEvent2->setAmount(159002); // Now let's record the two events with CashBox $rp = new RatePlan(); // This is the SOAP interface that supports the recordEvent call $response = $rp->recordEvent(array($usageEvent1, $usageEvent2)); // up to 50 events can be put in the array print_r($response); if ($response['returnCode'] == 200) { print "Successfully reported events. Call SOAP ID" . $response['data']->return->soapId . "\n"; } else { print "Events could not be reported"; print "Return code: " . $response['returnCode'] . " Return string: " . $response['returnString'] . " Call SOAP ID: " . $response['data']->return->soapId . "\n"; }