Bladeren bron

'农场套餐管理'

gorden 1 jaar geleden
bovenliggende
commit
530ac6311f

+ 53 - 0
app/admin/controller/life/FarmPackageController.php

@@ -0,0 +1,53 @@
+<?php
+
+namespace app\admin\controller\life;
+
+use app\admin\validate\life\FarmPackageValidate;
+use app\controller\Curd;
+use app\model\FarmPackage;
+use support\Request;
+use support\Response;
+
+class FarmPackageController extends Curd
+{
+    public function __construct()
+    {
+        $this->model = new FarmPackage();
+        $this->validate = true;
+        $this->validateClass = new FarmPackageValidate();
+    }
+
+    /**
+     * @Desc 列表
+     * @Author Gorden
+     * @Date 2024/2/28 13:06
+     *
+     * @param Request $request
+     * @return Response
+     * @throws \support\exception\BusinessException
+     */
+    public function select(Request $request): Response
+    {
+        [$where, $format, $limit, $field, $order] = $this->selectInput($request);
+        $where['package_is_del'] = 0;
+        $query = $this->doSelect($where, $field, $order);
+        return $this->doFormat($query, $format, $limit);
+    }
+
+    /**
+     * @Desc 软删除
+     * @Author Gorden
+     * @Date 2024/2/28 13:07
+     *
+     * @param Request $request
+     * @return Response
+     * @throws \support\exception\BusinessException
+     */
+    public function delete(Request $request): Response
+    {
+        $ids = $this->deleteInput($request);
+        $this->doSoftDelete($ids, ['package_is_del' => 1]);
+
+        return json_success('success');
+    }
+}

+ 31 - 0
app/admin/validate/life/FarmPackageValidate.php

@@ -0,0 +1,31 @@
+<?php
+
+namespace app\admin\validate\life;
+
+use think\Validate;
+
+class FarmPackageValidate extends Validate
+{
+    protected $rule = [
+        'package_id' => 'require|integer',
+        'package_shop_id' => 'require|integer',
+        'package_category_id' => 'require|integer',
+        'package_cate' => 'in:次卡,月卡,年卡',
+        'package_type' => 'require|integer',
+        'package_name' => 'require|chsDash',
+        'package_image' => 'regex:/^[0-9a-zA-Z\/\.]+$/',
+        'package_slide' => 'regex:/^[0-9a-zA-Z\/\.\,]+$/',
+        'package_tags' => '/^[\x{4e00}-\x{9fa5}a-zA-Z0-9\_\-\,]+$/u',
+        'package_price' => 'require|float',
+        'package_grade' => 'integer',
+        'package_usefulday' => 'integer',
+        'package_sales' => 'integer'
+    ];
+
+    protected $message = [];
+
+    protected $scene = [
+        'add' => ['package_shop_id', 'package_category_id', 'package_cate', 'package_type', 'package_name', 'package_image', 'package_slide', 'package_tags', 'package_price', 'package_grade', 'package_usefulday', 'package_sales'],
+        'update' => ['package_id', 'package_shop_id', 'package_category_id', 'package_cate', 'package_type', 'package_name', 'package_image', 'package_slide', 'package_tags', 'package_price', 'package_grade', 'package_usefulday', 'package_sales'],
+    ];
+}

+ 1 - 1
app/controller/Curd.php

@@ -142,7 +142,7 @@ class Curd
         if (!$allow_column) {
             throw new BusinessException('表不存在');
         }
-        $allow_column = array_column($allow_column, 'FieldController', 'FieldController');
+        $allow_column = array_column($allow_column, 'Field', 'Field');
         if (!in_array($field, $allow_column)) {
             $field = null;
         }

+ 18 - 0
app/model/FarmPackage.php

@@ -0,0 +1,18 @@
+<?php
+
+namespace app\model;
+
+use support\Model;
+
+class FarmPackage extends Model
+{
+    protected $table = 'farm_package';
+
+    protected $primaryKey = 'package_id';
+
+    protected $dateFormat = 'U';
+
+    public const CREATED_AT = 'package_addTime';
+
+    public const UPDATED_AT = 'package_updateTime';
+}

+ 10 - 1
route/api.php

@@ -3,7 +3,7 @@
 use Webman\Route;
 
 Route::group('/admin', function () {
-    Route::group('/upload',function (){
+    Route::group('/upload', function () {
         Route::post('/image', [\app\admin\controller\UploadFileController::class, 'image']);
         Route::post('/video', [\app\admin\controller\UploadFileController::class, 'video']);
     })->middleware([
@@ -165,5 +165,14 @@ Route::group('/admin', function () {
         })->middleware([
             \app\middleware\AdminAuthCheck::class
         ]);
+        /* 农场套餐管理 */
+        Route::group('/farmPackage', function () {
+            Route::get('/list', [\app\admin\controller\life\FarmPackageController::class, 'select']);
+            Route::post('/add', [\app\admin\controller\life\FarmPackageController::class, 'insert']);
+            Route::post('/update', [\app\admin\controller\life\FarmPackageController::class, 'update']);
+            Route::delete('/delete', [\app\admin\controller\life\FarmPackageController::class, 'delete']);
+        })->middleware([
+            \app\middleware\AdminAuthCheck::class
+        ]);
     });
 });