Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
GeoFlyApi
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
GeoFly
GeoFlyApi
Commits
26fb654f
Commit
26fb654f
authored
Apr 12, 2025
by
gdj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加任务统计接口和今日任务接口。
parent
744cfdef
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
175 additions
and
0 deletions
+175
-0
sample/src/main/java/com/dji/sample/wayline/controller/WaylineJobController.java
+31
-0
sample/src/main/java/com/dji/sample/wayline/model/dto/TaskSceneStatisticDTO.java
+19
-0
sample/src/main/java/com/dji/sample/wayline/model/dto/TaskStatisticDTO.java
+33
-0
sample/src/main/java/com/dji/sample/wayline/model/dto/TaskStatusStatisticDTO.java
+19
-0
sample/src/main/java/com/dji/sample/wayline/model/dto/WaylineJobDTO.java
+7
-0
sample/src/main/java/com/dji/sample/wayline/model/entity/WaylineJobEntity.java
+7
-0
sample/src/main/java/com/dji/sample/wayline/model/enums/TaskSceneEnum.java
+41
-0
sample/src/main/java/com/dji/sample/wayline/service/IWaylineJobService.java
+18
-0
sample/src/main/java/com/dji/sample/wayline/service/impl/WaylineJobServiceImpl.java
+0
-0
No files found.
sample/src/main/java/com/dji/sample/wayline/controller/WaylineJobController.java
View file @
26fb654f
package
com
.
dji
.
sample
.
wayline
.
controller
;
import
com.dji.sample.common.model.CustomClaim
;
import
com.dji.sample.wayline.model.dto.TaskStatisticDTO
;
import
com.dji.sample.wayline.model.dto.WaylineJobDTO
;
import
com.dji.sample.wayline.model.param.CreateJobParam
;
import
com.dji.sample.wayline.model.param.UpdateJobParam
;
...
...
@@ -14,6 +15,7 @@ import org.springframework.web.bind.annotation.*;
import
javax.servlet.http.HttpServletRequest
;
import
javax.validation.Valid
;
import
java.sql.SQLException
;
import
java.util.List
;
import
java.util.Set
;
import
static
com
.
dji
.
sample
.
component
.
AuthInterceptor
.
TOKEN_CLAIM
;
...
...
@@ -100,4 +102,33 @@ public class WaylineJobController {
flighttaskService
.
updateJobStatus
(
workspaceId
,
jobId
,
param
);
return
HttpResultResponse
.
success
();
}
/**
* 统计数据
* @param workspaceId
* @return
*/
@GetMapping
(
"/{workspace_id}/jobs/statistics"
)
public
HttpResultResponse
<
List
<
TaskStatisticDTO
>>
getTaskStatistics
(
@PathVariable
(
name
=
"workspace_id"
)
String
workspaceId
,
@RequestParam
(
name
=
"time_type"
,
defaultValue
=
"0"
)
Integer
timeType
)
{
List
<
TaskStatisticDTO
>
dto
=
waylineJobService
.
getTaskStatistics
(
workspaceId
,
timeType
);
return
HttpResultResponse
.
success
(
dto
);
}
/**
* 今日任务
* @param page
* @param pageSize
* @param workspaceId
* @return
*/
@GetMapping
(
"/{workspace_id}/todayJobs"
)
public
HttpResultResponse
<
PaginationData
<
WaylineJobDTO
>>
getTodayJobs
(
@RequestParam
(
defaultValue
=
"1"
)
Long
page
,
@RequestParam
(
name
=
"page_size"
,
defaultValue
=
"10"
)
Long
pageSize
,
@RequestParam
(
name
=
"dock_sns"
,
required
=
false
)
String
dockSns
,
@PathVariable
(
name
=
"workspace_id"
)
String
workspaceId
)
{
PaginationData
<
WaylineJobDTO
>
data
=
waylineJobService
.
getTodayJobsByWorkspaceId
(
workspaceId
,
dockSns
,
page
,
pageSize
);
return
HttpResultResponse
.
success
(
data
);
}
}
sample/src/main/java/com/dji/sample/wayline/model/dto/TaskSceneStatisticDTO.java
0 → 100644
View file @
26fb654f
package
com
.
dji
.
sample
.
wayline
.
model
.
dto
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* @author guan
*/
@Data
public
class
TaskSceneStatisticDTO
implements
Serializable
{
private
Integer
taskScene
;
private
String
taskSceneName
;
private
Integer
count
;
}
sample/src/main/java/com/dji/sample/wayline/model/dto/TaskStatisticDTO.java
0 → 100644
View file @
26fb654f
package
com
.
dji
.
sample
.
wayline
.
model
.
dto
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.List
;
/**
* @author guan
*/
@Data
public
class
TaskStatisticDTO
implements
Serializable
{
String
date
;
Integer
count
;
Integer
finishCount
;
Integer
unfinishCount
;
//
/**
* 任务状态统计
*/
List
<
TaskStatusStatisticDTO
>
statusList
;
/**
* 任务起飞类型统计
*/
List
<
TaskSceneStatisticDTO
>
sceneList
;
}
sample/src/main/java/com/dji/sample/wayline/model/dto/TaskStatusStatisticDTO.java
0 → 100644
View file @
26fb654f
package
com
.
dji
.
sample
.
wayline
.
model
.
dto
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* @author guan
*/
@Data
public
class
TaskStatusStatisticDTO
implements
Serializable
{
Integer
taskStatus
;
String
taskStatusName
;
Integer
count
;
}
sample/src/main/java/com/dji/sample/wayline/model/dto/WaylineJobDTO.java
View file @
26fb654f
package
com
.
dji
.
sample
.
wayline
.
model
.
dto
;
import
com.dji.sample.wayline.model.enums.TaskSceneEnum
;
import
com.dji.sdk.cloudapi.wayline.OutOfControlActionEnum
;
import
com.dji.sdk.cloudapi.wayline.TaskTypeEnum
;
import
com.dji.sdk.cloudapi.wayline.WaylineTypeEnum
;
...
...
@@ -68,4 +69,10 @@ public class WaylineJobDTO {
private
WaylineTaskConditionDTO
conditions
;
private
String
parentId
;
/**
* 起飞类型
*/
private
TaskSceneEnum
taskScene
;
}
sample/src/main/java/com/dji/sample/wayline/model/entity/WaylineJobEntity.java
View file @
26fb654f
...
...
@@ -82,4 +82,11 @@ public class WaylineJobEntity implements Serializable {
@TableField
(
"parent_id"
)
private
String
parentId
;
/**
* 任务起飞类型
*/
@TableField
(
"task_scene"
)
private
Integer
taskScene
;
}
sample/src/main/java/com/dji/sample/wayline/model/enums/TaskSceneEnum.java
0 → 100644
View file @
26fb654f
package
com
.
dji
.
sample
.
wayline
.
model
.
enums
;
import
com.fasterxml.jackson.annotation.JsonCreator
;
import
com.fasterxml.jackson.annotation.JsonValue
;
import
lombok.Getter
;
import
java.util.Arrays
;
import
java.util.Optional
;
/**
* 任务创建原因
* @author guan
*/
@Getter
public
enum
TaskSceneEnum
{
MODEL_TASK
(
0
,
"建模任务"
),
ROUTINE_PATROL_TASK
(
1
,
"常规巡查任务"
),
TEMPORARY_TAKEOFF_TASK
(
2
,
"临时起飞任务"
);
int
scene
;
String
sceneName
;
TaskSceneEnum
(
int
scene
,
String
sceneName
)
{
this
.
scene
=
scene
;
this
.
sceneName
=
sceneName
;
}
@JsonCreator
(
mode
=
JsonCreator
.
Mode
.
DELEGATING
)
public
static
TaskSceneEnum
find
(
Integer
scene
)
{
return
Arrays
.
stream
(
values
()).
filter
(
taskSceneEnum
->
taskSceneEnum
.
scene
==
scene
).
findAny
().
get
();
}
public
static
Optional
<
TaskSceneEnum
>
find
(
String
sceneName
)
{
return
Arrays
.
stream
(
values
()).
filter
(
taskSceneEnum
->
taskSceneEnum
.
sceneName
.
equals
(
sceneName
)).
findAny
();
}
}
sample/src/main/java/com/dji/sample/wayline/service/IWaylineJobService.java
View file @
26fb654f
package
com
.
dji
.
sample
.
wayline
.
service
;
import
com.dji.sample.wayline.model.dto.TaskStatisticDTO
;
import
com.dji.sample.wayline.model.dto.WaylineJobDTO
;
import
com.dji.sample.wayline.model.enums.WaylineJobStatusEnum
;
import
com.dji.sample.wayline.model.param.CreateJobParam
;
...
...
@@ -79,9 +80,26 @@ public interface IWaylineJobService {
PaginationData
<
WaylineJobDTO
>
getJobsByWorkspaceId
(
String
workspaceId
,
String
dockSns
,
long
page
,
long
pageSize
);
/**
* 今日任务
* @param workspaceId
* @param dockSns
* @param page
* @param pageSize
* @return
*/
PaginationData
<
WaylineJobDTO
>
getTodayJobsByWorkspaceId
(
String
workspaceId
,
String
dockSns
,
long
page
,
long
pageSize
);
/**
* Query the wayline execution status of the dock.
* @param dockSn
* @return
*/
WaylineJobStatusEnum
getWaylineState
(
String
dockSn
);
/**
* 统计任务数据
* @param workspaceId
*/
List
<
TaskStatisticDTO
>
getTaskStatistics
(
String
workspaceId
,
Integer
timeType
);
}
sample/src/main/java/com/dji/sample/wayline/service/impl/WaylineJobServiceImpl.java
View file @
26fb654f
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment