コード例 #1
0
 public function getChain($chainId, \Core\Database $db)
 {
     $sql = "select * from appointments where chain=:chain";
     if ($recs = $db->fetchAllAssoc($sql, array(":chain" => $chainId))) {
         $result = new \Application\AppointmentChain();
         foreach ($recs as $record) {
             $result->add(new \Application\AppointmentItem($record));
         }
         return $result;
     } else {
         return new \Application\AppointmentChain();
     }
 }
コード例 #2
0
 public function testFilteredInterface()
 {
     $chain = new \Application\AppointmentChain();
     $item1 = new \Application\AppointmentItem(self::$arrayToTest1);
     $item2 = new \Application\AppointmentItem(self::$arrayToTest2);
     $item3 = new \Application\AppointmentItem(self::$arrayToTest3);
     $chain->add($item1);
     $chain->add($item2);
     $chain->add($item3);
     $chain->applyFilter(new \DateTime('2015-10-15 12:00:00'));
     $chain->rewind();
     $this->assertEquals(2, $chain->count());
     $this->assertEquals($item2, $chain->current());
     $chain->next();
     $this->assertEquals($item3, $chain->current());
     $chain->next();
     $this->assertFalse($chain->valid());
     $this->assertFalse($chain->isMeetFilter($item1));
     $this->assertTrue($chain->isMeetFilter($item2));
     $this->assertTrue($chain->isMeetFilter($item3));
     $this->assertEquals($item1, $chain->get(10));
     $this->assertEquals($item2, $chain->get(20));
     $this->assertEquals($item3, $chain->get(30));
     $this->assertEquals(null, $chain->get(40));
     $chain->setChainId(50);
     $this->assertEquals(50, $item1->getChain());
     $this->assertEquals(50, $item2->getChain());
     $this->assertEquals(50, $item3->getChain());
 }