Browse Source

Merge remote-tracking branch 'origin/master'

S0025136190 1 year ago
parent
commit
1c8e2f3ba0

+ 21 - 21
Backend/cloud-sdk/src/main/java/com/dji/sdk/cloudapi/control/ControlErrorCodeEnum.java

@@ -13,48 +13,48 @@ import java.util.Arrays;
  */
 public enum ControlErrorCodeEnum implements IServicesErrorCode, IEventsErrorCode, IErrorInfo {
 
-    SETTING_RTH_FAILED(327000, "Height of return to home setting failed."),
+    SETTING_RTH_FAILED(327000, "返航高度设置失败,请稍候重试"),
 
-    SETTING_LOST_ACTION_FAILED(327001, "Signal lost action setting failed."),
+    SETTING_LOST_ACTION_FAILED(327001, "失联动作设置失败,请稍候重试"),
 
-    OBTAIN_CONTROL_FAILED(327002, "Failed to obtain control."),
+    OBTAIN_CONTROL_FAILED(327002, "获取控制权失败,请稍后重试"),
 
-    DEVICE_OFFLINE(327003, "Failed to obtain control. Device offline."),
+    DEVICE_OFFLINE(327003, "获取控制权失败,请稍后重试"),
 
-    DRAG_LIVESTREAM_VIEW_FAILED(327004, "Failed to drag livestream view."),
+    DRAG_LIVESTREAM_VIEW_FAILED(327004, "画面拖动失败,请重试"),
 
-    AIM_FAILED(327005, "Failed to double tab to be AIM."),
+    AIM_FAILED(327005, "双击画面归中失败"),
 
-    TAKE_PHOTO_FAILED(327006, "Failed to take photo."),
+    TAKE_PHOTO_FAILED(327006, "拍照失败"),
 
-    START_RECORDING_FAILED(327007, "Failed to start recording."),
+    START_RECORDING_FAILED(327007, "开始录像失败"),
 
-    STOP_RECORDING_FAILED(327008, "Failed to stop recording."),
+    STOP_RECORDING_FAILED(327008, "停止录像失败"),
 
-    SWITCH_CAMERA_MODE_FAILED(327009, "Failed to switch camera modes."),
+    SWITCH_CAMERA_MODE_FAILED(327009, "切换相机模式失败"),
 
-    ZOOM_CAMERA_ZOOM_FAILED(327010, "Failed to zoom in/out with zoom camera."),
+    ZOOM_CAMERA_ZOOM_FAILED(327010, "ZOOM相机变焦失败"),
 
-    IR_CAMERA_ZOOM_FAILED(327011, "Failed to zoom in/out with IR camera."),
+    IR_CAMERA_ZOOM_FAILED(327011, "IR相机变焦失败"),
 
-    DEVICE_LOCK(327012, "Failed to obtain control. Device is locked."),
+    DEVICE_LOCK(327012, "获取控制权失败,请稍后重试"),
 
-    SETTING_WAYLINE_LOST_ACTION_FAILED(327013, "Wayline signal lost action setting failed."),
+    SETTING_WAYLINE_LOST_ACTION_FAILED(327013, "参数设置失败,请稍后重试"),
 
-    GIMBAL_REACH_LIMIT(327014, "Gimbal reached movement limit."),
+    GIMBAL_REACH_LIMIT(327014, "云台已达限位"),
 
-    WRONG_LENS_TYPE(327015, "Invalid camera lens type."),
+    WRONG_LENS_TYPE(327015, "直播启动失败,建议刷新直播或重新打开设备小窗"),
 
 
-    DRC_ABNORMAL(514300, "DRC abnormal."),
+    DRC_ABNORMAL(514300, "DRC 异常"),
 
-    DRC_HEARTBEAT_TIMED_OUT(514301, "DRC heartbeat timed out."),
+    DRC_HEARTBEAT_TIMED_OUT(514301, "DRC 心跳超时"),
 
-    DRC_CERTIFICATE_ABNORMAL(514302, "DRC certificate is abnormal."),
+    DRC_CERTIFICATE_ABNORMAL(514302, "DRC 网络证书异常,连接失败"),
 
-    DRC_LINK_LOST(514303, "DRC link is lost."),
+    DRC_LINK_LOST(514303, "DRC 网络异常,连接断开"),
 
-    DRC_LINK_REFUSED(514304, "DRC link is refused."),
+    DRC_LINK_REFUSED(514304, "DRC 请求被拒,连接失败"),
 
     UNKNOWN(-1, "UNKNOWN"),
 

+ 5 - 5
Backend/cloud-sdk/src/main/java/com/dji/sdk/cloudapi/control/DrcStatusErrorEnum.java

@@ -15,15 +15,15 @@ public enum DrcStatusErrorEnum implements IErrorInfo {
 
     SUCCESS(0, "success"),
 
-    MQTT_ERR(514300, "The mqtt connection error."),
+    MQTT_ERR(514300, "MQTT 链接异常"),
 
-    HEARTBEAT_TIMEOUT(514301, "The heartbeat times out and the dock disconnects."),
+    HEARTBEAT_TIMEOUT(514301, "MQTT 请求超时,连接断开."),
 
-    MQTT_CERTIFICATE_ERR(514302, "The mqtt certificate is abnormal and the connection fails."),
+    MQTT_CERTIFICATE_ERR(514302, "MQTT 网络证书异常,连接失败"),
 
-    MQTT_LOST(514303, "The dock network is abnormal and the mqtt connection is lost."),
+    MQTT_LOST(514303, "机场网络异常,MQTT 连接断开"),
 
-    MQTT_REFUSE(514304, "The dock connection to mqtt server was refused.");
+    MQTT_REFUSE(514304, "机场链接MQTT 请求被拒,连接失败"),;
 
     private final String msg;
 

+ 25 - 25
Backend/cloud-sdk/src/main/java/com/dji/sdk/cloudapi/firmware/FirmwareErrorCodeEnum.java

@@ -13,55 +13,55 @@ import java.util.Arrays;
  */
 public enum FirmwareErrorCodeEnum implements IServicesErrorCode, IEventsErrorCode, IErrorInfo {
 
-    WRONG_TYPE(312001, "Consistency Upgrade was trrigered, but device didn't request."),
+    WRONG_TYPE(312001, "已触发一致性升级,但设备未请求"),
 
-    READY_1_FAILED(312002, "Failed to upgrade. Please try again."),
+    READY_1_FAILED(312002, "升级失败。请再试一次"),
 
-    VALIDATION_FAILED(312003, "Failed to upgrade. Please try again."),
+    VALIDATION_FAILED(312003, "升级失败。请再试一次"),
 
-    READY_2_FAILED(312004, "Failed to upgrade. Please try again."),
+    READY_2_FAILED(312004, "升级失败。请再试一次"),
 
-    WRONG_PROTOCOL(312010, "The upgrade request is different from the API."),
+    WRONG_PROTOCOL(312010, "升级请求与升级命令不一致"),
 
-    WRONG_PARAMETER(312012, "Please check the parameters and try again."),
+    WRONG_PARAMETER(312012, "请检查参数后重试"),
 
-    COMMAND_1_FAILED(312013, "Failed to upgrade. Please try again."),
+    COMMAND_1_FAILED(312013, "升级失败。请再试一次"),
 
-    UPDATING(312014, "Updating device firmware. Wait until update completed."),
+    UPDATING(312014, "设备升级中,请勿重复操作"),
 
-    WORKING(312015, "Device can not upgrade during the flight. Please wait and try again."),
+    WORKING(312015, "机场:{dock_org_name} 业务繁忙无法进行设备升级,请等待机场处于空闲中后再试"),
 
-    TRANSMISSION_ERROR(312016, "Update failed. Dock and aircraft transmission error. Restart dock and aircraft and try again."),
+    TRANSMISSION_ERROR(312016, "升级失败,机场和飞行器图传链路异常,请重启机场和飞行器后重试"),
 
-    VERSION_CHECK_FAILED(312017, "Failed to check the version."),
+    VERSION_CHECK_FAILED(312017, "版本检查失败"),
 
-    COMMAND_2_FAILED(312018, "Failed to upgrade. Please try again."),
+    COMMAND_2_FAILED(312018, "升级失败。请再试一次"),
 
-    COMMAND_3_FAILED(312019, "Failed to upgrade. Please try again."),
+    COMMAND_3_FAILED(312019, "升级失败。请再试一次"),
 
-    COMMAND_4_FAILED(312020, "Failed to upgrade. Please try again."),
+    COMMAND_4_FAILED(312020, "升级失败。请再试一次"),
 
-    COMMAND_5_FAILED(312021, "Failed to upgrade. Please try again."),
+    COMMAND_5_FAILED(312021, "升级失败。请再试一次"),
 
-    AIRCRAFT_NOT_FOUND(312022, "Failed to power on aircraft, or aircraft not connected. Check if aircraft is inside dock, battery installed, and dock and aircraft linked."),
+    AIRCRAFT_NOT_FOUND(312022, "飞行器开机失败或未连接,请检查飞行器是否在舱内,是否安装电池,机场和飞行器是否已对频"),
 
-    AIRCRAFT_OUTSIDE(312023, "Failed to push driving rods back into place. Unable to update aircraft firmware. Check if emergency stop button is pressed down or driving rods are stuck."),
+    AIRCRAFT_OUTSIDE(312023, "推杆闭合失败无法升级飞行器,请检查急停按钮是否被按下,推杆是否有异物卡住"),
 
-    COMMAND_6_FAILED(312024, "Failed to upgrade. Please try again."),
+    COMMAND_6_FAILED(312024, "升级失败。请再试一次"),
 
-    DELETE_FAILED(312025, "Failed to delete old firmware package."),
+    DELETE_FAILED(312025, "删除旧固件包失败"),
 
-    DECOMPRESSION_FAILED(312026, "Failed to decompress the offline upgrade package."),
+    DECOMPRESSION_FAILED(312026, "解压离线升级包失败"),
 
-    NO_AIRCRAFT_DETECTED(312027, "Failed to update firmware. Aircraft not detected inside dock."),
+    NO_AIRCRAFT_DETECTED(312027, "升级失败,机场未检测到飞行器"),
 
-    DEVICE_RESTART_1(312028, "Failed to update firmware. Device restarted during update."),
+    DEVICE_RESTART_1(312028, "升级失败,设备升级过程中设备被重启"),
 
-    DEVICE_RESTART_2(312029, "Restarting device. Unable to update firmware."),
+    DEVICE_RESTART_2(312029, "设备重启中无法进行设备升级,请等待设备重启完成后重试"),
 
-    FOURTH_GENERATION_IS_ENABLE(312030, "Aircraft enhanced transmission enabled. Failed to update firmware. Disable 4G transmission and try again."),
+    FOURTH_GENERATION_IS_ENABLE(312030, "升级失败,飞行器增强图传开启后无法升级,请关闭飞行器增强图传后重试"),
 
-    LOW_POWER(312704, "Aircraft battery level too low. Wait until aircraft is charged to above 20% and try again."),
+    LOW_POWER(312704, "设备电量过低,请充电至20%以上后重试"),
 
     UNKNOWN(-1, "UNKNOWN"),
     ;

+ 9 - 9
Backend/cloud-sdk/src/main/java/com/dji/sdk/cloudapi/log/LogErrorCodeEnum.java

@@ -13,23 +13,23 @@ import java.util.Arrays;
  */
 public enum LogErrorCodeEnum implements IServicesErrorCode, IEventsErrorCode, IErrorInfo {
 
-    DEVICE_RESTART(324001, "Device restart interrupts log export."),
+    DEVICE_RESTART(324001, "设备重启导致日志导出中断"),
 
-    EXPORT_TIMEOUT(324012, "Compressing logs timed out. Too many logs selected. Unselect some logs and try again."),
+    EXPORT_TIMEOUT(324012, "日志压缩过程超时,所选日志过多,请减少选择的日志后重试"),
 
-    PULL_FAILED(324013, "Failed to obtain device log list. Try again later."),
+    PULL_FAILED(324013, "设备日志列表获取失败,请稍后重试"),
 
-    EMPTY_LOG_LIST(324014, "Device log list is empty. Refresh page or restart dock and try again."),
+    EMPTY_LOG_LIST(324014, "设备日志列表为空,请刷新页面或重启机场后重试"),
 
-    AIRCRAFT_SHUTDOWN(324015, "Aircraft powered off or not connected. Unable to obtain log list. Make sure aircraft is inside dock. Remotely power on aircraft and try again."),
+    AIRCRAFT_SHUTDOWN(324015, "飞行器已关机或未连接,无法获取日志列表,请确认飞行器在舱内,通过远程调试将飞行器开机后重试"),
 
-    INSUFFICIENT_STORAGE_SPACE(324016, "Insufficient dock storage space. Failed to compress logs. Clear space or try again later."),
+    INSUFFICIENT_STORAGE_SPACE(324016, "机场存储空间不足,日志压缩失败,请清理机场存储空间或稍后重试"),
 
-    NO_LOG(324017, "Failed to compress logs. Unable to obtain logs of selected aircraft. Refresh page or restart dock and try again."),
+    NO_LOG(324017, "日志压缩失败,无法获取所选飞行器日志,请刷新页面或重启机场后重试"),
 
-    COMPRESSION_FAILED(324018, "Failed to compress logs and submit issue report. Try again later or restart dock and try again."),
+    COMPRESSION_FAILED(324018, "日志文件拉取失败,导致本次设备异常反馈上传失败,请稍后重试或重启机场后重试"),
 
-    UPLOAD_FAILED(324019, "Due to network anomalies at the airport, the log upload has failed. Please retry later."),
+    UPLOAD_FAILED(324019, "因机场网络异常,日志上传失败,请稍后重试。如果连续多次出现该问题,请联系代理商或大疆售后进行网络排障"),
 
     UNKNOWN(-1, "UNKNOWN"),
 

+ 136 - 131
Backend/cloud-sdk/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineErrorCodeEnum.java

@@ -16,267 +16,272 @@ public enum WaylineErrorCodeEnum implements IServicesErrorCode, IEventsErrorCode
 
     SUCCESS(0, "success"),
 
-    WRONG_PARAM(314001, "Failed to distribute task. Try again later"),
+    WRONG_PARAM(314001, "飞行任务下发失败,请稍后重试"),
 
-    MD5_EMPTY(314002, "The issued wayline task md5 is empty."),
+    MD5_EMPTY(314002, "飞行任务下发失败,请稍后重试.已发布的航路线任务MD5为空"),
 
-    WRONG_WAYLINE_FILE(314003, "Wayline file format not supported. Check file."),
+    WRONG_WAYLINE_FILE(314003, "航线文件格式不兼容,请检查航线文件是否正确"),
 
-    DISTRIBUTE_TASK_FAILED_1(314004, "Failed to distribute task."),
+    DISTRIBUTE_TASK_FAILED_1(314004, "飞行任务下发失败"),
 
-    MD5_CHECK_FAILED(314005, "Wayline MD5 check failed."),
+    MD5_CHECK_FAILED(314005, "飞行任务下发失败,请稍后重试或重启机场后重试.航线MD5验证失败"),
 
-    INITIATE_AIRCRAFT_FAILED_1(314006, "Failed to initiate aircraft. Restart dock and try again."),
+    INITIATE_AIRCRAFT_FAILED_1(314006, "飞行器初始化失败,请重启机场后重试"),
 
-    TRANSFER_KMZ_FILE_FAILED(314007, "Failed to distribute wayline file from dock to aircraft."),
+    TRANSFER_KMZ_FILE_FAILED(314007, "机场传输航线至飞行器失败,请重启机场后重试"),
 
-    PREPARATION_TIMED_OUT(314008, "Aircraft task preparation timed out. Restart dock and try again."),
+    PREPARATION_TIMED_OUT(314008, "飞行器起飞前准备超时,请重启机场后重试"),
 
-    INITIATE_AIRCRAFT_FAILED_2(314009, "Failed to initiate aircraft. Restart dock and try again."),
+    INITIATE_AIRCRAFT_FAILED_2(314009, "飞行器初始化失败,请重启机场后重试"),
 
-    PERFORM_TASK_FAILED(314010, "Unable to perform task."),
+    PERFORM_TASK_FAILED(314010, "航线执行失败,请重启机场后重试"),
 
-    QUERY_TIMEOUT(314011, "Wayline execution result query timed out."),
+    QUERY_TIMEOUT(314011, "机场系统异常,无法获取飞行任务执行结果"),
 
-    PREPARATION_FAILED_1(314012, "Aircraft task preparation failed. Unable to perform task. Restart dock and try again."),
+    PREPARATION_FAILED_1(314012, "飞行器起飞前准备失败,无法执行飞行任务,请重启机场后重试"),
 
-    WRONG_KMZ_URL(314013, "Get KMZ download address failed."),
+    WRONG_KMZ_URL(314013, "飞行任务下发失败,机场无法获取到本次飞行任务的航线,无法执行飞行任务,请稍后重试"),
 
-    DOCK_SYSTEM_ERROR_1(314014, "Dock system error. Failed to perform task. Try again later."),
+    DOCK_SYSTEM_ERROR_1(314014, "机场系统异常,飞行任务执行失败,请稍后重试"),
 
-    CLOSE_FOURTH_GENERATION_FAILED(314015, "Failed to distribute AI-Spot Check wayline from dock to aircraft. Unable to perform task. Try again later or restart dock and try again."),
+    CLOSE_FOURTH_GENERATION_FAILED(314015, "机场传输精准复拍航线至飞行器失败,无法执行飞行任务,请稍后重试或重启机场后重试"),
 
-    PROCESS_KMZ_FILE_FAILED_1(314016, "Failed to process flight route file. Unable to perform task. Check file."),
+    PROCESS_KMZ_FILE_FAILED_1(314016, "航线文件解析失败,无法执行飞行任务,请检查航线文件"),
 
-    MODIFY_KMZ_FILE_FAILED(314017, "Failed to modify the KMZ file of AI Spot-Check."),
+    MODIFY_KMZ_FILE_FAILED(314017, "机场系统异常,飞行任务执行失败,请稍后重试"),
 
-    AIRCRAFT_RTK_ERROR(314018, "Aircraft RTK positioning error. Unable to perform task. Try again later or restart dock and try again."),
+    AIRCRAFT_RTK_ERROR(314018, "飞行器 RTK 定位异常,无法执行飞行任务,请稍后重试或重启机场后重试"),
 
-    CONVERGE_RTK_FAILED_1(314019, "Failed to converge aircraft RTK data. Unable to perform task. Try again later or restart dock and try again."),
+    CONVERGE_RTK_FAILED_1(314019, "飞行器 RTK 收敛失败,无法执行飞行任务,请稍后重试或重启机场后重试"),
 
-    AIRCRAFT_POSITION_ERROR(314020, "Aircraft not in the middle of landing pad or aircraft heading incorrect. Unable to perform task. Check aircraft position and heading."),
+    AIRCRAFT_POSITION_ERROR(314020, "飞行器不在停机坪正中间或飞行器朝向不正确,无法执行飞行任务,请检查飞行器位置和朝向"),
 
-    AIRCRAFT_RTK_POSITIONING_ERROR(314021, "Aircraft RTK positioning error. Unable to perform task. Try again later or restart dock and try again."),
+    AIRCRAFT_RTK_POSITIONING_ERROR(314021, "飞行器 RTK 定位异常,无法执行飞行任务,请稍后重试或重启机场后重试"),
 
-    MODIFY_KMZ_BREAKPOINT_FILE_FAILED(314022, "Failed to modify KMZ file of resuming flight from breakpoint"),
+    MODIFY_KMZ_BREAKPOINT_FILE_FAILED(314022, "修改从断点恢复飞行的kmz文件失败"),
 
-    SETTING_BACKUP_LANDING_POINT_FAILED(316001, "Backup landing point setting failed"),
+    SETTING_BACKUP_LANDING_POINT_FAILED(316001, "飞行器参数配置失败,请重启机场后重试"),
 
-    SETTING_BACKUP_SAFE_HEIGHT_FAILED(316002, "Backup safe height for transfer setting failed"),
+    SETTING_BACKUP_SAFE_HEIGHT_FAILED(316002, "飞行器参数配置失败,请重启机场后重试"),
 
-    SETTING_TAKEOFF_HEIGHT_FAILED(316003, "Take-off height setting failed. Note: The default safe take-off height of the aircraft is set to 1.8 meters by dock. The aircraft will fly to 1.8 meters after take-off, and cannot be interrupted during the 0-1.8 meters take-off process, and other actions can only be performed after take-off. This altitude is used by the dock by default and does not support modification. The purpose is to prevent personal injury."),
+    SETTING_TAKEOFF_HEIGHT_FAILED(316003, "起飞高度设置失败。注:飞机安全起飞高度默认设置为1.8米。飞机起飞后会飞到1.8米,在0-1.8米的起飞过程中不能中断,其他动作只有在起飞后才能进行。默认情况下,该高度由机场配置,不支持修改。这样做的目的是为了防止人身伤害"),
 
-    SETTING_OUT_OF_CONTROL_ACTION_FAILED(316004, "Out of control action setting failed."),
+    SETTING_OUT_OF_CONTROL_ACTION_FAILED(316004, "航线完成动作设置失败"),
 
-    CONVERGE_RTK_FAILED_2(316005, "Failed to converge aircraft RTK data. Unable to perform task. Restart dock and try again."),
+    CONVERGE_RTK_FAILED_2(316005, "飞行器 RTK 收敛失败,无法执行飞行任务,请重启机场后重试"),
 
-    DOCK_PREPARATION_FAILED(316006, "Aircraft unable to land on dock. Dock cover closed or driving rods pushed into place.  Check aircraft status on dock deployment site."),
+    DOCK_PREPARATION_FAILED(316006, "任务超时,飞行器已丢失或降落时机场未开启舱盖或展开推杆,飞行器无法降落回机场,请尽快至机场部署现场检查飞行器状况"),
 
-    INITIATE_AIRCRAFT_FAILED(316007, "Failed to initiate aircraft. Restart dock and try again."),
+    INITIATE_AIRCRAFT_FAILED(316007, "飞行器初始化失败,请重启机场后重试"),
 
-    OBTAIN_FLIGHT_CONTROL_FAILED(316008, "Dock failed to obtain aircraft flight control. Unable to perform task. Make sure flight control not locked by remote controller."),
+    OBTAIN_FLIGHT_CONTROL_FAILED(316008, "机场获取飞行器控制权失败,无法执行飞行任务,请确认遥控器未锁定控制权"),
 
-    LOW_POWER(316009, "Aircraft battery level low. Unable to perform task. Wait until aircraft is charged up to 50% and try again"),
+    LOW_POWER(316009, "飞行器电量低于30%,无法执行飞行任务,请充电后重试(建议电量≥50%)"),
 
-    AIRCRAFT_NOT_DETECTED(316010, "Aircraft not detected. Unable to perform task. Check if aircraft is inside dock and linked to dock, or restart dock and try again."),
+    AIRCRAFT_NOT_DETECTED(316010, "机场未检测到飞行器,无法执行飞行任务,请检查舱内是否有飞行器,机场与飞行器是否已对频,或重启机场后重试"),
 
-    LANDED_ON_INCORRECT_LOCATION(316011, "Aircraft landed on incorrect location. Check if aircraft should be manually placed on dock deployment site."),
+    LANDED_ON_INCORRECT_LOCATION(316011, "飞行器降落位置偏移过大,请检查飞行器是否需要现场摆正"),
 
-    FOLDER_COLORING_FAILED(316012, "Aircraft task preparation failed. Folder coloring failed."),
+    FOLDER_COLORING_FAILED(316012, "飞行器起飞前准备失败,无法执行飞行任务,请重启机场后重试"),
 
-    OBTAIN_BATTERY_POWER_FAILED(316013, "Query of battery power failed."),
+    OBTAIN_BATTERY_POWER_FAILED(316013, "飞行器起飞前准备失败,查询电池电量失败"),
 
-    FLIGHT_CONTROL_PUSHING_TIMED_OUT(316014, "The receive of flight control pushing timed out."),
+    FLIGHT_CONTROL_PUSHING_TIMED_OUT(316014, "飞行器起飞前准备失败,无法执行飞行任务,请重启机场后重试"),
 
-    AIRCRAFT_LOCATION_TOO_FAR(316015, "Aircraft location calibrated by RTK device is far from dock. Unable to perform task. Restart dock and try again."),
+    AIRCRAFT_LOCATION_TOO_FAR(316015, "飞行器 RTK 收敛位置距离机场过远,无法执行飞行任务,请重启机场后重试"),
 
-    LANDING_TIMEOUT(316016, "Aircraft landing on dock timed out. Aircraft and dock may be disconnected. Check livestream view to see if aircraft landed on dock"),
+    LANDING_TIMEOUT(316016, "飞行器降落至机场超时,可能是机场与飞行器断连导致,请通过直播查看飞行器是否降落至舱内"),
 
-    OBTAIN_MEDIA_TIMEOUT(316017, "Obtaining number of aircraft media files timed out. Aircraft and dock may be disconnected. Check livestream view to see if aircraft landed on dock"),
+    OBTAIN_MEDIA_TIMEOUT(316017, "获取飞行器媒体数量超时,可能是机场与飞行器断连导致,请通过直播查看飞行器是否降落至舱内"),
 
-    TASK_PERFORMANCE_TIMED_OUT(316018, "Task performance timed out. Aircraft and dock may be disconnected. Check livestream view to see if aircraft landed on dock"),
+    TASK_PERFORMANCE_TIMED_OUT(316018, "飞行任务执行超时,可能是机场与飞行器断连导致,请通过直播查看飞行器是否降落至舱内"),
 
-    CAMERA_COLORING_TIMED_OUT(316019, "Camera coloring timed out"),
+    CAMERA_COLORING_TIMED_OUT(316019, "机场系统错误,开启负载相机超时,无法执行飞行任务,请稍后重试"),
 
-    RTK_SOURCE_ERROR(316020, "Aircraft RTK signal source error."),
+    RTK_SOURCE_ERROR(316020, "飞行器使用的 RTK 信号源错误,请稍后重试"),
 
-    RTK_SOURCE_TIMEOUT(316021, "Checking aircraft RTK signal source timed out."),
+    RTK_SOURCE_TIMEOUT(316021, "飞行器 RTK 信号源检查超时,请稍后重试"),
 
-    AIRCRAFT_NOT_CONNECTED(316022, "Aircraft unable to return to home. Check if aircraft is powered on, aircraft and dock are connected, and try again"),
+    AIRCRAFT_NOT_CONNECTED(316022, "飞行器无法执行返航指令,请检查飞行器是否已开机,机场与飞行器是否已断连,请确认无以上问题后重试"),
 
-    NO_FLIGHT_CONTROL_1(316023, "Aircraft controlled by Controller B and unable to return to home. Control aircraft from Controller B or power off remote controller and try again."),
+    NO_FLIGHT_CONTROL_1(316023, "飞行器无法执行返航指令,飞行器已被 B 控接管,请在 B 控操控飞行器,或关闭 B 控后重试"),
 
-    WRONG_COMMAND(316024, "Aircraft failed to return to home. Check if aircraft has taken off and try again."),
+    WRONG_COMMAND(316024, "飞行器执行返航指令失败,请检查飞行器是否已起飞,确认飞行器已起飞后请重试"),
 
-    SETTING_AIRCRAFT_PARAMETERS_FAILED(316025, "Failed to configure aircraft parameters. Try again later or restart dock and try again."),
+    SETTING_AIRCRAFT_PARAMETERS_FAILED(316025, "飞行器参数配置失败,请稍后重试或重启机场后重试"),
 
-    EMERGENCY_BUTTON_PRESSED_DOWN(316026, "Dock emergency stop button pressed down. Unable to perform task. Release button and try again."),
+    EMERGENCY_BUTTON_PRESSED_DOWN(316026, "机场急停按钮被按下,无法执行飞行任务,请释放急停按钮后重试"),
 
-    SETTING_AIRCRAFT_PARAMETERS_TIMEOUT(316027, "Setting aircraft parameters timed out. Try again later or restart dock and try again."),
+    SETTING_AIRCRAFT_PARAMETERS_TIMEOUT(316027, "飞行器参数配置超时,请稍后重试或重启机场后重试"),
 
-    FLYING_TO_BACKUP_POINT_1(316029, "Dock emergency stop button pressed down. Aircraft flying to alternate landing site. Make sure aircraft has safely landed and place aircraft inside dock"),
+    FLYING_TO_BACKUP_POINT_1(316029, "机场急停按钮被按下,飞行器将飞往备降点降落,请立即检查飞行器是否已安全降落并将飞行器放回至机场"),
 
-    REFRESH_HOME_POINT_FAILED(316030, "Refresh of home point failed. Please try again."),
+    REFRESH_HOME_POINT_FAILED(316030, "返航点刷新失败,请稍后重试或重启机场后重试"),
 
-    SETTING_RTH_MODE_FAILED(316031, "Failed to set return home mode. Please try again."),
+    SETTING_RTH_MODE_FAILED(316031, "设置返航模式失败,请稍后重试或重启机场后重试"),
 
-    LOW_POWER_LANDING_OUTSIDE(316050, "The aircraft has landed outside the dock due to low battery. Please check immediately whether the aircraft has landed safely and return the aircraft to the dock."),
+    // TODO:316032 获取电池数据超时,请稍后重试或重启飞行器后重试
+    // TODO:316033 飞行器电池循环次数过高,为保证飞行安全,已自动终止任务,建议更换该电池
+    // TODO:316034 无法起飞,飞行器固件版本与机场固件版本不匹配,为保证飞行安全请升级固件后再试
+    // TODO:316035 进离场航线下发失败,请确保设备固件为最新版本后重新下发任务,如果持续报错,请联系大疆售后。
+    
+    LOW_POWER_LANDING_OUTSIDE(316050, "飞行器因电量过低在舱外降落,请立即检查飞行器是否已安全降落并将飞行器放回至机场"),
 
-    TASK_ABNORMAL_LANDING_OUTSIDE(316051, "The wayline task is abnormal, the aircraft landed outside the dock, please check immediately whether the aircraft has landed safely and return the aircraft to the dock."),
+    TASK_ABNORMAL_LANDING_OUTSIDE(316051, "飞行任务异常,飞行器在舱外降落,请立即检查飞行器是否已安全降落并将飞行器放回至机场"),
 
-    FLYING_TO_BACKUP_POINT_2(316052, "The wayline task is abnormal, the aircraft will fly to the backup landing point, please check immediately whether the aircraft has landed safely and return the aircraft to the dock."),
+    FLYING_TO_BACKUP_POINT_2(316052, "飞行任务异常,飞行器将飞往备降点降落,请立即检查飞行器是否已安全降落并将飞行器放回至机场"),
 
-    USER_CONTROL_LANDING(316053, "The user controls the aircraft to land."),
+    USER_CONTROL_LANDING(316053, "用户已操控飞行器降落,请立即检查飞行器是否已安全降落并将飞行器放回至机场"),
 
-    OBTAIN_MEDIA_FAILED(317001, "Failed to obtain number of aircraft media files."),
+    OBTAIN_MEDIA_FAILED(317001, "获取飞行器媒体文件数量失败,请重启机场后重试"),
 
-    CAMERA_NOT_CONNECTED(317002, "Failed to format aircraft storage. Make sure aircraft is powered on and connected to dock and camera can be detected. Or restart aircraft and try again."),
+    CAMERA_NOT_CONNECTED(317002, "飞行器存储格式化失败,飞行器未开机、未连接或未检测到相机,请确认无以上问题后重试,或重启飞行器后重试"),
 
-    FORMAT_AIRCRAFT_STORAGE_FAILED(317003, "Failed to format aircraft storage."),
+    FORMAT_AIRCRAFT_STORAGE_FAILED(317003, "飞行器存储格式化失败,请重启飞行器后重试"),
 
-    FORMAT_MEDIA_FILES_FAILED(317004, "Failed to format media files."),
+    FORMAT_MEDIA_FILES_FAILED(317004, "机场媒体文件格式化失败,请稍后重试或重启机场后重试"),
 
-    STOP_RECORDING_FAILED(317005, "Aircraft video recording terminated unsuccessfully, media files for this flight mission may not be able to be uploaded."),
+    STOP_RECORDING_FAILED(317005, "飞行器结束录像失败,本次飞行任务的媒体文件可能无法上传"),
 
-    NOT_IDLE(319001, "Unable to perform task. Dock is performing task or uploading issue logs. Wait until task is complete or logs uploaded and try again."),
+    NOT_IDLE(319001, "机场作业中或设备异常反馈上传日志中,无法执行飞行任务,请等待当前飞行任务或操作执行完成后重试"),
 
-    DOCK_SYSTEM_ERROR_2(319002, "Dock system error. Restart dock and try again."),
+    DOCK_SYSTEM_ERROR_2(319002, "机场系统运行异常,请重启机场后重试"),
 
-    TASK_ID_NOT_EXIST(319003, "Task ID doesn't exist in dock"),
+    TASK_ID_NOT_EXIST(319003, "机场系统运行异常,请重新下发任务,任务ID异常"),
 
-    TASK_EXPIRE(319004, "The task has expired."),
+    TASK_EXPIRE(319004, "飞行任务执行超时,已自动终止本次飞行任务"),
 
-    FLIGHTTASK_EXECUTE_COMMAND_TIMEOUT(319005, "Execution command delivery timed out. Unable to perform task."),
+    FLIGHTTASK_EXECUTE_COMMAND_TIMEOUT(319005, "云端与机场通信异常,无法执行飞行任务"),
 
-    CANCEL_TASK_FAILED_1(319006, "Failed to cancel task. Task in progress."),
+    CANCEL_TASK_FAILED_1(319006, "取消飞行任务失败,飞行任务已经在执行中"),
 
-    EDIT_TASK_FAILED(319007, "Failed to edit task. Task in progress."),
+    EDIT_TASK_FAILED(319007, "修改飞行任务失败,飞行任务已经在执行中"),
 
-    TIME_NOT_SYNCED(319008, "Dock and cloud time not synced. Dock unable to perform task."),
+    TIME_NOT_SYNCED(319008, "机场时间与云端时间不同步,机场无法执行飞行任务"),
 
-    DISTRIBUTE_TASK_FAILED_2(319009, "Failed to distribute task. Try again later or restart dock and try again."),
+    DISTRIBUTE_TASK_FAILED_2(319009, "飞行任务下发失败,请稍后重试或重启机场后重试"),
 
-    VERSION_TOO_EARLY(319010, "Dock firmware version too early. Unable to perform task. Update dock to latest version and try again."),
+    VERSION_TOO_EARLY(319010, "机场固件版本过低,无法执行飞行任务,请升级机场固件为最新版本后重试"),
 
-    INITIALIZING_DOCK(319015, "Initializing dock. Unable to perform task. Wait until initialization is complete."),
+    INITIALIZING_DOCK(319015, "机场正在初始化中,无法执行飞行任务,请等待机场初始化完成后重试"),
 
-    PERFORMING_OTHER_TASK(319016, "Dock performing other task. Unable to perform current task."),
+    PERFORMING_OTHER_TASK(319016, "机场正在执行其他飞行任务,无法执行本次飞行任务"),
 
-    PROCESSING_MEDIA_FILE(319017, "Dock processing media files captured in last task. Unable to perform current task. Try again later."),
+    PROCESSING_MEDIA_FILE(319017, "机场正在处理上次飞行任务媒体文件,无法执行本次飞行任务,请稍后重试"),
 
-    EXPORTING_LOGS(319018, "Unable to perform task. Dock uploading issue logs. Try again later."),
+    EXPORTING_LOGS(319018, "机场正在自动导出日志中(设备异常反馈),无法执行飞行任务,请稍后重试"),
 
-    PULLING_LOGS(319019, "Unable to perform task. Dock obtaining issue logs. Try again later."),
+    PULLING_LOGS(319019, "机场正在拉取日志中(设备异常反馈),无法执行飞行任务,请稍后重试"),
 
-    PAUSE_TASK_FAILED(319020, "Failed to pause flight task."),
+    PAUSE_TASK_FAILED(319020, "航线中断失败,请稍后重试"),
 
-    DISABLE_FLIGHT_CONTROL_FAILED(319021, "Failed to disable Live Flight Controls."),
+    DISABLE_FLIGHT_CONTROL_FAILED(319021, "退出远程控制失败,请稍后重试"),
 
-    FLYTO_TASK_FAILED(319022, "FlyTo task failed."),
+    FLYTO_TASK_FAILED(319022, "指点飞行失败,请稍后重试"),
 
-    STOP_FLYTO_TASK_FAILED(319023, "Failed to stop FlyTo task."),
+    STOP_FLYTO_TASK_FAILED(319023, "指点飞行停止失败,请稍后重试"),
 
-    TAKING_OFF_TASK_FAILED(319024, "One-key taking off failed."),
+    TAKING_OFF_TASK_FAILED(319024, "一键起飞失败,请稍后重试"),
 
-    TASK_IN_PREPARATION(319025, "Task in preparation. Dock unable to perform task distributed from cloud. Try again later"),
+    TASK_IN_PREPARATION(319025, "机场未准备完成,无法执行云端下发的飞行任务,请稍后重试"),
 
-    LOW_POWER_THAN_SET_VALUE(319026, "Aircraft battery level lower than set value. Unable to perform task. Wait until charging completes and try again."),
+    LOW_POWER_THAN_SET_VALUE(319026, "飞行器电池电量低于用户设置的任务开始执行的电量,请等待充电完成后再执行飞行任务"),
 
-    INSUFFICIENT_STORAGE(319027, "Insufficient storage on dock or aircraft. Unable to perform task. Wait until media files are uploaded to cloud and try again."),
+    INSUFFICIENT_STORAGE(319027, "机场或飞行器剩余存储容量过低,无法执行飞行任务,请等待媒体文件上传,机场和飞行器存储容量释放后再执行飞行任务"),
 
-    NO_FLIGHT_CONTROL_2(319030, "Dock has no flight control authority."),
+    NO_FLIGHT_CONTROL_2(319030, "操作失败,无飞行器控制权"),
 
-    NO_PAYLOAD_CONTROL(319031, "Dock has no payload control authority"),
+    NO_PAYLOAD_CONTROL(319031, "控制权异常,请刷新重试"),
 
-    WRONG_POINT_NUMBER(319032, "Flyto target point, the point number is wrong."),
+    WRONG_POINT_NUMBER(319032, "指点飞行失败,请稍后重试"),
 
-    SEQ_NUMBER_SMALLER_THAN_LAST(319033, "DRC - flight control failed. Package sequence number is smaller than last one."),
+    SEQ_NUMBER_SMALLER_THAN_LAST(319033, "DRC 虚拟摇杆操作失败,请稍后重试"),
 
-    DELAY_TIME_SMALLER_THAN_SET(319034, "DRC - flight control failed. Package received time out."),
+    DELAY_TIME_SMALLER_THAN_SET(319034, "DRC 虚拟摇杆操作失败,请稍后重试"),
 
-    EMERGENCY_STOP_FAILED(319035, "Emergency stop failed, please try again."),
+    EMERGENCY_STOP_FAILED(319035, "急停失败,请稍后重试"),
 
-    REMOTE_DEBUGGING_MODE(319036, "Device in remote debugging mode. "),
+    REMOTE_DEBUGGING_MODE(319036, "设备远程调试中,请稍后重试"),
 
-    ONSITE_DEBUGGING_MODE(319037, "Device in onsite debugging mode."),
+    ONSITE_DEBUGGING_MODE(319037, "设备本地调试中,请稍后重试"),
 
-    UPDATING(319038, "Updating device. Try again later."),
+    UPDATING(319038, "设备正在升级,请稍后重试"),
 
-    RESUME_TASK_FAILED(319042, "Failed to resume flight."),
+    RESUME_TASK_FAILED(319042, "航线恢复失败,请稍后重试"),
 
-    CANCEL_TASK_FAILED_2(319043, "Failed to cancel RTH."),
+    CANCEL_TASK_FAILED_2(319043, "取消返航失败,请稍后重试"),
 
-    NO_BREAKPOINT(319044, "Task completed. Unable to resume."),
+    NO_BREAKPOINT(319044, "航线任务已结束,无法恢复"),
 
-    EMERGENCY_STOP_STATUS(319045, "DRC - flight control failed. Aircraft paused."),
+    EMERGENCY_STOP_STATUS(319045, "急停成功,请重新进入DRC 虚拟遥杆进行按键操作"),
 
-    NOT_IN_WAYLINE(319046, "Task completed or paused. Unable to pause."),
+    NOT_IN_WAYLINE(319046, "无法暂停航线,飞行器尚未进入航线或已退出航线"),
 
-    DOCK_SYSTEM_ERROR_3(319999, "Dock system error. Restart dock and try again."),
+    DOCK_SYSTEM_ERROR_3(319999, "机场系统运行异常,请重启机场后重试"),
 
-    TASK_ERROR(321000, "Task error. Try again later or restart dock and try again."),
+    TASK_ERROR(321000, "航线执行异常,请稍后重试或重启机场后重试"),
 
-    PROCESS_KMZ_FILE_FAILED_2(321004, "Failed to process flight route file. Unable to perform task. Check file."),
+    PROCESS_KMZ_FILE_FAILED_2(321004, "航线文件解析失败,无法执行飞行任务,请检查航线文件"),
 
-    MISSING_BREAKPOINT(321005, "Missing breakpoint info in wayline."),
+    MISSING_BREAKPOINT(321005, "航线缺少断点信息,机场无法执行飞行任务"),
 
-    TASK_IN_PROGRESS(321257, "Task in progress. Failed to start task again."),
+    TASK_IN_PROGRESS(321257, "飞行任务已在执行中,请勿重复执行"),
 
-    STATUS_NOT_SUPPORTED(321258, "Unable to stop task. Check aircraft status."),
+    STATUS_NOT_SUPPORTED(321258, "飞行任务无法终止,请检查飞行器状态"),
 
-    NOT_STARTED_CANNOT_STOP(321259, "Task not started. Unable to stop task."),
+    NOT_STARTED_CANNOT_STOP(321259, "飞行任务未开始执行,无法终止飞行任务"),
 
-    NOT_STARTED_CANNOT_INTERRUPT(321260, "Task not started. Unable to pause task."),
+    NOT_STARTED_CANNOT_INTERRUPT(321260, "飞行任务未开始执行,无法中断飞行任务"),
 
-    HEIGHT_LIMIT(321513, "Unable to perform task. Flight route altitude greater than aircraft max flight altitude."),
+    HEIGHT_LIMIT(321513, "航线规划高度已超过飞行器限高,机场无法执行飞行任务"),
 
-    DISTANCE_LIMIT(321514, "Failed to perform task. Flight route start or end point in buffer zone or exceeds distance limit."),
+    DISTANCE_LIMIT(321514, "任务失败,起点或终点位于限远区域的缓冲区内或超过了限远距离"),
 
-    GEO_ZONE(321515, "Unable to perform task. Aircraft will fly across GEO Zone."),
+    GEO_ZONE(321515, "航线穿过限飞区,机场无法执行飞行任务"),
 
-    HEIGHT_TOO_LOW(321516, "Flight altitude too low. Task stopped."),
+    HEIGHT_TOO_LOW(321516, "飞行器飞行高度过低,飞行任务执行被终止"),
 
-    OBSTACLE_SENSED(321517, "Obstacle sensed. Task stopped."),
+    OBSTACLE_SENSED(321517, "飞行器触发避障,飞行任务执行被终止。为保证飞行安全,请勿用当前航线执行断点续飞任务"),
 
-    APPROACHED_GEO_ZONE(321519, "Aircraft approached GEO Zone or reached max distance and automatically returned to home. Unable to complete task."),
+    APPROACHED_GEO_ZONE(321519, "飞行器接近限飞区或限远距离自动返航,无法完成航线飞行"),
 
-    PROPELLER_CHECK_FAILED(321523, "Aircraft propeller check failed. Propeller may be damaged. Try again later. Contact DJI Support to replace propeller if issue persists."),
+    PROPELLER_CHECK_FAILED(321523, "飞行器起飞失败,请稍后重试,如果仍报错请联系大疆售后。"),
 
-    PREPARATION_FAILED_2(321524, "The preparation before takeoff of the aircraft has failed, possibly due to the aircraft's inability to locate or gear error. Please check the status of the aircraft."),
+    PREPARATION_FAILED_2(321524, "飞行器起飞前准备失败,可能是飞行器无法定位或档位错误导致,请检查飞行器状态"),
 
-    WEAK_GPS(321769, "Aircraft satellite positioning signal weak. Unable to perform task. Restart dock and try again."),
+    WEAK_GPS(321769, "飞行器卫星定位信号差,无法执行飞行任务,请重启机场后重试"),
 
-    WRONG_GEAR_MODE(321770, "Aircraft flight mode error. Unable to perform task. Restart dock and try again."),
+    WRONG_GEAR_MODE(321770, "飞行器挡位错误,无法执行飞行任务,请重启机场后重试"),
 
-    HOME_POINT_NOT_SET(321771, "Aircraft Home Point not set. Unable to perform task. Restart dock and try again."),
+    HOME_POINT_NOT_SET(321771, "飞行器返航点未设置,无法执行飞行任务,请重启机场后重试"),
 
-    LOW_POWER_PERFORM_TASK(321772, "Aircraft battery level low. Unable to perform task. Wait until aircraft is charged up to 50% and try again."),
+    LOW_POWER_PERFORM_TASK(321772, "飞行器电量低于30%,无法执行飞行任务,请充电后重试(建议电量≥50%)"),
 
-    LOW_POWER_RTH(321773, "Aircraft battery level low and returned to home. Unable to complete task."),
+    LOW_POWER_RTH(321773, "飞行器执行飞行任务过程中低电量返航,无法完成航线飞行"),
 
-    AIRCRAFT_SIGNAL_LOST(321775, "Aircraft signal lost when performing task."),
+    AIRCRAFT_SIGNAL_LOST(321775, "飞行器航线飞行过程中失联,无法完成航线飞行"),
 
-    RTK_NOT_READY(321776, "Failed to converge aircraft RTK data. Unable to perform task. Restart dock and try again."),
+    RTK_NOT_READY(321776, "飞行器 RTK 收敛失败,无法执行飞行任务,请重启机场后重试"),
 
-    NOT_HOVERING(321777, "Aircraft not hovering. Unable to start task."),
+    NOT_HOVERING(321777, "飞行器未悬停,无法开始执行飞行任务"),
 
-    B_CONTROL_PROPELLERS(321778, "Unable to perform task. Aircraft controlled by Controller B, and propellers started."),
+    B_CONTROL_PROPELLERS(321778, "用户使用 B 控操控飞行器起桨,机场无法执行飞行任务"),
+    
+    USER_CONTROL(322282, "机场执行飞行任务过程中被中断,飞行器被云端用户或遥控器接管"),
 
-    USER_CONTROL(322282, "Task stopped. Aircraft control obtained by cloud user or Controller B."),
+    USER_SEND_RTH(322283, "机场执行飞行任务过程中被用户触发返航,无法完成航线飞行"),
 
-    USER_SEND_RTH(322283, "RTH command sent by user. Aircraft unable to complete task."),
-
-    WRONG_BREAKPOINT(322539, "Breakpoint info error. Dock unable to perform task"),
+    WRONG_BREAKPOINT(322539, "航线的断点信息错误,机场无法执行飞行任务"),
 
     EMPTY_ACTION_LAYER(322594, "The layer of action tree can not be empty."),
 
-    WRONG_TASK(386535, "Task error. Try again later or restart dock and try again."),
+    WRONG_TASK(386535, "航线执行异常,请稍后重试或重启机场后重试"),
 
-    SET_MEDIA_PRIORITY_FAILED(324030, "Setting priority of media upload failed, the task does not exist in the upload queue."),
+    SET_MEDIA_PRIORITY_FAILED(324030, "因机场网络异常、飞行器图传链路异常等原因,媒体文件暂时无法上传或文件已上传但云端读取失败"),
 
-    MEDIA_PRIORITY_COMMAND_TOO_FAST(324031, "Setting priority of media upload failed, the action of issuing commands is too fast, and the response to the last command has not yet ended."),
+    MEDIA_PRIORITY_COMMAND_TOO_FAST(324031, "媒体上传优先级设置失败,发出命令动作太快,对最后一条命令的响应还没有结束。"),
 
-    MEDIA_PRIORITY_WRONG_PARAMETER(324032, "Setting priority of media upload failed, incorrect parameter."),
+    MEDIA_PRIORITY_WRONG_PARAMETER(324032, "设置媒体上传优先级失败,参数错误。"),
 
     UNKNOWN(-1, "UNKNOWN"),
 

+ 2 - 2
Backend/cloud-sdk/src/main/java/com/dji/sdk/common/CommonErrorEnum.java

@@ -15,9 +15,9 @@ public enum CommonErrorEnum implements IServicesErrorCode, IEventsErrorCode, IEr
 
     SUCCESS(0, "Success"),
 
-    STATUS_NOT_SUPPORTED(314000, "The device is either uploading logs or executing a flight mission. Please try again later."),
+    STATUS_NOT_SUPPORTED(314000, "设备当前无法支持该操作,建议检查设备当前工作状态"),
 
-    WRONG_PARAMETER(325001, "Cloud command parameter error. Dock unable to execute command."),
+    WRONG_PARAMETER(325001, "云端下发命令不符合格式要求,设备无法执行"),
 
     UNKNOWN(-1, "Unknown");
 

+ 17 - 17
Backend/sample/src/main/java/com/dji/sample/wayline/model/enums/WaylineErrorCodeEnum.java

@@ -14,39 +14,39 @@ public enum WaylineErrorCodeEnum implements IErrorInfo {
 
     SUCCESS(0, "success", false),
 
-    EMERGENCY_BUTTON(316026, "The emergency button at the dock was pressed.", true),
+    EMERGENCY_BUTTON(316026, "机场急停按钮被按下,无法执行飞行任务,请释放急停按钮后重试", true),
     
-    NOT_IDLE(319001, "Task Center is not currently idle.", true),
+    NOT_IDLE(319001, "机场作业中或设备异常反馈上传日志中,无法执行飞行任务,请等待当前飞行任务或操作执行完成后重试", true),
     
-    PERFORMING_TASK(319016, "The dock is performing other tasks.", true),
+    PERFORMING_TASK(319016, "机场正在执行其他飞行任务,无法执行本次飞行任务", true),
     
-    EXPORTING_LOGS(319018, "The dock is exporting logs.", true),
+    EXPORTING_LOGS(319018, "机场正在自动导出日志中(设备异常反馈),无法执行飞行任务,请稍后重试", true),
     
-    PULLING_LOGS(319019, "The dock is pulling logs.", true),
+    PULLING_LOGS(319019, "机场正在拉取日志中(设备异常反馈),无法执行飞行任务,请稍后重试", true),
     
-    HEIGHT_LIMIT(321513, "The wayline altitude has exceeded the height limit of the drone.", true),
+    HEIGHT_LIMIT(321513, "航线规划高度已超过飞行器限高,机场无法执行飞行任务", true),
     
-    DISTANCE_LIMIT(321514, "The wayline distance has exceeded the limit of the drone.", true),
+    DISTANCE_LIMIT(321514, "任务失败,起点或终点位于限远区域的缓冲区内或超过了限远距离", true),
 
-    RESTRICTED_FLIGHT_AREA(321515, "The wayline passes through a restricted flight area.", true),
+    RESTRICTED_FLIGHT_AREA(321515, "航线穿过限飞区,机场无法执行飞行任务", true),
     
-    SDR_DISCONNECT(514120, "The sdr link between the dock and the drone is disconnected.", true),
+    SDR_DISCONNECT(514120, "机场与飞行器断连,请重启机场后重试或重新对频", true),
 
-    HEAVY_RAIN(514134, "Heavy rain prevented the flight.", true),
+    HEAVY_RAIN(514134, "雨量过大,机场无法执行飞行任务,请稍后重试", true),
     
-    STRONG_WIND(514135, "Strong wind prevented the flight.", true),
+    STRONG_WIND(514135, "风速过大,机场无法执行飞行任务,请稍后重试", true),
     
-    POWER_DISCONNECT(514136, "The dock's power supply is disconnected.", true),
+    POWER_DISCONNECT(514136, "机场供电断开,机场无法执行飞行任务,请恢复机场供电后重试", true),
 
-    LOW_TEMPERATURE(514137, "The low temperature of the environment prevented flight.", true),
+    LOW_TEMPERATURE(514137, "环境温度过低于-20℃ (-4°F),机场无法执行飞行任务,请稍后重试", true),
 
-    DEBUGGING(514145, "The dock is being debugged.", true),
+    DEBUGGING(514145, "机场处于现场调试中,无法执行当前操作或执行飞行任务,请断开遥控器和机场的数据线连接后重试", true),
 
-    REMOTE_DEBUGGING(514146, "The dock is being debugged remotely.", true),
+    REMOTE_DEBUGGING(514146, "机场处于远程调试中,无法执行飞行任务,请退出远程调试后重试", true),
 
-    DOCK_UPGRADING(514147, "The dock is being upgraded.", true),
+    DOCK_UPGRADING(514147, "设备升级中,无法进行远程调试或执行飞行任务,请等待升级完成后重试", true),
 
-    DOCK_WORKING(514148, "The dock is working and cannot perform new tasks.", true),
+    DOCK_WORKING(514148, "机场已经在作业中,无法进行远程调试或再次执行飞行任务,请等待当前任务执行完成后重试", true),
 
     UNKNOWN(-1, "Unknown wayline error.", false);
     

+ 9 - 0
Web/src/api/custom/index.ts

@@ -140,6 +140,7 @@ export type RenewalJobApi = (job_id: string) => Promise<any>;
 export type FetchJobDetailApi = (job_id: string) => Promise<any>;
 export type FetchAllDockDeviceListApi = () => Promise<any>;
 export type FetchAllWaylineListApi = () => Promise<any>;
+export type FetchWaylinePointApi = (wayline_id: string) => Promise<any>;
 export type FetchWaylineListApi = (params: FetchWaylineListApiParams) => Promise<any>;
 export type FetchDeviceLogListApi = (sn: string, params: { domain_list: string }) => Promise<any>;
 export type FetchDeviceFeedbackRecordListApi = (sn: string, params: FetchDeviceFeedbackRecordListApiParams) => Promise<any>;
@@ -221,6 +222,13 @@ const fetchAllWaylineListApi: FetchAllWaylineListApi = async () => {
     return res.data;
 };
 
+// 获取航线点
+const fetchWaylinePointApi: FetchWaylinePointApi = async (wayline_id) => {
+    const url = `/wayline/api/v1/workspaces/${getWorkspaceId()}/getWaylinePoint/${wayline_id}`
+    const res = await request.get(url);
+    return res.data;
+};
+
 // 获取航线列表
 const fetchWaylineListApi: FetchWaylineListApi = async (params) => {
     const url = `/wayline/api/v1/workspaces/${getWorkspaceId()}/waylines`
@@ -405,6 +413,7 @@ export const apis = {
     fetchJobDetail: fetchJobDetailApi,
     fetchAllDockDeviceList: fetchAllDockDeviceListApi,
     fetchAllWaylineList: fetchAllWaylineListApi,
+    fetchWaylinePoint: fetchWaylinePointApi,
     fetchWaylineList: fetchWaylineListApi,
     fetchDeviceLogList: fetchDeviceLogListApi,
     fetchDeviceFeedbackRecordList: fetchDeviceFeedbackRecordListApi,

+ 12 - 0
Web/src/assets/icons/sPoint.svg

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<svg width="256px" height="190px" viewBox="0 0 256 190" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+    <title>初始点</title>
+    <g id="初始点" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
+        <g id="编组">
+            <path d="M126.190464,12.1226919 C128.577213,11.6595913 131.14063,12.1070048 133.314992,13.5746994 C134.324118,14.255859 135.192903,15.1246443 135.874062,16.1337697 L135.874062,16.1337697 L241.296148,172.314638 C242.763843,174.489 243.211256,177.052416 242.748156,179.439166 C242.285055,181.825915 240.91144,184.035997 238.737078,185.503692 C237.167123,186.563412 235.316225,187.12963 233.422086,187.12963 L233.422086,187.12963 L22.5779142,187.12963 C19.9545617,187.12963 17.5795617,186.066306 15.8603998,184.347144 C14.1412379,182.627982 13.0779142,180.252982 13.0779142,177.62963 C13.0779142,175.73549 13.6441323,173.884592 14.7038518,172.314638 L14.7038518,172.314638 L120.125938,16.1337697 C121.593632,13.9594074 123.803715,12.5857925 126.190464,12.1226919 Z" id="三角形" stroke="#FFFFFF" stroke-width="5" fill="#3feb78" transform="translate(128.000000, 94.814815) scale(1, -1) translate(-128.000000, -94.814815) "></path>
+            <g id="S" transform="translate(96.869136, 23.229630)" fill="#FFFFFF" fill-rule="nonzero">
+                <path d="M31.9841975,95.8261728 C51.0735802,95.8261728 62.957037,84.4483951 62.957037,69.9101235 C62.957037,56.0039506 54.6133333,49.8093827 43.8676543,45.1318519 L30.4671605,39.442963 C23.3876543,36.4088889 15.0439506,32.8691358 15.0439506,23.3876543 C15.0439506,14.6646914 22.1234568,9.22864198 32.9955556,9.22864198 C41.7185185,9.22864198 48.6716049,12.6419753 54.2340741,18.0780247 C59.7965432,23.5140741 66.2439506,17.9516049 59.922963,11.3777778 C53.6019753,4.80395062 44.1204938,0 32.9955556,0 C16.5609877,0 4.42469136,10.1135802 4.42469136,24.1461728 C4.42469136,37.6730864 14.6646914,43.9940741 23.2612346,47.6602469 L36.6617284,53.6019753 C45.5111111,57.5209877 52.4641975,60.6814815 52.4641975,70.7950617 C52.4641975,80.1501235 44.7525926,86.5975309 32.1106173,86.5975309 C22.2498765,86.5975309 12.8948148,82.0464198 6.1945679,74.8404938 L0,82.0464198 C7.83802469,90.5165432 18.8365432,95.8261728 31.9841975,95.8261728 Z" id="路径"></path>
+            </g>
+        </g>
+    </g>
+</svg>

+ 8 - 3
Web/src/hooks/use-g-map-trajectory.ts

@@ -12,7 +12,10 @@ export function useGMapTrajectory() {
 
   // 绘制轨迹
   const drawTrajectory = (list: any[]) => {
-    const paths = list.map(item => item.paths)
+    const paths = list.map(item => item.paths);
+    if (!paths.length) {
+      return;
+    }
     // 绘制起点图标
     const startPosition = paths[0];
     const startIcon = new AMap.Icon({
@@ -48,11 +51,10 @@ export function useGMapTrajectory() {
       })
     })
     // 序号下方圆形标记
-    const circles = serialList.map((item, index) => {
+    const circles = serialList.map((item) => {
       return new AMap.Circle({
         center: new AMap.LngLat(item.paths[0], item.paths[1]),
         radius: 0.5, // 半径
-        // strokeColor: 'white',
         fillColor: 'white',
         fillOpacity: 1,
         strokeWeight: 2,
@@ -102,6 +104,9 @@ export function useGMapTrajectory() {
       return data;
     });
     const paths = list.map(item => item.paths);
+    if (!paths.length) {
+      return;
+    }
     // 绘制轨迹折线
     const polyline = new AMap.Polyline({
       path: paths,

+ 97 - 2
Web/src/pages/page-web/projects/task/taskList/components/CreateTaskModal.vue

@@ -3,7 +3,8 @@
         wrapClassName="createTask-modal" :visible="visible">
         <div class="content">
             <div class="content-panel">
-                <TaskPanel ref="taskPanelRef" :onClickConfirm="onClickConfirm" :onClickCancel="onClickCancel" />
+                <TaskPanel ref="taskPanelRef" :drawTrajectory="drawTrajectory" :onClickConfirm="onClickConfirm"
+                    :onClickCancel="onClickCancel" />
             </div>
             <div class="content-map">
                 <div id="taskMap" :style="{ width: '100%', height: '100%' }"></div>
@@ -15,6 +16,7 @@
 <script lang="ts" setup>
 import { ref, reactive, onMounted } from 'vue';
 import TaskPanel from './TaskPanel.vue';
+import sPointSrc from '/@/assets/icons/sPoint.svg';
 import { useGMapManage } from '/@/hooks/use-g-map';
 
 interface Props {
@@ -32,7 +34,9 @@ const taskPanelRef = ref();
 
 const state = reactive({
     loading: false,
-    map: null,// 高德地图实例
+    AMap: null, // Map类
+    map: null, // 地图对象
+    mapCoverList: [] as any[],
 })
 
 // 高德地图Hook
@@ -40,6 +44,7 @@ const AmapHook = useGMapManage();
 
 const init = async () => {
     const AMap = await AmapHook.asyncInitMap();
+    state.AMap = AMap;
     const map = new AMap.Map('taskMap', {
         center: [121.48, 31.22],
         zoom: 12
@@ -53,6 +58,96 @@ const init = async () => {
 onMounted(() => {
     init();
 })
+
+// 绘制轨迹
+const drawTrajectory = (list: {
+    paths: number[],
+    isSPoint: boolean,
+}[]) => {
+    const AMap: any = state.AMap;
+    const map: any = state.map;
+    state.mapCoverList.forEach(cover => map.remove(cover));
+    const paths = list.map(item => item.paths);
+    if (!paths.length) {
+        return;
+    }
+    // 绘制轨迹折线
+    const polyline = new AMap.Polyline({
+        path: paths,
+        strokeColor: '#3feb78',
+        showDir: true,// 显示路线白色方向箭头
+        strokeOpacity: 1,// 轮廓线透明度
+        strokeWeight: 6,//线宽
+        strokeStyle: 'solid',
+    })
+    const serialList = list.slice();
+    // 序号
+    const text = serialList.map((item, index) => {
+        return new AMap.Text({
+            position: new AMap.LngLat(item.paths[0], item.paths[1]),
+            offset: new AMap.Pixel(-8, -30),
+            text: index + 1,
+            style: {
+                backgroundColor: 'transparent',
+                borderColor: 'transparent',
+            }
+        })
+    })
+    // 序号下方圆形标记
+    const circles = serialList.map((item) => {
+        return new AMap.Circle({
+            center: new AMap.LngLat(item.paths[0], item.paths[1]),
+            radius: 0.5, // 半径
+            fillColor: '#FFFFFF',
+            fillOpacity: 1,
+            strokeWeight: 2,
+        });
+    })
+    // 计算并显示每段线的距离
+    const distances = [];
+    const serialPaths = serialList.map(item => item.paths)
+    for (let i = 0; i < serialPaths.length - 1; i++) {
+        const distance = AMap.GeometryUtil.distance(new AMap.LngLat(serialPaths[i][0], serialPaths[i][1]), new AMap.LngLat(serialPaths[i + 1][0], serialPaths[i + 1][1]));
+        // 计算两个点之间的中点坐标
+        const midLng = (serialPaths[i][0] + serialPaths[i + 1][0]) / 2;
+        const midLat = (serialPaths[i][1] + serialPaths[i + 1][1]) / 2;
+        const midPoint = new AMap.LngLat(midLng, midLat);
+        // 在中点位置放置文本以显示距离
+        const distanceText = new AMap.Text({
+            position: midPoint,
+            offset: new AMap.Pixel(-16, 10),
+            text: `${distance.toFixed(1)} m`,// 距离
+            style: {
+                fontSize: '10px',
+                color: '#FFFFFF',
+                backgroundColor: 'rgba(0, 0, 0, 0.75)',
+                borderColor: 'transparent',
+            },
+        });
+        distances.push(distanceText);
+    }
+    const other = [polyline, ...text, ...circles, ...distances];
+    const item = list.find(item => item.isSPoint);
+    if (item) {
+        // 绘制S点图标
+        const position = item.paths;
+        const icon = new AMap.Icon({
+            size: new AMap.Size(30, 30),
+            image: sPointSrc,
+            imageSize: new AMap.Size(30, 30)
+        })
+        const marker = new AMap.Marker({
+            position: new AMap.LngLat(position[0], position[position.length - 1]),
+            icon: icon,
+            offset: new AMap.Pixel(-20, -35),// 位置偏移
+        })
+        other.push(marker);
+    }
+    state.mapCoverList = other;
+    map.add(other);
+    // 自动缩放地图到合适的视野级别
+    map.setFitView(other);
+}
 </script>
 
 <style lang="scss" scoped>

+ 24 - 0
Web/src/pages/page-web/projects/task/taskList/components/TaskPanel.vue

@@ -248,9 +248,14 @@ import aircraftSrc from '/@/components/airport/icons/aircraft.svg';
 import dockSrc from '/@/components/airport/icons/dockInfo.svg';
 import moment from 'moment';
 import { apis } from '/@/api/custom';
+import { wgs84togcj02 } from '/@/vendors/coordtransform';
 import { DEVICE_NAME } from '/@/types/device'
 
 interface Props {
+  drawTrajectory: (list: {
+    paths: number[],
+    isSPoint: boolean,
+  }[]) => void,
   onClickConfirm: (data: any) => Promise<any>,
   onClickCancel: () => void,
 };
@@ -441,6 +446,24 @@ watch(() => deviceState.visible, async (visible) => {
   }
 });
 
+watch(() => state.formModel.file_id, async (wayline_id) => {
+  if (!wayline_id) {
+    return;
+  }
+  try {
+    const res = await apis.fetchWaylinePoint(wayline_id);
+    const list = res.data.map((item: any) => {
+      return {
+        paths: wgs84togcj02(item.longitude, item.latitude),
+        isSPoint: item.point_index == 0 && item.folder_id == 0,
+      }
+    })
+    props.drawTrajectory(list);
+  } catch (error) {
+    console.error(error);
+  }
+});
+
 // 检查执行时间
 const checkTaskPeriods = (rule: any, values: string) => {
   if (values?.length) {
@@ -675,6 +698,7 @@ defineExpose({ init });
   .ant-select-selector {
     background: #3c3c3c !important;
     color: rgba(255, 255, 255, .25) !important;
+    border-color: #3c3c3c !important;
   }
 }
 

+ 7 - 2
Web/src/pages/page-web/projects/task/taskList/index.vue

@@ -66,7 +66,12 @@
             取消
           </div>
           <div style="color: #E02020;" v-else-if="record.status === 5">
-            失败
+            <span>
+              失败
+            </span>
+            <a-tooltip :title="record.error_text">
+              <ExclamationCircleOutlined />
+            </a-tooltip>
           </div>
           <div style="color: #2B85E4;" v-else-if="record.status === 6">
             暂停
@@ -111,7 +116,7 @@
 <script lang="ts" setup>
 import { reactive, onMounted, watch, computed } from 'vue';
 import { Modal, message } from 'ant-design-vue';
-import { ApiOutlined, CopyOutlined, GatewayOutlined, DeleteOutlined } from '@ant-design/icons-vue';
+import { ExclamationCircleOutlined, ApiOutlined, CopyOutlined, GatewayOutlined, DeleteOutlined } from '@ant-design/icons-vue';
 import Search from './components/Search.vue';
 import Airport from '/@/components/airport/index.vue';
 import CreateTaskModal from './components/CreateTaskModal.vue';