2026.3.27
按照群里发的修改意见已修改
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="QC活动">
|
||||
<ChartCard margin="30rpx 0 0 0" title="QC活动数">
|
||||
<view class="inspection ">
|
||||
<qiun-data-charts type="column" :canvas2d="false" :opts="opts" :chartData="chartData" @getIndex="handleTap" />
|
||||
</view>
|
||||
@@ -45,7 +45,7 @@
|
||||
|
||||
onMounted(() => {
|
||||
let res = {
|
||||
categories: ["省部级奖\n项", "集团级奖\n项", "企业级奖\n项"],
|
||||
categories: ["省部级奖数量", "集团级奖项数量", "企业级奖项数量"],
|
||||
series: [{
|
||||
color: "#27c9cb",
|
||||
name: '',
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="质量验收数据">
|
||||
<ChartCard margin="30rpx 0 0 0" title="控制点验收数">
|
||||
<view class="ys">
|
||||
<qiun-data-charts type="mix" :canvas2d="false" :opts="opts" :chartData="chartData" @getIndex="handleTap" />
|
||||
</view>
|
||||
<view class="ys u-margin-top-30">
|
||||
<qiun-data-charts type="mix" :canvas2d="false" :opts="opts" :chartData="chartData" @getIndex="handleTap" />
|
||||
<qiun-data-charts type="mix" :canvas2d="false" :opts="opts" :chartData="chartData1" @getIndex="handleTap" />
|
||||
</view>
|
||||
</ChartCard>
|
||||
</template>
|
||||
|
||||
@@ -1,66 +1,64 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="施工方案">
|
||||
<view class="inspection ">
|
||||
<ChartCard margin="30rpx 0 0 0" title="施工方案数">
|
||||
<view class="inspection">
|
||||
<qiun-data-charts type="column" :canvas2d="false" :opts="opts" :chartData="chartData" @getIndex="handleTap" />
|
||||
</view>
|
||||
</ChartCard>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue'
|
||||
import {
|
||||
ref,onMounted
|
||||
} from 'vue';
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
import { ref, onMounted } from 'vue';
|
||||
|
||||
const opts = ref({
|
||||
padding: [15, 15, 0, 5],
|
||||
enableScroll: false,
|
||||
legend: {show: false},
|
||||
xAxis: {
|
||||
disableGrid: true,
|
||||
|
||||
},
|
||||
yAxis: {
|
||||
showTitle: true,
|
||||
data: [{
|
||||
title: "单位:个"
|
||||
}]
|
||||
},
|
||||
extra: {
|
||||
column: {
|
||||
type: "group",
|
||||
width: 30,
|
||||
activeBgColor: "#000000",
|
||||
activeBgOpacity: 0.08,
|
||||
|
||||
const opts = ref({
|
||||
padding: [15, 15, 0, 5],
|
||||
enableScroll: false,
|
||||
legend: { show: false },
|
||||
xAxis: {
|
||||
disableGrid: true
|
||||
},
|
||||
yAxis: {
|
||||
showTitle: true,
|
||||
data: [
|
||||
{
|
||||
title: '单位:个'
|
||||
}
|
||||
]
|
||||
},
|
||||
extra: {
|
||||
column: {
|
||||
type: 'group',
|
||||
width: 30,
|
||||
activeBgColor: '#000000',
|
||||
activeBgOpacity: 0.08
|
||||
}
|
||||
})
|
||||
|
||||
const chartData = ref({})
|
||||
|
||||
const handleTap = (e) => {
|
||||
console.log(e)
|
||||
}
|
||||
});
|
||||
|
||||
const chartData = ref({});
|
||||
|
||||
onMounted(() => {
|
||||
let res = {
|
||||
categories: ["总数", "项目审批数", "企业审批数"],
|
||||
series: [{
|
||||
color: "#5c7fcb",
|
||||
name: '',
|
||||
data: [100, 542, 685]
|
||||
},
|
||||
]
|
||||
};
|
||||
chartData.value = JSON.parse(JSON.stringify(res));
|
||||
})
|
||||
const handleTap = (e) => {
|
||||
console.log(e);
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
let res = {
|
||||
categories: ['方案总数', '企业审批总数', '项目审批总数'],
|
||||
series: [
|
||||
{
|
||||
color: '#5c7fcb',
|
||||
name: '',
|
||||
data: [100, 542, 685]
|
||||
}
|
||||
]
|
||||
};
|
||||
chartData.value = JSON.parse(JSON.stringify(res));
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.inspection {
|
||||
width: 100%;
|
||||
height: 300rpx;
|
||||
}
|
||||
</style>
|
||||
.inspection {
|
||||
width: 100%;
|
||||
height: 300rpx;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="教育培训">
|
||||
<ChartCard margin="30rpx 0 0 0" title="人员报验、培训及交底数">
|
||||
<view class="education u-flex">
|
||||
<view class="education-box">
|
||||
<view class="education-box-lab">质量培训(人次)</view>
|
||||
<view class="education-box-lab">人员报验数</view>
|
||||
<view class="education-box-num u-margin-top-20">800</view>
|
||||
</view>
|
||||
<view class="education-box">
|
||||
<view class="education-box-lab">技术质量交底(人次)</view>
|
||||
<view class="education-box-lab">培训人次</view>
|
||||
<view class="education-box-num u-margin-top-20">800</view>
|
||||
</view>
|
||||
<view class="education-box">
|
||||
<view class="education-box-lab">技术交底人次</view>
|
||||
<view class="education-box-num u-margin-top-20">800</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -14,23 +18,25 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue'
|
||||
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.education{
|
||||
width: 100%;
|
||||
&-box{
|
||||
flex: 1;
|
||||
&-lab{
|
||||
color: #999999;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
&-num{
|
||||
color: #333333;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
.education {
|
||||
width: 100%;
|
||||
&-box {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
&-lab {
|
||||
color: #999999;
|
||||
font-size: 24rpx;
|
||||
}
|
||||
&-num {
|
||||
color: #333333;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="设备材料及机具报验数">
|
||||
<view class="measuring u-flex">
|
||||
<view class="measuring-box u-flex u-row-center">
|
||||
<view class="measuring-box-icon"><u-icon name="jiliangqijujianguan" color="#e28ea3" custom-prefix="custom-icon" size="60"></u-icon></view>
|
||||
<view class="measuring-box-row u-padding-left-20">
|
||||
<text class="measuring-box-row-num">900台</text>
|
||||
<text class="measuring-box-row-lab">设备材料报验数</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="measuring-box u-flex u-row-center">
|
||||
<view class="measuring-box-icon"><u-icon name="hege" color="#3bdae2" custom-prefix="custom-icon" size="60"></u-icon></view>
|
||||
<view class="measuring-box-row u-padding-left-20">
|
||||
<text class="measuring-box-row-num">9000台</text>
|
||||
<text class="measuring-box-row-lab">机具报验数</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</ChartCard>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.measuring {
|
||||
padding: 20rpx 0;
|
||||
&-box {
|
||||
flex: 1;
|
||||
&-row {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: flex-start;
|
||||
&-lab {
|
||||
font-size: 24rpx;
|
||||
color: #999999;
|
||||
margin-top: 12rpx;
|
||||
}
|
||||
&-num {
|
||||
color: #333333;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="优质工程">
|
||||
<ChartCard margin="30rpx 0 0 0" title="优质工程数">
|
||||
<view class="inspection ">
|
||||
<qiun-data-charts type="column" :canvas2d="false" :opts="opts" :chartData="chartData" @getIndex="handleTap" />
|
||||
</view>
|
||||
|
||||
@@ -1,20 +1,19 @@
|
||||
<template>
|
||||
|
||||
<ChartCard margin="30rpx 0 0 0" title="计量器具数据">
|
||||
<ChartCard margin="30rpx 0 0 0" title="计量器具数">
|
||||
<view class="measuring u-flex">
|
||||
<view class="measuring-box u-flex u-row-center">
|
||||
<view class="measuring-box-icon"> <u-icon name="jiliangqijujianguan" color="#e28ea3" custom-prefix="custom-icon" size="60" ></u-icon></view>
|
||||
<view class="measuring-box-icon"><u-icon name="jiliangqijujianguan" color="#e28ea3" custom-prefix="custom-icon" size="60"></u-icon></view>
|
||||
<view class="measuring-box-row u-padding-left-20">
|
||||
<text class="measuring-box-row-num">900台</text>
|
||||
<text class="measuring-box-row-lab">计量器具</text>
|
||||
<text class="measuring-box-row-lab">计量器具数</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="measuring-box u-flex u-row-center">
|
||||
<view class="measuring-box-icon"> <u-icon name="hege" color="#3bdae2" custom-prefix="custom-icon" size="60" ></u-icon></view>
|
||||
<view class="measuring-box-icon"><u-icon name="hege" color="#3bdae2" custom-prefix="custom-icon" size="60"></u-icon></view>
|
||||
<view class="measuring-box-row u-padding-left-20">
|
||||
<text class="measuring-box-row-num">9000台</text>
|
||||
<text class="measuring-box-row-lab">检验合格</text>
|
||||
<text class="measuring-box-row-lab">校验合格数</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -22,29 +21,27 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue'
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.measuring{
|
||||
padding: 20rpx 0;
|
||||
&-box{
|
||||
flex: 1;
|
||||
&-row{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: flex-start;
|
||||
&-lab{
|
||||
font-size: 24rpx;
|
||||
color: #999999;
|
||||
margin-top: 12rpx;
|
||||
}
|
||||
&-num{
|
||||
color: #333333;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
.measuring {
|
||||
padding: 20rpx 0;
|
||||
&-box {
|
||||
flex: 1;
|
||||
&-row {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
&-lab {
|
||||
font-size: 24rpx;
|
||||
color: #999999;
|
||||
margin-top: 6rpx;
|
||||
}
|
||||
&-num {
|
||||
color: #333333;
|
||||
font-size: 28rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1,70 +1,62 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="组织机构人员">
|
||||
<ChartCard margin="30rpx 0 0 0" title="企业和分支机构人数">
|
||||
<view class="org-person">
|
||||
<view class="org-person-row">
|
||||
<!-- <view class="org-person-row">
|
||||
<view class="org-person-row_lab">
|
||||
集团总数
|
||||
</view>
|
||||
<view class="org-person-row_num">9521</view>
|
||||
</view>
|
||||
</view> -->
|
||||
<view class="u-flex">
|
||||
<view class="org-person-row">
|
||||
<view class="org-person-row_lab">
|
||||
所企业总部人数
|
||||
</view>
|
||||
<view class="org-person-row_lab">企业质量管理人数</view>
|
||||
<view class="org-person-row_num">9521</view>
|
||||
</view>
|
||||
<view class="org-person-row">
|
||||
<view class="org-person-row_lab">
|
||||
分支机构人数
|
||||
</view>
|
||||
<view class="org-person-row_lab">项目质量管理人数</view>
|
||||
<view class="org-person-row_num">9521</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="u-flex">
|
||||
<view class="org-person-row">
|
||||
<view class="org-person-row_lab">
|
||||
质量管理人数
|
||||
</view>
|
||||
<view class="org-person-row_lab">分支机构质量管理人数</view>
|
||||
<view class="org-person-row_num">9521</view>
|
||||
</view>
|
||||
<view class="org-person-row">
|
||||
<view class="org-person-row_lab">
|
||||
特种设备质保体系
|
||||
</view>
|
||||
<!-- <view class="org-person-row">
|
||||
<view class="org-person-row_lab">特种设备质保体系</view>
|
||||
<view class="org-person-row_num">9521</view>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
</view>
|
||||
</ChartCard>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue'
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.org-person{
|
||||
&-row{
|
||||
flex: 1;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: flex-end;
|
||||
padding: 20rpx 0;
|
||||
&_lab{
|
||||
width: 200rpx;
|
||||
font-size: 24rpx;
|
||||
color: #999999;
|
||||
line-height: 1;
|
||||
}
|
||||
&_num{
|
||||
width: calc(100% - 200rpx);
|
||||
line-height: 1;
|
||||
font-size: 28rpx;
|
||||
color: #333333;
|
||||
padding-left: 40rpx;
|
||||
}
|
||||
.org-person {
|
||||
&-row {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: flex-start;
|
||||
align-items: flex-end;
|
||||
padding: 20rpx 0;
|
||||
&_lab {
|
||||
// width: 200rpx;
|
||||
font-size: 24rpx;
|
||||
color: #999999;
|
||||
line-height: 1;
|
||||
}
|
||||
&_num {
|
||||
// width: calc(100% - 200rpx);
|
||||
line-height: 1;
|
||||
font-size: 28rpx;
|
||||
color: #333333;
|
||||
padding-left: 40rpx;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="工程划分">
|
||||
<ChartCard margin="30rpx 0 0 0" title="工程划分数">
|
||||
<view class="inspection ">
|
||||
<qiun-data-charts type="column" :canvas2d="false" :opts="opts" :chartData="chartData" @getIndex="handleTap" />
|
||||
</view>
|
||||
|
||||
@@ -1,87 +1,82 @@
|
||||
<template>
|
||||
|
||||
<ChartCard margin="30rpx 0 0 0" title="安全隐患排查治理">
|
||||
<ChartCard margin="30rpx 0 0 0" title="领导级质量检查数">
|
||||
<view class="defect">
|
||||
<u-subsection :list="list" :current="current" @change="handleChange"></u-subsection>
|
||||
<view class="defect-main u-flex u-row-between u-margin-top-20">
|
||||
<!-- <u-subsection :list="list" :current="current" @change="handleChange"></u-subsection> -->
|
||||
<view class="defect-main u-flex u-row-between">
|
||||
<view class="defect-box gb-all">
|
||||
<text class="defect-box-lab">质量问题</text>
|
||||
<text class="defect-box-num u-margin-top-20">4567项</text>
|
||||
<text class="defect-box-lab">集团检查数</text>
|
||||
<text class="defect-box-num u-margin-top-20">4567</text>
|
||||
</view>
|
||||
<view class="defect-box gb-rectified">
|
||||
<text class="defect-box-lab">整改完成</text>
|
||||
<text class="defect-box-num u-margin-top-20">20项</text>
|
||||
<text class="defect-box-lab">企业检查数</text>
|
||||
<text class="defect-box-num u-margin-top-20">20</text>
|
||||
</view>
|
||||
<view class="defect-box gb-not-rectified">
|
||||
<text class="defect-box-lab">未整改</text>
|
||||
<text class="defect-box-num u-margin-top-20">6项</text>
|
||||
<text class="defect-box-lab">分支机构检查数</text>
|
||||
<text class="defect-box-num u-margin-top-20">6</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</ChartCard>
|
||||
</template>
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue'
|
||||
import {
|
||||
ref,
|
||||
watch
|
||||
} from 'vue';
|
||||
|
||||
const current = ref(0)
|
||||
const list = ref([{
|
||||
name: '集团级'
|
||||
},
|
||||
{
|
||||
name: '企业级'
|
||||
},
|
||||
{
|
||||
name: '分支机构'
|
||||
}, {
|
||||
name: '项目级'
|
||||
}
|
||||
])
|
||||
|
||||
const handleChange = () => {
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
import { ref, watch } from 'vue';
|
||||
|
||||
const current = ref(0);
|
||||
const list = ref([
|
||||
{
|
||||
name: '集团级'
|
||||
},
|
||||
{
|
||||
name: '企业级'
|
||||
},
|
||||
{
|
||||
name: '分支机构'
|
||||
},
|
||||
{
|
||||
name: '项目级'
|
||||
}
|
||||
]);
|
||||
|
||||
const handleChange = () => {};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.defect {
|
||||
&-main {
|
||||
height: 120rpx;
|
||||
.defect {
|
||||
&-main {
|
||||
height: 120rpx;
|
||||
}
|
||||
|
||||
&-box {
|
||||
width: calc((100% - 40rpx) / 3);
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
&-lab {
|
||||
font-size: 24rpx;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
&-box {
|
||||
width: calc((100% - 40rpx) / 3);
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
&-lab {
|
||||
font-size: 24rpx;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
&-num {
|
||||
font-size: 28rpx;
|
||||
font-weight: 600;
|
||||
color: #ffffff;
|
||||
}
|
||||
&-num {
|
||||
font-size: 28rpx;
|
||||
font-weight: 600;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gb-all {
|
||||
background: linear-gradient(to top right, #9E9E9E, #dcdcdc);
|
||||
}
|
||||
.gb-all {
|
||||
background: linear-gradient(to top right, #9e9e9e, #dcdcdc);
|
||||
}
|
||||
|
||||
.gb-not-rectified {
|
||||
background: linear-gradient(to top right, #FFD626, #FF9F7D);
|
||||
}
|
||||
.gb-not-rectified {
|
||||
background: linear-gradient(to top right, #ffd626, #ff9f7d);
|
||||
}
|
||||
|
||||
.gb-rectified {
|
||||
background: linear-gradient(to top right, #2488FA, #79BAFF);
|
||||
}
|
||||
|
||||
</style>
|
||||
.gb-rectified {
|
||||
background: linear-gradient(to top right, #2488fa, #79baff);
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="项目质量检查数">
|
||||
<view class="defect">
|
||||
<!-- <u-subsection :list="list" :current="current" @change="handleChange"></u-subsection> -->
|
||||
<view class="defect-main u-flex u-row-between">
|
||||
<view class="defect-box gb-rectified">
|
||||
<text class="defect-box-lab">项目质量检查数</text>
|
||||
<text class="defect-box-num u-margin-top-20">20</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</ChartCard>
|
||||
</template>
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
import { ref, watch } from 'vue';
|
||||
|
||||
const current = ref(0);
|
||||
const list = ref([
|
||||
{
|
||||
name: '集团级'
|
||||
},
|
||||
{
|
||||
name: '企业级'
|
||||
},
|
||||
{
|
||||
name: '分支机构'
|
||||
},
|
||||
{
|
||||
name: '项目级'
|
||||
}
|
||||
]);
|
||||
|
||||
const handleChange = () => {};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.defect {
|
||||
&-main {
|
||||
height: 120rpx;
|
||||
}
|
||||
|
||||
&-box {
|
||||
width:100%;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
|
||||
&-lab {
|
||||
font-size: 24rpx;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
&-num {
|
||||
font-size: 28rpx;
|
||||
font-weight: 600;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.gb-all {
|
||||
background: linear-gradient(to top right, #9e9e9e, #dcdcdc);
|
||||
}
|
||||
|
||||
.gb-not-rectified {
|
||||
background: linear-gradient(to top right, #ffd626, #ff9f7d);
|
||||
}
|
||||
|
||||
.gb-rectified {
|
||||
background: linear-gradient(to top right, #2488fa, #79baff);
|
||||
}
|
||||
</style>
|
||||
@@ -1,12 +1,12 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="图纸会审/技术交底">
|
||||
<ChartCard margin="30rpx 0 0 0" title="图纸会审及交底数">
|
||||
<view class="education u-flex">
|
||||
<view class="education-box">
|
||||
<view class="education-box-lab">图纸会审(次)</view>
|
||||
<view class="education-box-lab">图纸会审总数</view>
|
||||
<view class="education-box-num u-margin-top-20">800</view>
|
||||
</view>
|
||||
<view class="education-box">
|
||||
<view class="education-box-lab">设计交底(次)</view>
|
||||
<view class="education-box-lab">设计交底总数</view>
|
||||
<view class="education-box-num u-margin-top-20">800</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 30rpx 0" title="领导级安全检查数">
|
||||
<view class="big-crisis">
|
||||
<qiun-data-charts type="column" :opts="opts" :canvas2d="false" :chartData="chartData" @getIndex="handleTap" />
|
||||
</view>
|
||||
</ChartCard>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
import { ref, onMounted } from 'vue';
|
||||
const opts = ref({
|
||||
padding: [15, 15, 0, 5],
|
||||
enableScroll: false,
|
||||
legend: {
|
||||
show: false
|
||||
},
|
||||
xAxis: {
|
||||
disableGrid: true
|
||||
},
|
||||
yAxis: {
|
||||
data: [
|
||||
{
|
||||
min: 0
|
||||
}
|
||||
]
|
||||
},
|
||||
extra: {
|
||||
column: {
|
||||
type: 'group',
|
||||
width: 20,
|
||||
activeBgColor: '#000000',
|
||||
activeBgOpacity: 0.08
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
const chartData = ref({});
|
||||
|
||||
const handleTap = (e) => {
|
||||
console.log(e);
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
let res = {
|
||||
categories: ['集团检查数', '企业检查数', '分支机构检查数'],
|
||||
series: [
|
||||
{
|
||||
data: [35, 36,50]
|
||||
}
|
||||
]
|
||||
};
|
||||
chartData.value = JSON.parse(JSON.stringify(res));
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.big-crisis {
|
||||
width: 100%;
|
||||
height: 400rpx;
|
||||
}
|
||||
</style>
|
||||
@@ -1,43 +1,27 @@
|
||||
<template>
|
||||
<ChartCard margin="30rpx 0 0 0" title="焊接数据">
|
||||
<ChartCard margin="30rpx 0 0 0" title="焊接数">
|
||||
<view class="weld">
|
||||
<view class="weld-row u-padding-20">
|
||||
<view class="weld-row-col u-flex">
|
||||
<view class="weld-row-col_lab">
|
||||
焊工总数
|
||||
</view>
|
||||
<view class="weld-row-col_num u-padding-left-18">
|
||||
945281
|
||||
</view>
|
||||
<view class="weld-row-col_lab">在岗焊工总人数</view>
|
||||
<view class="weld-row-col_num u-padding-left-18">945281</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="weld-row1 u-margin-top-20">
|
||||
<view class="weld-row1-col1 u-flex-col">
|
||||
<view class="weld-row1-col1_lab">
|
||||
总达因数
|
||||
</view>
|
||||
<view class="weld-row1-col1_num">
|
||||
945281
|
||||
</view>
|
||||
<view class="weld-row1-col1_lab">总达因数</view>
|
||||
<view class="weld-row1-col1_num">945281</view>
|
||||
</view>
|
||||
<view class="weld-row1-col1 u-flex-col">
|
||||
<view class="weld-row1-col1_lab">
|
||||
完成达因数
|
||||
</view>
|
||||
<view class="weld-row1-col1_num">
|
||||
945281
|
||||
</view>
|
||||
<view class="weld-row1-col1_lab">完成达因数</view>
|
||||
<view class="weld-row1-col1_num">945281</view>
|
||||
</view>
|
||||
<view class="weld-row1-col1 u-flex-col">
|
||||
<view class="weld-row1-col1_lab">
|
||||
总片数
|
||||
</view>
|
||||
<view class="weld-row1-col1_num">
|
||||
945281
|
||||
</view>
|
||||
<view class="weld-row1-col1_lab">总拍片数</view>
|
||||
<view class="weld-row1-col1_num">945281</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="weld-row2 u-margin-top-20">
|
||||
<!-- <view class="weld-row2 u-margin-top-20">
|
||||
<view class="weld-row1-col1 u-flex-col">
|
||||
<view class="weld-row1-col1_lab">
|
||||
合格片数
|
||||
@@ -54,53 +38,53 @@
|
||||
33.00%
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
</ChartCard>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import ChartCard from '@/components/chartCard.vue'
|
||||
import ChartCard from '@/components/chartCard.vue';
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.weld {
|
||||
&-row {
|
||||
&-col{
|
||||
&_lab{
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
}
|
||||
&_num{
|
||||
font-size: 32rpx;
|
||||
color: #333333;
|
||||
}
|
||||
.weld {
|
||||
&-row {
|
||||
&-col {
|
||||
&_lab {
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
}
|
||||
background-color: #F7FBFE;
|
||||
}
|
||||
&-row1{
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, calc((100% - 60rpx) / 3));
|
||||
grid-column-gap: 30rpx;
|
||||
&-col1{
|
||||
padding: 20rpx;
|
||||
background-color: #F7FBFE;
|
||||
&_lab{
|
||||
text-align: center;
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
}
|
||||
&_num{
|
||||
text-align: center;
|
||||
font-size: 32rpx;
|
||||
color: #333333;
|
||||
}
|
||||
&_num {
|
||||
font-size: 32rpx;
|
||||
color: #333333;
|
||||
}
|
||||
}
|
||||
&-row2{
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, calc((100% - 30rpx) / 2));
|
||||
grid-column-gap: 30rpx;
|
||||
background-color: #f7fbfe;
|
||||
}
|
||||
&-row1 {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, calc((100% - 60rpx) / 3));
|
||||
grid-column-gap: 30rpx;
|
||||
&-col1 {
|
||||
padding: 20rpx;
|
||||
background-color: #f7fbfe;
|
||||
&_lab {
|
||||
text-align: center;
|
||||
font-size: 28rpx;
|
||||
color: #999999;
|
||||
}
|
||||
&_num {
|
||||
text-align: center;
|
||||
font-size: 32rpx;
|
||||
color: #333333;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
&-row2 {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, calc((100% - 30rpx) / 2));
|
||||
grid-column-gap: 30rpx;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user