From 57dd789df8d18ea89f5ea3dc40e67d011987baad Mon Sep 17 00:00:00 2001 From: liyang Date: Thu, 24 Oct 2024 13:20:45 +0800 Subject: [PATCH] * [task#131010] Add name check. --- module/host/model.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/module/host/model.php b/module/host/model.php index de9ad53976..915e229c3f 100644 --- a/module/host/model.php +++ b/module/host/model.php @@ -103,7 +103,11 @@ class hostModel extends model */ public function create(object $formData): bool { - $this->dao->insert(TABLE_HOST)->data($formData)->batchCheck($this->config->host->create->requiredFields, 'notempty')->autoCheck()->exec(); + $this->dao->insert(TABLE_HOST)->data($formData) + ->check('name', 'unique') + ->batchCheck($this->config->host->create->requiredFields, 'notempty') + ->autoCheck() + ->exec(); if(dao::isError()) return false; $hostID = $this->dao->lastInsertID(); @@ -125,7 +129,12 @@ class hostModel extends model if(empty($formData->id)) return false; $oldHost = $this->fetchByID($formData->id); - $this->dao->update(TABLE_HOST)->data($formData)->batchCheck($this->config->host->edit->requiredFields, 'notempty')->autoCheck()->where('id')->eq($formData->id)->exec(); + $this->dao->update(TABLE_HOST)->data($formData) + ->check('name', 'unique', '`id` != ' . $formData->id) + ->batchCheck($this->config->host->edit->requiredFields, 'notempty') + ->autoCheck() + ->where('id')->eq($formData->id) + ->exec(); if(dao::isError()) return false; $changes = common::createChanges($oldHost, $formData);