Exemple #1
0
 /** @return PDOStatement */
 function query($start = null, $count = null)
 {
     $sql = $this->getSql($start, $count);
     $sql = preg_replace('/^SELECT /i', 'SELECT SQL_CALC_FOUND_ROWS ', $sql);
     $ret = $this->db->queryResultOnly($sql);
     $this->foundRows = $this->db->selectCell("SELECT FOUND_ROWS()");
     return $ret;
 }
 public function editTargetOperation($target_bill_id, $money, $date, $target_id, $bill_id, $comment, $close)
 {
     if ((int) $target_bill_id == 0) {
         $sql = "SELECT b.id FROM target_bill b WHERE b.target_id =? ORDER BY b.dt_create ASC LIMIT 1";
         $target_bill_id = $this->db->selectCell($sql, $target_id);
     }
     if ((int) $bill_id == 0) {
         trigger_error("Указанный счёт '{$bill_id}' не существует. ", E_USER_ERROR);
         return false;
     }
     if ((int) $target_id == 0) {
         trigger_error("Указанная финансовая цель '{$target_id}' не существует. ", E_USER_ERROR);
         return false;
     }
     if (!is_float($money) && (int) $money == 0) {
         trigger_error("Указано не число", E_USER_WARNING);
         return false;
     }
     $comment = strip_tags($comment);
     //$date = formatRussianDate2MysqlDate($date);
     $this->db->query("UPDATE target_bill SET bill_id=?, money=?, date=?, comment=?\n            WHERE id=? AND user_id=? LIMIT 1;", $bill_id, $money, $date, $comment, $target_bill_id, Core::getInstance()->user->getId());
     if (!empty($close)) {
         $this->db->query("UPDATE target SET close=1 WHERE user_id=? AND id=?", Core::getInstance()->user->getId(), $target_id);
     }
     $this->staticTargetUpdate($target_id);
     return true;
 }
Exemple #3
0
 public function insert(array $values, $returnInserted = false)
 {
     $this->_db->query("INSERT INTO {$this->_table} SET ?a", $values);
     return $returnInserted ? $this->_db->selectRow("SELECT * FROM {$this->_table} WHERE ?#=LAST_INSERT_ID()", $this->_key) : $this->_db->selectCell("SELECT LAST_INSERT_ID()");
 }
 /**
  * Проверяет уникальность служебной почты
  * @param string $mail
  * @return bool
  */
 public function checkServiceEmailIsUnique($mail)
 {
     $sql = "SELECT user_service_mail FROM users WHERE user_service_mail=? AND id != ? LIMIT 1;";
     return !(bool) $this->db->selectCell($sql, $mail, $this->user_id);
 }
 /**
  * Возвращает количество операций по ID категории
  *
  * @param oldUser $user Ссылка на объект пользователя
  * @param int $categoryId Ид категории которую нужно удалить
  * @return int Количество операций по категории пользователя
  */
 function getCountOperationByCategory(oldUser $user, $categoryId = 0)
 {
     $sql = "SELECT COUNT(id) FROM operation WHERE cat_id IN (\n            SELECT cat_id FROM category WHERE user_id=? AND (cat_id=? OR cat_parent=?))";
     return (int) $this->db->selectCell($sql, $user->getId(), $categoryId, $categoryId);
 }