From b80ee8c883f279e843071e6b53ab9cddec3f88a0 Mon Sep 17 00:00:00 2001
From: 胡思旗 <931347610@qq.com>
Date: Tue, 29 Aug 2023 15:07:13 +0800
Subject: [PATCH] 登录流程对接、项目列表组件封装

---
 src/api/wayline.ts |   37 ++++++++++++++++++++++++++++++++++---
 1 files changed, 34 insertions(+), 3 deletions(-)

diff --git a/src/api/wayline.ts b/src/api/wayline.ts
index dfbeef3..a917804 100644
--- a/src/api/wayline.ts
+++ b/src/api/wayline.ts
@@ -42,7 +42,8 @@
   dock_sn: string,
   task_type: TaskType, // 任务类型
   wayline_type: WaylineType, // 航线类型
-  execute_time?: number // 执行时间(毫秒)
+  task_days?: number[] // 执行任务的日期(秒)
+  task_periods?: number[][] // 执行任务的时间点(秒)
   rth_altitude: number // 相对机场返航高度 20 - 500
   out_of_control_action: OutOfControlAction // 失控动作
 }
@@ -65,13 +66,18 @@
   dock_name: string,
   workspace_id: string,
   username: string,
-  execute_time: string,
+  begin_time: string,
   end_time: string,
+  execute_time: string,
+  completed_time: string,
   status: TaskStatus, // 任务状态
   progress: number, // 执行进度
   code: number, // 错误码
   rth_altitude: number // 相对机场返航高度 20 - 500
   out_of_control_action: OutOfControlAction // 失控动作
+  media_count: number // 媒体数量
+  uploading:boolean // 是否正在上传媒体
+  uploaded_count: number // 已上传媒体数量
 }
 
 // Get Wayline Jobs
@@ -85,11 +91,29 @@
   job_id: string
 }
 
-// 取消机场任务
+//  删除机场任务
 export async function deleteTask (workspaceId: string, params: DeleteTaskParams): Promise<IWorkspaceResponse<{}>> {
   const url = `${HTTP_PREFIX}/workspaces/${workspaceId}/jobs`
   const result = await request.delete(url, {
     params: params
+  })
+  return result.data
+}
+
+export enum UpdateTaskStatus {
+  Suspend = 0, // 暂停
+  Resume = 1, // 恢复
+}
+export interface UpdateTaskStatusBody {
+  job_id: string
+  status: UpdateTaskStatus
+}
+
+// 更新机场任务状态
+export async function updateTaskStatus (workspaceId: string, body: UpdateTaskStatusBody): Promise<IWorkspaceResponse<{}>> {
+  const url = `${HTTP_PREFIX}/workspaces/${workspaceId}/jobs/${body.job_id}`
+  const result = await request.put(url, {
+    status: body.status
   })
   return result.data
 }
@@ -104,3 +128,10 @@
   })
   return result.data
 }
+
+// 媒体立即上传
+export const uploadMediaFileNow = async function (workspaceId: string, jobId: string): Promise<IWorkspaceResponse<{}>> {
+  const url = `${HTTP_PREFIX}/workspaces/${workspaceId}/jobs/${jobId}/media-highest`
+  const result = await request.post(url)
+  return result.data
+}

--
Gitblit v1.9.3