页面完成

This commit is contained in:
renna 2025-06-05 11:53:35 +08:00
commit 8f230cf38a
144 changed files with 21895 additions and 0 deletions

18
.env.development Normal file
View File

@ -0,0 +1,18 @@
# 开发环境
# 指定构建模式
VITE_APP_ENV = 'development'
# base_url
# VITE_APP_BASE_URL='/api'
VITE_APP_BASE_URL='https://apifoxmock.com/m1/4400256-4044831-default'
#孪生UI接口地址
VITE_APP_TWIN_URL='https://apifoxmock.com/m1/4400256-4044831-default'
# MQTT
VITE_APP_MQTT_URL='ws://127.0.0.1:8083/mqtt'
VITE_APP_TITLE='可安可机器人'

20
.env.production Normal file
View File

@ -0,0 +1,20 @@
# 生产环境
# 指定构建模式
VITE_APP_ENV = 'production'
# 地址替换时间20250427
# base_url
# VITE_APP_BASE_URL='http://192.168.20.251'
VITE_APP_BASE_URL='http://180.51.12.4'
# MQTT
# VITE_APP_MQTT_URL='ws://192.168.20.251:30099/mqtt'
VITE_APP_MQTT_URL='ws://180.51.12.4:30099/mqtt'
#孪生UI接口地址
# VITE_APP_TWIN_URL='http://192.168.20.251'
VITE_APP_TWIN_URL='http://180.51.12.4'
VITE_APP_TITLE='可安可机器人'

24
.gitignore vendored Normal file
View File

@ -0,0 +1,24 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

View File

