From 1a824e87fd2868dd0233a2e130c5aefe4929b84e Mon Sep 17 00:00:00 2001 From: tanghucheng Date: Fri, 10 May 2024 16:09:04 +0800 Subject: [PATCH] * * Optimized module code. --- module/execution/model.php | 5 ++++- module/programplan/control.php | 3 +++ module/programplan/zen.php | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/module/execution/model.php b/module/execution/model.php index 3e0301bb6e..df2822d2aa 100755 --- a/module/execution/model.php +++ b/module/execution/model.php @@ -1247,6 +1247,9 @@ class executionModel extends model } if(dao::isError()) return; + $project->begin = !empty($project->realBegan) ? $project->realBegan : $project->begin; + $project->end = !empty($project->realEnd) ? $project->realEnd : $project->end; + if($begin < $project->begin) dao::$errors['begin'] = sprintf($this->lang->execution->errorCommonBegin, $project->begin); if($end > $project->end) dao::$errors['end'] = sprintf($this->lang->execution->errorCommonEnd, $project->end); } @@ -3854,7 +3857,7 @@ class executionModel extends model $action = strtolower($action); if($action == 'start') return $execution->status == 'wait'; - if($action == 'close') return $execution->status != 'closed' && (!empty($execution->isIpdStage) || !isset($execution->isParent) || (isset($execution->isParent) && !$execution->isParent)); + if($action == 'close') return $execution->status != 'closed' && (!empty($execution->isIpdStage) || (!isset($execution->isParent) || (isset($execution->isParent) && !$execution->isParenti))); if($action == 'suspend') return $execution->status == 'wait' || $execution->status == 'doing'; if($action == 'putoff') return $execution->status == 'wait' || $execution->status == 'doing'; if($action == 'activate') return $execution->status == 'suspended' || $execution->status == 'closed'; diff --git a/module/programplan/control.php b/module/programplan/control.php index 71e3234fb3..e61976557d 100644 --- a/module/programplan/control.php +++ b/module/programplan/control.php @@ -175,6 +175,9 @@ class programplan extends control if($parentStage->attribute != 'mix') $plan->attribute = $parentStage->attribute; } + if(empty($plan->realBegan)) $plan->realBegan = null; + if(empty($plan->realEnd)) $plan->realEnd = null; + $plan = $this->programplanZen->prepareEditPlan($planID, $projectID, $plan, isset($parentStage) ? $parentStage : null); if(dao::isError()) return $this->send(array('result' => 'fail', 'message' => dao::getError())); diff --git a/module/programplan/zen.php b/module/programplan/zen.php index 4d6ef21b36..268ae9953b 100644 --- a/module/programplan/zen.php +++ b/module/programplan/zen.php @@ -187,6 +187,7 @@ class programplanZen extends programplan } } + if(dao::isError()) return false; /* 如果是调研阶段,设置默认值。*/ /* If it is research stage, set default value. */ if($project->model == 'research')