Files
4.0/src/renderer/api/gisAPI.js

1188 lines
22 KiB
JavaScript
Raw Normal View History

2025-07-03 17:39:09 +08:00
import { request } from "@/utils/request";
import { request_get } from "../utils/request";
/**
* 获取配置信息
* @return {*}
*/
export function getIniInfo() {
return request({
url: "/api/v1/ini/info",
method: "get",
});
}
/**
* 获取图层指挥舱的记录
* @return {*}
*/
export function get_source_list() {
return request({
url: "/api/v1/source/list",
method: "post",
data: {},
});
}
/**
* 添加记录
* @param data
* @return {*}
*/
export function addSource(data) {
if (!data.tree_index) {
let nodes = window.treeObj.getSelectedNodes();
console.log("nodes", nodes);
// 获取最大tree_index的辅助函数
const getMaxTreeIndex = (items) => {
let maxIndex = 0;
if (items && items.length > 0) {
items.forEach((item) => {
if (item.tree_index > maxIndex) {
maxIndex = item.tree_index;
}
});
}
return maxIndex;
};
if (nodes.length > 0) {
// 检查当前节点是否有子节点
let children = nodes[0].children;
if (children && children.length > 0) {
// 从子节点中获取最大tree_index
data.tree_index = getMaxTreeIndex(children) + 1;
} else {
// 获取父节点
let parentNode = nodes[0].getParentNode();
if (parentNode) {
// 从父节点的子节点中获取最大tree_index
data.tree_index = getMaxTreeIndex(parentNode.children) + 1;
} else {
// 没有父节点,获取根节点列表
data.tree_index = window.treeObj.getNodes().length + 1;
}
}
} else {
// 没有选中节点,获取根节点列表
// 获取根节点列表,处理可能为undefined的情况
const nodes = window.treeObj.getNodes() || [];
data.tree_index = nodes.length + 1;
}
}
console.log("addSource", data);
return request({
url: "/api/v1/source/add",
method: "post",
data,
});
}
/**
* 添加点标注
*/
export function addPoint(data, cb) {
return request({
url: "/api/v1/source/add-point",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 删除记录
* @param data
* @return {*}
*/
export function delSource(data) {
return request({
url: "/api/v1/source/del",
method: "post",
data,
});
}
/*export function hideSource(data, cb) {
return request({
url: "/api/v1/source/hide",
method: "post",
data
});
}*/
let requestCallback = (res, cb, notice = true) => {
if ([0, 200].includes(res.code)) {
if (notice)
$root_home.$message({
message: "操作成功",
type: "success",
});
cb(res.data);
} else {
$root_home.$message.error(res.message);
cb("error");
}
};
/**
* 隐藏地图上的所显示的资源
* @param data
* @param cb
*/
export function hideSource(data, cb) {
request({
url: "/api/v1/source/hide",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 显示地图上的所隐藏的资源
* @param data
* @param cb
*/
export function showSource(data, cb) {
request({
url: "/api/v1/source/show",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 更新资源父id和在树上的顺序
* @param data
* @param cb
*/
export function updatePidTree_index(data, cb) {
request({
url: "/api/v1/source/update-pid-tree_index",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 更新资源名称和资源自定义参数
* @param data
* @param cb
*/
export function updateInfo(
data = {
source_id: "",
source_name: "",
detail: "",
},
cb
) {
request({
url: "/api/v1/source/update-info",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
export function updatePid(data = { source_ids: [], p_id: "", trees: [] }, cb) {
request({
url: "/api/v1/source/update-pid-tree_index",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/*查询bim构件信息*/
export function getBimInfo(data = { source_id: "", bim_id: "" }, cb) {
request_get("/api/v1/bim/queryInfos", data).then((res) => {
requestCallback(res, cb, false);
});
}
/*更新bim构件信息*/
export function addBimInfo(
data = { source_id: "", bim_id: "", detail: "" },
cb
) {
request({
url: "/api/v1/bim/addInfos",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 导入模型库
* @param data {model_lib_path}: 模型库路径(文件)
* @param cb
*/
export function importModel(data = { model_lib_path: "" }, cb) {
request({
url: "/api/v1/model/import",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
/**
* 获取模型列表
* @param cb
*/
export function modelList(cb, data = { page: 1, page_size: 0 }) {
request({
url: "/api/v1/model/list",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
/**
* 创建模型库
* @param data
* @param cb
*/
export function createModel(
data = { model_lib_name: "", model_lib_path: "" },
cb
) {
request({
url: "/api/v1/model/create",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 添加模型
* @param data
*/
export function addModel(data = { model_paths: [], p_id: "" }, cb) {
request({
url: "/api/v1/model/add",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/*
* 添加模型类型
* */
export function addModelType(data = { type_name: "" }, cb) {
request({
url: "/api/v1/model/type/add",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/*
* 删除模型类型
* */
export function delModelType(data = { type_id: "" }, cb) {
request({
url: "/api/v1/model/type/del",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/*
* 修改模型类型
* */
export function editModelType(data = { type_name: "", type_id: "" }, cb) {
request({
url: "/api/v1/model/type/edit",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
export function getModelType(cb) {
request_get("/api/v1/model/type/list", {}).then((res) => {
requestCallback(res, cb, false);
});
}
/**
* 更新模型缩略图
* @param data
*/
export function updatePoster(
data = {
model_id: "string",
poster_path: "string",
}
) {
return request({
url: "/api/v1/model/update-poster",
method: "post",
data,
// timeout: 10000000,
});
}
/**
* 删除模型缩略图
* @param data
*/
export function delModel(
data = {
model_id: "string",
},
cb
) {
request({
url: "/api/v1/model/del",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/*
*创建军标库
* */
export function createGraphLabel(
data = { junbiao_lib_path: "", junbiao_lib_name: "'" },
cb
) {
request({
url: "/api/v1/junbiao_2d/create",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 导入军标库
* @param data {model_lib_path}: 模型库路径(文件)
* @param cb
*/
export function importGraphLabel(data = { junbiao_lib_path: "" }, cb) {
request({
url: "/api/v1/junbiao_2d/import",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
/*
* 获取军标类型(同时返回对应类型下的军标)
* */
export function getGraphLabelType(type, cb) {
// request_get("/api/v1/junbiao_2d/type/list", {}).then((res) => {
// requestCallback(res, cb, false);
// });
request_get("/api/v1/junbiao_2d/type/list", { imgType: type }).then((res) => {
console.log("getGraphLabelType", res);
// res=res.data
// res.data = res.data.list
requestCallback(res, cb, false);
});
}
/*
* 获取军标类型(同时返回对应类型下的军标)
* */
export function getGraphLabelType2(cb) {
request_get("/api/v1/junbiao_2d/type/list", {}).then((res) => {
requestCallback(res, cb, false);
});
}
/*
* 添加军标类型
* */
export function addJunbiaoType(data = { type_name: "", type_id: "" }, cb) {
request({
url: "/api/v1/junbiao_2d/type/add",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/*
* 修改军标类型
* */
export function editGraphLabelType(data = { type_name: "", type_id: "" }, cb) {
request({
url: "/api/v1/junbiao_2d/type/edit",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
// $root_home_index.$message.warning("后端无相关接口")
}
/*
* 删除军标类型
* */
export function delGraphLabelType(data = { type_id: "" }, cb) {
request({
url: "/api/v1/junbiao_2d/type/del",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 添加军标
* @param data
*/
export function addGraphLabel(data = { name: "", p_id: "", data: "" }, cb) {
request({
url: "/api/v1/junbiao_2d/add",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 删除军标
* @param data
*/
export function delGraphLabels(data = { jun_biao_id: "" }, cb) {
request({
url: "/api/v1/junbiao_2d/del",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
export function editGraphLabel(data = { jun_biao_id: "", name: "" }, cb) {
request({
url: "/api/v1/junbiao_2d/edit",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 获取角色列表
* @param cb
*/
export function roleList(cb, data = { page: 1, page_size: 0 }) {
request_get("/api/v1/role/list", data).then((res) => {
requestCallback(res, cb, false);
});
}
/**
* 删除角色{role_id: 0}
* @param cb
*/
export function delRole(data, cb) {
request({
url: "/api/v1/role/del",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 创建角色
* @param cb
*/
export function createRole(
data = {
role_name: "",
},
cb
) {
request({
url: "/api/v1/role/add",
method: "post",
data,
}).then((res) => {
console.log("createUser得 requestCallback", res);
requestCallback(res, cb);
});
}
// 获取角色权限-yjq
export function getRole(params) {
return request({
url: "/api/v1/role/get",
method: "get",
params,
});
}
/**
* 角色权限修改-yjs
* @param cb
*/
export function editRole(
data = {
role_id: "",
key: "",
status: "",
},
cb
) {
request({
url: "/api/v1/role/edit",
method: "post",
data,
}).then((res) => {
console.log("createUser得 requestCallback", res);
requestCallback(res, cb);
});
}
/**
* 给用户添加角色-yjs
* @param cb
*/
export function useraddRole(
data = {
username: "",
role_id: "",
},
cb
) {
request({
url: "/api/v1/user/addRole",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 获取用户列表
* @param cb
*/
export function userList(cb, data = { page: 1, page_size: 0, depart_id: "" }) {
request_get("/api/v1/user/list", data).then((res) => {
requestCallback(res, cb, false);
});
}
/**
* 设置用户状态 (1:禁用0启用)
* @param cb
*/
export function userState(data = { username: "", status: 0 }, cb) {
request({
url: "/api/v1/user/state",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 删除用户
* @param cb
*/
export function delUser(data = { username: "" }, cb) {
request({
url: "/api/v1/user/del",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 创建用户
* @param cb
*/
export function createUser(
data = {
username: "",
nick_name: "",
depart_id: "",
password: "",
password2: "",
},
cb
) {
request({
url: "/api/v1/user/sign-up",
method: "post",
data,
}).then((res) => {
console.log("createUser得 requestCallback", res);
requestCallback(res, cb);
});
}
export function uploadExcel(formData, cb) {
console.log(formData);
request({
url: "/api/v1/user/import",
method: "post",
data: formData,
}).then((res) => {
console.log("createUser得 requestCallback", res);
requestCallback(res, cb);
});
}
/**
* 部门列表-yjq
* @param cb
*/
export function listDepart(params) {
return request({
url: "/api/v1/depart/list",
method: "get",
params,
});
}
/**
* 删除部门-yjq
* @param cb
*/
export function delDepart(data = { depart_id: "" }, cb) {
request({
url: "/api/v1/depart/del",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 添加部门-yjq
* @param cb
*/
export function addDepart(data = { depart_name: "", p_id: "" }, cb) {
request({
url: "/api/v1/depart/add",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 修改部门-yjq
* @param cb
*/
export function editDepart(
data = { depart_id: "", p_id: "", depart_name: "" },
cb
) {
request({
url: "/api/v1/depart/edit",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 检查授权
* @param cb
*/
export function checkAuth(url = "", cb) {
console.log((url ? url : "") + "/yjearth4.0/api/v1/auth/check");
request({
url: (url ? url : "") + "/yjearth4.0/api/v1/auth/check",
method: "post",
}).then((res) => {
requestCallback(res, cb, false);
});
}
/**
* 导入POI
* @param cb
*/
export function importPOI(data = { path: "" }, cb) {
request({
url: "/api/v1/poi/import",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 查询POI
* @param cb
*/
export function queryPOI(
data = {
key: "",
page: 1,
page_size: 5,
},
cb
) {
request_get("/api/v1/poi/query", data).then((res) => {
requestCallback(res, cb);
});
}
/*查询省份*/
export function getProvince(cb) {
request_get("/api/v1/poi/getProvince", {}).then((res) => {
requestCallback(res, cb, false);
});
}
export function queryByArea(data = { area: [], province_id: "" }, cb) {
request({
url: "/api/v1/poi/queryByArea",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
// 同步资源
export function tongbus(cb) {
request({
url: "/api/v1/source/tongbu",
method: "post",
data: {},
}).then((res) => {
requestCallback(res, cb);
});
}
export function junbiaoList(data, cb) {
request({
url: "/api/v1/junbiao/list",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
export function updateLayerIndex(data, cb) {
request({
url: "/api/v1/source/update_layer_index",
method: "post",
data: { params: data },
}).then((res) => {
requestCallback(res, cb);
});
}
export function getTinymce() {}
export function uploadImg(data, cb) {}
/*
* 态势新增
* */
export function addSituation(data = { ts_name: "", Ts_data: "" }, cb) {
request({
url: "/api/v1/ts/add",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/*
* 态势列表
* */
export function listSituation(data = {}, cb) {
request_get("/api/v1/ts/list", {}).then((res) => {
requestCallback(res, cb, false);
});
}
/*
* 态势编辑
* */
export function editSituation(data = {}, cb) {
request({
url: "/api/v1/ts/edit",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
*
*/
export function getUrl(data = {}, cb) {
request({
url: "/data/service/load-compact-service",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 导入路网
*/
export function importLuWang(data = { path: "" }, cb) {
request({
url: "/api/v1/pathPlan/import",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/*
*查询路径
*/
export function queryRoute(data = {}, cb) {
request({
url: "/api/v1/pathPlan/query",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
/**
* 添加无人机航拍图片
*/
export function addPicture(data = {}, cb) {
request({
url: "/api/v1/picture/import",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
/**
* 添加全景图片
*/
export function addPanorama(data = {}, cb) {
request({
url: "/api/v1/vr/import",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
/**
* 获取北斗卫星的链接状态
*/
export function getStatus(cb) {
request({
url: "/api/v1/gps/current_state",
method: "get",
}).then((res) => {
requestCallback(res, cb, false);
});
}
// 根据VR图片查找其邻居并计算距离和方位角 http://127.0.0.1:8890/yjearth4.0/api/v1/vr/find_neighbor
export function find_neighbor(data, cb) {
request({
url: "/api/v1/vr/find_neighbor",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
// 获取自定义列表
export function zidinyi(data, cb) {
request({
url: "/api/v1/icon/list",
method: "get",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
// http://192.168.110.19:8891/yjearth4.0
export function add_default(data, cb) {
request({
url: "/api/v1/source/add_default",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
// 加载数据进度 http://192.168.110.43:8891/yjearth4.0/api/v1/service/progress
export function service_progress(data) {
return request({
url: "/api/v1/service/progress",
method: "get",
data,
});
}
// 获取gps串口列表
export function getGpsList(cb) {
request_get("/api/v1/gps/list", {}).then((res) => {
requestCallback(res, cb, false);
});
}
//更新gps的串口更新后需要重启http://127.0.0.1:8891/yjearth4.0/api/v1/gps/update
export function updateGps(data = { com: "" }, cb) {
request({
url: "/api/v1/gps/update",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb);
});
}
// 0827
// 获取isc平台信息
export function getIscInfo(cb) {
request_get("/api/v1/isc/info", {}).then((res) => {
requestCallback(res, cb, false);
});
}
// 设置isc平台信息
export function setIscInfo(data, cb) {
request({
url: "/api/v1/isc/info",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
//从isc平台同步监控点列表到数据库
export function tongbuIsc(data = {}, cb) {
request({
url: "/api/v1/isc/tongbu",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
// 监控点预览地址
export function getIscPreviewURL(data = { cameraIndexCode: "" }, cb) {
request_get("/api/v1/isc/previewURL", data).then((res) => {
requestCallback(res, cb, false);
});
}
export function getBatteryInfo(cb) {
request_get("/api/v1/battery/get", {}).then((res) => {
requestCallback(res, cb, false);
});
}
export function setBattery(data = {}, cb) {
request({
url: "/api/v1/battery/set",
method: "post",
data,
}).then((res) => {
requestCallback(res, cb, false);
});
}
// 上传链接link
export function linkFile(data = {}) {
return request({
url: "/api/v1/linkFile/import",
method: "post",
data,
});
}
// 删除自定义图标 /api/v1/icon/batch-delete
export function deleteIcon(data) {
return request({
url: "/api/v1/icon/batch-delete",
method: "delete",
data,
});
}
// 获取文件夹 /api/v1/customization/qinghai/haidong/dir/list
export function getFolder(data) {
return request({
url: "/api/v1/customization/qinghai/haidong/dir/list",
method: "get",
data,
});
}
// /api/v1/customization/qinghai/haidong/dir/add
// 添加文件夹
export function addFolder(data) {
return request({
url: "/api/v1/customization/qinghai/haidong/dir/add",
method: "post",
data,
});
}
// /api/v1/customization/qinghai/haidong/import
// 上传文件
export function addFile(data) {
return request({
url: "/api/v1/customization/qinghai/haidong/import",
method: "post",
data,
timeout: 1000000,
});
}
// 删除文件夹 /api/v1/customization/qinghai/haidong/dir/del
export function delFolder(data) {
return request({
url: "/api/v1/customization/qinghai/haidong/dir/del",
method: "post",
data,
});
}
// 获取文件列表 /api/v1/customization/qinghai/haidong/get_data_by_fileid
export function getFileList(data) {
return request({
url: "/api/v1/customization/qinghai/haidong/get_data_by_fileid",
method: "get",
params: data,
});
}
//更新label /api/v1/customization/qinghai/haidong/update/label
export function updateLabel(data) {
return request({
url: "/api/v1/customization/qinghai/haidong/update/label",
method: "post",
data,
});
}
// /api/v1/customization/qinghai/haidong/update/detail
// 更新详情
export function updateDetail(data) {
return request({
url: "/api/v1/customization/qinghai/haidong/update/detail",
method: "post",
data,
});
}
// /api/v1/customization/qinghai/haidong/update/show
export function updateShow(data) {
return request({
url: "/api/v1/customization/qinghai/haidong/update/show",
method: "post",
data,
});
}
// 工程导入
export function projectImport(data) {
return request({
url: "/api/v1/project/import",
method: "post",
data,
});
}
// 字段对应 /api/v1/source/import_tablehead
export function importTablehead(data) {
return request({
url: "/api/v1/source/import_tablehead",
method: "post",
data,
});
}
// 无人机配置添加
export function addUavConfig(data) {
return request({
url: "/api/v1/system/add_plane_service",
method: "post",
data,
});
}
// 删除无人机配置
export function delUavConfig(data) {
return request({
url: "/api/v1/system/del_plane_service",
method: "post",
data,
});
}
// 获取无人机配置列表
export function getUavConfig(data) {
return request({
url: "/api/v1/system/plane_service_list",
method: "get",
data,
});
}
// 更新无人机配置
export function updateUavConfig(data) {
return request({
url: "/api/v1/system/update_plane_service",
method: "post",
data,
});
}
// 选中无人机配置
export function selectUavConfig(data) {
return request({
url: "/api/v1/system/select_plane_service",
method: "post",
data,
});
}