UNPKG

@ued_fpi/data-visual

Version:

<br /> <br /> <div style="text-align:center"> <b style="font-size:30px">@ued_fpi/data-visual</b> <p>基于Vite4+TypeScript的Vue3大屏组件库开发框架</p> <img style="display:inline" src="https://img.shields.io/npm/v/@ued_fpi/data-visual" />

98 lines (93 loc) 3.44 kB
'use strict'; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } }); const vue = require('vue'); const request = require('../../service/request.js'); const hooks = require('../../utils/hooks.js'); const BarItem = require('./components/BarItem.vue.js'); const _hoisted_1 = { class: "dv-ipes-classified-regulation" }; const _hoisted_2 = { class: "classified-header flex" }; const _hoisted_3 = /* @__PURE__ */ vue.createElementVNode("div", { class: "title" }, " 特别/重点/一般 ", -1); const _hoisted_4 = { class: "count" }; const _hoisted_5 = /* @__PURE__ */ vue.createElementVNode("span", { class: "gap" }, "/", -1); const _hoisted_6 = /* @__PURE__ */ vue.createElementVNode("span", { class: "gap" }, "/", -1); const _hoisted_7 = { class: "progress-bar" }; const __default__ = { name: "DvIpesClassifiedRegulation", title: "企业分类监管" }; const _sfc_main = /* @__PURE__ */ vue.defineComponent({ ...__default__, props: { url: { type: String, default: "/ipes-srip-server/api/v4/hazard-source/evaluate/gis/stat" } }, setup(__props) { const props = __props; const countData = vue.ref({ control: 0, focus: 0, general: 0 }); const countPercent = vue.ref({ controlPercent: 0, focusPercent: 0, generalPercent: 0 }); function getShowData(value) { return value == null ? "0" : value; } async function getData() { try { const res = await request.default({ method: "get", url: props.url }); const { control, focus, general } = res.data; countData.value = res.data || {}; const total = control + focus + general; countPercent.value = { controlPercent: total === 0 ? 0 : control / total * 100, focusPercent: total === 0 ? 0 : focus / total * 100, generalPercent: total === 0 ? 100 : general / total * 100 }; } catch (error) { console.log(error); } } vue.onMounted(() => { getData(); }); hooks.setIntervalData(getData, 5 * 60 * 1e3); return (_ctx, _cache) => { return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [ vue.createElementVNode("div", _hoisted_2, [ _hoisted_3, vue.createElementVNode("div", _hoisted_4, [ vue.createElementVNode("span", null, vue.toDisplayString(getShowData(countData.value.control)) + "家 ", 1), _hoisted_5, vue.createElementVNode("span", null, vue.toDisplayString(getShowData(countData.value.focus)) + "家 ", 1), _hoisted_6, vue.createElementVNode("span", null, vue.toDisplayString(getShowData(countData.value.general)) + "家 ", 1) ]) ]), vue.createElementVNode("div", _hoisted_7, [ vue.createVNode(BarItem.default, { percent: countPercent.value.controlPercent, "class-name": "red" }, null, 8, ["percent"]), vue.createVNode(BarItem.default, { percent: countPercent.value.focusPercent, "class-name": "yellow" }, null, 8, ["percent"]), vue.createVNode(BarItem.default, { percent: countPercent.value.generalPercent, "class-name": "green" }, null, 8, ["percent"]) ]) ]); }; } }); exports.default = _sfc_main;