Files
zimoyin 13fd9c5f0a init
2026-04-06 20:48:32 +08:00

73 lines
2.0 KiB
PHP

<?php
namespace plugin\admin\app\controller;
use plugin\admin\app\model\OpmDsDevice;
use plugin\admin\app\model\OpmDsWarnRule;
use plugin\admin\app\model\OpmMwHospital;
use plugin\admin\app\repository\WarnRuleRepository;
use support\Request;
use support\Response;
/**
* 报警规则管理
*/
class WarnRuleController extends Crud
{
use WithDataPermission;
/**
* @var OpmDsWarnRule
*/
protected $model = null;
private WarnRuleRepository $repository;
public function __construct()
{
$this->model = new OpmDsWarnRule;
$this->repository = WarnRuleRepository::new();
}
public function index(): Response
{
return raw_view('warn-rule/index');
}
public function insert(Request $request): Response
{
if ($request->method() === 'POST') {
return parent::insert($request);
}
return raw_view('warn-rule/insert');
}
public function update(Request $request): Response
{
if ($request->method() === 'POST') {
return parent::update($request);
}
return raw_view('warn-rule/update');
}
protected function afterQuery($items)
{
$typeMap = [1 => '温度', 2 => '压力', 3 => '时间'];
$levelMap = [1 => '初级', 2 => '中级', 3 => '高级'];
$noticeTypeMap = [1 => '短信', 2 => '电话', 3 => '微信'];
$isOpenMap = [1 => '开启', 2 => '关闭'];
foreach ($items as &$item) {
$hospital = OpmMwHospital::find($item->hospital_id);
$device = OpmDsDevice::find($item->device_id);
$item->hospital_name = $hospital->organ_name ?? '未知';
$item->device_name = $device->name ?? '未知';
$item->type_text = $typeMap[$item->type] ?? '未知';
$item->level_text = $levelMap[$item->level] ?? '未知';
$item->notice_type_text = $noticeTypeMap[$item->notice_type] ?? '未知';
$item->is_open_text = $isOpenMap[$item->is_open] ?? '未知';
}
return $items;
}
}