import { IncidentItem } from '@/api/incident'; import { ResourceItemDetail, SingleDeviceItem, getResourceItem, ResourceItemDetailResponse, } from '@/api/resource'; import { useCommonStore } from '@/store'; import { MarkerType } from "@/store/useMarkerStore"; export const GET_INCIDENT_DIALOG_HTML = ( item: MarkerType, callback = () => {}, ) => { const commonStore = useCommonStore(); const el = document.createElement('div'); el.innerHTML = `
事件信息
标题:${item?.name ?? '-'}
来源:${ commonStore.globalDict['zhdd_incident_type']?.find( (i) => i.dictValue.toString() === `${item?.source}`, )?.dictLabel ?? '-' }
类型:${ commonStore.globalDict['zhdd_incident_type']?.find( (i) => i.dictValue.toString() === `${item?.type}`, )?.dictLabel ?? '-' }
时间:${item?.createTime ?? '-'}
地点:${item?.addr ?? '-'}
描述:${item?.des ?? '-'}
`; const action = document.createElement('div'); action.className = 'action'; const button = document.createElement('button'); button.className = 'el-button el-button--primary el-button--small'; button.innerHTML = '查看'; action.appendChild(button); button.addEventListener('click', callback); el.appendChild(action); return el; }; // • 视频打开后显示数据: // a.视频点位编号 // b.视频点位地点 // c.按钮可以打开一个窗口,然后窗口中显示摄像头拍摄内容 (目前还无该项目数据,暂定为该内容) export const GET_VIDEO_DIALOG_HTML = ( { name, addr, }: MarkerType, callback = () => {}, ) => { const el = document.createElement('div'); el.innerHTML = `
视频监控信息
编号:${name ?? '-'}
地点:${addr ?? '-'}
`; const action = document.createElement('div'); action.className = 'action'; const button = document.createElement('button'); button.className = 'el-button el-button--primary el-button--small'; button.innerHTML = '查看'; action.appendChild(button); button.addEventListener('click', callback); el.appendChild(action); return el; }; // • 应急仓库 // a.应急仓库名称 // b.应急仓库地点 // c.应急仓库管理单位 // d.联系人 // e.联系电话 // f.按钮(方式一:跳转应急仓库详情查看物资情况,方式二:在按钮旁边打开一个列表,该列表显示应急仓库的物资情况:物资名称、型号、数量) export const GET_WAREHOUSE_DIALOG_HTML = (item: ResourceItemDetail) => { var header = ['序号', '名称', '型号', '规格', '仓储数量', '可用数量', '单位']; const el = document.createElement('div'); el.innerHTML = `
应急仓库信息
仓库名称:${item.name ?? '-'}
地点:${item.address ?? '-'}
管理单位:${item.manageUnit ?? '-'}
联系人:${item.contactName ?? '-'}
更新时间:${item.updateTime ?? '-'}
联系方式:${item.contactPhone ?? '-'}
${ header.map((i) => '').join("")}
' + i + '
`; return el; }; // • 应急车辆 // a.车牌号 // b.归属单位 // c.车辆类型 (应急车辆为实时位置,目前暂无具体数据) export const GET_VEHICLES_DIALOG_HTML = (item: ResourceItemDetail) => { const el = document.createElement('div'); el.innerHTML = `
应急车辆信息
车牌号:${item.name ?? '-'}
管理单位:${item.manageUnit ?? '-'}
车辆类型:${item.carType ?? '-'}
`; return el; }; // • 应急队伍 // a.队伍名称 // b.管理单位 // c.携带物资 // d.人数 // e. 联系人 // f.联系电话 export const GET_TEAM_DIALOG_HTML = (item: ResourceItemDetail) => { const el = document.createElement('div'); el.innerHTML = `
应急队伍信息
队伍名称:${item.name ?? '-'}
管理单位:${item.manageUnit ?? '-'}
携带物资:${item.carryGoods ?? '-'}
人数:${item.num ?? '-'}
联系人:${item.contactName ?? '-'}
联系方式:${item.contactPhone ?? '-'}
`; return el; }; export const GET_SINGLE_DEVICE_DIALOG_HTML = ( item: SingleDeviceItem, callback = () => {}, ) => { const el = document.createElement('div'); el.innerHTML = `
单兵设备
名称:${item.userName ?? '-'}
定位时间:${item.time ?? '-'}
`; const action = document.createElement('div'); action.className = 'action'; const button = document.createElement('button'); button.className = 'el-button el-button--primary el-button--small'; button.innerHTML = '查看单兵'; action.appendChild(button); button.addEventListener('click', callback); // const action2 = document.createElement('div'); // action2.className = 'action'; // const button2 = document.createElement('button'); // button2.className = 'el-button el-button--primary el-button--small'; // button2.innerHTML = '查看视频'; // action2.appendChild(button); // button2.addEventListener('click', videoplay); el.appendChild(action); // el.appendChild(action2); console.log(el); return el; }; export const renderElement = (image: any) => { const el = document.createElement('div'); el.id = 'marker'; el.style.backgroundImage = `url(${image})`; el.style.backgroundSize = 'cover'; el.style.width = (24 * 2) / 576 + 'rem'; el.style.minWidth = '24px'; el.style.height = (25 * 2) / 576 + 'rem'; el.style.minHeight = '25px'; return el; };