ソースを参照

'健康美食管理'

gorden 1 年間 前
コミット
e7f3cd5116

+ 0 - 1
app/admin/controller/life/HealthyFood.php

@@ -1 +0,0 @@
-<?php

+ 68 - 0
app/admin/controller/life/HealthyFoodController.php

@@ -0,0 +1,68 @@
+<?php
+
+namespace app\admin\controller\life;
+
+use app\admin\validate\life\HealthyFoodValidate;
+use app\controller\Curd;
+use app\model\HealthyFood;
+use support\Request;
+use support\Response;
+
+class HealthyFoodController extends Curd
+{
+    public function __construct()
+    {
+        $this->model = new HealthyFood();
+        $this->validate = true;
+        $this->validateClass = new HealthyFoodValidate();
+    }
+
+    /**
+     * @Desc 列表
+     * @Author Gorden
+     * @Date 2024/2/29 10:26
+     *
+     * @param Request $request
+     * @return Response
+     * @throws \support\exception\BusinessException
+     */
+    public function select(Request $request): Response
+    {
+        [$where, $format, $limit, $field, $order] = $this->selectInput($request);
+        $order = $request->get('order', 'desc');
+        $field = $field ?? 'food_addTime';
+        $where['food_is_del'] = 0;
+        $query = $this->doSelect($where, $field, $order);
+        return $this->doFormat($query, $format, $limit);
+    }
+
+    /**
+     * @Desc 删除
+     * @Author Gorden
+     * @Date 2024/2/29 10:27
+     *
+     * @param Request $request
+     * @return Response
+     * @throws \support\exception\BusinessException
+     */
+    public function delete(Request $request): Response
+    {
+        $ids = $this->deleteInput($request);
+        $this->doSoftDelete($ids, ['food_is_del' => 1]);
+
+        return json_success('success');
+    }
+
+    /**
+     * @Desc 修改状态
+     * @Author Gorden
+     * @Date 2024/2/29 10:29
+     *
+     * @param Request $request
+     * @return Response
+     */
+    public function updateStatus(Request $request)
+    {
+        return $this->updateField($request->post('food_id'), 'food_status', $request->post('food_status'));
+    }
+}

+ 0 - 14
app/admin/validate/life/FarmHealthyFoodValidate.php

@@ -1,14 +0,0 @@
-<?php
-
-namespace app\admin\validate\life;
-
-use think\Validate;
-
-class FarmHealthyFoodValidate extends Validate
-{
-    protected $rule = [];
-
-    protected $message = [];
-
-    protected $scene = [];
-}

+ 56 - 0
app/admin/validate/life/HealthyFoodValidate.php

@@ -0,0 +1,56 @@
+<?php
+
+namespace app\admin\validate\life;
+
+use think\Validate;
+
+class HealthyFoodValidate extends Validate
+{
+    protected $rule = [
+        'food_id' => 'require|integer',
+        'food_category_id' => 'require|integer',
+        'food_shop_id' => 'require|integer',
+        'food_postage_id' => 'require|integer',
+        'food_name' => 'require|regex:/^[\x{4e00}-\x{9fa5}a-zA-Z0-9\_\-\,\s]+$/u',
+        'food_img' => 'regex:/^[0-9a-zA-Z\/\.]+$/',
+        'food_slide' => 'regex:/^[0-9a-zA-Z\/\.\,]+$/',
+        'food_price' => 'require|float',
+        'food_sell_num' => 'integer',
+        'food_pack_price' => 'float',
+        'food_materials' => 'isJson',
+        'food_condiment' => 'isJson',
+        'food_type' => 'require|integer',
+        'food_storage' => 'require',
+        'food_packaging' => 'require',
+        'food_varieties' => 'require',
+        'food_cater_time' => 'date',
+        'food_cater_type' => 'integer',
+        'food_week' => 'regex:/^[0-9\,]+$/',
+        'food_attr' => 'require',
+        'food_package' => 'regex:/^[0-9\,]+$/',
+        'food_package_num' => 'integer',
+        'food_label' => 'regex:/^[\x{4e00}-\x{9fa5}a-zA-Z0-9\_\-\,\s]+$/u',
+        'food_weight' => 'float',
+        'food_status' => 'in:0,1'
+    ];
+
+    protected $message = [];
+
+    protected $scene = [
+        'add' => ['food_category_id', 'food_shop_id', 'food_postage_id', 'food_name', 'food_img', 'food_slide', 'food_price', 'food_sell_num',
+            'food_pack_price', 'food_materials', 'food_condiment', 'food_type', 'food_storage', 'food_packaging', 'food_varieties',
+            'food_cater_time', 'food_cater_type', 'food_week', 'food_attr', 'food_package', 'food_package_num', 'food_label', 'food_weight'],
+        'update' => ['food_id', 'food_category_id', 'food_shop_id', 'food_postage_id', 'food_name', 'food_img', 'food_slide', 'food_price',
+            'food_sell_num', 'food_pack_price', 'food_materials', 'food_condiment', 'food_type', 'food_storage', 'food_packaging', 'food_varieties',
+            'food_cater_time', 'food_cater_type', 'food_week', 'food_attr', 'food_package', 'food_package_num', 'food_label', 'food_weight'],
+    ];
+
+    protected function isJson($value)
+    {
+        if (is_json($value)) {
+            return true;
+        }
+
+        return '数据格式错误~';
+    }
+}

+ 2 - 2
app/model/FarmHealthyFood.php → app/model/HealthyFood.php

@@ -4,9 +4,9 @@ namespace app\model;
 
 use support\Model;
 
-class FarmHealthyFood extends Model
+class HealthyFood extends Model
 {
-    protected $table = 'farm_healthy_food';
+    protected $table = 'healthy_food';
 
     protected $primaryKey = 'food_id';
 

+ 10 - 0
route/admin.php

@@ -183,5 +183,15 @@ Route::group('/admin', function () {
         })->middleware([
             \app\middleware\AdminAuthCheck::class
         ]);
+        /* 农场套餐商品管理 */
+        Route::group('/healthyFood', function () {
+            Route::get('/list', [\app\admin\controller\life\HealthyFoodController::class, 'select']);
+            Route::post('/add', [\app\admin\controller\life\HealthyFoodController::class, 'insert']);
+            Route::post('/update', [\app\admin\controller\life\HealthyFoodController::class, 'update']);
+            Route::post('/updateStatus', [\app\admin\controller\life\HealthyFoodController::class, 'updateStatus']);
+            Route::delete('/delete', [\app\admin\controller\life\HealthyFoodController::class, 'delete']);
+        })->middleware([
+            \app\middleware\AdminAuthCheck::class
+        ]);
     });
 });