1
0
Fork 0

完善预警设置保存

develop
vine_liutk 2023-05-19 10:56:31 +08:00
parent b99678f96e
commit e15ea3e8c7
3 changed files with 22 additions and 6 deletions

View File

@ -43,11 +43,13 @@ class WarningSettingController extends AdminController
]); ]);
} }
public function modeForm($type) private function modeForm($type)
{ {
//获取当前已设置警报内容 $formData = $formBody = $fields = [];
$formBody = $fields = []; //获取当前已设置警报内容
$data = settings()->get('mode_warning_'.$type);
$data && $formData = $data;
foreach(MonitorMode::fieldMap($type) as $field => $fieldName){ foreach(MonitorMode::fieldMap($type) as $field => $fieldName){
$fields[] = [ $fields[] = [
'label' => $fieldName, 'type'=>'number','step'=>'0.01','name'=>$field, 'label' => $fieldName, 'type'=>'number','step'=>'0.01','name'=>$field,
@ -56,15 +58,28 @@ class WarningSettingController extends AdminController
} }
foreach(WarningNotice::lvMap() as $lv => $lvName){ foreach(WarningNotice::lvMap() as $lv => $lvName){
$formData[str($lv).'.conjunction'] = 'or'; if(!isset($formData[str($lv).'.conjunction'] )){
$formData[str($lv).'.conjunction'] = 'or';
}
$formBody[] = amisMake()->ConditionBuilderControl(str($lv), $lvName)->fields( $fields); $formBody[] = amisMake()->ConditionBuilderControl(str($lv), $lvName)->fields( $fields);
} }
return \amisMake()->Form() return \amisMake()->Form()
->data($formData) ->data($formData)
->api(admin_url('warning-setting-save'))
->title('')->body(array_merge($formBody, [ ->title('')->body(array_merge($formBody, [
amisMake()->TextControl('type', '类别')->value($type)->hidden(true), amisMake()->TextControl('type', '类别')->value('mode_warning_'.$type)->hidden(true),
amis('submit')->label(__('admin.save'))->level('primary') amis('submit')->label(__('admin.save'))->level('primary')
]) ])
); );
} }
public function saveSettingConfig(Request $request){
$data = $request->input();
$key = $data['type'] ?? '';
if($key){
unset($data['type']);
return settings()->set($key, $data);
}
return false;
}
} }

View File

@ -48,6 +48,7 @@ Route::group([
//设备预警 //设备预警
$router->get('warning-setting', '\App\Admin\Controllers\WarningSettingController@settingIndex'); $router->get('warning-setting', '\App\Admin\Controllers\WarningSettingController@settingIndex');
$router->post('warning-setting-save', '\App\Admin\Controllers\WarningSettingController@saveSettingConfig');
$router->get('warning-notice', '\App\Admin\Controllers\WarningNoticeController@index'); $router->get('warning-notice', '\App\Admin\Controllers\WarningNoticeController@index');
//监测点位 //监测点位

View File

@ -16,7 +16,7 @@ class SettingSeeder extends Seeder
public function run() public function run()
{ {
$settings = [ $settings = [
['key' => 'rtsp_url', 'values' => json_encode('ws://117.176.117.148:8100/rtsp?url=')] ['key' => 'rtsp_url', 'values' => json_encode('ws://117.176.117.148:8100/rtsp?url=')],
]; ];
AdminSetting::truncate(); AdminSetting::truncate();
AdminSetting::insert($settings); AdminSetting::insert($settings);