1 line
5.7 KiB
JSON
1 line
5.7 KiB
JSON
{"remainingRequest":"D:\\guoan\\ts-bigscreen-vue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\babel-loader\\lib\\index.js!D:\\guoan\\ts-bigscreen-vue\\node_modules\\@vue\\vue-loader-v15\\lib\\index.js??vue-loader-options!D:\\guoan\\ts-bigscreen-vue\\src\\components\\StaffOverview.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\guoan\\ts-bigscreen-vue\\src\\components\\StaffOverview.vue","mtime":1741247334764},{"path":"D:\\guoan\\ts-bigscreen-vue\\babel.config.js","mtime":1740967860001},{"path":"D:\\guoan\\ts-bigscreen-vue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1740984332670},{"path":"D:\\guoan\\ts-bigscreen-vue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\babel-loader\\lib\\index.js","mtime":1740984332280},{"path":"D:\\guoan\\ts-bigscreen-vue\\node_modules\\@vue\\vue-loader-v15\\lib\\index.js","mtime":1740984469533}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IHsgc3RhZmZEYXRhIH0gZnJvbSAiLi4vZGF0YS9kYXNoYm9hcmREYXRhIjsKaW1wb3J0IHsgZm9ybWF0TnVtYmVyIH0gZnJvbSAiLi4vdXRpbHMvZm9ybWF0IjsKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICJTdGFmZk92ZXJ2aWV3IiwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgc3RhZmZEYXRhOiBzdGFmZkRhdGEKICAgIH07CiAgfSwKICBtZXRob2RzOiB7CiAgICBmb3JtYXROdW1iZXI6IGZvcm1hdE51bWJlcgogIH0sCiAgY29tcHV0ZWQ6IHsKICAgIHRpdGxlQ2hhcnREYXRhOiBmdW5jdGlvbiB0aXRsZUNoYXJ0RGF0YSgpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBjb2x1bW5zOiBbIuiBjOensCIsICLkurrmlbAiXSwKICAgICAgICByb3dzOiB0aGlzLnN0YWZmRGF0YS50aXRsZURhdGEucm93cwogICAgICB9OwogICAgfQogIH0KfTs="},{"version":3,"names":["staffData","formatNumber","name","data","methods","computed","titleChartData","columns","rows","titleData"],"sources":["src/components/StaffOverview.vue"],"sourcesContent":["<template>\r\n <div class=\"staff-overview\">\r\n <div class=\"content\">\r\n <div class=\"total-info\">\r\n <span class=\"number\">{{ formatNumber(staffData.totalStaff) }}</span>\r\n <span class=\"label\">教职工总数</span>\r\n </div>\r\n\r\n <div class=\"chart-and-structure\">\r\n <div class=\"charts\">\r\n <ve-ring\r\n :data=\"titleChartData\"\r\n :settings=\"staffData.chartSettings\"\r\n :extend=\"staffData.chartSettings\"\r\n height=\"240px\"\r\n />\r\n </div>\r\n\r\n <div class=\"education-structure\">\r\n <h4>学历结构</h4>\r\n <div class=\"structure-items\">\r\n <div\r\n class=\"structure-item\"\r\n v-for=\"(item, index) in staffData.educationStructure\"\r\n :key=\"index\"\r\n >\r\n <span class=\"label\">{{ item.label }}</span>\r\n <span class=\"value\">{{ item.value }}%</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { staffData } from \"../data/dashboardData\";\r\nimport { formatNumber } from \"../utils/format\";\r\nexport default {\r\n name: \"StaffOverview\",\r\n data() {\r\n return {\r\n staffData,\r\n };\r\n },\r\n methods: {\r\n formatNumber,\r\n },\r\n computed: {\r\n titleChartData() {\r\n return {\r\n columns: [\"职称\", \"人数\"],\r\n rows: this.staffData.titleData.rows,\r\n };\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.staff-overview {\r\n height: 100%;\r\n color: #fff;\r\n\r\n .content {\r\n height: calc(100% - 80px);\r\n margin-top: 20px;\r\n .total-info {\r\n text-align: center;\r\n margin-bottom: 15px;\r\n margin-top: -15px;\r\n &:hover {\r\n transform: translateY(-2px);\r\n .label {\r\n color: rgba(255, 255, 255, 0.9);\r\n }\r\n }\r\n .number {\r\n font-size: 24px;\r\n font-weight: bold;\r\n background: linear-gradient(135deg, #4a90e2, #36d1dc);\r\n -webkit-background-clip: text;\r\n -webkit-text-fill-color: transparent;\r\n }\r\n\r\n .label {\r\n font-size: 14px;\r\n margin-left: 10px;\r\n color: rgba(255, 255, 255, 0.7);\r\n }\r\n }\r\n\r\n .chart-and-structure {\r\n display: flex;\r\n align-items: center;\r\n\r\n .charts {\r\n width: 75%;\r\n }\r\n\r\n .education-structure {\r\n width: 20%;\r\n margin-left: 5%;\r\n\r\n h4 {\r\n font-size: 14px;\r\n margin-bottom: 15px;\r\n text-align: center;\r\n color: rgba(255, 255, 255, 0.9);\r\n }\r\n\r\n .structure-items {\r\n display: flex;\r\n flex-wrap: wrap;\r\n\r\n .structure-item {\r\n width: 100%;\r\n margin-bottom: 12px;\r\n display: flex;\r\n justify-content: space-between;\r\n padding: 8px 12px;\r\n transition: all 0.3s ease;\r\n\r\n &:hover {\r\n transform: translateX(4px);\r\n }\r\n\r\n .label {\r\n color: rgba(255, 255, 255, 0.7);\r\n font-size: 13px;\r\n }\r\n\r\n .value {\r\n background: linear-gradient(135deg, #4a90e2, #36d1dc);\r\n -webkit-background-clip: text;\r\n -webkit-text-fill-color: transparent;\r\n font-size: 13px;\r\n font-weight: 500;\r\n transition: all 0.3s ease;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n</style> "],"mappings":"AAqCA,SAAAA,SAAA;AACA,SAAAC,YAAA;AACA;EACAC,IAAA;EACAC,IAAA,WAAAA,KAAA;IACA;MACAH,SAAA,EAAAA;IACA;EACA;EACAI,OAAA;IACAH,YAAA,EAAAA;EACA;EACAI,QAAA;IACAC,cAAA,WAAAA,eAAA;MACA;QACAC,OAAA;QACAC,IAAA,OAAAR,SAAA,CAAAS,SAAA,CAAAD;MACA;IACA;EACA;AACA","ignoreList":[]}]} |