示例#1
0
 function __construct(array $params, UserValidator $validator)
 {
     $this->params = $params;
     $this->validator = $validator;
     $this->fromParams();
     parent::__construct($validator);
 }
 public function save(DomainEntity $entity)
 {
     $DBModel = ORM::for_table($this->tableName)->create($entity->asArray());
     if (empty($DBModel->created_at)) {
         $DBModel->set('created_at', date(DateTime::RFC2822));
     }
     $DBModel->set('updated_at', date(DateTime::RFC2822));
     try {
         $DBModel->save();
         $display = $entity->asArray()[$this->entityDisplayAttribute];
         $result = ['result' => $DBModel->id(), 'message' => "{$this->entityName}: {$display} successfully saved"];
     } catch (\PDOException $e) {
         if ($e->getCode() == self::INTEGRITY_EXCEPTION) {
             $result = ['result' => false, 'message' => implode(' - ', $e->errorInfo)];
         } else {
             throw $e;
         }
     }
     return $result;
 }