From a2e580b276316d8b98df205b42dbcbdce3ae8eea Mon Sep 17 00:00:00 2001 From: yanzai Date: Thu, 22 Aug 2024 22:41:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A5=97=E9=A4=90=E9=80=82=E7=94=A8=E4=BA=BA?= =?UTF-8?q?=E7=BE=A4=EF=BC=8C=E5=8F=82=E6=95=B0=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../API/Admin/ConfigController.php | 21 ++++-- .../API/Admin/YeWu/ComboController.php | 6 +- .../API/Admin/YeWu/ComboCrowdController.php | 17 +++++ Laravel/app/Services/ConfigService.php | 32 +++++---- Laravel/routes/api.php | 1 + admin/src/api/api.js | 5 ++ admin/src/views/ComboMngr/Combo.vue | 24 ++++++- admin/src/views/Login.vue | 37 +++++----- admin/src/views/SystemMngr/SystemConfig.vue | 69 ++++++++++++++----- 9 files changed, 155 insertions(+), 57 deletions(-) create mode 100644 Laravel/app/Http/Controllers/API/Admin/YeWu/ComboCrowdController.php diff --git a/Laravel/app/Http/Controllers/API/Admin/ConfigController.php b/Laravel/app/Http/Controllers/API/Admin/ConfigController.php index 57ae4d1..a26cd1e 100644 --- a/Laravel/app/Http/Controllers/API/Admin/ConfigController.php +++ b/Laravel/app/Http/Controllers/API/Admin/ConfigController.php @@ -10,14 +10,23 @@ class ConfigController extends Controller { //获取站点配置信息 - public function GetConfigInfo(){ + public function GetConfigInfo(Request $request){ + $userid = $request->get('userid');//中间件产生的参数 + $group=$request->get('role'); + $is_admin=false; + if(in_array($group,[1])){ + $is_admin=true; + } $configs = new ConfigService(); - return $configs->GetConfigInfo(['站点名称','站点图片']); + return $configs->GetConfigInfo(['站点名称','站点图片'],$is_admin); } public function SaveConfig(){ - $name = request('name'); - $logo = request('logo'); - $configs = new ConfigService(); - return $configs->SaveConfig($name,$logo); + + $data = request('data'); + if(count($data)>0){ + $configs = new ConfigService(); + return $configs->SaveConfig($data); + } + } } diff --git a/Laravel/app/Http/Controllers/API/Admin/YeWu/ComboController.php b/Laravel/app/Http/Controllers/API/Admin/YeWu/ComboController.php index 0aebee6..e702588 100644 --- a/Laravel/app/Http/Controllers/API/Admin/YeWu/ComboController.php +++ b/Laravel/app/Http/Controllers/API/Admin/YeWu/ComboController.php @@ -106,9 +106,10 @@ class ComboController extends Controller $pageSize = request('pageSize'); $searchInfo = request('searchInfo'); $list=DB::table('combos') - ->select('combos.*','hospitals.name as hospital_name','combo_type.name as combo_type_name') + ->select('combos.*','hospitals.name as hospital_name','combo_type.name as combo_type_name','combo_crowd.name as combo_crowd_name') ->leftJoin('hospitals','hospitals.id','=','combos.hospital_id') - ->leftJoin('combo_type','combos.type_id','=','combo_type.id'); + ->leftJoin('combo_type','combos.type_id','=','combo_type.id') + ->leftJoin('combo_crowd','combos.crowd_id','=','combo_crowd.id'); if(isset($searchInfo['name'])){ $list = $list->where('combos.name', 'like', '%' . $searchInfo['name'] . '%'); @@ -137,6 +138,7 @@ class ComboController extends Controller $Info = request('Info'); $u=DB::table('combos')->where(['id'=>$Info['id']])->update([ 'type_id'=>$Info['type_id'], + 'crowd_id'=>$Info['crowd_id'], 'tags'=>isset($Info['tags'])?json_encode($Info['tags'],JSON_UNESCAPED_UNICODE):[], 'cover'=>$Info['cover'], 'intro'=>$Info['intro'], diff --git a/Laravel/app/Http/Controllers/API/Admin/YeWu/ComboCrowdController.php b/Laravel/app/Http/Controllers/API/Admin/YeWu/ComboCrowdController.php new file mode 100644 index 0000000..27fbc82 --- /dev/null +++ b/Laravel/app/Http/Controllers/API/Admin/YeWu/ComboCrowdController.php @@ -0,0 +1,17 @@ +get(); + return \Yz::Return(true,'查询成功',['list'=>$list]); + } +} diff --git a/Laravel/app/Services/ConfigService.php b/Laravel/app/Services/ConfigService.php index ced8996..53b1f97 100644 --- a/Laravel/app/Services/ConfigService.php +++ b/Laravel/app/Services/ConfigService.php @@ -7,8 +7,14 @@ class ConfigService { //获取配置信息 - public function GetConfigInfo($arr){ - $q=DB::table('configs')->select(['label','value'])->whereIn('label',$arr)->get(); + public function GetConfigInfo($arr,$is_admin=false){ + $q=DB::table('configs')->select(['label','value']); + if($is_admin){ + + }else{ + $q=$q->whereIn('label',$arr); + } + $q=$q->get(); if(count($q)>0) { $result = []; foreach ($q as $k => $v) { @@ -19,19 +25,19 @@ class ConfigService return \Yz::Return(false, '查询失败'); } } - public function SaveConfig($name,$logo){ - $result=array(); - DB::beginTransaction(); - try { - $d= DB::table('configs')->where('label', '=', '站点名称')->update(['value'=>$name]); - $d= DB::table('configs')->where('label', '=', '站点图片')->update(['value'=>$logo]); - DB::commit(); // 手动提交事务 - return \Yz::Return(true, '操作成功'); - } catch (\Exception $e) { - DB::rollback(); // 发生异常时手动回滚事务 - return \Yz::Return(false, '操作失败'); + public function SaveConfig($data){ + foreach ($data as $key=>$item){ + $u=DB::table('configs')->where('label', '=', $key)->update(['value'=>$item]); + } + if($u){ + return \Yz::Return(true, '操作成功'); + }else{ + return \Yz::Return(false, '操作失败'); } + + + } } diff --git a/Laravel/routes/api.php b/Laravel/routes/api.php index 58bf2b8..5959fc7 100644 --- a/Laravel/routes/api.php +++ b/Laravel/routes/api.php @@ -74,6 +74,7 @@ Route::group(['middleware' => ['checktoken', 'log'], 'prefix' => 'v1'], function Route::post('admin/GetBaseInfoDetail', 'App\Http\Controllers\API\Admin\YeWu\HospitalController@GetBaseInfoDetail'); Route::post('admin/SaveCacheInfo', 'App\Http\Controllers\API\Admin\YeWu\HospitalController@SaveCacheInfo'); Route::post('admin/ComboTypeGetList', 'App\Http\Controllers\API\Admin\YeWu\ComboTypeController@GetList');//套餐类型列表 + Route::post('admin/ComboCrowdGetList', 'App\Http\Controllers\API\Admin\YeWu\ComboCrowdController@GetList');//套餐适应人群 }); diff --git a/admin/src/api/api.js b/admin/src/api/api.js index be001c8..4022f7c 100644 --- a/admin/src/api/api.js +++ b/admin/src/api/api.js @@ -203,4 +203,9 @@ export const SaveCacheInfo = (data={}) => { //获取套餐类型 export const ComboTypeGetList = (data={}) => { return axios({url:import.meta.env.VITE_APP_API+'v1/admin/ComboTypeGetList',data:data}) +} + +//获取套餐适用人群 +export const ComboCrowdGetList = (data={}) => { + return axios({url:import.meta.env.VITE_APP_API+'v1/admin/ComboCrowdGetList',data:data}) } \ No newline at end of file diff --git a/admin/src/views/ComboMngr/Combo.vue b/admin/src/views/ComboMngr/Combo.vue index f8abff9..2003451 100644 --- a/admin/src/views/ComboMngr/Combo.vue +++ b/admin/src/views/ComboMngr/Combo.vue @@ -13,6 +13,7 @@ + @@ -54,7 +88,7 @@ //上传成功钩子 const upLoadSuccess = (res) => { logo.value = import.meta.env.VITE_APP_FILE + res.data - configInfo.value.logo = res.data + configInfo.value.站点图片 = res.data } //获取配置信息 const GetConfig=()=>{ @@ -62,23 +96,20 @@ GetConfigInfo().then(res => { loading.value=false if(res.status){ - configInfo.value.name=res.data.站点名称 - configInfo.value.logo=res.data.站点图片 - logo.value=import.meta.env.VITE_APP_FILE+configInfo.value.logo + configInfo.value=res.data + + logo.value=import.meta.env.VITE_APP_FILE+configInfo.value.站点图片 } }) } //修改信息 let configInfo=ref({ - name:'', - logo:'' + }); - const saveInfo = () => { + const saveInfo = (name) => { + let data={[name]:configInfo.value[name]} loading.value=true - SaveConfigInfo({ - 'name': configInfo.value.name, - 'logo': configInfo.value.logo - }).then(res => { + SaveConfigInfo({data:data}).then(res => { loading.value=false if (res.status) { ElMessage({ @@ -86,7 +117,7 @@ type: 'success', }) setTimeout(()=>{ - location.reload(); + //location.reload(); },500) } else { ElMessage.error(res.msg)