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
+148 -34
View File
@@ -13,27 +13,27 @@
<u-transition :show="tabIndx === 0" name="slide-right">
<view v-if="tabIndx == 0">
<!-- 顶部定位数据 -->
<ProjectCard />
<ProjectCard :projectInfoData="safetySignboardData?.ProjectInfo" />
<view style="margin-top: -60rpx; padding: 0 20rpx 40rpx">
<template v-for="(i, idx) in safeComponent">
<!-- 危大工程数 -->
<BigCrisisCard v-if="i === 7" />
<!-- 四级风险数据 -->
<RiskRankingCard v-if="i === 8" />
<!-- 作业许可数 -->
<WorkCard v-if="i === 9" />
<!-- 培训数据 -->
<EducationCard v-if="i === 3" />
<!-- 领导级安全检查数 -->
<SafetyCard v-if="i === 11" />
<!-- 项目安全检查数据 -->
<DefectTreatmentCard v-if="i === 4" />
<!-- 应急数据 -->
<EmergencyCard v-if="i === 10" />
<!-- 机具管理 -->
<SpecialEquipCard v-if="i === 6" />
<template>
<!-- 企业及分支机构人数 -->
<OrganizerCard v-if="i === 2" />
<OrganizerCard :orgData="safetySignboardData?.Org" :projectInfoData="safetySignboardData.ProjectInfo" />
<!-- 危大工程数 -->
<BigCrisisCard :dangerousProjectData="dangerousProjectData" />
<!-- 四级风险数据 -->
<RiskRankingCard :riskClassificationData="riskClassificationData" />
<!-- 作业许可数 -->
<WorkCard :licensesData="safetySignboardData?.Licenses" />
<!-- 培训数据 -->
<EducationCard :educationData="educationData" />
<!-- 领导级安全检查数 -->
<SafetyCard :hsseProblemData="hsseProblemData" :hsseProblemDataNum="hsseProblemDataNum" />
<!-- 项目安全检查数据 -->
<DefectTreatmentCard :hsseProblem="safetySignboardData?.HsseProblem" />
<!-- 应急数据 -->
<EmergencyCard :emergencyData="emergencyData" />
<!-- 机具管理 -->
<SpecialEquipCard :costEquipmentData="safetySignboardData?.CostEquipment" />
<!-- 安全工时 -->
<!-- <SafeHoursCard v-if="i === 1" /> -->
@@ -47,33 +47,33 @@
<u-transition :show="tabIndx === 1" name="slide-right">
<view v-if="tabIndx == 1">
<!-- 企业和分支机构人数 -->
<OrgPersonCard />
<OrgPersonCard :qmsOrgData="qualityWeldingData?.QmsOrg" />
<!-- 人员报验培训及交底数 -->
<EducationCard1 />
<EducationCard1 :qmsEducation="qualityWeldingData?.QmsEducation" />
<!-- 星级标准化工地建设 -->
<!-- <StarLevelCard /> -->
<!-- 计量器具数 -->
<MeasuringCard />
<MeasuringCard :qmsMeasuringInstruments="qualityWeldingData.QmsMeasuringInstruments" />
<!-- 设备材料及机具报验数 -->
<EquipmentCard />
<EquipmentCard :qmsInspectionData="qualityWeldingData?.QmsInspection" />
<!-- 工程划分数 -->
<ProjectItem />
<ProjectItem :projectDivisionData="projectDivisionData" />
<!-- 领导级质量检查数 -->
<SafetyCards />
<SafetyCards :qualityProblemData="qualityProblemData" :qualityProblemDatas="qualityProblemDatas" />
<!-- 项目质量检查数 -->
<QualityCard />
<QualityCard :qualityProblemData="qualityWeldingData?.QualityProblem" />
<!-- 控制点验收数 -->
<AcceptanceData />
<AcceptanceData :controlPointAcceptanceData="controlPointAcceptanceData" />
<!-- 优质工程数 -->
<HighQuality />
<HighQuality :awardStatsData="awardStatsData" />
<!-- QC活动数 -->
<QCActivity />
<QCActivity :awardStatsData="awardStatsData" />
<!-- 施工方案数 -->
<ConstructionScheme />
<ConstructionScheme :constructSolutionData="constructSolutionData" />
<!-- 图纸会审及交底数 -->
<ReviewAndBriefing />
<ReviewAndBriefing :comprehensiveData="qualityWeldingData?.Comprehensive" />
<!-- 焊接数 -->
<WeldingData />
<WeldingData :hjData="qualityWeldingData?.HjData" />
<!-- 报验记录 -->
<!-- <InspectionRecord /> -->
</view>
@@ -82,8 +82,10 @@
</template>
<script setup>
import { defineAsyncComponent, ref } from 'vue';
import { defineAsyncComponent, ref, onMounted } from 'vue';
import { getSafetySignboard, getQualityWelding } from '@/api/moduleApi/index.js';
import { isLoggedIn } from '@/utils';
import { useUserStore } from '@/store';
/* 加载组件
-------------------------------------------------------------*/
// 安全
@@ -117,6 +119,7 @@ import AcceptanceData from './qms/acceptanceData.vue';
import WeldingData from './qms/weldingData.vue';
import SafetyCards from './qms/safetyCard.vue';
let userStore = useUserStore();
const safeComponent = ref([2, 7, 8, 9, 3, 11, 4, 10, 6, 1, 5]);
const tabIndx = ref(0);
@@ -124,6 +127,117 @@ const tabIndx = ref(0);
const handleChangeTab = (idx) => {
tabIndx.value = idx;
};
//总数据
let safetySignboardData = ref({});
// 危大工程数据
let dangerousProjectData = ref([]);
// 四级风险数据
let riskClassificationData = ref([]);
// 培训数据
let educationData = ref([]);
// 领导级安全检查数
let hsseProblemData = ref([]);
let hsseProblemDataNum=ref([])
// 应急数据
let emergencyData = ref([]);
const getSafetySignboardData = async () => {
let { userInfo } = userStore;
let res = await getSafetySignboard();
safetySignboardData.value = res;
// 危大工程数据
dangerousProjectData.value = [res.DangerousProject.FinishedNum, res.DangerousProject.ConstructionNum, res.DangerousProject.OperativesNum, res.DangerousProject.TrainPersonNum];
// 四级风险数据
riskClassificationData.value = [
{ name: '重大风险', value: res.RiskClassification.HighRiskNum, labelText: `重大风险:${res.RiskClassification.HighRiskNum}` },
{ name: '较大风险', value: res.RiskClassification.MediumRiskNum, labelText: `较大风险:${res.RiskClassification.MediumRiskNum}` },
{ name: '一般风险', value: res.RiskClassification.GeneralRiskNum, labelText: `一般风险:${res.RiskClassification.GeneralRiskNum}` },
{ name: '低风险', value: res.RiskClassification.LowRiskNum, labelText: `低风险:${res.RiskClassification.LowRiskNum}` }
];
// 培训数据
educationData.value = [res.Education.SpecialTrainNum, res.Education.SafeTrainNum, res.Education.SpecialOperationTrainNum, res.Education.HseTechnicalNum];
// 领导级安全检查数
//未完成
hsseProblemData.value = [res.HsseProblem.GroupProblemNotCompletedNum, res.HsseProblem.UnitProblemNotCompletedNum + res.HsseProblem.BranchProblemNotCompletedNum];
//总数
hsseProblemDataNum.value = [res.HsseProblem.GroupProblemNum, res.HsseProblem.UnitProblemNum + res.HsseProblem.BranchProblemNum];
// 应急数据
emergencyData.value = [
res.Emergency.CompanyComprehensivePlanNum,
res.Emergency.CompanySpecialPlanNum,
res.Emergency.CompanyOnSiteDisposalPlan,
res.Emergency.CompanyDrillNum,
res.Emergency.CompanyDrillPersonNum
];
};
//质量看板指标
let qualityWeldingData = ref({});
//工程划分数
let projectDivisionData = ref([]);
// 领导级质量检查数
let qualityProblemData = ref([]);
let qualityProblemDatas=ref([])
// 控制点验收数
let controlPointAcceptanceData = ref({
//关键工序、特殊过程、隐蔽工程等合格率
QualifiedRateList: [],
//关键工序、特殊过程、隐蔽工程等验收数
AcceptNumList: [],
// 关键工序、特殊过程、隐蔽工程等合格数
QualifiedList: [],
// 单位工程、分部工程、分项工程合格率
EngineerQualifiedRateList: [],
// 单位工程、分部工程、分项工程验收数
EngineerAcceptNumList: [],
// 单位工程、分部工程、分项工程合格数
EngineerQualifiedList: []
});
// 优质工程
let awardStatsData = ref({
qualityEngineering: [],
qc: []
});
// 施工方案数
let constructSolutionData = ref([]);
const getQualityWeldingData = async () => {
let { userInfo } = userStore;
let res = await getQualityWelding();
qualityWeldingData.value = res;
console.log('质量看板指标', res);
// 工程划分数
projectDivisionData.value = [res.ProjectDivision.UnitProjectNum, res.ProjectDivision.SubProjectNum, res.ProjectDivision.SubdivisionalWorksNum];
// 领导级质量检查数
qualityProblemData.value = [res.QualityProblem.GroupProblemNum, res.QualityProblem.UnitProblemNum, res.QualityProblem.BranchProblemNum];
qualityProblemDatas.value = [res.QualityProblem.GroupProblemNotCompletedNum, res.QualityProblem.UnitProblemNotCompletedNum, res.QualityProblem.BranchProblemNotCompletedNum];
// 控制点验收数
controlPointAcceptanceData.value = {
QualifiedRateList: res.QualifiedRateList,
AcceptNumList: res.AcceptNumList,
QualifiedList: res.QualifiedList,
EngineerQualifiedRateList: res.EngineerQualifiedRateList,
EngineerAcceptNumList: res.EngineerAcceptNumList,
EngineerQualifiedList: res.EngineerQualifiedList
};
// 优质工程
Object.assign(awardStatsData.value, {
qualityEngineering: [res.AwardStats.LubanNum, res.AwardStats.GuoyouNum, res.AwardStats.ProvinceNum, res.AwardStats.CityNum],
qc: [res.AwardStats.QcProvinceNum, res.AwardStats.QcGroupNum, res.AwardStats.QcEnterpriseNum]
});
// 施工方案
constructSolutionData.value = [
res.ConstructSolution.ConstructSolutionNum,
res.ConstructSolution.ConstructSolutionProjectApproveNum,
res.ConstructSolution.ConstructSolutionUnitApproveNum
];
console.log('+++++++++++++', awardStatsData.value);
};
onMounted(() => {
if (!isLoggedIn()) {
return;
}
getSafetySignboardData();
getQualityWeldingData();
});
</script>
<style lang="scss"></style>