* [bug#54326,done,1.5h] Skip required fields check.

This commit is contained in:
hufangzhou
2024-09-05 10:21:22 +08:00
committed by 刘刚
parent dd8a28293b
commit 2f9cb088f5
3 changed files with 38 additions and 7 deletions
+3 -5
View File
@@ -23,8 +23,6 @@ class programplanZen extends programplan
{
$beginIsZeroDate = helper::isZeroDate($plan->begin);
$endIsZeroDate = helper::isZeroDate($plan->end);
if($beginIsZeroDate) dao::$errors["begin[{$rowID}]"] = $this->lang->programplan->emptyBegin;
if($endIsZeroDate) dao::$errors["end[{$rowID}]"] = $this->lang->programplan->emptyEnd;
if(!$beginIsZeroDate and !$endIsZeroDate and $plan->end < $plan->begin) dao::$errors["end[{$rowID}]"] = $this->lang->programplan->error->planFinishSmall;
if(!empty($parent))
@@ -64,7 +62,7 @@ class programplanZen extends programplan
foreach($plans as $rowID => $plan)
{
if(empty($parentID) and empty($oldPlans)) $plan->id = '';
$plan->days = $this->calcDaysForStage($plan->begin, $plan->end);
$plan->days = isset($plan->enabled) && $plan->enabled == 'on' ? $this->calcDaysForStage($plan->begin, $plan->end) : 0;
$plan->project = $projectID;
$plan->parent = $parentID ? $parentID : $projectID;
$plan->order = (int)array_shift($orders);
@@ -74,7 +72,7 @@ class programplanZen extends programplan
if(in_array($this->config->edition, array('max', 'ipd')) && !dao::isError())
{
$plan->planDuration = $this->programplan->getDuration($plan->begin, $plan->end);
$plan->planDuration = $this->programplan->getDuration((string)$plan->begin, (string)$plan->end);
$plan->realDuration = $this->programplan->getDuration((string)$plan->realBegan, (string)$plan->realEnd);
}
@@ -83,7 +81,7 @@ class programplanZen extends programplan
/* Check duplicated names to avoid to save same names. */
if(in_array($plan->name, $names)) dao::$errors["name[{$rowID}]"] = empty($plan->type) ? $this->lang->programplan->error->sameName : str_replace($this->lang->execution->stage, '', $this->lang->programplan->error->sameName);
if(isset($plan->code))
if(isset($plan->code) && (!isset($plan->enabled) || (isset($plan->enabled) && $plan->enabled == 'on')))
{
if(in_array($plan->code, $codes)) dao::$errors["code[{$rowID}]"] = sprintf($this->lang->error->repeat, $plan->type == 'stage' ? $this->lang->execution->code : $this->lang->code, $plan->code);
if(!empty($this->config->setCode) && empty($plan->code) && strpos(",{$this->config->execution->create->requiredFields},", ',code,') !== false) dao::$errors["code[{$rowID}]"] = sprintf($this->lang->error->notempty, $plan->type == 'stage' ? $this->lang->execution->code : $this->lang->code);