本文整理汇总了PHP中Payment::set方法的典型用法代码示例。如果您正苦于以下问题:PHP Payment::set方法的具体用法?PHP Payment::set怎么用?PHP Payment::set使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Payment
的用法示例。
在下文中一共展示了Payment::set方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testSetGet
function testSetGet()
{
$this->CI->load->model('payment');
$payment = new Payment($this->DBI);
$payment->set('method', Payment::DIRECT);
$this->assertEqual($payment->get('method'), Payment::DIRECT, "Test set and get");
$passed = false;
try {
$payment->set('method', 'kooky');
} catch (Exception $error) {
$this->pass('Method set typing secure');
$passed = true;
}
if (!$passed) {
$this->fail("Failed to catch invalid set");
}
$passed = false;
try {
$payment->set('amount', 'not numeric');
} catch (Exception $error) {
$this->pass('Amount set typing secure');
$passed = true;
}
if (!$passed) {
$this->fail("Failed to catch invalid amount set");
}
}
示例2: search
function search($params)
{
$this->options = array();
$search_criteria = array('sort' => 'date DESC');
if ($this->search_for_payments) {
$search_criteria = array_merge($search_criteria, $this->search_for_payments);
}
if ($params['date_range']) {
$search_criteria['date_range'] = $params['date_range'];
$this->options['date_range'] = $params['date_range'];
}
$search_payment = new Payment();
$search_payment->set($search_criteria);
$this->options['search_payment'] = $search_payment;
$this->data = Payment::getMany($search_criteria);
}
示例3: testDestroyAssociatedRecords
function testDestroyAssociatedRecords()
{
$c = new Company();
$c->set(array('name' => 'destroy_test'));
$c->save();
$p = new Project();
$p->set(array('company_id' => $c->id, 'name' => 'destroy_project_test'));
$p->save();
$e = new Estimate();
$e->set(array('project_id' => $p->id, 'name' => 'destroy_estimate_test'));
$e->save();
$h = new Hour();
$h->set(array('estimate_id' => $e->id, 'name' => 'destroy_hour_test'));
$h->save();
$ch = new Charge();
$ch->set(array('company_id' => $c->id, 'name' => 'destroy_charge_test'));
$ch->save();
$con = new SupportContract();
$con->set(array('company_id' => $c->id, 'name' => 'destroy_contract_test'));
$con->save();
$sup_hr = new Hour();
$sup_hr->set(array('support_contract_id' => $con->id, 'description' => 'destroy_support_hour_test'));
$sup_hr->save();
$pay = new Payment();
$pay->set(array('company_id' => $c->id, 'name' => 'destroy_payment_test'));
$pay->save();
$deleted_items = array('company' => $c->id, 'project' => $p->id, 'estimate' => $e->id, 'hour' => $h->id, 'support_hour' => $sup_hr->id, 'charge' => $ch->id, 'support_contract' => $con->id, 'payment' => $pay->id);
$c->destroyAssociatedRecords();
$c->delete();
$dbcon = AMP::getDb();
foreach ($deleted_items as $table => $id) {
if ($table == 'support_hour') {
$table = 'hour';
}
$sql = 'SELECT * FROM ' . $table . ' WHERE id = ' . $id;
if ($records = $dbcon->Execute($sql)) {
$this->assertEqual($records->RecordCount(), 0, "{$table} not deleted correctly: %s");
} else {
trigger_error($dbcon->ErrorMsg());
}
}
}
示例4: testCalculateBalanceWithDateRange
function testCalculateBalanceWithDateRange()
{
#Company
$cp = new Company();
$cp->set(array('name' => 'Test Company', 'status' => 'active'));
$cp->save();
$pb = new CompanyPreviousBalance();
$pb->set(array('company_id' => $cp->id, 'amount' => 600.25, 'date' => '2010-01-30'));
$pb->save();
$this->assertWithinMargin($pb->getAmount(), '600.25', '.01');
######### Support
$sc = new SupportContract();
$sc->set(array('company_id' => $cp->id, 'domain_name' => 'Test', 'start_date' => '2010-01-01', 'end_date' => '2010-04-30', 'hourly_rate' => '120', 'support_hours' => '.5', 'monthly_rate' => '50'));
$sc->save();
# add support hours
# before previous balance
$h = new Hour();
$h->set(array('description' => 'Test', 'support_contract_id' => $sc->id, 'date' => '2010-01-20', 'hours' => '2.5'));
$h->save();
# in range
$h = new Hour();
$h->set(array('description' => 'Test', 'support_contract_id' => $sc->id, 'date' => '2010-02-20', 'hours' => '2.5'));
$h->save();
# in range
$h = new Hour();
$h->set(array('description' => 'Test', 'support_contract_id' => $sc->id, 'date' => '2010-03-20', 'hours' => '2.5'));
$h->save();
# out of range
$h = new Hour();
$h->set(array('description' => 'Test', 'support_contract_id' => $sc->id, 'date' => '2010-05-20', 'hours' => '2'));
$h->save();
### Support Totals = in range is 2 months x 50 = 100, 4 @ 120 = 480 = 580
$date_range = array('start_date' => '2010-01-01', 'end_date' => '2010-03-31');
$total = $cp->calculateSupportTotal($date_range);
$this->assertEqual($total, 580);
###### Project
$pj = new Project();
$pj->set(array('name' => 'Test Project', 'company_id' => $cp->id, 'hourly_rate' => '120'));
$pj->save();
# Add an Estimate item #1
$es1 = new Estimate();
$es1->set(array('project_id' => $pj->id, 'name' => 'Test Estimate 1', 'high_hours' => '10', 'low_hours' => '5'));
$es1->save();
# Add an Estimate item #2
$es2 = new Estimate();
$es2->set(array('project_id' => $pj->id, 'name' => 'Test Estimate 2', 'high_hours' => '10', 'low_hours' => '5'));
$es2->save();
# Add some before previous balance hours for #1 - 5 hours at 120 = 600
$hr = new Hour();
$hr->set(array('estimate_id' => $es1->id, 'description' => 'Test Hours for Estimate 1', 'date' => '2010-01-15', 'hours' => '5'));
$hr->save();
# Add some in range hours for #1 - 5 hours at 120 = 600
$hr = new Hour();
$hr->set(array('estimate_id' => $es1->id, 'description' => 'Test Hours for Estimate 1', 'date' => '2010-02-15', 'hours' => '5'));
$hr->save();
# Add some in range hours for #2 - 5 hours at 120 = 600
$hr = new Hour();
$hr->set(array('estimate_id' => $es2->id, 'description' => 'Test Hours for Estimate 2', 'date' => '2010-02-15', 'hours' => '5'));
$hr->save();
# Add some out of range hours for #2 - 5 hours at 120 = 600
$hr = new Hour();
$hr->set(array('estimate_id' => $es2->id, 'description' => 'Test Hours for Estimate 2', 'date' => '2010-05-15', 'hours' => '5'));
$hr->save();
## Project Totals = In range 1200, out of range 1800
$date_range = array('start_date' => '2010-01-01', 'end_date' => '2010-03-31');
$total = $cp->calculateProjectsTotal($date_range);
$this->assertEqual($total, 1200);
#Charge
# before previous balance
$cr = new Charge();
$cr->set(array('name' => 'Test', 'company_id' => $cp->id, 'date' => '2010-01-10', 'amount' => '20.50'));
$cr->save();
# in date range
$cr = new Charge();
$cr->set(array('name' => 'Test', 'company_id' => $cp->id, 'date' => '2010-03-14', 'amount' => '50.25'));
$cr->save();
# in date range
$cr = new Charge();
$cr->set(array('name' => 'Test', 'company_id' => $cp->id, 'date' => '2010-03-20', 'amount' => '50'));
$cr->save();
# out of date range
$cr = new Charge();
$cr->set(array('name' => 'Test', 'company_id' => $cp->id, 'date' => '2010-05-15', 'amount' => '50'));
$cr->save();
# Total Charges = in range 100.25, out of range 150.25
$date_range = array('start_date' => '2010-01-01', 'end_date' => '2010-03-31');
$charge_total = $cp->calculateChargesTotal($date_range);
$this->assertEqual($charge_total, 100.25);
## Test Total Costs
# Charges 100.25 + project 1200 + support 580
$date_range = array('start_date' => '2010-01-01', 'end_date' => '2010-03-31');
$total = $cp->calculateCosts($date_range);
$this->assertEqual($total, 1880.25);
## Payments
# add payment before previous balance date
$py = new Payment();
$py->set(array('company_id' => $cp->id, 'date' => '2010-01-22', 'amount' => '20.50'));
$py->save();
# add payment in range
$py = new Payment();
//.........这里部分代码省略.........