This commit is contained in:
2026-08-17 11:01:21 +08:00
parent 6e07cab51f
commit 255573ed06
705 changed files with 8762 additions and 36677 deletions
+62 -51
View File
@@ -1,65 +1,76 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="QC活动数">
<view class="inspection ">
<view class="inspection" @click="router.push('/pages/quality/QC/index')">
<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';
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)
import ChartCard from '@/components/chartCard.vue';
import { ref, watch } from 'vue';
import { router } from '@/utils';
let props = defineProps({
awardStatsData: {
type: Object,
default: () => {}
}
});
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({});
onMounted(() => {
let res = {
categories: ["省部级奖数量", "集团级奖项数量", "企业级奖项数量"],
series: [{
color: "#27c9cb",
name: '',
data: [100, 542, 685]
},
]
};
chartData.value = JSON.parse(JSON.stringify(res));
})
const handleTap = (e) => {
console.log(e);
};
watch(
() => props.awardStatsData.qc,
(newVal) => {
if (newVal && newVal.length) {
console.log('监听数据', newVal);
// 只有当数据存在时才赋值
let res = {
categories: ['省部级奖数量', '集团级奖项数量', '企业级奖项数量'],
series: [
{
data: newVal
}
]
};
chartData.value = JSON.parse(JSON.stringify(res));
}
},
{ deep: true, immediate: true }
);
</script>
<style lang="scss">
.inspection {
width: 100%;
height: 300rpx;
}
</style>
.inspection {
width: 100%;
height: 300rpx;
}
</style>
+119 -107
View File
@@ -1,124 +1,136 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="控制点验收数">
<view class="ys">
<view class="ys" @click="router.push('/pages/quality/controlPoint/index')">
<qiun-data-charts type="mix" :canvas2d="false" :opts="opts" :chartData="chartData" @getIndex="handleTap" />
</view>
<view class="ys u-margin-top-30">
<view class="ys u-margin-top-30" @click="router.push('/pages/quality/controlPoint/index')">
<qiun-data-charts type="mix" :canvas2d="false" :opts="opts" :chartData="chartData1" @getIndex="handleTap" />
</view>
</ChartCard>
</template>
<script setup>
import ChartCard from '@/components/chartCard.vue'
import {
ref,onMounted
} from 'vue';
const opts = ref({
color: ["#1890FF", "#91CB74", "#FAC858", "#EE6666", "#73C0DE", "#3CA272", "#FC8452", "#9A60B4", "#ea7ccc"],
padding: [15, 15, 0, 15],
enableScroll: false,
legend: { fontSize: 10},
xAxis: {
disableGrid: true,
},
yAxis: {
disabled: false,
disableGrid: false,
splitNumber: 5,
gridType: "dash",
dashLength: 4,
gridColor: "#CCCCCC",
padding: 10,
showTitle: true,
data: [{
position: "right",
min: 0,
max: 100,
title: "百分比"
},
{
position: "left",
title: "数量",
textAlign: "left"
}
]
},
extra: {
mix: {
column: {
width: 20,
seriesGap: 8
}
import ChartCard from '@/components/chartCard.vue';
import { ref, watch } from 'vue';
import {router} from '@/utils'
let props = defineProps({
controlPointAcceptanceData: {
type: Array,
default: () => []
}
});
const opts = ref({
color: ['#1890FF', '#91CB74', '#FAC858', '#EE6666', '#73C0DE', '#3CA272', '#FC8452', '#9A60B4', '#ea7ccc'],
padding: [15, 15, 0, 15],
enableScroll: false,
legend: { fontSize: 10 },
xAxis: {
disableGrid: true
},
yAxis: {
disabled: false,
disableGrid: false,
splitNumber: 5,
gridType: 'dash',
dashLength: 4,
gridColor: '#CCCCCC',
padding: 10,
showTitle: true,
data: [
{
position: 'right',
min: 0,
max: 100,
title: '百分比'
},
{
position: 'left',
title: '数量',
textAlign: 'left'
}
]
},
extra: {
mix: {
column: {
width: 20,
seriesGap: 8
}
}
})
const chartData = ref({})
const chartData1 = ref({})
const handleTap = (e) => {
console.log(e)
}
});
onMounted(() => {
let res = {
categories: ["关键工序验收", "特殊工程验收", "隐藏工程验收"],
series: [{
name: "合格率",
type: "line",
style: "curve",
color: "#ffe200",
disableLegend: true,
data: [70, 50, 85]
},
{
name: "验收数",
index: 1,
type: "column",
data: [40, 55, 110]
},
{
name: "合格数",
index: 1,
type: "column",
data: [50, 20, 75]
},
]
};
chartData.value = JSON.parse(JSON.stringify(res));
let res1 = {
categories: ["单位工程", "分部工程", "分项工程"],
series: [{
name: "合格率",
type: "line",
style: "curve",
color: "#ffe200",
disableLegend: true,
data: [70, 50, 85]
},
{
name: "验收数",
index: 1,
type: "column",
data: [40, 55, 110]
},
{
name: "合格数",
index: 1,
type: "column",
data: [50, 20, 75]
},
]
};
chartData1.value = JSON.parse(JSON.stringify(res1));
})
const chartData = ref({});
const chartData1 = ref({});
const handleTap = (e) => {
console.log(e);
};
watch(
() => props.controlPointAcceptanceData,
(newVal) => {
if (newVal && newVal.QualifiedRateList) {
console.log("}}}}}}}}}",newVal);
// 只有当数据存在时才赋值
let res = {
categories: ['关键工序验收', '特殊工程验收', '隐藏工程验收'],
series: [
{
name: '合格率',
type: 'line',
style: 'curve',
color: '#ffe200',
disableLegend: true,
data: newVal.QualifiedRateList
},
{
name: '验收数',
index: 1,
type: 'column',
data: newVal.AcceptNumList
},
{
name: '合格数',
index: 1,
type: 'column',
data: newVal.QualifiedList
}
]
};
let res1 = {
categories: ['单位工程', '分部工程', '分项工程'],
series: [
{
name: '合格率',
type: 'line',
style: 'curve',
color: '#ffe200',
disableLegend: true,
data: newVal.EngineerQualifiedRateList
},
{
name: '验收数',
index: 1,
type: 'column',
data: newVal.EngineerAcceptNumList
},
{
name: '合格数',
index: 1,
type: 'column',
data: newVal.EngineerQualifiedList
}
]
};
chartData.value = JSON.parse(JSON.stringify(res));
chartData1.value = JSON.parse(JSON.stringify(res1));
}
},
{ deep: true, immediate: true }
);
</script>
<style lang="scss">
.ys {
height: 300rpx;
}
</style>
.ys {
height: 300rpx;
}
</style>
+28 -16
View File
@@ -1,6 +1,6 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="施工方案数">
<view class="inspection">
<view class="inspection" @click="router.push('/pages/quality/constructionPlan/index')">
<qiun-data-charts type="column" :canvas2d="false" :opts="opts" :chartData="chartData" @getIndex="handleTap" />
</view>
</ChartCard>
@@ -8,7 +8,14 @@
<script setup>
import ChartCard from '@/components/chartCard.vue';
import { ref, onMounted } from 'vue';
import { ref, watch } from 'vue';
import { router } from '@/utils';
let props = defineProps({
constructSolutionData: {
type: Array,
default: () => []
}
});
const opts = ref({
padding: [15, 15, 0, 5],
@@ -40,20 +47,25 @@ const chartData = ref({});
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));
});
watch(
() => props.constructSolutionData,
(newVal) => {
if (newVal && newVal.length) {
console.log('监听数据', newVal);
// 只有当数据存在时才赋值
let res = {
categories: ['方案总数', '企业审批总数', '项目审批总数'],
series: [
{
data: newVal
}
]
};
chartData.value = JSON.parse(JSON.stringify(res));
}
},
{ deep: true, immediate: true }
);
</script>
<style lang="scss">
+11 -4
View File
@@ -1,17 +1,17 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="人员报验、培训及交底数">
<view class="education u-flex u-row-between">
<view class="education u-flex u-row-between" @click="router.push('/pages/quality/personnelInspection/index')">
<view class="education-box">
<view class="education-box-lab">人员报验数</view>
<view class="education-box-num u-margin-top-20">800</view>
<view class="education-box-num u-margin-top-20">{{ qmsEducation?.PersonInspectionNum || 0 }}</view>
</view>
<view class="education-box">
<view class="education-box-lab">培训人次</view>
<view class="education-box-num u-margin-top-20">800</view>
<view class="education-box-num u-margin-top-20">{{ qmsEducation?.TrainPersonNum || 0 }}</view>
</view>
<view class="education-box">
<view class="education-box-lab">技术交底人次</view>
<view class="education-box-num u-margin-top-20">800</view>
<view class="education-box-num u-margin-top-20">{{ qmsEducation?.TechnicalDisclosePersonNum || 0 }}</view>
</view>
</view>
</ChartCard>
@@ -19,6 +19,13 @@
<script setup>
import ChartCard from '@/components/chartCard.vue';
import {router} from '@/utils'
defineProps({
qmsEducation: {
type: Object,
default: () => {}
}
});
</script>
<style lang="scss" scoped>
+10 -3
View File
@@ -1,10 +1,10 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="设备材料及机具报验数">
<view class="measuring u-flex u-row-between">
<view class="measuring u-flex u-row-between" @click="router.push('/pages/quality/equipment/index')">
<view class="measuring-box u-flex u-row-center">
<view class="measuring-box-icon"><u-icon name="shebei" 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-num">{{ qmsInspectionData?.EquipmentInspectionNum || 0 }}</text>
<text class="measuring-box-row-lab">设备材料报验数</text>
</view>
</view>
@@ -12,7 +12,7 @@
<view class="measuring-box u-flex u-row-center">
<view class="measuring-box-icon"><u-icon name="jijubaoyan" color="#36d2ad" 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-num">{{ qmsInspectionData?.MachineInspectionNum || 0 }}</text>
<text class="measuring-box-row-lab">机具报验数</text>
</view>
</view>
@@ -22,6 +22,13 @@
<script setup>
import ChartCard from '@/components/chartCard.vue';
import {router} from '@/utils'
defineProps({
qmsInspectionData: {
type: Object,
default: () => {}
}
});
</script>
<style lang="scss">
+64 -53
View File
@@ -1,67 +1,78 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="优质工程数">
<view class="inspection ">
<view class="inspection" @click="router.push('/pages/quality/qualityEngineering/index')">
<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';
const opts = ref({
padding: [15, 15, 0, 5],
enableScroll: false,
legend: {show: false},
xAxis: {
disableGrid: true,
rotateLabel: true,
rotateAngle: -30
},
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)
import ChartCard from '@/components/chartCard.vue';
import { ref, watch } from 'vue';
import {router} from '@/utils'
let props = defineProps({
awardStatsData: {
type: Object,
default: () => {}
}
});
const opts = ref({
padding: [15, 15, 0, 5],
enableScroll: false,
legend: { show: false },
xAxis: {
disableGrid: true,
rotateLabel: true,
rotateAngle: -30
},
yAxis: {
showTitle: true,
data: [
{
title: '单位:项'
}
]
},
extra: {
column: {
type: 'group',
width: 30,
activeBgColor: '#000000',
activeBgOpacity: 0.08
}
}
});
const chartData = ref({});
onMounted(() => {
let res = {
categories: ["国家级鲁\n班奖", "国家级国\n优奖", "省部级奖\n项", "市级奖项"],
series: [{
color: "#91CB74",
name: '',
data: [100, 542, 685, 254]
},
]
};
chartData.value = JSON.parse(JSON.stringify(res));
})
const handleTap = (e) => {
console.log(e);
};
watch(
() => props.awardStatsData.qualityEngineering,
(newVal) => {
if (newVal && newVal.length) {
console.log('监听数据', newVal);
// 只有当数据存在时才赋值
let res = {
categories: ['国家级鲁\n班奖', '国家级国\n优奖', '省部级奖\n项', '市级奖项'],
series: [
{
data: newVal
}
]
};
chartData.value = JSON.parse(JSON.stringify(res));
}
},
{ deep: true, immediate: true }
);
</script>
<style lang="scss">
.inspection {
width: 100%;
height: 300rpx;
}
</style>
.inspection {
width: 100%;
height: 300rpx;
}
</style>
+10 -3
View File
@@ -1,10 +1,10 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="计量器具数">
<view class="measuring u-flex u-row-between">
<view class="measuring u-flex u-row-between" @click="router.push('/pages/quality/meter/index')">
<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-num">{{ qmsMeasuringInstruments?.UseNum || 0 }}</text>
<text class="measuring-box-row-lab">计量器具数</text>
</view>
</view>
@@ -12,7 +12,7 @@
<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-num">{{ qmsMeasuringInstruments?.OKNum || 0 }}</text>
<text class="measuring-box-row-lab">校验合格数</text>
</view>
</view>
@@ -22,6 +22,13 @@
<script setup>
import ChartCard from '@/components/chartCard.vue';
import {router} from '@/utils'
defineProps({
qmsMeasuringInstruments: {
type: Object,
default: () => {}
}
});
</script>
<style lang="scss">
+11 -4
View File
@@ -1,6 +1,6 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="企业和分支机构人数">
<view class="org-person">
<view class="org-person" @click="router.push('/pages/quality/numberEmployees/index')">
<!-- <view class="org-person-row">
<view class="org-person-row_lab">
集团总数
@@ -10,17 +10,17 @@
<view class="u-flex">
<view class="org-person-row">
<view class="org-person-row_lab">企业质量管理人数</view>
<view class="org-person-row_num">9521</view>
<view class="org-person-row_num">{{ qmsOrgData?.CompanyPersonNum || 0 }}</view>
</view>
<view class="org-person-row">
<view class="org-person-row_lab">项目质量管理人数</view>
<view class="org-person-row_num">9521</view>
<view class="org-person-row_num">{{ qmsOrgData?.ProjectPersonNum || 0 }}</view>
</view>
</view>
<view class="u-flex">
<view class="org-person-row">
<view class="org-person-row_lab">分支机构质量管理人数</view>
<view class="org-person-row_num">9521</view>
<view class="org-person-row_num">{{ qmsOrgData?.BranchPersonNum || 0 }}</view>
</view>
<!-- <view class="org-person-row">
<view class="org-person-row_lab">特种设备质保体系</view>
@@ -33,6 +33,13 @@
<script setup>
import ChartCard from '@/components/chartCard.vue';
import {router} from '@/utils'
defineProps({
qmsOrgData: {
type: Object,
default: () => {}
}
});
</script>
<style lang="scss">
+61 -49
View File
@@ -1,63 +1,75 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="工程划分数">
<view class="inspection ">
<view class="inspection" @click="router.push('/pages/quality/engineeringDivision/index')">
<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';
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)
import ChartCard from '@/components/chartCard.vue';
import { ref, watch } from 'vue';
import {router} from '@/utils'
let props = defineProps({
projectDivisionData: {
type: Array,
default: () => []
}
});
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({});
onMounted(() => {
let res = {
categories: ["单位工程数", "分部工程数", "分项工程数"],
series: [{
name: '',
data: [10000, 5428, 6852]
},
]
};
chartData.value = JSON.parse(JSON.stringify(res));
})
const handleTap = (e) => {
console.log(e);
};
watch(
() => props.projectDivisionData,
(newVal) => {
if (newVal && newVal.length) {
// 只有当数据存在时才赋值
let res = {
categories: ['单位工程数', '分部工程数', '分项工程数'],
series: [
{
data: newVal
}
]
};
chartData.value = JSON.parse(JSON.stringify(res));
}
},
{ deep: true, immediate: true }
);
</script>
<style lang="scss">
.inspection {
width: 100%;
height: 300rpx;
}
</style>
.inspection {
width: 100%;
height: 300rpx;
}
</style>
+14 -4
View File
@@ -1,11 +1,15 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="项目质量检查数">
<view class="defect">
<view class="defect" @click="router.push('/pages/quality/projectQuality/index')">
<!-- <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>
<text class="defect-box-num u-margin-top-20">{{ qualityProblemData?.ProjectProblemNum || 0 }}</text>
</view>
<view class="defect-box gb-rectified">
<text class="defect-box-lab">项目质量未完成数</text>
<text class="defect-box-num u-margin-top-20">{{ qualityProblemData?.ProjectProblemNotCompletedNum || 0 }}</text>
</view>
</view>
</view>
@@ -14,7 +18,13 @@
<script setup>
import ChartCard from '@/components/chartCard.vue';
import { ref, watch } from 'vue';
import {router} from '@/utils'
defineProps({
qualityProblemData: {
type: Object,
default: () => {}
}
});
const current = ref(0);
const list = ref([
{
@@ -40,7 +50,7 @@ const handleChange = () => {};
}
&-box {
width:100%;
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
+24 -18
View File
@@ -1,36 +1,42 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="图纸会审及交底数">
<view class="education u-flex">
<view class="education u-flex" @click="router.push('/pages/quality/drawingReview/index')">
<view class="education-box">
<view class="education-box-lab">图纸会审总数</view>
<view class="education-box-num u-margin-top-6">800</view>
<view class="education-box-num u-margin-top-6">{{comprehensiveData?.ComprehensiveReviewDrawingsNum||0}}</view>
</view>
<view class="education-box">
<view class="education-box-lab">设计交底总数</view>
<view class="education-box-num u-margin-top-6">800</view>
<view class="education-box-num u-margin-top-6">{{comprehensiveData?.DesignDetailsNum||0}}</view>
</view>
</view>
</ChartCard>
</template>
<script setup>
import ChartCard from '@/components/chartCard.vue'
import ChartCard from '@/components/chartCard.vue';
import {router} from '@/utils'
let props = defineProps({
comprehensiveData: {
type: Object,
default: () => {}
}
});
</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;
&-lab {
color: #999999;
font-size: 24rpx;
}
&-num {
color: #333333;
font-size: 28rpx;
}
}
</style>
}
</style>
+40 -16
View File
@@ -1,6 +1,6 @@
<template>
<ChartCard margin="30rpx 0 30rpx 0" title="领导级安全检查数">
<view class="big-crisis">
<view class="big-crisis" @click="router.push('/pages/quality/leader/index')">
<qiun-data-charts type="column" :opts="opts" :canvas2d="false" :chartData="chartData" @getIndex="handleTap" />
</view>
</ChartCard>
@@ -8,12 +8,24 @@
<script setup>
import ChartCard from '@/components/chartCard.vue';
import { ref, onMounted } from 'vue';
import { ref, watch } from 'vue';
import { router } from '@/utils';
let props = defineProps({
qualityProblemData: {
type: Array,
default: () => []
},
qualityProblemDatas: {
type: Array,
default: () => []
}
});
const opts = ref({
padding: [15, 15, 0, 5],
enableScroll: false,
legend: {
show: false
show: true
},
xAxis: {
disableGrid: true
@@ -30,7 +42,8 @@ const opts = ref({
type: 'group',
width: 20,
activeBgColor: '#000000',
activeBgOpacity: 0.08
activeBgOpacity: 0.08,
seriesGap:3
}
}
});
@@ -40,18 +53,29 @@ 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));
});
watch(
() => props.qualityProblemData,
(newVal) => {
if (newVal && newVal.length) {
// 只有当数据存在时才赋值
let res = {
categories: ['集团检查数', '企业检查数', '分支机构检查数'],
series: [
{
name: '总数',
data: newVal
},
{
name: '未完成',
data: props.qualityProblemDatas
}
]
};
chartData.value = JSON.parse(JSON.stringify(res));
}
},
{ deep: true, immediate: true }
);
</script>
<style lang="scss">
+12 -5
View File
@@ -1,24 +1,24 @@
<template>
<ChartCard margin="30rpx 0 0 0" title="焊接数">
<view class="weld">
<view class="weld" @click="router.push('/pages/quality/welding/index')">
<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_num u-padding-left-18">{{ hjData?.WelderNum || 0 }}</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_num">{{ hjData?.TotalDineNum || 0 }}</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_num">{{ hjData?.CompleteDineNum || 0 }}</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_num">{{ hjData?.TotalFilmNum || 0 }}</view>
</view>
</view>
<!-- <view class="weld-row2 u-margin-top-20">
@@ -45,6 +45,13 @@
<script setup>
import ChartCard from '@/components/chartCard.vue';
import { router } from '@/utils';
let props = defineProps({
hjData: {
type: Object,
default: () => {}
}
});
</script>
<style lang="scss">