diff --git a/module/stage/config.php b/module/stage/config.php
new file mode 100644
index 0000000000..f77eb68cd9
--- /dev/null
+++ b/module/stage/config.php
@@ -0,0 +1,5 @@
+stage->create = new stdclass();
+$config->stage->edit = new stdclass();
+$config->stage->create->requiredFields = 'name,percent,type';
+$config->stage->edit->requiredFields = 'name,percent,type';
diff --git a/module/stage/lang/zh-cn.php b/module/stage/lang/zh-cn.php
index 93141532d0..1911adaf2a 100644
--- a/module/stage/lang/zh-cn.php
+++ b/module/stage/lang/zh-cn.php
@@ -21,7 +21,7 @@ $lang->stage->view = '阶段详情';
$lang->stage->common = '阶段';
$lang->stage->id = '编号';
$lang->stage->name = '阶段名称';
-$lang->stage->type = '阶段分类';
+$lang->stage->type = '阶段类型';
$lang->stage->percent = '工作量占比';
$lang->stage->setType = '阶段类型';
diff --git a/module/stage/model.php b/module/stage/model.php
index 1d5ce8264e..564730200d 100644
--- a/module/stage/model.php
+++ b/module/stage/model.php
@@ -34,6 +34,7 @@ class stageModel extends model
$this->dao->insert(TABLE_STAGE)
->data($stage)
->autoCheck()
+ ->batchCheck($this->config->stage->create->requiredFields, 'notempty')
->checkIF($stage->percent != '', 'percent', 'float')
->exec();
@@ -67,7 +68,10 @@ class stageModel extends model
$stage->createdBy = $this->app->user->account;
$stage->createdDate = helper::today();
- $this->dao->insert(TABLE_STAGE)->data($stage)->autoCheck()->checkIF($stage->percent != '', 'percent', 'float')->exec();
+ $this->dao->insert(TABLE_STAGE)->data($stage)->autoCheck()
+ ->batchCheck($this->config->stage->create->requiredFields, 'notempty')
+ ->checkIF($stage->percent != '', 'percent', 'float')
+ ->exec();
if(dao::isError()) return false;
@@ -98,7 +102,12 @@ class stageModel extends model
if(round($totalPercent + $stage->percent - $oldStage->percent) > 100) return dao::$errors['message'][] = $this->lang->stage->error->percentOver;
- $this->dao->update(TABLE_STAGE)->data($stage)->autoCheck()->checkIF($stage->percent != '', 'percent', 'float')->where('id')->eq((int)$stageID)->exec();
+ $this->dao->update(TABLE_STAGE)
+ ->data($stage)
+ ->autoCheck()
+ ->batchCheck($this->config->stage->edit->requiredFields, 'notempty')
+ ->checkIF($stage->percent != '', 'percent', 'float')->where('id')->eq((int)$stageID)
+ ->exec();
if(!dao::isError()) return common::createChanges($oldStage, $stage);
return false;
diff --git a/module/stage/view/batchcreate.html.php b/module/stage/view/batchcreate.html.php
index e60dd0b829..4cef8fde8e 100644
--- a/module/stage/view/batchcreate.html.php
+++ b/module/stage/view/batchcreate.html.php
@@ -11,6 +11,7 @@
*/
?>
+
stage->batchCreate;?>
@@ -19,10 +20,10 @@