Browse Source

完善功能

gorden 10 months ago
parent
commit
b85d068dfd
2 changed files with 80 additions and 3 deletions
  1. 77 0
      app/admin/controller/sys_manage/GreenChannelController.php
  2. 3 3
      route/admin.php

+ 77 - 0
app/admin/controller/sys_manage/GreenChannelController.php

@@ -3,6 +3,7 @@
 namespace app\admin\controller\sys_manage;
 
 use app\model\SysConfig;
+use support\Request;
 
 class GreenChannelController{
     public function select(){
@@ -20,4 +21,80 @@ class GreenChannelController{
 
         return json_success('',$data);
     }
+
+    public function insert(Request $request){
+        $config = SysConfig::where('config_key','app-system-hospital')->first();
+        if(!$config){
+            return json_fail("数据异常");
+        }
+        $params = $request->post();
+
+        $list = json_decode($config->config_value_json,true);
+        if(isset($list[$params['hospital']])){
+            return json_fail('医院已存在');
+        }
+        $data[$params['hospital']] = [
+            'city' => $params['city'] ?? '',
+            'agent'=>'',
+            'dates'=>''
+        ];
+        $list = $data + $list;//array_merge($data,$list);
+
+        try{
+            SysConfig::where('config_key','app-system-hospital')->update(['config_value_json'=>json_encode($list)]);
+
+            return json_success('添加医院成功');
+        }catch(\Exception $e){
+            return json_fail("添加医院失败");
+        }
+    }
+
+    public function update(Request $request){
+        $config = SysConfig::where('config_key','app-system-hospital')->first();
+        if(!$config){
+            return json_fail("数据异常");
+        }
+        $params = $request->post();
+
+        $list = json_decode($config->config_value_json,true);
+        if(isset($list[$params['hospital']])){
+            return json_fail('医院已存在');
+        }
+        $data[$params['hospital']] = [
+            'city' => $params['city'] ?? '',
+            'agent'=>'',
+            'dates'=>''
+        ];
+        array_unshift($list,$data);
+
+        dump($list);
+    }
+
+    public function delete(Request $request){
+        $hospital = $request->post('hospital','');
+        if(!$hospital){
+            return json_fail("参数异常");
+        }
+
+        $config = SysConfig::where('config_key','app-system-hospital')->first();
+        if(!$config){
+            return json_fail("数据异常");
+        }
+        $params = $request->post();
+
+        $list = json_decode($config->config_value_json,true);
+        if (!isset($list[$hospital])){
+            return json_fail('医院不存在');
+        }
+
+        unset($list[$hospital]);
+        
+        try{
+            SysConfig::where('config_key','app-system-hospital')->update(['config_value_json'=>json_encode($list)]);
+
+            return json_success('删除医院成功');
+        }catch(\Exception $e){
+            return json_fail("删除医院失败");
+        }
+    }
 }

+ 3 - 3
route/admin.php

@@ -104,9 +104,9 @@ Route::group('/admin', function () {
         /* 绿通医院 */
         Route::group('/greenChannel', function () {
             Route::get('/list', [\app\admin\controller\sys_manage\GreenChannelController::class, 'select']);
-            // Route::post('/add', [\app\admin\controller\sys_manage\GreenChannelController::class, 'insert']);
-            // Route::post('/update', [\app\admin\controller\sys_manage\GreenChannelController::class, 'update']);
-            // Route::delete('/delete', [\app\admin\controller\sys_manage\GreenChannelController::class, 'delete']);
+            Route::post('/add', [\app\admin\controller\sys_manage\GreenChannelController::class, 'insert']);
+            Route::post('/update', [\app\admin\controller\sys_manage\GreenChannelController::class, 'update']);
+            Route::delete('/delete', [\app\admin\controller\sys_manage\GreenChannelController::class, 'delete']);
         })->middleware([
             \app\middleware\AdminAuthCheck::class
         ]);