Kaynağa Gözat

approval status

lsm12139 3 hafta önce
ebeveyn
işleme
6c6cdaf9a3

+ 10 - 0
app/Http/Controllers/API/FolderController.php

@@ -9,6 +9,7 @@ use App\Http\Resources\API\FileByObjectResource;
 use App\Http\Resources\API\FileVersioTreeByObjectResource;
 use App\Http\Resources\API\FolderDetailResource;
 use App\Models\Enums\FolderObjectType;
+use App\Models\Enums\ObjectApprovalStatus;
 use App\Models\File;
 use App\Models\Folder;
 use App\Models\Library;
@@ -324,6 +325,15 @@ class FolderController extends Controller
             //因为要接着文件夹进行文件id递增
             $folderCount=$folders->count()+1;
             $files->map(function (File $file) use (&$folderCount) {
+                $file->approval_status = match ($file->approval_status) {
+                    ObjectApprovalStatus::WAIT->value => 'Not Submitted',
+                    ObjectApprovalStatus::DOING->value => 'Pending for Approval',
+                    ObjectApprovalStatus::APPROVED->value => 'A-Approved & B-Approved w/comment',
+                    ObjectApprovalStatus::REJECTED->value => 'D-Rejected',
+                    ObjectApprovalStatus::CANCELED->value => 'Cancelled',
+                    ObjectApprovalStatus::RESUBMISSION->value => "C-Resubmission Reg'd",
+                    default => 'Not Submitted'
+                };
                 $file->display_id=$folderCount++;
             });
         }else{

+ 10 - 1
app/Http/Resources/API/TaskResource.php

@@ -2,6 +2,7 @@
 
 namespace App\Http\Resources\API;
 
+use App\Models\Enums\ObjectApprovalStatus;
 use Illuminate\Http\Request;
 use Illuminate\Http\Resources\Json\JsonResource;
 
@@ -21,7 +22,15 @@ class TaskResource extends JsonResource
             "begin" => $this->begin,
             "end" => $this->end,
             "status" => $this->status,
-            'approval_status' => $this->approval_status,
+            'approval_status' =>  match ($this->approval_status) {
+                ObjectApprovalStatus::WAIT->value => 'Not Submitted',
+                ObjectApprovalStatus::DOING->value => 'Pending for Approval',
+                ObjectApprovalStatus::APPROVED->value => 'A-Approved & B-Approved w/comment',
+                ObjectApprovalStatus::REJECTED->value => 'D-Rejected',
+                ObjectApprovalStatus::CANCELED->value => 'Cancelled',
+                ObjectApprovalStatus::RESUBMISSION->value => "C-Resubmission Reg'd",
+                default => 'Not Submitted'
+            },
             "assign_to" => new UserProfileResource($this->assignTo),
             "created_by" => new UserProfileResource($this->createdBy),
             //"children" => TaskResource::collection($this->children),

+ 3 - 0
app/Models/Enums/ObjectApprovalStatus.php

@@ -13,4 +13,7 @@ enum ObjectApprovalStatus: string
     case REJECTED = 'rejected';
 
     case CANCELED = 'canceled'; //取消
+
+    case RESUBMISSION = 'resubmission'; //重新提交
+
 }