public function testDiscardQuotation() { sleep(1); $client = Client::GetClient(2); //Creation $quotation = Quotation::CreateQuotation($client); $service = SurveyOfficeService::Create('Engineering Survey', 'Survey of the engineering kind', floatval(17500)); $ql = QuotationLine::Create($quotation->id, $service->name, 'Task Description', 2, $service->rate, 16); $quotation->addToQuote($ql); $this->assertInstanceOf('Quotation', $quotation); //discarding $quotation->discard(); //should fail $quotation = Quotation::GetQuotation($quotation->id); $this->assertTrue($quotation == null); //discarding //Quotation::Delete($quotation->id); }
public function importQuote($quoteId) { $quote = Quotation::GetQuotation($quoteId); $this->quotations[] = $quote; }
public function getQuote($qid) { if ($this->validateAdmin()) { echo json_encode(Quotation::GetQuotation($qid)); } else { echo 0; } }
public static function RaiseQuotationInvoice($clientId, $scope, $quotes, $discount) { $client = Client::GetClient($clientId); if ($scope == "G") { $descr = "General Services"; $pid = 0; } else { $prj = Project::GetProject(intval($scope)); $descr = $prj->name . ' Project'; $pid = intval($scope); } $qids = implode(",", $quotes); $invoice = Invoice::CreateInvoice($client, $pid, $qids, $descr, $discount); foreach ($quotes as $qid) { $quotation = Quotation::GetQuotation($qid); foreach ($quotation->lineItems as $item) { $invoice->addToInvoice(InvoiceLine::Create($invoice->id, $item->itemName, $item->itemDesc, $item->quantity, $item->unitPrice, $item->tax)); } } if ($invoice->generate()) { return new InvoiceTX($invoice, 'Quotation Invoice'); } else { Logger::Log('InvoiceTX', 'Failed', 'Quotation invoice transaction with id:' . $invoice->id . ' and tx id:' . $this->transactionId . ' could not be completed'); return false; } }