mapInfoTemplate.js 7.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388
  1. import { createMapChartWindowInfo } from "@/utils";
  2. /**
  3. 人口密度
  4. 公众消防安全常识知晓率
  5. 大型商业综合体数量
  6. 消防远程监控系统覆盖率
  7. 火灾亡人数
  8. 火灾直接财产损失数
  9. 火灾起数
  10. 百栋高层建筑消防站拥有率
  11. 百栋高层建筑高技术性能消防车拥有率
  12. 超高层建筑数量
  13. 重大火灾隐患数
  14. 高层建筑面积密度
  15. 高层建筑风险预警指数
  16. */
  17. function toPercent(val) {
  18. return `${val}`.substring(0, 8)
  19. }
  20. /**
  21. * 总览默认地图消息弹窗模板
  22. * @param {*} params
  23. * @returns
  24. */
  25. function DEFAULT(params) {
  26. const item = params.data.meta;
  27. const details = item.lists.map(item => item.split(',')).map(item => `<tr>
  28. <td>${item[0]}</td><td><span style="color:#ffb800;font-weight:400;text-align: right;">${item[1]}</span></td>
  29. </tr>`).join('')
  30. const score = item.综合得分
  31. let res = `
  32. <table>
  33. <tr>
  34. <td>综合得分 <span style="font-size: 24px;color:red;font-weight:600;">${(score || 0).toFixed(2)}</span></td>
  35. </tr>
  36. ${details}
  37. </table>
  38. `;
  39. return res;
  40. }
  41. /**
  42. * 超高层建筑
  43. * @param {*} params
  44. * @returns
  45. */
  46. function CGCJZ(params) {
  47. const item = params.data.meta;
  48. return `<p style="color: #fff;">超高层建筑 <span style="font-size: 24px;color:red;font-weight:bold;">${
  49. item.sl || 0
  50. }</span>栋</ps>`
  51. }
  52. /**
  53. * 高层建筑
  54. * @param {*} params
  55. * @returns
  56. */
  57. function GCJZ(params) {
  58. const item = params.data.meta;
  59. return `<p style="color: #fff;">高层建筑 <span style="font-size: 24px;color:red;font-weight:bold;">${
  60. item.sl || 0
  61. }</span>栋</ps>`
  62. }
  63. /**
  64. * 一般风险数
  65. * @param {*} params
  66. * @returns
  67. */
  68. function YBFX(params) {
  69. const item = params.data.meta;
  70. return `<p style="color: #fff;">一般风险 <span style="font-size: 24px;color:red;font-weight:bold;">${
  71. item.sl || 0
  72. }</span>栋</ps>`
  73. }
  74. /**
  75. * 重大风险数
  76. * @param {*} params
  77. * @returns
  78. */
  79. function ZDFX(params) {
  80. const item = params.data.meta;
  81. return `<p style="color: #fff;">重大风险 <span style="font-size: 24px;color:red;font-weight:bold;">${
  82. item.sl || 0
  83. }</span>栋</ps>`
  84. }
  85. /**
  86. * 较大风险数
  87. * @param {*} params
  88. * @returns
  89. */
  90. function JDFX(params) {
  91. const item = params.data.meta;
  92. return `<p style="color: #fff;">较大风险 <span style="font-size: 24px;color:red;font-weight:bold;">${
  93. item.sl || 0
  94. }</span>栋</ps>`
  95. }
  96. /**
  97. * 低风险数
  98. * @param {*} params
  99. * @returns
  100. */
  101. function DFX(params) {
  102. const item = params.data.meta;
  103. return `<p style="color: #fff;">低风险 <span style="font-size: 24px;color:red;font-weight:bold;">${
  104. item.sl || 0
  105. }</span>栋</ps>`
  106. }
  107. /**
  108. * 未整改隐患数
  109. * @param {*} params
  110. * @returns
  111. */
  112. function WZGYHS(params) {
  113. const item = params.data.meta;
  114. return `<p style="color: #fff;">未整改隐患 <span style="font-size: 24px;color:red;font-weight:bold;">${
  115. item.sl || 0
  116. }</span>栋</ps>`
  117. }
  118. /**
  119. * 无管理主体
  120. */
  121. function WGLZT(params) {
  122. const item = params.data.meta;
  123. return `<p style="color: #fff;">无管理主体 <span style="font-size: 24px;color:red;font-weight:bold;">${
  124. item.sl || 0
  125. }</span>栋</ps>`
  126. }
  127. /**
  128. * 无维保形式
  129. */
  130. function WWBXS(params) {
  131. const item = params.data.meta;
  132. return `<p style="color: #fff;">无维保形式 <span style="font-size: 24px;color:red;font-weight:bold;">${
  133. item.sl || 0
  134. }</span>栋</ps>`
  135. }
  136. /**
  137. * 无大修基金(消防设施有问题)
  138. */
  139. function WDXJJ(params) {
  140. const item = params.data.meta;
  141. return `<p style="color: #fff;">无大修基金(消防设施有问题) <span style="font-size: 24px;color:red;font-weight:bold;">${
  142. item.sl || 0
  143. }</span>栋</ps>`
  144. }
  145. /**
  146. * 接入物联网建筑数
  147. */
  148. function WLWJZS(params) {
  149. const item = params.data.meta;
  150. return `<p style="color: #fff;">接入物联网建筑 <span style="font-size: 24px;color:red;font-weight:bold;">${
  151. item.sl || 0
  152. }</span>栋</ps>`
  153. }
  154. /**
  155. * 告警数
  156. */
  157. function GJS(params) {
  158. const item = params.data.meta;
  159. return `<p style="color: #fff;">告警数 <span style="font-size: 24px;color:red;font-weight:bold;">${
  160. item.sl || 0
  161. }</span>个</ps>`
  162. }
  163. /**
  164. * 火灾起数月
  165. */
  166. function HZQSY(params) {
  167. const item = params.data.meta;
  168. return `<p style="color: #fff;">(本月)火灾起数 <span style="font-size: 24px;color:red;font-weight:bold;">${
  169. item.sl || 0
  170. }</span>起</ps>`
  171. }
  172. /**
  173. * 火灾起数年
  174. */
  175. function HZQSN(params) {
  176. const item = params.data.meta;
  177. return `<p style="color: #fff;">(本年)火灾起数 <span style="font-size: 24px;color:red;font-weight:bold;">${
  178. item.sl || 0
  179. }</span>起</ps>`
  180. }
  181. /**
  182. * 接入物联网楼栋数
  183. */
  184. function WLWLDS(params) {
  185. const item = params.data.meta;
  186. return `<p style="color: #fff;">接入物联网楼栋 <span style="font-size: 24px;color:red;font-weight:bold;">${
  187. item.sl || 0
  188. }</span>栋</ps>`
  189. }
  190. const MAP_INFO_TEMPLATE = {
  191. DEFAULT,
  192. CGCJZ,
  193. GCJZ,
  194. YBFX,
  195. ZDFX,
  196. JDFX,
  197. DFX,
  198. WZGYHS,
  199. /**
  200. * 无管理主体
  201. */
  202. WGLZT,
  203. /**
  204. * 无维保形式
  205. */
  206. WWBXS,
  207. /**
  208. * 无大修基金(消防设施有问题)
  209. */
  210. WDXJJ,
  211. /**
  212. * 接入物联网建筑数
  213. */
  214. WLWJZS,
  215. /**
  216. * 告警数
  217. */
  218. GJS,
  219. /**
  220. * 火灾起数月
  221. */
  222. HZQSY,
  223. /**
  224. * 火灾起数年
  225. */
  226. HZQSN,
  227. /**
  228. * 接入物联网楼栋数
  229. */
  230. WLWLDS
  231. }
  232. export function createInfoWindow(templateType,params) {
  233. return createMapChartWindowInfo({
  234. title: params.name,
  235. },
  236. () => MAP_INFO_TEMPLATE[templateType](params)
  237. )
  238. }
  239. export const TEMPLATE_TYPE = {
  240. /**
  241. * 总览默认
  242. */
  243. DEFAULT: 'DEFAULT',
  244. /**
  245. * 超高层建筑
  246. */
  247. CGCJZ: 'CGCJZ',
  248. /**
  249. * 高层建筑
  250. */
  251. GCJZ: 'GCJZ',
  252. /**
  253. * 一般风险
  254. */
  255. YBFX: 'YBFX',
  256. /**
  257. * 重大风险
  258. */
  259. ZDFX: 'ZDFX',
  260. /**
  261. * 较大风险
  262. */
  263. JDFX: 'JDFX',
  264. /**
  265. * 低风险
  266. */
  267. DFX: 'DFX',
  268. /**
  269. * 未整改隐患数
  270. */
  271. WZGYHS: 'WZGYHS',
  272. /**
  273. * 无管理主体
  274. */
  275. WGLZT: 'WGLZT',
  276. /**
  277. * 无维保形式
  278. */
  279. WWBXS: 'WWBXS',
  280. /**
  281. * 无大修基金(消防设施有问题)
  282. */
  283. WDXJJ: 'WDXJJ',
  284. /**
  285. * 接入物联网建筑数
  286. */
  287. WLWJZS: 'WLWJZS',
  288. /**
  289. * 告警数
  290. */
  291. GJS: 'GJS',
  292. /**
  293. * 火灾起数月
  294. */
  295. HZQSY: 'HZQSY',
  296. /**
  297. * 火灾起数年
  298. */
  299. HZQSN: 'HZQSN',
  300. /**
  301. * 接入物联网楼栋数
  302. */
  303. WLWLDS: 'WLWLDS'
  304. }
  305. export const TITLE_MAP = {
  306. /**
  307. * 总览默认
  308. */
  309. DEFAULT: 'DEFAULT',
  310. /**
  311. * 超高层建筑
  312. */
  313. CGCJZ: '超高层建筑数分布',
  314. /**
  315. * 高层建筑
  316. */
  317. GCJZ: '高层建筑数分布',
  318. /**
  319. * 一般风险
  320. */
  321. YBFX: '一般风险楼栋数分布',
  322. /**
  323. * 重大风险
  324. */
  325. ZDFX: '重大风险楼栋数分布',
  326. /**
  327. * 较大风险
  328. */
  329. JDFX: '较大风险楼栋数分布',
  330. /**
  331. * 低风险
  332. */
  333. DFX: '低风险楼栋数分布',
  334. /**
  335. * 未整改隐患数
  336. */
  337. WZGYHS: '未整改隐患数分布',
  338. /**
  339. * 无管理主体
  340. */
  341. WGLZT: '无管理主体楼栋数分布',
  342. /**
  343. * 无维保形式
  344. */
  345. WWBXS: '无维保形式栋数分布',
  346. /**
  347. * 无大修基金(消防设施有问题)
  348. */
  349. WDXJJ: '无大修基金(消防设施有问题)栋数分布',
  350. /**
  351. * 接入物联网建筑数
  352. */
  353. WLWJZS: '接入物联网建筑数分布',
  354. /**
  355. * 告警数
  356. */
  357. GJS: '接入物联网告警数分布',
  358. /**
  359. * 火灾起数月
  360. */
  361. HZQSY: '本月火灾起数分布',
  362. /**
  363. * 火灾起数年
  364. */
  365. HZQSN: '年火灾起数分布',
  366. /**
  367. * 接入物联网楼栋数
  368. */
  369. WLWLDS: '接入物联网楼栋数分布'
  370. }