修bug
This commit is contained in:
@@ -54,3 +54,42 @@ export const deleteDevice = (id) => {
|
|||||||
export const manualControlDevice = (id, manualControlData) => {
|
export const manualControlDevice = (id, manualControlData) => {
|
||||||
return http.post(`/api/v1/devices/manual-control/${id}`, manualControlData);
|
return http.post(`/api/v1/devices/manual-control/${id}`, manualControlData);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// AreaControllerApi 封装
|
||||||
|
export const AreaControllerApi = {
|
||||||
|
list: async () => {
|
||||||
|
const response = await getDevices();
|
||||||
|
return {
|
||||||
|
...response,
|
||||||
|
data: response.data.filter(device => device.type === 'area_controller')
|
||||||
|
};
|
||||||
|
},
|
||||||
|
create: (deviceData) => {
|
||||||
|
return createDevice({ ...deviceData, type: 'area_controller' });
|
||||||
|
},
|
||||||
|
getById: (id) => {
|
||||||
|
return getDeviceById(id);
|
||||||
|
},
|
||||||
|
update: (id, deviceData) => {
|
||||||
|
return updateDevice(id, { ...deviceData, type: 'area_controller' });
|
||||||
|
},
|
||||||
|
delete: (id) => {
|
||||||
|
return deleteDevice(id);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// DeviceApi 封装
|
||||||
|
export const DeviceApi = {
|
||||||
|
create: (deviceData) => {
|
||||||
|
return createDevice({ ...deviceData, type: 'device' });
|
||||||
|
},
|
||||||
|
getById: (id) => {
|
||||||
|
return getDeviceById(id);
|
||||||
|
},
|
||||||
|
update: (id, deviceData) => {
|
||||||
|
return updateDevice(id, { ...deviceData, type: 'device' });
|
||||||
|
},
|
||||||
|
delete: (id) => {
|
||||||
|
return deleteDevice(id);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import http from '../utils/http';
|
|||||||
* 获取系统中所有设备模板的列表
|
* 获取系统中所有设备模板的列表
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const getDeviceTemplates = () => {
|
const getDeviceTemplates = () => {
|
||||||
return http.get('/api/v1/device-templates');
|
return http.get('/api/v1/device-templates');
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -13,7 +13,7 @@ export const getDeviceTemplates = () => {
|
|||||||
* @param {object} deviceTemplateData - 设备模板信息,对应 dto.CreateDeviceTemplateRequest
|
* @param {object} deviceTemplateData - 设备模板信息,对应 dto.CreateDeviceTemplateRequest
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const createDeviceTemplate = (deviceTemplateData) => {
|
const createDeviceTemplate = (deviceTemplateData) => {
|
||||||
return http.post('/api/v1/device-templates', deviceTemplateData);
|
return http.post('/api/v1/device-templates', deviceTemplateData);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -22,7 +22,7 @@ export const createDeviceTemplate = (deviceTemplateData) => {
|
|||||||
* @param {string} id - 设备模板ID
|
* @param {string} id - 设备模板ID
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const getDeviceTemplateById = (id) => {
|
const getDeviceTemplateById = (id) => {
|
||||||
return http.get(`/api/v1/device-templates/${id}`);
|
return http.get(`/api/v1/device-templates/${id}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -32,7 +32,7 @@ export const getDeviceTemplateById = (id) => {
|
|||||||
* @param {object} deviceTemplateData - 要更新的设备模板信息,对应 dto.UpdateDeviceTemplateRequest
|
* @param {object} deviceTemplateData - 要更新的设备模板信息,对应 dto.UpdateDeviceTemplateRequest
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const updateDeviceTemplate = (id, deviceTemplateData) => {
|
const updateDeviceTemplate = (id, deviceTemplateData) => {
|
||||||
return http.put(`/api/v1/device-templates/${id}`, deviceTemplateData);
|
return http.put(`/api/v1/device-templates/${id}`, deviceTemplateData);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -41,6 +41,14 @@ export const updateDeviceTemplate = (id, deviceTemplateData) => {
|
|||||||
* @param {string} id - 设备模板ID
|
* @param {string} id - 设备模板ID
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const deleteDeviceTemplate = (id) => {
|
const deleteDeviceTemplate = (id) => {
|
||||||
return http.delete(`/api/v1/device-templates/${id}`);
|
return http.delete(`/api/v1/device-templates/${id}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const DeviceTemplateApi = {
|
||||||
|
getDeviceTemplates,
|
||||||
|
createDeviceTemplate,
|
||||||
|
getDeviceTemplateById,
|
||||||
|
updateDeviceTemplate,
|
||||||
|
deleteDeviceTemplate,
|
||||||
|
};
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { AreaControllerApi, DeviceApi } from './device.js';
|
import { AreaControllerApi, DeviceApi } from './device.js';
|
||||||
import PlanApi from './plan.js';
|
import { PlanApi } from './plan.js';
|
||||||
import UserApi from './user.js';
|
import { UserApi } from './user.js';
|
||||||
import DeviceTemplateApi from './deviceTemplate.js'; // 导入设备模板API
|
import { DeviceTemplateApi } from './deviceTemplate.js'; // 导入设备模板API
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* API客户端
|
* API客户端
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import http from '../utils/http';
|
|||||||
* 获取所有计划的列表
|
* 获取所有计划的列表
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const getPlans = () => {
|
const getPlans = () => {
|
||||||
return http.get('/api/v1/plans');
|
return http.get('/api/v1/plans');
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -13,7 +13,7 @@ export const getPlans = () => {
|
|||||||
* @param {object} planData - 计划信息,对应 dto.CreatePlanRequest
|
* @param {object} planData - 计划信息,对应 dto.CreatePlanRequest
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const createPlan = (planData) => {
|
const createPlan = (planData) => {
|
||||||
return http.post('/api/v1/plans', planData);
|
return http.post('/api/v1/plans', planData);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -22,7 +22,7 @@ export const createPlan = (planData) => {
|
|||||||
* @param {number} id - 计划ID
|
* @param {number} id - 计划ID
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const getPlanById = (id) => {
|
const getPlanById = (id) => {
|
||||||
return http.get(`/api/v1/plans/${id}`);
|
return http.get(`/api/v1/plans/${id}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -32,7 +32,7 @@ export const getPlanById = (id) => {
|
|||||||
* @param {object} planData - 更新后的计划信息,对应 dto.UpdatePlanRequest
|
* @param {object} planData - 更新后的计划信息,对应 dto.UpdatePlanRequest
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const updatePlan = (id, planData) => {
|
const updatePlan = (id, planData) => {
|
||||||
return http.put(`/api/v1/plans/${id}`, planData);
|
return http.put(`/api/v1/plans/${id}`, planData);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -41,7 +41,7 @@ export const updatePlan = (id, planData) => {
|
|||||||
* @param {number} id - 计划ID
|
* @param {number} id - 计划ID
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const deletePlan = (id) => {
|
const deletePlan = (id) => {
|
||||||
return http.delete(`/api/v1/plans/${id}`);
|
return http.delete(`/api/v1/plans/${id}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -50,7 +50,7 @@ export const deletePlan = (id) => {
|
|||||||
* @param {number} id - 计划ID
|
* @param {number} id - 计划ID
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const startPlan = (id) => {
|
const startPlan = (id) => {
|
||||||
return http.post(`/api/v1/plans/${id}/start`);
|
return http.post(`/api/v1/plans/${id}/start`);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -59,6 +59,16 @@ export const startPlan = (id) => {
|
|||||||
* @param {number} id - 计划ID
|
* @param {number} id - 计划ID
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const stopPlan = (id) => {
|
const stopPlan = (id) => {
|
||||||
return http.post(`/api/v1/plans/${id}/stop`);
|
return http.post(`/api/v1/plans/${id}/stop`);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const PlanApi = {
|
||||||
|
getPlans,
|
||||||
|
createPlan,
|
||||||
|
getPlanById,
|
||||||
|
updatePlan,
|
||||||
|
deletePlan,
|
||||||
|
startPlan,
|
||||||
|
stopPlan,
|
||||||
|
};
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import http from '../utils/http';
|
|||||||
* @param {object} userData - 用户信息,对应 dto.CreateUserRequest
|
* @param {object} userData - 用户信息,对应 dto.CreateUserRequest
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const createUser = (userData) => {
|
const createUser = (userData) => {
|
||||||
return http.post('/api/v1/users', userData);
|
return http.post('/api/v1/users', userData);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ export const createUser = (userData) => {
|
|||||||
* @param {object} credentials - 登录凭证,对应 dto.LoginRequest
|
* @param {object} credentials - 登录凭证,对应 dto.LoginRequest
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const login = (credentials) => {
|
const login = (credentials) => {
|
||||||
return http.post('/api/v1/users/login', credentials);
|
return http.post('/api/v1/users/login', credentials);
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -24,6 +24,12 @@ export const login = (credentials) => {
|
|||||||
* @param {object} params - 查询参数
|
* @param {object} params - 查询参数
|
||||||
* @returns {Promise<*>}
|
* @returns {Promise<*>}
|
||||||
*/
|
*/
|
||||||
export const getUserHistory = (id, params) => {
|
const getUserHistory = (id, params) => {
|
||||||
return http.get(`/api/v1/users/${id}/history`, { params });
|
return http.get(`/api/v1/users/${id}/history`, { params });
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const UserApi = {
|
||||||
|
createUser,
|
||||||
|
login,
|
||||||
|
getUserHistory,
|
||||||
|
};
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import {AreaControllerApi, DeviceApi} from '../api/device.js';
|
import {AreaControllerApi, DeviceApi, getDevices} from '../api/device.js';
|
||||||
|
|
||||||
class DeviceService {
|
class DeviceService {
|
||||||
/**
|
/**
|
||||||
@@ -7,9 +7,9 @@ class DeviceService {
|
|||||||
*/
|
*/
|
||||||
async getDevices() {
|
async getDevices() {
|
||||||
try {
|
try {
|
||||||
const [areaControllersResponse, devicesResponse] = await Promise.all([
|
const [areaControllersResponse, allDevicesResponse] = await Promise.all([
|
||||||
AreaControllerApi.list(),
|
AreaControllerApi.list(),
|
||||||
DeviceApi.list()
|
getDevices() // 使用通用的getDevices函数获取所有设备
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const areaControllers = (areaControllersResponse.data || []).map(controller => ({
|
const areaControllers = (areaControllersResponse.data || []).map(controller => ({
|
||||||
@@ -17,7 +17,9 @@ class DeviceService {
|
|||||||
type: 'area_controller' // 添加类型标识
|
type: 'area_controller' // 添加类型标识
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const devices = (devicesResponse.data || []).map(device => ({
|
const devices = (allDevicesResponse.data || [])
|
||||||
|
.filter(device => device.type === 'device') // 过滤出普通设备
|
||||||
|
.map(device => ({
|
||||||
...device,
|
...device,
|
||||||
type: 'device', // 添加类型标识
|
type: 'device', // 添加类型标识
|
||||||
parent_id: device.area_controller_id // 适配前端树形结构
|
parent_id: device.area_controller_id // 适配前端树形结构
|
||||||
@@ -60,10 +62,10 @@ class DeviceService {
|
|||||||
async getDevice(id, type) {
|
async getDevice(id, type) {
|
||||||
try {
|
try {
|
||||||
if (type === 'area_controller') {
|
if (type === 'area_controller') {
|
||||||
const response = await AreaControllerApi.get(id);
|
const response = await AreaControllerApi.getById(id);
|
||||||
return {...response.data, type: 'area_controller'};
|
return {...response.data, type: 'area_controller'};
|
||||||
} else {
|
} else {
|
||||||
const response = await DeviceApi.get(id);
|
const response = await DeviceApi.getById(id);
|
||||||
return {...response.data, type: 'device', parent_id: response.data.area_controller_id};
|
return {...response.data, type: 'device', parent_id: response.data.area_controller_id};
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|||||||
Reference in New Issue
Block a user