Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 www 1
<?php
2
declare(strict_types=1);
3
 
4
namespace LeadersLinked\Mapper;
5
 
6
use LeadersLinked\Mapper\Common\MapperCommon;
7
use Laminas\Db\Adapter\AdapterInterface;
8
use LeadersLinked\Model\CompanyMicrolearningUserQuiz;
9
use LeadersLinked\Hydrator\ObjectPropertyHydrator;
10
 
11
 
12
class CompanyMicrolearningUserQuizMapper extends MapperCommon
13
{
14
    const _TABLE = 'tbl_company_microlearning_user_quizzes';
15
 
16
    /**
17
     *
18
     * @var CompanyMicrolearningUserQuizMapper
19
     */
20
    private static $_instance;
21
 
22
    /**
23
     *
24
     * @param AdapterInterface $adapter
25
     */
26
    private function __construct($adapter)
27
    {
28
        parent::__construct($adapter);
29
    }
30
 
31
    /**
32
     *
33
     * @param AdapterInterface $adapter
34
     * @return CompanyMicrolearningUserQuizMapper
35
     */
36
    public static function getInstance($adapter)
37
    {
38
        if(self::$_instance == null) {
39
            self::$_instance = new CompanyMicrolearningUserQuizMapper($adapter);
40
        }
41
        return self::$_instance;
42
    }
43
 
44
 
45
    /**
46
     *
47
     * @param CompanyMicrolearningUserQuiz $userQuiz
48
     * @return boolean
49
     */
50
    public function insert($userQuiz)
51
    {
52
        $hydrator = new ObjectPropertyHydrator();
53
        $values = $hydrator->extract($userQuiz);
54
        $values = $this->removeEmpty($values);
55
 
56
        $insert = $this->sql->insert(self::_TABLE);
57
        $insert->values($values);
58
 
59
        $result = $this->executeInsert($insert);
60
        if($result) {
61
            $userQuiz->id = $this->lastInsertId;
62
        }
63
        return $result;
64
    }
65
 
66
}