This commit is contained in:
Teo
2025-09-04 11:06:45 +08:00
parent 9d1f96309f
commit 910b24019e
83 changed files with 8390 additions and 834 deletions

View File

@ -2,52 +2,63 @@
<el-card v-loading="loading">
<h2 style="text-align: center; margin-top: 5px; font-weight: bold">安全日志</h2>
<el-row>
<el-col :span="12" style="text-align: left">记录人{{ safetyLogDetail?.creator?.name }}</el-col>
<el-col :span="12" style="text-align: right">记录时间{{ safetyLogDetail?.createTime }}</el-col>
<el-col :span="12" style="text-align: left">记录人{{ safetyLogDetail?.fill }}</el-col>
<el-col :span="12" style="text-align: right">记录时间{{ safetyLogDetail?.createdAt }}</el-col>
</el-row>
<el-descriptions :column="3" border style="margin-top: 8px">
<el-descriptions-item label-align="center" width="160px" label="项目名称" :span="3">{{ currentProject?.name }} </el-descriptions-item>
<el-descriptions-item label-align="center" label="发生日期">{{ safetyLogDetail?.dateOfOccurrence }} </el-descriptions-item>
<el-descriptions-item label-align="center" label="气温">
<el-descriptions-item label-align="center" width="160px" label="项目名称" :span="3">{{ safetyLogDetail?.projectName }} </el-descriptions-item>
<el-descriptions-item label-align="center" label="发生日期" :span="safetyLogDetail?.fileList ? 3 : 1"
>{{ safetyLogDetail?.dateOfOccurrence }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="气温" v-if="!safetyLogDetail?.fileList">
<span>最高{{ safetyLogDetail?.airTemperatureMax }}</span>
<span>最低{{ safetyLogDetail?.airTemperatureMin }}</span>
</el-descriptions-item>
<el-descriptions-item label-align="center" label="气候">
<dict-tag :value="safetyLogDetail?.weather" :options="weather_type" />
<el-descriptions-item label-align="center" label="气候" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.climateName }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="工程施工部位及施工进展情况" :span="3">
<el-descriptions-item label-align="center" label="工程施工部位及施工进展情况" :span="3" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.progress }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="当日主要危险性项目作业内容" :span="3">
<el-descriptions-item label-align="center" label="当日主要危险性项目作业内容" :span="3" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.jobContent }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="施工项目安全教育与安全交底情况" :span="3">
{{ safetyLogDetail?.discloseCondition }}
<el-descriptions-item label-align="center" label="施工项目安全教育与安全交底情况" :span="3" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.discloseTheFacts }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="施工作业队伍班前施工安全活动情况" :span="3">
{{ safetyLogDetail?.activityCondition }}
<el-descriptions-item label-align="center" label="施工作业队伍班前施工安全活动情况" :span="3" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.progressOfActivity }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="现场施工安全巡视与检查情况" :span="3">
{{ safetyLogDetail?.examineCondition }}
<el-descriptions-item label-align="center" label="现场施工安全巡视与检查情况" :span="3" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.examine }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="季节施工防寒、防暑等措施实施情况" :span="3">
{{ safetyLogDetail?.implementCondition }}
<el-descriptions-item label-align="center" label="季节施工防寒、防暑等措施实施情况" :span="3" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.implementation }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="监理通知有关部门安全检查情况" :span="3">
{{ safetyLogDetail?.safetyInspectionCondition }}
<el-descriptions-item label-align="center" label="监理通知有关部门安全检查情况" :span="3" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.safetyInspectionSituation }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="停工、加班情况" :span="3">{{ safetyLogDetail?.stoppageOrOvertime }} </el-descriptions-item>
<el-descriptions-item label-align="center" label="其他应记录的安全与文明施工事项" :span="3">
{{ safetyLogDetail?.otherCondition }}
<el-descriptions-item label-align="center" label="停工、加班情况" :span="3" v-if="!safetyLogDetail?.fileList"
>{{ safetyLogDetail?.stoppageOrOvertime }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="附件" :span="3">
<el-descriptions-item label-align="center" label="其他应记录的安全与文明施工事项" :span="3" v-if="!safetyLogDetail?.fileList">
{{ safetyLogDetail?.otherRecords }}
</el-descriptions-item>
<el-descriptions-item label-align="center" label="附件" :span="3" v-if="safetyLogDetail?.fileList">
<el-space direction="vertical">
<el-link v-for="item in fileList" :key="item.ossId" :href="`${item.url}`" type="primary" :underline="false" target="_blank">
<span> {{ item.originalName }} </span>
<el-link
v-for="item in safetyLogDetail?.fileList"
:key="item.id"
:href="`${BASE_URL}${item.path}`"
type="primary"
:underline="false"
target="_blank"
>
<span> {{ item.name }} </span>
</el-link>
</el-space>
</el-descriptions-item>
<el-descriptions-item label-align="center" label="备注" :span="3">{{ safetyLogDetail?.remark }} </el-descriptions-item>
<!-- <el-descriptions-item label-align="center" label="备注" :span="3">{{ safetyLogDetail?.remark }} </el-descriptions-item> -->
</el-descriptions>
</el-card>
</template>
@ -62,6 +73,8 @@ import { OssVO } from '@/api/system/oss/types';
interface Props {
safetyLogId?: string | number;
}
const BASE_URL = import.meta.env.VITE_APP_BASE_API_GO;
console.log('🚀 ~ BASE_URL:', BASE_URL);
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const { weather_type } = toRefs<any>(proxy?.useDict('weather_type'));
@ -77,7 +90,7 @@ const fileList = ref<Array<OssVO>>([]);
const get = async () => {
loading.value = true;
const res = await getSafetyLog(props.safetyLogId);
if (res.data && res.code === 200) {
if (res.data && res.code === 0) {
safetyLogDetail.value = res.data;
if (res.data.fileId) {
const fileRes = await listByIds(res.data.fileId.split(','));