From 611c6d415c252d6a614d34d677f348bf87f79348 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Sun, 27 Feb 2022 14:12:15 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E8=AE=B0=E5=BD=95=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E6=B5=81=E5=8F=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Models/ProjectTask.php | 8 ++++ app/Models/ProjectTaskFlowChange.php | 36 ++++++++++++++++++ ...create_project_task_flow_changes_table.php | 37 +++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100644 app/Models/ProjectTaskFlowChange.php create mode 100644 database/migrations/2022_02_27_112217_create_project_task_flow_changes_table.php diff --git a/app/Models/ProjectTask.php b/app/Models/ProjectTask.php index cfe8dd0d8..dc201d7ad 100644 --- a/app/Models/ProjectTask.php +++ b/app/Models/ProjectTask.php @@ -585,6 +585,14 @@ class ProjectTask extends AbstractModel 'flow' => $flowData, 'change' => [$currentFlowItem?->name, $newFlowItem->name] ]); + ProjectTaskFlowChange::createInstance([ + 'task_id' => $this->id, + 'userid' => User::userid(), + 'before_flow_item_id' => $flowData['flow_item_id'], + 'before_flow_item_name' => $flowData['flow_item_name'], + 'after_flow_item_id' => $this->flow_item_id, + 'after_flow_item_name' => $this->flow_item_name, + ])->save(); } // 状态 if (Arr::exists($data, 'complete_at')) { diff --git a/app/Models/ProjectTaskFlowChange.php b/app/Models/ProjectTaskFlowChange.php new file mode 100644 index 000000000..d371819b9 --- /dev/null +++ b/app/Models/ProjectTaskFlowChange.php @@ -0,0 +1,36 @@ +bigIncrements('id'); + $table->bigInteger('task_id')->nullable()->default(0)->comment('任务ID'); + $table->bigInteger('userid')->nullable()->default(0)->comment('会员ID'); + $table->bigInteger('before_item_id')->nullable()->default(0)->comment('(变化前)工作流状态ID'); + $table->string('before_item_name', 50)->nullable()->default('')->comment('(变化前)工作流状态名称'); + $table->bigInteger('after_item_id')->nullable()->default(0)->comment('(变化后)工作流状态ID'); + $table->string('after_item_name', 50)->nullable()->default('')->comment('(变化后)工作流状态名称'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::dropIfExists('project_task_flow_changes'); + } +}