|
@@ -836,25 +836,30 @@ class WebsiteService implements WebsiteServiceInterface
|
|
|
*/
|
|
|
public function getTemplateClass(array $data): array
|
|
|
{
|
|
|
- // return Result::success($data);
|
|
|
$where = [];
|
|
|
if (isset($data['name']) && $data['name']) {
|
|
|
- array_push($where, ['name', 'like', '%' . $data['name'] . '%']);
|
|
|
+ array_push($where, ['template_class.name', 'like', '%' . $data['name'] . '%']);
|
|
|
}
|
|
|
$template = TemplateClass::when($where, function ($query) use ($where) {
|
|
|
- $query->where($where);
|
|
|
+ $query->where($where);
|
|
|
})
|
|
|
- ->orderBy('updated_at', 'desc');
|
|
|
- $count = $template->count();
|
|
|
+ ->leftJoin('template', 'template_class.id', '=', 'template.template_class_id')
|
|
|
+ ->select('template_class.*', DB::raw('COUNT(template.id) as template_count'))
|
|
|
+ ->groupBy('template_class.id')
|
|
|
+ ->orderBy('template_class.updated_at', 'desc');
|
|
|
+ $countQuery = clone $template;
|
|
|
+ $count = $countQuery->count();
|
|
|
$row = $template
|
|
|
->offset(($data['page'] - 1) * $data['pageSize'])
|
|
|
->limit($data['pageSize'])
|
|
|
->get();
|
|
|
+
|
|
|
$result = [
|
|
|
'rows' => $row,
|
|
|
'count' => $count,
|
|
|
];
|
|
|
- if (empty($result)) {
|
|
|
+
|
|
|
+ if ($row->isEmpty()) {
|
|
|
return Result::error("暂无风格", 0);
|
|
|
} else {
|
|
|
return Result::success($result);
|
|
@@ -873,7 +878,6 @@ class WebsiteService implements WebsiteServiceInterface
|
|
|
if ($template) {
|
|
|
return Result::error("风格名称已存在", 0);
|
|
|
}
|
|
|
- // return Result::success($data);
|
|
|
$result = TemplateClass::insertGetId($data);
|
|
|
if (empty($result)) {
|
|
|
return Result::error("创建风格失败", 0);
|
|
@@ -899,7 +903,7 @@ class WebsiteService implements WebsiteServiceInterface
|
|
|
if($template->type == 1){
|
|
|
return Result::error("默认风格不能修改", 0);
|
|
|
}
|
|
|
- $template = TemplateClass::where(['name' => $data['name']])->where('id','!=','id')->first();
|
|
|
+ $template = TemplateClass::where('id','!=',$data['id'])->where(['name' => $data['name']])->first();
|
|
|
if ($template) {
|
|
|
return Result::error("风格名称已存在", 0);
|
|
|
}
|