diff --git a/app/Admin/Controllers/Article/PictureController.php b/app/Admin/Controllers/Article/PictureController.php index bd88768..2e05167 100644 --- a/app/Admin/Controllers/Article/PictureController.php +++ b/app/Admin/Controllers/Article/PictureController.php @@ -3,12 +3,14 @@ namespace App\Admin\Controllers\Article; use App\Models\ArticlePicture; +use App\Models\Category; use Encore\Admin\Controllers\AdminController; use Encore\Admin\Form; use Encore\Admin\Grid; class PictureController extends AdminController { + protected $title = '随手拍'; public function grid() @@ -24,7 +26,7 @@ class PictureController extends AdminController }); $grid->column('id', '#ID#'); - $grid->column('cover')->display(function () { + $grid->column('cover', '图片')->display(function () { return $this->one_picture_path; })->image('', 100); $grid->column('category.title', '所属分类'); @@ -40,11 +42,18 @@ class PictureController extends AdminController $form = new Form(new ArticlePicture); $form->text('title', '文章标题')->rules('min:2'); - $form->hidden('category_id')->value(6); + $form->select('category_id', '所属分类') + ->options(Category::selectOptions(function ($model) { + return $model->whereIn('type', [Category::TYPE_PICTURE]); + }, '选择分类')) + ->rules('required|min:1', [ + 'required' => '必须选择所属分类', + 'min' => '必须选择所属分类', + ]); $form->multipleImage('pictures', '封面') - ->move('images/' . date('Y/m/d')) - ->removable() - ->uniqueName(); + ->move('images/' . date('Y/m/d')) + ->removable() + ->uniqueName(); $form->number('sort', '序号')->default(0)->rules('required', ['required' => '序号必须填写'])->help('倒序优先'); diff --git a/app/Http/Controllers/IndexController.php b/app/Http/Controllers/IndexController.php index cf3c592..27cc90e 100644 --- a/app/Http/Controllers/IndexController.php +++ b/app/Http/Controllers/IndexController.php @@ -16,17 +16,50 @@ class IndexController extends Controller */ public function index() { - $ssp = ArticlePicture::orderBy('sort', 'desc')->take(3)->get(); //随手拍 - $all_articles = Article::orderBy('sort', 'desc')->whereNotIn('category_id', [20, 21, 22])->take(7)->get(); //最新资讯 - $danwei = Article::where('category_id', 15)->latest()->first(); //单位概况 - $ysbj = Article::where('category_id', 12)->latest()->take(3)->get(); //养生保健 - $dcyfx = Article::where('category_id', 10)->latest()->take(7)->get(); //调研与分析 - $yyjcyj = Article::where('category_id', 9)->latest()->take(7)->get(); //应用基础研究 - $jsyt = Article::where('category_id', 11)->latest()->take(7)->get(); //技术研讨 - $kyyyy = Article::where('category_id', 12)->latest()->take(7)->get(); //科研与应用 - $qkys = Article::where('category_id', 9)->latest()->take(7)->get(); //全科医学 + $ssp = ArticlePicture::orderBy('sort', 'desc')->where('category_id', 6)->take(3)->get(); + //随手拍 + $all_articles = Article::orderBy('sort', 'desc') + ->whereNotIn('category_id', [20, 21, 22]) + ->take(7) + ->get(); + //最新资讯 + $danwei = Article::where('category_id', 15) + ->latest() + ->first(); + //单位概况 + $ysbj = Article::where('category_id', 12) + ->latest() + ->take(3) + ->get(); + //养生保健 + $dcyfx = Article::where('category_id', 10) + ->latest() + ->take(7) + ->get(); + //调研与分析 + $yyjcyj = Article::where('category_id', 9) + ->latest() + ->take(7) + ->get(); + //应用基础研究 + $jsyt = Article::where('category_id', 11) + ->latest() + ->take(7) + ->get(); + //技术研讨 + $kyyyy = Article::where('category_id', 12) + ->latest() + ->take(7) + ->get(); + //科研与应用 + $qkys = Article::where('category_id', 13) + ->latest() + ->take(7) + ->get(); + //全科医学 $center_advert = Advert::where('category_id', 18)->first(); - $qikan_advert = Advert::where('category_id', 19)->take(4)->orderBy('sort', 'desc')->get(); + //期刊 + $qikan_advert = ArticlePicture::latest()->take(4)->where('category_id', 23)->get(); return view('index.index', compact('ssp', 'all_articles', 'danwei', 'ysbj', 'dcyfx', 'yyjcyj', 'jsyt', 'kyyyy', 'qkys', 'center_advert', 'qikan_advert')); } diff --git a/app/Models/Category.php b/app/Models/Category.php index dd21212..1185a4d 100644 --- a/app/Models/Category.php +++ b/app/Models/Category.php @@ -9,20 +9,21 @@ use Illuminate\Database\Eloquent\Relations\HasMany; class Category extends Model { - use AdminBuilder, ModelTree; - public const TYPES = [ - 'article' => '文章列表', - 'show' => '文章详情', - 'advert' => '广告', - 'picture' => '图册', - ]; + use AdminBuilder, ModelTree; public const TYPE_SHOW = 'show'; public const TYPE_ARTICLE = 'article'; public const TYPE_ADVERT = 'advert'; public const TYPE_PICTURE = 'picture'; + public const TYPES = [ + self::TYPE_ARTICLE => '文章列表', + self::TYPE_SHOW => '文章详情', + self::TYPE_ADVERT => '广告', + self::TYPE_PICTURE => '图册', + ]; + /** * 关联的数据 * @return [type] [description] @@ -31,7 +32,7 @@ class Category extends Model { switch ($this->type) { case self::TYPE_SHOW: - return $this->hasOne(Article::class,'id','article_id'); + return $this->hasOne(Article::class, 'id', 'article_id'); break; case self::TYPE_ARTICLE: return $this->hasMany(Article::class); diff --git a/resources/views/index/index.blade.php b/resources/views/index/index.blade.php index afe141d..a2826ae 100644 --- a/resources/views/index/index.blade.php +++ b/resources/views/index/index.blade.php @@ -4,317 +4,324 @@ @section('content') - -
-
-
-
-

随手拍

- / BEAT -
-
- -