浏览代码

wesmiler 报恩寺项目提交

wesmiler 4 年之前
父节点
当前提交
980cfb86f3
共有 4 个文件被更改,包括 212 次插入0 次删除
  1. 37 0
      app/Http/Controllers/PracticesController.php
  2. 50 0
      app/Models/PracticesModel.php
  3. 117 0
      app/Services/PracticesService.php
  4. 8 0
      routes/web.php

+ 37 - 0
app/Http/Controllers/PracticesController.php

@@ -0,0 +1,37 @@
+<?php
+// +----------------------------------------------------------------------
+// | Laravel框架 [ Laravel ]
+// +----------------------------------------------------------------------
+// | 版权所有 2017~2021 Laravel研发中心
+// +----------------------------------------------------------------------
+// | 官方网站: http://www.laravel.cn
+// +----------------------------------------------------------------------
+// | Author: wesmiler <12345678@qq.com>
+// +----------------------------------------------------------------------
+
+namespace App\Http\Controllers;
+
+use App\Services\PracticesService;
+
+/**
+ * 修行项目管理-控制器
+ * @author wesmiler
+ * @since 2020/11/11
+ * Class PracticesController
+ * @package App\Http\Controllers
+ */
+class PracticesController extends Backend
+{
+    /**
+     * 构造函数
+     * @author wesmiler
+     * @since 2020/11/11
+     * PracticesController constructor.
+     */
+    public function __construct()
+    {
+        parent::__construct();
+        $this->service = new PracticesService();
+    }
+
+}

+ 50 - 0
app/Models/PracticesModel.php

@@ -0,0 +1,50 @@
+<?php
+// +----------------------------------------------------------------------
+// | Laravel框架 [ Laravel ]
+// +----------------------------------------------------------------------
+// | 版权所有 2017~2021 Laravel研发中心
+// +----------------------------------------------------------------------
+// | 官方网站: http://www.laravel.cn
+// +----------------------------------------------------------------------
+// | Author: wesmiler <12345678@qq.com>
+// +----------------------------------------------------------------------
+
+namespace App\Models;
+
+/**
+ * 文章管理-模型
+ * @author wesmiler
+ * @since 2020/11/11
+ * Class ArticleModel
+ * @package App\Models
+ */
+class PracticesModel extends BaseModel
+{
+    // 设置数据表
+    protected $table = 'practice_items';
+
+    /**
+     * 获取记录信息
+     * @param int $id 记录ID
+     * @return array|string
+     * @author wesmiler
+     * @since 2020/11/11
+     */
+    public function getInfo($id)
+    {
+        $info = parent::getInfo($id); // TODO: Change the autogenerated stub
+        if ($info) {
+            // 图片
+            if ($info['thumb']) {
+                $info['thumb'] = get_image_url($info['thumb']);
+            }
+
+            // 图片
+            if ($info['complete_time']) {
+                $info['complete_time'] = datetime($info['complete_time'],'Y-m-d H:i:s');
+            }
+        }
+        return $info;
+    }
+
+}

+ 117 - 0
app/Services/PracticesService.php

