소스 검색

refactor(api): simplify camera API endpoint paths

- Updated PTZ control and preset management API endpoint paths to remove redundant `/control` segment, enhancing clarity and consistency.
- Refactored StreamPlayer.vue for improved readability by consolidating button and component attributes into single lines.
yb 13 시간 전
부모
커밋
f4894a301c
2개의 변경된 파일16개의 추가작업 그리고 16개의 파일을 삭제
  1. 6 6
      src/api/camera.ts
  2. 10 10
      src/views/live-stream/components/StreamPlayer.vue

+ 6 - 6
src/api/camera.ts

@@ -63,7 +63,7 @@ export interface PTZControlRequest {
 }
 
 export function ptzControl(data: PTZControlRequest): Promise<BaseResponse> {
-  return post(`/camera/control/ptz/control`, data)
+  return post(`/camera/ptz/control`, data)
 }
 
 // PTZ 能力
@@ -72,7 +72,7 @@ export interface PTZCapabilitiesRequest {
 }
 
 export function getPTZCapabilities(data: PTZCapabilitiesRequest): Promise<BaseResponse> {
-  return post(`/camera/control/ptz/capabilities`, data)
+  return post(`/camera/ptz/capabilities`, data)
 }
 
 // ==================== 预置位 ====================
@@ -89,7 +89,7 @@ export interface PresetListRequest {
 }
 
 export function presetList(data: PresetListRequest): Promise<IBaseResponse<PresetInfo[]>> {
-  return post(`/camera/control/preset/list`, data)
+  return post(`/camera/preset/list`, data)
 }
 
 // 跳转预置位
@@ -99,7 +99,7 @@ export interface PresetGotoRequest {
 }
 
 export function presetGoto(data: PresetGotoRequest): Promise<IBaseResponse<boolean>> {
-  return post(`/camera/control/preset/goto`, data)
+  return post(`/camera/preset/goto`, data)
 }
 
 // 设置预置位
@@ -112,7 +112,7 @@ export interface PresetSetRequest {
 }
 
 export function presetSet(data: PresetSetRequest): Promise<BaseResponse> {
-  return post(`/camera/control/preset/set`, data)
+  return post(`/camera/preset/set`, data)
 }
 
 // 删除预置位
@@ -122,7 +122,7 @@ export interface PresetRemoveRequest {
 }
 
 export function presetRemove(data: PresetRemoveRequest): Promise<BaseResponse> {
-  return post(`/camera/control/preset/remove`, data)
+  return post(`/camera/preset/remove`, data)
 }
 
 // ==================== Admin APIs ====================

+ 10 - 10
src/views/live-stream/components/StreamPlayer.vue

@@ -162,47 +162,47 @@
               <span class="collapse-title">{{ t('PTZ') }}</span>
             </template>
             <div class="ptz-grid">
-              <div class="ptz-btn" @mousedown="$emit('ptz', 'UP_LEFT')">
+              <div class="ptz-btn" @mousedown="$emit('ptz', 'up_left')">
                 <el-icon size="24">
                   <Icon icon="mdi:arrow-top-left" width="24" height="24" />
                 </el-icon>
               </div>
-              <div class="ptz-btn" @mousedown="$emit('ptz', 'UP')">
+              <div class="ptz-btn" @mousedown="$emit('ptz', 'up')">
                 <el-icon size="24">
                   <Icon icon="mdi:arrow-top" width="24" height="24" />
                 </el-icon>
               </div>
-              <div class="ptz-btn" @mousedown="$emit('ptz', 'UP_RIGHT')">
+              <div class="ptz-btn" @mousedown="$emit('ptz', 'up_right')">
                 <el-icon size="24">
                   <Icon icon="mdi:arrow-top-right" width="24" height="24" />
                 </el-icon>
               </div>
-              <div class="ptz-btn" @mousedown="$emit('ptz', 'LEFT')">
+              <div class="ptz-btn" @mousedown="$emit('ptz', 'left')">
                 <el-icon size="24">
                   <Icon icon="mdi:arrow-left" width="24" height="24" />
                 </el-icon>
               </div>
-              <div class="ptz-btn ptz-center" @click="$emit('ptzStop')">
+              <div class="ptz-btn ptz-center" @click="$emit('ptz', 'stop')">
                 <el-icon size="24">
                   <Icon icon="mdi:stop" width="24" height="24" />
                 </el-icon>
               </div>
-              <div class="ptz-btn" @mousedown="$emit('ptz', 'RIGHT')">
+              <div class="ptz-btn" @mousedown="$emit('ptz', 'right')">
                 <el-icon size="24">
                   <Icon icon="mdi:arrow-right" width="24" height="24" />
                 </el-icon>
               </div>
-              <div class="ptz-btn" @mousedown="$emit('ptz', 'DOWN_LEFT')">
+              <div class="ptz-btn" @mousedown="$emit('ptz', 'down_left')">
                 <el-icon size="24">
-                  <Icon icon="mdi:arrow-left" width="24" height="24" />
+                  <Icon icon="mdi:arrow-bottom-left" width="24" height="24" />
                 </el-icon>
               </div>
-              <div class="ptz-btn" @mousedown="$emit('ptz', 'DOWN')">
+              <div class="ptz-btn" @mousedown="$emit('ptz', 'down')">
                 <el-icon size="24">
                   <Icon icon="mdi:arrow-down" width="24" height="24" />
                 </el-icon>
               </div>
-              <div class="ptz-btn" @mousedown="$emit('ptz', 'DOWN_RIGHT')">
+              <div class="ptz-btn" @mousedown="$emit('ptz', 'down_right')">
                 <el-icon size="24">
                   <Icon icon="mdi:arrow-bottom-right" width="24" height="24" />
                 </el-icon>