This commit is contained in:
xl
2024-07-10 16:18:27 +08:00
parent d58850b158
commit 08e49cfa65
2 changed files with 198 additions and 39 deletions
+176 -17
View File
@@ -64,32 +64,191 @@ abstract class QueryTrait extends Component implements ActiveQueryInterface, ISq
/**
* @param string $name
* @return mixed
* @throws Exception
* @param array $where
* @return void
*/
public function __get(string $name)
public function setWhere(array $where): void
{
if (property_exists($this, $name)) {
return $this->$name;
}
return parent::__get($name); // TODO: Change the autogenerated stub
$this->where = $where;
}
/**
* @param string $name
* @param $value
* @param array $select
* @return void
* @throws Exception
*/
public function __set(string $name, $value): void
public function setSelect(array $select): void
{
if (property_exists($this, $name)) {
$this->{$name} = $value;
} else {
parent::__set($name, $value); // TODO: Change the autogenerated stub
}
$this->select = $select;
}
/**
* @param array $join
* @return void
*/
public function setJoin(array $join): void
{
$this->join = $join;
}
/**
* @param array $order
* @return void
*/
public function setOrder(array $order): void
{
$this->order = $order;
}
/**
* @param int $offset
* @return void
*/
public function setOffset(int $offset): void
{
$this->offset = $offset;
}
/**
* @param int $limit
* @return void
*/
public function setLimit(int $limit): void
{
$this->limit = $limit;
}
/**
* @param string $group
* @return void
*/
public function setGroup(string $group): void
{
$this->group = $group;
}
/**
* @param string $from
* @return void
*/
public function setFrom(string $from): void
{
$this->from = $from;
}
/**
* @param string $alias
* @return void
*/
public function setAlias(string $alias): void
{
$this->alias = $alias;
}
/**
* @param array $params
* @return void
*/
public function setParams(array $params): void
{
$this->params = $params;
}
/**
* @return array
*/
public function getWhere(): array
{
return $this->where;
}
/**
* @return array|string[]
*/
public function getSelect(): array
{
return $this->select;
}
/**
* @return array
*/
public function getJoin(): array
{
return $this->join;
}
/**
* @return array
*/
public function getOrder(): array
{
return $this->order;
}
/**
* @return int
*/
public function getOffset(): int
{
return $this->offset;
}
/**
* @return int
*/
public function getLimit(): int
{
return $this->limit;
}
/**
* @return string
*/
public function getGroup(): string
{
return $this->group;
}
/**
* @return string
*/
public function getFrom(): string
{
return $this->from;
}
/**
* @return string
*/
public function getAlias(): string
{
return $this->alias;
}
/**
* @return array
*/
public function getParams(): array
{
return $this->params;
}