UpgradeRepository.php
2.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<?php
namespace domain\upgrade;
use domain\manufacturer\models\Manufacturer as ManufacturerModel;
use domain\model\models\Model as ModelModel;
use domain\project\models\Project as ProjectModel;
use domain\upgrade\models\Upgrade as UpgradeModel;
/**
* Class UpgradeRepository
* @package domain\model
*/
class UpgradeRepository
{
/**
* 获取分页数据
* @param $where
* @param $offset
* @param $limit
* @return array|\yii\db\ActiveRecord[]
*/
static function getPageList($where, $offset, $limit)
{
$upgradeFind = UpgradeModel::find()->alias("u")
->select([
"u.*",
"mf.name as manufacture_name",
"pro.name as project_name",
"mo.name as model_name",
"concat(mf.manufacture_no,project_no,model_no) as barcode"
]);
$upgradeFind->leftJoin(ManufacturerModel::tableName() . " mf", "mf.id = u.manufacture_id");
$upgradeFind->leftJoin(ProjectModel::tableName() . " pro", "pro.id = u.project_id");
$upgradeFind->leftJoin(ModelModel::tableName() . " mo", "mo.id = u.model_id");
if (!empty($where)) {
$upgradeFind->where($where);
}
if ($offset) {
$upgradeFind->offset($offset);
}
if ($limit) {
$upgradeFind->limit($limit);
}
$upgradeFind->andWhere(["u.is_delete" => 0]);
$upgradeFind->orderBy("u.id desc");
$upgradeFind->asArray();
$dataList = $upgradeFind->all();
return $dataList;
}
/**
* 列表页面分页器数量
* @param string $map
*/
static function getPageCount($map = '')
{
$upgradeFind = UpgradeModel::find()->alias("u");
$upgradeFind->leftJoin(ManufacturerModel::tableName() . " mf", "mf.id = u.manufacture_id");
$upgradeFind->leftJoin(ProjectModel::tableName() . " pro", "pro.id = u.project_id");
$upgradeFind->leftJoin(ModelModel::tableName() . " mo", "mo.id = u.model_id");
if (!empty($map)) {
$upgradeFind->where($map);
}
$upgradeFind->andWhere(["u.is_delete" => 0]);
$pageCount = $upgradeFind->count();
return $pageCount;
}
/**
* @param $id
* @param bool|false $asArr
* @return null|static
*/
static function selectOne($id, $asArr = false)
{
$model = UpgradeModel::findOne($id);
if ($asArr && $model) {
$model = $model->toArray();
}
return $model;
}
/**
* @param $id
* @param bool|false $asArr
* @return null|static
*/
static function findOne($condition)
{
$model = UpgradeModel::findOne($condition);
return $model;
}
}