diff --git a/application/admin/controller/Granary.php b/application/admin/controller/Granary.php index a068267..ddde372 100644 --- a/application/admin/controller/Granary.php +++ b/application/admin/controller/Granary.php @@ -99,6 +99,26 @@ class Granary extends Backend { $data = $this->request->post(); if (!empty($data)) { + $content = isset($data['content']) && is_array($data['content']) ? $data['content'] : []; + $position = isset($content['screenPosition']) ? $content['screenPosition'] : ''; + $positions = \app\common\library\GranaryScreen::extraPositions(); + if ($position !== '' && !isset($positions[$position])) { + return json(['code' => 400, 'msg' => '请选择有效的大屏建筑位置']); + } + if ($position !== '') { + if (strpos($data['storage'], '习水') !== false) { + return json(['code' => 400, 'msg' => '此建筑位置属于中心库区']); + } + foreach ($this->model->field('id,content')->select() as $existing) { + $saved = $existing['content']; + if (!is_array($saved)) $saved = json_decode($saved, true); + if ((string)$existing['id'] !== (string)(isset($data['id']) ? $data['id'] : 0) + && isset($saved['screenPosition']) && $saved['screenPosition'] === $position) { + return json(['code' => 400, 'msg' => '此建筑已绑定仓库,请编辑对应仓库或选择其他位置']); + } + } + } + $data['content'] = $content; $id = $this->model->where(['num' => $data['num']])->value('id'); if (isset($data['granary_type']) && in_array(intval($data['granary_type']), [1, 2])) { $data['granary_type'] = intval($data['granary_type']); diff --git a/application/admin/controller/Testing.php b/application/admin/controller/Testing.php index 51b2489..6c23e2b 100644 --- a/application/admin/controller/Testing.php +++ b/application/admin/controller/Testing.php @@ -113,6 +113,10 @@ class Testing extends Backend if (!empty($data)) { $content = $data['content']; $date = $data['record_date']; + $ruleError = \app\common\library\QualityRule::validate($content); + if ($ruleError !== '') { + return json(['code' => 400, 'msg' => $ruleError]); + } // 添加 if (empty($data['id'])) { diff --git a/application/admin/view/granary/index.html b/application/admin/view/granary/index.html index 0023aba..1bd9015 100644 --- a/application/admin/view/granary/index.html +++ b/application/admin/view/granary/index.html @@ -270,6 +270,14 @@ + + + + + + +
新仓库请选择对应建筑;现有标记可直接修改仓号,保存后大屏自动同步。
+
立式油罐 (油类) diff --git a/application/admin/view/testing/index.html b/application/admin/view/testing/index.html index aeeb803..88f57e5 100644 --- a/application/admin/view/testing/index.html +++ b/application/admin/view/testing/index.html @@ -35,6 +35,16 @@ .search-select .el-input--suffix .el-input__inner { width: 130px; } + + .quality-direction-toggle { + display: inline-flex; + flex-wrap: nowrap; + } + + .quality-direction-toggle .el-button { + padding-left: 8px; + padding-right: 8px; + }
@@ -214,39 +224,63 @@ +

数值指标请选择“越大越好”或“越小越好”。绿色为达标、黄色为预警、红色为警告;等于阈值时归入较低一级,保存后对大屏生效。

- - - - + + +