forked from drone/command-center-dashboard

zhongrj
2025-03-31 b1e11c94809e2f25841fe85f44a7326b470759d9
Merge branch 'master' of http://139.196.74.78:10010/r/drone/command-center-dashboard
3 files modified
1 files added
1 files deleted
95 ■■■■■ changed files
src/api/home/index.js 8 ●●●●● patch | view | raw | blame | history
src/styles/common.scss 4 ●●●● patch | view | raw | blame | history
src/styles/font.css 28 ●●●●● patch | view | raw | blame | history
src/styles/font.scss 28 ●●●●● patch | view | raw | blame | history
src/views/Home/components/HomeLeft/InspectionRaskDetails.vue 27 ●●●● patch | view | raw | blame | history
src/api/home/index.js
@@ -15,3 +15,11 @@
    method: 'post',
  });
};
// 巡检任务柱状图数据
export const getJobNumBar = () => {
  return request({
    url: '/drone-device-core/wayline/waylineJobInfo/jobNumBar',
    method: 'post',
  });
};
src/styles/common.scss
@@ -1,3 +1,5 @@
//字体
@use 'font.css';
//样式重置
@use './reset.scss';
// 全局变量
@@ -23,8 +25,6 @@
@use "./login.scss";
//适配
@use './media.scss';
//字体
@use './font.scss';
//滚动条样式
@include scrollBar;
src/styles/font.css
New file
@@ -0,0 +1,28 @@
@font-face {
  font-family: "Source Han Sans CN";
  src: url("../assets/fonts/SourceHanSansCN-Regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Source Han Sans CN";
  src: url("../assets/fonts/SourceHanSansCN-Medium.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Source Han Sans CN";
  src: url("../assets/fonts/SourceHanSansCN-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
}
/* 额外的标题字体 */
@font-face {
  font-family: "YouSheBiaoTiHei";
  src: url("../assets/fonts/YouSheBiaoTiHei.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
src/styles/font.scss
File was deleted
src/views/Home/components/HomeLeft/InspectionRaskDetails.vue
@@ -14,7 +14,7 @@
      </div>
      <div class="status">
        <div v-for="item in list">
          <div :style="{ color: item.color }" class="value">{{ item.value }}</div>
          <div :style="{ color: item.color }" class="value">{{ jobStatistics[item.field] }}</div>
          <div class="name">{{ item.name }}</div>
        </div>
      </div>
@@ -29,14 +29,14 @@
import { pxToRem } from '@/utils/rem';
import CommonTitle from '@/components/CommonTitle.vue';
import CommonDateTime from '@/components/CommonDateTime.vue';
import { getJobStatistics, getTotalJobNum } from '@/api/home';
import { getJobNumBar, getJobStatistics, getTotalJobNum } from '@/api/home';
const list = ref([
  { name: '计划执行', value: 89, color: '#FFFFFF' },
  { name: '执行中', value: 100, color: '#FFA768' },
  { name: '待执行', value: 66, color: '#FFE17E' },
  { name: '已执行', value: 10, color: '#8EFFAC' },
  { name: '执行失败', value: 10, color: '#FF8E8E' },
  { name: '计划执行', value: 89, color: '#FFFFFF',field:'planned_executions' },
  { name: '执行中', value: 100, color: '#FFA768',field:'running_num' },
  { name: '待执行', value: 66, color: '#FFE17E',field:'pending_executions' },
  { name: '已执行', value: 10, color: '#8EFFAC',field:'executed' },
  { name: '执行失败', value: 10, color: '#FF8E8E',field:'failed_executions' },
]);
const option = {
  grid: {
@@ -145,12 +145,23 @@
const chartRef = ref(null);
const total = ref(0);
const jobStatistics = ref({
  "planned_executions": 0,
  "executed": 0,
  "running_num": 0,
  "failed_executions": 0,
  "pending_executions": 0
})
onMounted(() => {
  getTotalJobNum().then(res => {
    total.value = res.data?.data || 0
  })
  getJobStatistics().then(res => {
    jobStatistics.value = res.data?.data || {}
  })
  getJobNumBar().then(res => {
    console.log(res.data.data);
  })
  const chart = echarts.init(chartRef.value);
  chart.setOption(option);