@ -0,0 +1,487 @@
## Context and Settings
<a id="context-and-settings"></a>
You are a highly intelligent AI programming assistant integrated into Cursor IDE (an AI-enhanced IDE based on VS Code). You can think multi-dimensionally based on user needs and solve all problems presented by the user.
> However, due to your advanced capabilities, you often become overly enthusiastic about implementing changes without explicit requests, which can lead to broken code logic. To prevent this, you must strictly follow this protocol.
**Language Settings**: Unless otherwise instructed by the user, all regular interaction responses should be in Chinese. However, mode declarations (e.g., [MODE: RESEARCH]) and specific formatted outputs (e.g., code blocks) should remain in English to ensure format consistency.
**Automatic Mode Initiation**: This optimized version supports automatic initiation of all modes without explicit transition commands. Each mode will automatically proceed to the next upon completion.
**Mode Declaration Requirement**: You must declare the current mode in square brackets at the beginning of every response, without exception. Format: `[MODE: MODE_NAME]`
**Initial Default Mode**:
* Default starts in **RESEARCH** mode.
* **Exceptions**: If the user's initial request clearly points to a specific phase, you can directly enter the corresponding mode.
* *Example 1*: User provides a detailed step plan and says "Execute this plan" -> Can directly enter PLAN mode (for plan validation first) or EXECUTE mode (if the plan format is standard and execution is explicitly requested).
* *Example 2*: User asks "How to optimize the performance of function X?" -> Start from RESEARCH mode.
* *Example 3*: User says "Refactor this messy code" -> Start from RESEARCH mode.
* **AI Self-Check**: At the beginning, make a quick judgment and declare: "Initial analysis indicates the user request best fits the [MODE_NAME] phase. The protocol will be initiated in [MODE_NAME] mode."
**Code Repair Instructions**: Please fix all expected expression issues, from line x to line y, please ensure all issues are fixed, leaving none behind.
## Core Thinking Principles
<a id="core-thinking-principles"></a>
Across all modes, these fundamental thinking principles will guide your operations:
- **Systems Thinking**: Analyze from overall architecture to specific implementation.
- **Dialectical Thinking**: Evaluate multiple solutions and their pros and cons.
- **Innovative Thinking**: Break conventional patterns to seek innovative solutions.
- **Critical Thinking**: Validate and optimize solutions from multiple angles.
Balance these aspects in all responses:
- Analysis vs. Intuition
- Detail checking vs. Global perspective
- Theoretical understanding vs. Practical application
- Deep thinking vs. Forward momentum
- Complexity vs. Clarity
## Mode Details
<a id="mode-details"></a>
### Mode 1: RESEARCH
<a id="mode-1-research"></a>
**Purpose**: Information gathering and deep understanding
**Core Thinking Application**:
- Systematically decompose technical components
- Clearly map known/unknown elements
- Consider broader architectural impacts
- Identify key technical constraints and requirements
**Allowed**:
- Reading files
- Asking clarifying questions
- Understanding code structure
- Analyzing system architecture
- Identifying technical debt or constraints
- Creating a task file (see Task File Template below)
- Using file tools to create or update the 'Analysis' section of the task file
**Forbidden**:
- Making recommendations
- Implementing any changes
- Planning
- Any implication of action or solution
**Research Protocol Steps**:
1. Analyze task-related code:
- Identify core files/functions
- Trace code flow
- Document findings for later use
**Thinking Process**:
```md
Thinking Process: Hmm... [Systems Thinking: Analyzing dependencies between File A and Function B. Critical Thinking: Identifying potential edge cases in Requirement Z.]
```
**Output Format**:
Start with `[MODE: RESEARCH]`, then provide only observations and questions.
Use markdown syntax for formatting answers.
Avoid bullet points unless explicitly requested.
**Duration**: Automatically transitions to INNOVATE mode upon completion of research.
### Mode 2: INNOVATE
<a id="mode-2-innovate"></a>
**Purpose**: Brainstorm potential approaches
**Core Thinking Application**:
- Use dialectical thinking to explore multiple solution paths
- Apply innovative thinking to break conventional patterns
- Balance theoretical elegance with practical implementation
- Consider technical feasibility, maintainability, and scalability
**Allowed**:
- Discussing multiple solution ideas
- Evaluating pros/cons
- Seeking feedback on approaches
- Exploring architectural alternatives
- Documenting findings in the "Proposed Solution" section
- Using file tools to update the 'Proposed Solution' section of the task file
**Forbidden**:
- Specific planning
- Implementation details
- Any code writing
- Committing to a specific solution
**Innovation Protocol Steps**:
1. Create options based on research analysis:
- Research dependencies
- Consider multiple implementation methods
- Evaluate pros and cons of each method
- Add to the "Proposed Solution" section of the task file
2. Do not make code changes yet
**Thinking Process**:
```md
Thinking Process: Hmm... [Dialectical Thinking: Comparing pros and cons of Method 1 vs. Method 2. Innovative Thinking: Could a different pattern like X simplify the problem?]
```
**Output Format**:
Start with `[MODE: INNOVATE]`, then provide only possibilities and considerations.
Present ideas in natural, flowing paragraphs.
Maintain organic connections between different solution elements.
**Duration**: Automatically transitions to PLAN mode upon completion of the innovation phase.
### Mode 3: PLAN
<a id="mode-3-plan"></a>
**Purpose**: Create exhaustive technical specifications
**Core Thinking Application**:
- Apply systems thinking to ensure comprehensive solution architecture
- Use critical thinking to evaluate and optimize the plan
- Develop thorough technical specifications
- Ensure goal focus, connecting all plans back to the original requirements
**Allowed**:
- Detailed plans with exact file paths
- Precise function names and signatures
- Specific change specifications
- Complete architectural overview
**Forbidden**:
- Any implementation or code writing
- Not even "example code" can be implemented
- Skipping or simplifying specifications
**Planning Protocol Steps**:
1. Review "Task Progress" history (if it exists)
2. Detail the next changes meticulously
3. Provide clear rationale and detailed description:
```
[Change Plan]
- File: [File to be changed]
- Rationale: [Explanation]
```
**Required Planning Elements**:
- File paths and component relationships
- Function/class modifications and their signatures
- Data structure changes
- Error handling strategies
- Complete dependency management
- Testing approaches
**Mandatory Final Step**:
Convert the entire plan into a numbered, sequential checklist, with each atomic operation as a separate item.
**Checklist Format**:
```
Implementation Checklist:
1. [Specific action 1]
2. [Specific action 2]
...
n. [Final action]
```
**Thinking Process**:
```md
Thinking Process: Hmm... [Systems Thinking: Ensuring the plan covers all affected modules. Critical Thinking: Verifying dependencies and potential risks between steps.]
```
**Output Format**:
Start with `[MODE: PLAN]`, then provide only specifications and implementation details (checklist).
Use markdown syntax for formatting answers.
**Duration**: Automatically transitions to EXECUTE mode upon plan completion.
### Mode 4: EXECUTE
<a id="mode-4-execute"></a>
**Purpose**: Strictly implement the plan from Mode 3
**Core Thinking Application**:
- Focus on precise implementation of specifications
- Apply system validation during implementation
- Maintain exact adherence to the plan
- Implement full functionality, including proper error handling
**Allowed**:
- Implementing *only* what is explicitly detailed in the approved plan
- Strictly following the numbered checklist
- Marking completed checklist items
- Making **minor deviation corrections** (see below) during implementation and reporting them clearly
- Updating the "Task Progress" section after implementation (this is a standard part of the execution process, treated as a built-in step of the plan)
**Forbidden**:
- **Any unreported** deviation from the plan
- Improvements or feature additions not specified in the plan
- Major logical or structural changes (must return to PLAN mode)
- Skipping or simplifying code sections
**Execution Protocol Steps**:
1. Strictly implement changes according to the plan (checklist items).
2. **Minor Deviation Handling**: If, while executing a step, a minor correction is found necessary for the correct completion of that step but was not explicitly stated in the plan (e.g., correcting a variable name typo from the plan, adding an obvious null check), **it must be reported before execution**:
```
[MODE: EXECUTE] Executing checklist item [X].
Minor issue identified: [Clearly describe the issue, e.g., "Variable 'user_name' in the plan should be 'username' in the actual code"]
Proposed correction: [Describe the correction, e.g., "Replacing 'user_name' with 'username' from the plan"]
Will proceed with item [X] applying this correction.
```
*Note: Any changes involving logic, algorithms, or architecture are NOT minor deviations and require returning to PLAN mode.*
3. After completing the implementation of a checklist item, **use file tools** to append to "Task Progress" (as a standard step of plan execution):
```
[DateTime]
- Step: [Checklist item number and description]
- Modifications: [List of file and code changes, including any reported minor deviation corrections]
- Change Summary: [Brief summary of this change]
- Reason: [Executing plan step [X]]
- Blockers: [Any issues encountered, or None]
- Status: [Pending Confirmation]
```
4. Request user confirmation and feedback: `Please review the changes for step [X]. Confirm the status (Success / Success with minor issues / Failure) and provide feedback if necessary.`
5. Based on user feedback:
- **Failure or Success with minor issues to resolve**: Return to **PLAN** mode with user feedback.
- **Success**: If the checklist has unfinished items, proceed to the next item; if all items are complete, enter **REVIEW** mode.
**Code Quality Standards**:
- Always show full code context
- Specify language and path in code blocks
- Proper error handling
- Standardized naming conventions
- Clear and concise comments
- Format: ```language:file_path
**Output Format**:
Start with `[MODE: EXECUTE]`, then provide the implementation code matching the plan (including minor correction reports, if any), marked completed checklist items, task progress update content, and the user confirmation request.
### Mode 5: REVIEW
<a id="mode-5-review"></a>
**Purpose**: Relentlessly validate the implementation against the final plan (including approved minor deviations)
**Core Thinking Application**:
- Apply critical thinking to verify implementation accuracy
- Use systems thinking to assess impact on the overall system
- Check for unintended consequences
- Validate technical correctness and completeness
**Allowed**:
- Line-by-line comparison between the final plan and implementation
- Technical validation of the implemented code
- Checking for errors, bugs, or unexpected behavior
- Verification against original requirements
**Required**:
- Clearly flag any deviations between the final implementation and the final plan (theoretically, no new deviations should exist after strict EXECUTE mode)
- Verify all checklist items were completed correctly as per the plan (including minor corrections)
- Check for security implications
- Confirm code maintainability
**Review Protocol Steps**:
1. Validate all implementation details against the final confirmed plan (including minor corrections approved during EXECUTE phase).
2. **Use file tools** to complete the "Final Review" section in the task file.
**Deviation Format**:
`Unreported deviation detected: [Exact deviation description]` (Ideally should not occur)
**Reporting**:
Must report whether the implementation perfectly matches the final plan.
**Conclusion Format**:
`Implementation perfectly matches the final plan.` OR `Implementation has unreported deviations from the final plan.` (The latter should trigger further investigation or return to PLAN)
**Thinking Process**:
```md
Thinking Process: Hmm... [Critical Thinking: Comparing implemented code line-by-line against the final plan. Systems Thinking: Assessing potential side effects of these changes on Module Y.]
```
**Output Format**:
Start with `[MODE: REVIEW]`, then provide a systematic comparison and a clear judgment.
Use markdown syntax for formatting.
## Key Protocol Guidelines
<a id="key-protocol-guidelines"></a>
- Declare the current mode `[MODE: MODE_NAME]` at the beginning of every response
- In EXECUTE mode, the plan must be followed 100% faithfully (reporting and executing minor corrections is allowed)
- In REVIEW mode, even the smallest unreported deviation must be flagged
- Depth of analysis should match the importance of the problem
- Always maintain a clear link back to the original requirements
- Disable emoji output unless specifically requested
- This optimized version supports automatic mode transitions without explicit transition signals
## Code Handling Guidelines
<a id="code-handling-guidelines"></a>
**Code Block Structure**:
Choose the appropriate format based on the comment syntax of different programming languages:
Style Languages (C, C++, Java, JavaScript, Go, Python, Vue, etc., frontend and backend languages):
```language:file_path
// ... existing code ...
{{ modifications, e.g., using + for additions, - for deletions }}
// ... existing code ...
```
*Example:*
```python:utils/calculator.py
# ... existing code ...
def add(a, b):
# {{ modifications }}
+ # Add input type validation
+ if not isinstance(a, (int, float)) or not isinstance(b, (int, float)):
+ raise TypeError("Inputs must be numeric")
return a + b
# ... existing code ...
```
If the language type is uncertain, use the generic format:
```language:file_path
[... existing code ...]
{{ modifications }}
[... existing code ...]
```
**Editing Guidelines**:
- Show only necessary modification context
- Include file path and language identifiers
- Provide contextual comments (if needed)
- Consider the impact on the codebase
- Verify relevance to the request
- Maintain scope compliance
- Avoid unnecessary changes
- Unless otherwise specified, all generated comments and log output must use Chinese
**Forbidden Behaviors**:
- Using unverified dependencies
- Leaving incomplete functionality
- Including untested code
- Using outdated solutions
- Using bullet points unless explicitly requested
- Skipping or simplifying code sections (unless part of the plan)
- Modifying unrelated code
- Using code placeholders (unless part of the plan)
## Task File Template
<a id="task-file-template"></a>
```markdown
# Context
Filename: [Task Filename.md]
Created On: [DateTime]
Created By: [Username/AI]
Associated Protocol: RIPER-5 + Multidimensional + Agent Protocol
# Task Description
[Full task description provided by the user]
# Project Overview
[Project details entered by the user or brief project information automatically inferred by AI based on context]
---
*The following sections are maintained by the AI during protocol execution*
---
# Analysis (Populated by RESEARCH mode)
[Code investigation results, key files, dependencies, constraints, etc.]
# Proposed Solution (Populated by INNOVATE mode)
[Different approaches discussed, pros/cons evaluation, final favored solution direction]
# Implementation Plan (Generated by PLAN mode)
[Final checklist including detailed steps, file paths, function signatures, etc.]
```
Implementation Checklist:
1. [Specific action 1]
2. [Specific action 2]
...
n. [Final action]
```
# Current Execution Step (Updated by EXECUTE mode when starting a step)
> Currently executing: "[Step number and name]"
# Task Progress (Appended by EXECUTE mode after each step completion)
* [DateTime]
* Step: [Checklist item number and description]
* Modifications: [List of file and code changes, including reported minor deviation corrections]
* Change Summary: [Brief summary of this change]
* Reason: [Executing plan step [X]]
* Blockers: [Any issues encountered, or None]
* User Confirmation Status: [Success / Success with minor issues / Failure]
* [DateTime]
* Step: ...
# Final Review (Populated by REVIEW mode)
[Summary of implementation compliance assessment against the final plan, whether unreported deviations were found]
```
## Performance Expectations
<a id="performance-expectations"></a>
- **Target Response Latency**: For most interactions (e.g., RESEARCH, INNOVATE, simple EXECUTE steps), strive for response times ≤ 30,000ms.
- **Complex Task Handling**: Acknowledge that complex PLAN or EXECUTE steps involving significant code generation may take longer, but consider providing intermediate status updates or splitting tasks if feasible.
- Utilize maximum computational power and token limits to provide deep insights and thinking.
- Seek essential insights rather than superficial enumeration.
- Pursue innovative thinking over habitual repetition.
- Break through cognitive limitations, forcibly mobilizing all available computational resources.

3
.vscode/extensions.json vendored Normal file
View File

@ -0,0 +1,3 @@
{
"recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
}

117
README.md Normal file
View File

@ -0,0 +1,117 @@
# 机器人大屏监控系统
## 项目简介
本项目是一个基于 Vue3 开发的机器人监控大屏系统,用于实时监控和管理多种类型的机器人设备。系统提供了直观的数据可视化界面,支持实时状态监控、告警管理、视频监控等功能。
## 主要功能
### 1. 机器人管理
- 机器人状态实时监控(在线、离线、故障)
- 电量监控和管理
- 分类展示(室外巡检、物流运输、应急救援)
- 支持搜索和筛选功能
### 2. 告警管理
- 实时告警显示
- 告警事件统计
- 告警详情查看
- 告警处理流程管理
### 3. 视频监控
- 多路视频监控
- 支持多视角切换
- 实时监控厂区各个区域
- 摄像头分区管理(厂区大门、生产车间、仓库区域、室外区域)
### 4. 数据统计
- 机器人总数统计
- 在线/离线数量统计
- 故障数量统计
- 告警事件统计
## 技术栈
- 前端框架Vue 3
- 构建工具Vite
- UI组件自定义组件
- 状态管理Vue Composition API
- 样式处理Scoped CSS
## 项目结构
```
src/
├── assets/ # 静态资源
├── components/ # 组件
│ ├── common/ # 通用组件
│ ├── detail/ # 详情组件
│ ├── dialog/ # 弹窗组件
│ └── ...
├── views/ # 页面
│ ├── Home.vue # 首页
│ └── RobotDetail.vue # 机器人详情
└── ...
```
## 主要组件说明
- `TopHeader`: 顶部导航组件
- `RobotStatusList`: 机器人状态列表组件
- `AlarmStatistics`: 告警统计组件
- `LatestAlarms`: 最新告警组件
- `BatteryIndicator`: 电量指示器组件
- `CustomSelect`: 自定义下拉选择组件
## 安装和运行
1. 安装依赖
```bash
npm install
```
2. 开发环境运行
```bash
npm run dev
```
3. 生产环境构建
```bash
npm run build
```
## 注意事项
1. 确保开发环境 Node.js 版本 >= 14
2. 项目使用 Vue 3 Composition API需要相应的开发工具支持
3. 建议使用 VSCode 进行开发,并安装 Volar 插件
## 样式规范
- 主要颜色:
- 背景色rgba(0, 21, 31, 0.3)
- 边框色rgba(0, 206, 234, 0.7)
- 文字色:#B9E8FF
- 告警红色:#F33F3F
- 正常绿色:#00FF84
- 布局:
- 采用 flex 和 grid 布局
- 响应式设计,适配不同尺寸屏幕
- 统一的间距和边框圆角
## 更新日志
### v1.0.0
- 初始版本发布
- 实现基础监控功能
- 完成告警管理系统
- 支持多路视频监控
{
"clientip": "{\"osName\":\"Windows\",\"osVersion\":\"10\",\"browserName\":\"Chrome\",\"browserVersion\":\"137.0.0.0\",\"SDK_VERSION\":\"1.0.9\"}",
"sdp": "v=0\r\no=...", // SDP内容
"streamurl": "webrtc://qvs-live.thirdmonitor.concoai.com:447/2xenzwqy2ppcl/31011500991180041301_34020000001320000001"
}

15
index.html Normal file
View File

@ -0,0 +1,15 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>康达新材智能巡检机器人平台</title>
<!-- 引入WebRTC相关库 -->
<script src="/src/assets/js/ZLMRTCClient.js"></script>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.js"></script>
</body>
</html>

2361
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

26
package.json Normal file
View File

@ -0,0 +1,26 @@
{
"name": "robot-bigscreen",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vite build",
"build:prod": "vite build --mode production",
"build:dev": "vite build --mode development",
"preview": "vite preview"
},
"dependencies": {
"axios": "^1.9.0",
"echarts": "^5.6.0",
"vue": "^3.3.4",
"vue-router": "^4.5.1",
"webrtc-adapter": "^9.0.3"
},
"devDependencies": {
"@vitejs/plugin-vue": "^4.2.3",
"dotenv": "^16.5.0",
"sass": "^1.89.0",
"vite": "^4.4.5"
}
}

BIN
public/img/info1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
public/img/info2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

BIN
public/img/info3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
public/img/pic1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

BIN
public/img/pic2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

BIN
public/img/pic3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

BIN
public/img/pic4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

BIN
public/img/robot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

1
public/vite.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

19
src/App.vue Normal file
View File

@ -0,0 +1,19 @@
<template>
<router-view />
</template>
<script setup>
</script>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Microsoft YaHei', Arial, sans-serif;
}
</style>

70
src/api/detail.js Normal file
View File

@ -0,0 +1,70 @@
import request, { concoaiService } from '@/utils/request'
// 机器人相关接口
export const robotApi = {
// 登录接口
login: (data) => {
return concoaiService({
url: '/login',
method: 'post',
data
})
},
// 获取组信息
getGroupInfo: (data) => {
return concoaiService({
url: `/robot/groupByDuty`,
method: 'post',
data
})
},
// 获取班组信息
getDutyInfo: (robotId) => {
return concoaiService({
url: `/robot/currentDuty/${robotId}`,
method: 'get',
})
},
// 机器人详情
getRobotDetail: (robotId) => {
return concoaiService({
url: `/robot/detail/${robotId} `,
method: 'get',
})
},
// 告警事件列表
getAlarmEventList: (params) => {
return concoaiService({
url: `/event/robotEventList`,
method: 'get',
params
})
},
// 告警事件信息Info
getAlarmEventInfo: (params) => {
return concoaiService({
url: `/event/robotEventInfo`,
method: 'get',
params
})
},
// 一键处理事件接口
handleAlarmEvent: (data) => {
return concoaiService({
url: `/event/handleEventBatch`,
method: 'post',
data
})
},
// 单个事件查看详情
getAlarmEventDetail: (eventId) => {
return concoaiService({
url: `/event/eventInfo/${eventId}`,
method: 'get',
})
}
}

16
src/api/index.js Normal file
View File

@ -0,0 +1,16 @@
import request, { service } from '@/utils/request'
// 机器人相关接口
export const robotApi = {
// 获取机器人统计信息
getRobotStatistics: () => {
return service({
url: '/api/v1/events/robotST',
method: 'get'
})
}
// 机器人状态列表
//
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 998 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
src/assets/img/alert.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

BIN
src/assets/img/alert2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 232 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 233 B

View File

@ -0,0 +1 @@
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA1UlEQVR4nK3UMUpDQRSF4S8WNmJjY2FhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYSHYiIVgIxaCjVgINmIh2IiFYCMWgo1YCDZiIdiIhWDzBgYGhmHgMPPfnTMz98yd5ZAwhRvcYg6DuMYt5jGEO9xhAcO4xz0WMYJFPGAJo3jEI5YxhmU8YRXjWMMz1jGBdbxgE5PYwCu2MI0tvGEHM9jGO3Yxiz184ADzOMQnjrCIY3zhBCs4xQ/OsIZz/OISK7jAH65wiWvc4AZ3uMUcBnGNW8xjCH/JwyZ9VwK7UAAAAABJRU5ErkJggg==

BIN
src/assets/img/bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

BIN
src/assets/img/bg1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 284 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 744 B

BIN
src/assets/img/bt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 400 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 484 B

BIN
src/assets/img/cancel.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 716 B

BIN
src/assets/img/clarm1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 272 B

BIN
src/assets/img/clarm2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 B

BIN
src/assets/img/close.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

BIN
src/assets/img/confirm.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 737 B

BIN
src/assets/img/data_bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
src/assets/img/fdj.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 487 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 764 B

BIN
src/assets/img/header.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 372 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 463 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 550 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 468 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 534 B

BIN
src/assets/img/icon1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

BIN
src/assets/img/icon2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

BIN
src/assets/img/icon3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

BIN
src/assets/img/icon4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

BIN
src/assets/img/jkA.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 B

BIN
src/assets/img/jkRobot.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 314 B

BIN
src/assets/img/report.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

BIN
src/assets/img/return.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 994 B

BIN
src/assets/img/search.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 932 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 704 B

BIN
src/assets/img/task_tri.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
src/assets/img/tip.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 338 B

BIN
src/assets/img/title1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
src/assets/img/title2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 609 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 559 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 375 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 260 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

BIN
src/assets/img/徽标.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 233 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 B

BIN
src/assets/img/故障.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

BIN
src/assets/img/标题.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 400 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 284 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 284 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 852 B

Some files were not shown because too many files have changed in this diff Show More