@@ -0,0 +1,117 @@
+<?php
+// +----------------------------------------------------------------------
+// | Laravel框架 [ Laravel ]
+// +----------------------------------------------------------------------
+// | 版权所有 2017~2021 Laravel研发中心
+// +----------------------------------------------------------------------
+// | 官方网站: http://www.laravel.cn
+// +----------------------------------------------------------------------
+// | Author: wesmiler <12345678@qq.com>
+// +----------------------------------------------------------------------
+
+namespace App\Services;
+
+use App\Models\PracticesModel;
+
+/**
+ * 修行项目管理-服务类
+ * @author wesmiler
+ * @since 2020/11/11
+ * Class PracticesService
+ * @package App\Services
+ */
+class PracticesService extends BaseService
+{
+    /**
+     * 构造函数
+     * @author wesmiler
+     * @since 2020/11/11
+     * PracticesService constructor.
+     */
+    public function __construct()
+    {
+        $this->model = new PracticesModel();
+    }
+
+    /**
+     * 获取列表
+     * @return array
+     * @since 2020/11/11
+     * @author wesmiler
+     */
+    public function getDataList()
+    {
+        $params = request()->all();
+        $page = isset($params['pageSize']) ? intval($params['pageSize']) : PAGE;
+        $pageSize = isset($params['pageSize']) ? intval($params['pageSize']) : PERPAGE;
+
+        $dataList = $this->model::from('practice_items as a')
+            ->where(function ($query) use ($params) {
+                $query->where(['a.mark'=>1,'a.status'=> 1]);
+            })
+            ->select(['a.*'])
+            ->orderBy('a.sort', 'asc')
+            ->orderBy('a.create_time', 'desc')
+            ->paginate($pageSize);
+
+        $dataList = $dataList ? $dataList->toArray() : [];
+        if ($dataList) {
+            foreach ($dataList['data'] as &$item) {
+                $item['thumb'] = $item['thumb'] ? get_image_url($item['thumb']) : '';
+                $item['create_time'] = $item['create_time'] ? datetime($item['create_time'],'Y-m-d H:i:s') : '';
+                $item['complete_status'] = 0;
+                if($item['complete_time']>strtotime(date('Y-m-d'))){
+                    $item['complete_status'] = 1;
+                }
+            }
+            unset($item);
+        }
+
+        return [
+            'code' => 0,
+            'success'=> true,
+            'msg' => '操作成功',
+            'count' => isset($dataList['total']) ? $dataList['total'] : 0,
+            'data' => isset($dataList['data']) ? $dataList['data'] : 0,
+        ];
+    }
+
+    /**
+     * 获取列表
+     * @return array
+     * @since 2020/11/11
+     * @author wesmiler
+     */
+    public function getList()
+    {
+        $params = request()->all();
+        return parent::getList();
+    }
+
+    /**
+     * 添加或编辑
+     * @return array
+     * @since 2020/11/11
+     * @author wesmiler
+     */
+    public function edit()
+    {
+        $data = request()->all();
+
+        // 图片处理
+        $image = trim($data['thumb']);
+        $id = isset($data['id']) ? $data['id'] : 0;
+        if (!$id && !$image) {
+            return message('请上传图标', false);
+        }
+        if (strpos($image, "temp")) {
+            $data['thumb'] = save_image($image, 'item');
+        } else {
+            $data['thumb'] = str_replace(IMG_URL, "", $data['thumb']);
+        }
+
+        $data['update_time'] = time();
+        return parent::edit($data); // TODO: Change the autogenerated stub
+    }
+
+}

+ 8 - 0
routes/web.php

@@ -483,6 +483,14 @@ Route::post('/buddhistpages/delete', [\App\Http\Controllers\BuddhistPagesControl
 Route::post('/buddhistpages/status', [\App\Http\Controllers\BuddhistPagesController::class, 'status']);
 Route::post('/buddhistpages/status', [\App\Http\Controllers\BuddhistPagesController::class, 'status']);
 
 
 
 
+// 修行项目管理
+Route::get('/practices/index', [\App\Http\Controllers\PracticesController::class, 'index']);
+Route::get('/practices/info', [\App\Http\Controllers\PracticesController::class, 'info']);
+Route::post('/practices/edit', [\App\Http\Controllers\PracticesController::class, 'edit']);
+Route::post('/practices/delete', [\App\Http\Controllers\PracticesController::class, 'delete']);
+Route::post('/practices/status', [\App\Http\Controllers\PracticesController::class, 'status']);
+
+
 // 义工管理
 // 义工管理
 Route::get('/yigong/index', [\App\Http\Controllers\YigongController::class, 'index']);
 Route::get('/yigong/index', [\App\Http\Controllers\YigongController::class, 'index']);
 Route::get('/yigong/info', [\App\Http\Controllers\YigongController::class, 'info']);
 Route::get('/yigong/info', [\App\Http\Controllers\YigongController::class, 'info']);