This commit is contained in:
zmj 2024-03-27 10:48:34 +08:00
parent ef1ca3769f
commit 8f58ca2988
36 changed files with 634 additions and 1463 deletions

View File

@ -6,7 +6,6 @@
<el-button type="primary"> <el-button type="primary">
上传 上传
</el-button> </el-button>
<!-- <span class="ml-5 text-xs ">可上传</span> -->
</el-upload> </el-upload>
<div v-for="(item, index) in formData[value]" class="ml-5 flex "> <div v-for="(item, index) in formData[value]" class="ml-5 flex ">
@ -18,6 +17,7 @@
import { ref, defineProps } from "vue" import { ref, defineProps } from "vue"
import configs from "@/config" import configs from "@/config"
import useUserStore from "@/stores/modules/user"; import useUserStore from "@/stores/modules/user";
const userStore = useUserStore(); const userStore = useUserStore();
const base_url = ref(configs.baseUrl + configs.urlPrefix) const base_url = ref(configs.baseUrl + configs.urlPrefix)
const props = defineProps({ const props = defineProps({
@ -33,7 +33,6 @@ const props = defineProps({
const handleAvatarSuccess = (response: any) => { const handleAvatarSuccess = (response: any) => {
console.log(props.formData[props.value], 'sdadsa')
props.formData[props.value] ||= [] props.formData[props.value] ||= []
// @ts-ignore // @ts-ignore
response.code != 0 ? props.formData[props.value].push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg); response.code != 0 ? props.formData[props.value].push({ uri: response.data.uri, name: response.data.name }) : ElMessage.error(response.msg);

View File

@ -30,13 +30,8 @@
<el-table-column label="序号" type="index" width="55" /> <el-table-column label="序号" type="index" width="55" />
<el-table-column label="组织名称" prop="org_name" show-overflow-tooltip /> <el-table-column label="组织名称" prop="org_name" show-overflow-tooltip />
<el-table-column label="部门名称" prop="dept_name" show-overflow-tooltip /> <el-table-column label="部门名称" prop="dept_name" show-overflow-tooltip />
<el-table-column label="分类名" prop="classify_name" show-overflow-tooltip /> <el-table-column label="分类名" prop="classify_name" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip /> <el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">

View File

@ -1,87 +1,52 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全事故详情" :async="true" width="60vw" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="2" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="项目编码" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.project_code }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="事故名称" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.name }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="事故类型" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.type }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="发生时间" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.happen_time }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="设备事故" label-align="left" align="left" label-class-name="my-label">
{{ formData.device_accident }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="客户名称"> <el-descriptions-item label="承包商人员" label-align="left" align="left" label-class-name="my-label">
{{ formData.custom.name {{ formData.contractor_user }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="非本企业人员" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.not_our_company_user }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="退款日期"> <el-descriptions-item label="本企业人员" label-align="left" align="left" label-class-name="my-label">
{{ formData.reason {{ formData.our_company_user }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="内容" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.content }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="退款金额"> <el-descriptions-item label="备注" label-align="left" align="left" label-class-name="my-label">
{{ formData.amount }} {{ formData.remark }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> <el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-form-item label="金额大写"> target="_blank"> 文件{{ index + 1 }}</el-link>
{{ formData.amount_daxie }} </el-descriptions-item>
</el-form-item> </el-descriptions>
</el-col>
<el-col :span="12">
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +68,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +79,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -66,12 +65,12 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="非本企业人员" prop="our_company_user"> <el-form-item label="非本企业人员" prop="our_company_user">
<el-input v-model="formData.our_company_user" clearable placeholder="请输入非本企业人员" /> <el-input v-model="formData.not_our_company_user" clearable placeholder="请输入非本企业人员" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="本企业人员" prop="not_our_company_user"> <el-form-item label="本企业人员" prop="not_our_company_user">
<el-input v-model="formData.not_our_company_user" clearable placeholder="请输入本企业人员" /> <el-input v-model="formData.our_company_user" clearable placeholder="请输入本企业人员" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -103,10 +102,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>

View File

@ -48,26 +48,10 @@
<el-table-column label="事故类型" prop="type" show-overflow-tooltip /> <el-table-column label="事故类型" prop="type" show-overflow-tooltip />
<el-table-column label="设备事故" prop="device_accident" show-overflow-tooltip /> <el-table-column label="设备事故" prop="device_accident" show-overflow-tooltip />
<el-table-column label="承包商人员" prop="contractor_user" show-overflow-tooltip /> <el-table-column label="承包商人员" prop="contractor_user" show-overflow-tooltip />
<el-table-column label="非本企业人员" prop="not_our_company_user" show-overflow-tooltip /> <el-table-column label="非本企业人员" prop="not_our_company_user" show-overflow-tooltip width="120" />
<el-table-column label="本企业人员" prop="our_company_user" show-overflow-tooltip /> <el-table-column label="本企业人员" prop="our_company_user" show-overflow-tooltip />
<el-table-column label="内容" prop="content" show-overflow-tooltip /> <el-table-column label="内容" prop="content" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_accident/edit']" type="primary" link <el-button v-perms="['safety.safety_accident/edit']" type="primary" link
@click="handleEdit(row)"> @click="handleEdit(row)">
@ -77,6 +61,9 @@
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_accident/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>

View File

@ -1,87 +1,71 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全检查详情" :async="true" width="80vw" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="3" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-descriptions-item label="项目编码" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_code }}
</el-descriptions-item>
<el-descriptions-item label="检查名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.check_name }}
</el-descriptions-item>
<el-descriptions-item label="检查日期" label-align="left" align="left" label-class-name="my-label">
{{ formData.check_date }}
</el-descriptions-item>
<el-descriptions-item label="检查人" label-align="left" align="left" label-class-name="my-label">
{{ formData.check_user }}
</el-descriptions-item>
<el-descriptions-item label="检查单位" label-align="left" align="left" label-class-name="my-label">
{{ formData.check_company }}
</el-descriptions-item>
<el-descriptions-item label="检查区域" label-align="left" align="left" label-class-name="my-label">
{{ formData.check_area }}
</el-descriptions-item>
<el-descriptions-item label="检查项" label-align="left" align="left" label-class-name="my-label">
{{ formData.check_nature }}
</el-descriptions-item>
<el-descriptions-item label="检查结果" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.check_result }}
<el-form-item label="项目名称"> </el-descriptions-item>
{{ formData.project ? formData.project.name : '暂无数据' <el-descriptions-item label="整改单位" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.modify_company }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="整改期限" label-align="left" align="left" label-class-name="my-label">
{{ formData.modify_term }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="项目编码"> <el-descriptions-item label="责任人" label-align="left" align="left" label-class-name="my-label">
{{ formData.project.project_code {{ formData.resp_user }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="风险等级" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.risk_level }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="安全隐患" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="客户名称"> {{ formData.safety_hazard }}
{{ formData.custom.name </el-descriptions-item>
}} <el-descriptions-item label="质量隐患" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.quality_hazard }}
</el-col> </el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="子表" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="退款日期"> {{ formData.sub_table }}
{{ formData.reason </el-descriptions-item>
}} <el-descriptions-item label="备注" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.remark }}
</el-col> </el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="退款金额"> <el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
{{ formData.amount }} target="_blank"> 文件{{ index + 1 }}</el-link>
</el-form-item> </el-descriptions-item>
</el-col> </el-descriptions>
<el-col :span="12">
<el-form-item label="金额大写">
{{ formData.amount_daxie }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +87,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +98,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -22,12 +21,12 @@
:rules="[{ required: true, message: '不可为空', trigger: 'blur' }]"> :rules="[{ required: true, message: '不可为空', trigger: 'blur' }]">
<el-select v-model="formData.dept_id" clearable placeholder="请选择部门" class="flex-1"> <el-select v-model="formData.dept_id" clearable placeholder="请选择部门" class="flex-1">
<el-option v-for="( item, index ) in list2 " :key="index" :label="item.name" <el-option v-for="( item, index ) in list2 " :key="index" :label="item.name"
:value="item.id" /> :value="parseInt(item.id)" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="项目名称" prop="project_id" @click="showDialog = true"> <el-form-item label="项目名称" @click="showDialog = true">
<el-input v-model="project_name" clearable placeholder="请输入项目名称" /> <el-input v-model="project_name" clearable placeholder="请输入项目名称" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -148,10 +147,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>

View File

@ -51,44 +51,31 @@
<el-table-column label="检查日期" prop="check_date" show-overflow-tooltip /> <el-table-column label="检查日期" prop="check_date" show-overflow-tooltip />
<el-table-column label="整改期限" prop="modify_term" show-overflow-tooltip /> <el-table-column label="整改期限" prop="modify_term" show-overflow-tooltip />
<el-table-column label="检查人" prop="check_user" show-overflow-tooltip /> <el-table-column label="检查人" prop="check_user" show-overflow-tooltip />
<el-table-column label="检查单位" prop="check_company" show-overflow-tooltip /> <!-- <el-table-column label="检查单位" prop="check_company" show-overflow-tooltip /> -->
<el-table-column label="整改单位" prop="modify_company" show-overflow-tooltip /> <el-table-column label="整改单位" prop="modify_company" show-overflow-tooltip />
<el-table-column label="责任人" prop="resp_user" show-overflow-tooltip /> <el-table-column label="责任人" prop="resp_user" show-overflow-tooltip />
<el-table-column label="检查区域" prop="check_area" show-overflow-tooltip /> <!-- <el-table-column label="检查区域" prop="check_area" show-overflow-tooltip /> -->
<el-table-column label="风险等级" prop="risk_level" show-overflow-tooltip /> <el-table-column label="风险等级" prop="risk_level" show-overflow-tooltip />
<el-table-column label="检查项" prop="check_item" show-overflow-tooltip /> <!-- <el-table-column label="检查项" prop="check_item" show-overflow-tooltip /> -->
<el-table-column label="安全隐患" prop="safety_hazard" show-overflow-tooltip /> <!-- <el-table-column label="安全隐患" prop="safety_hazard" show-overflow-tooltip /> -->
<el-table-column label="检查性质" prop="check_nature" show-overflow-tooltip /> <!-- <el-table-column label="检查性质" prop="check_nature" show-overflow-tooltip /> -->
<el-table-column label="检查结果" prop="check_result" show-overflow-tooltip /> <el-table-column label="检查结果" prop="check_result" show-overflow-tooltip />
<el-table-column label="质量隐患" prop="quality_hazard" show-overflow-tooltip /> <el-table-column label="质量隐患" prop="quality_hazard" show-overflow-tooltip />
<el-table-column label="子表" prop="content" show-overflow-tooltip /> <el-table-column label="子表" prop="sub_table" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_check/edit']" type="primary" link <el-button v-perms="['safety.safety_check/edit']" type="primary" link @click="handleEdit(row)">
@click="handleEdit(row)">
编辑 编辑
</el-button> </el-button>
<el-button v-perms="['safety.safety_check/delete']" type="danger" link <el-button v-perms="['safety.safety_check/delete']" type="danger" link
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_check/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>

View File

@ -1,87 +1,34 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="应急预案详情" :async="true" width="550px" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="1" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="名称" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.name }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="内容" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.content }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="发生时间" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.happen_date }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="备注" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.remark }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-col :span="12"> target="_blank"> 文件{{ index + 1 }}</el-link>
<el-form-item label="客户名称"> </el-descriptions-item>
{{ formData.custom.name </el-descriptions>
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款日期">
{{ formData.reason
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款金额">
{{ formData.amount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="金额大写">
{{ formData.amount_daxie }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +50,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +61,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -45,8 +44,8 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="发生时间" prop="require"> <el-form-item label="发生时间" prop="require">
<el-date-picker v-model="formData.happen_date" clearable type="date" <el-date-picker v-model="formData.happen_date" clearable type="date" value-format="YYYY-MM-DD"
value-format="YYYY-MM-DD" placeholder="选择发生时间" class="flex-1 !flex"> placeholder="选择发生时间" class="flex-1 !flex">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -71,10 +70,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>
@ -217,10 +215,7 @@ const setFormData = async (data: Record<any, any>) => {
Object.assign(formDataannex, arry1) Object.assign(formDataannex, arry1)
} }
if (data.dept_id) {
getlist1(data.dept_id
)
}
for (const key in formData) { for (const key in formData) {
if (data[key] != null && data[key] != undefined) { if (data[key] != null && data[key] != undefined) {
@ -229,11 +224,10 @@ const setFormData = async (data: Record<any, any>) => {
} }
} }
project_name.value = data.project_name project_name.value = data.project_name
project_code.value = data.project_code project_code.value = data.project_code
getlist1(formData.org_id) getlist1(formData.org_id)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {
const data = await safetyemergencyplanDetail({ const data = await safetyemergencyplanDetail({

View File

@ -41,20 +41,6 @@
<el-table-column label="发生时间" prop="happen_date" show-overflow-tooltip /> <el-table-column label="发生时间" prop="happen_date" show-overflow-tooltip />
<el-table-column label="内容" prop="content" show-overflow-tooltip /> <el-table-column label="内容" prop="content" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip /> <el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
@ -66,7 +52,9 @@
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_emergency_plan/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>
</el-table-column> </el-table-column>

View File

@ -1,87 +1,34 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全评估详情" :async="true" width="550px" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="1" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="名称" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.name }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="内容" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.content }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="发生时间" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.happen_date }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="备注" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.remark }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-col :span="12"> target="_blank"> 文件{{ index + 1 }}</el-link>
<el-form-item label="客户名称"> </el-descriptions-item>
{{ formData.custom.name </el-descriptions>
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款日期">
{{ formData.reason
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款金额">
{{ formData.amount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="金额大写">
{{ formData.amount_daxie }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +50,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +61,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -45,8 +44,8 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="发生时间" prop="require"> <el-form-item label="发生时间" prop="require">
<el-date-picker v-model="formData.happen_date" clearable type="date" <el-date-picker v-model="formData.happen_date" clearable type="date" value-format="YYYY-MM-DD"
value-format="YYYY-MM-DD" placeholder="选择发生时间" class="flex-1 !flex"> placeholder="选择发生时间" class="flex-1 !flex">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -71,10 +70,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>
@ -217,10 +215,6 @@ const setFormData = async (data: Record<any, any>) => {
Object.assign(formDataannex, arry1) Object.assign(formDataannex, arry1)
} }
if (data.dept_id) {
getlist1(data.dept_id
)
}
for (const key in formData) { for (const key in formData) {
if (data[key] != null && data[key] != undefined) { if (data[key] != null && data[key] != undefined) {
@ -228,11 +222,10 @@ const setFormData = async (data: Record<any, any>) => {
formData[key] = data[key] formData[key] = data[key]
} }
} }
project_name.value = data.project_name project_name.value = data.project_name
project_code.value = data.project_code project_code.value = data.project_code
getlist1(formData.org_id)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {
const data = await safetyevaluateDetail({ const data = await safetyevaluateDetail({
@ -245,10 +238,7 @@ const getDetail = async (row: Record<string, any>) => {
// //
const handleSubmit = async () => { const handleSubmit = async () => {
formData.file = formDataannex.map((item) => item.uri) formData.file = formDataannex.map((item) => item.uri)
await formRef.value?.validate() await formRef.value?.validate()
const data = { ...formData } const data = { ...formData }
mode.value == 'edit' mode.value == 'edit'
? await safetyevaluateEdit(data) ? await safetyevaluateEdit(data)

View File

@ -41,22 +41,7 @@
<el-table-column label="发生时间" prop="happen_date" show-overflow-tooltip /> <el-table-column label="发生时间" prop="happen_date" show-overflow-tooltip />
<el-table-column label="内容" prop="content" show-overflow-tooltip /> <el-table-column label="内容" prop="content" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip /> <el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_evaluate/edit']" type="primary" link <el-button v-perms="['safety.safety_evaluate/edit']" type="primary" link
@click="handleEdit(row)"> @click="handleEdit(row)">
@ -66,6 +51,9 @@
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_evaluate/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>

View File

@ -1,87 +1,34 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全事件详情" :async="true" width="550px" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="1" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="名称" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.name }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="内容" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.content }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="发生时间" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.happen_time }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="备注" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.remark }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-col :span="12"> target="_blank"> 文件{{ index + 1 }}</el-link>
<el-form-item label="客户名称"> </el-descriptions-item>
{{ formData.custom.name </el-descriptions>
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款日期">
{{ formData.reason
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款金额">
{{ formData.amount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="金额大写">
{{ formData.amount_daxie }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +50,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +61,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -42,31 +42,19 @@
<el-table-column label="发生时间" prop="happen_time" show-overflow-tooltip /> <el-table-column label="发生时间" prop="happen_time" show-overflow-tooltip />
<el-table-column label="事件内容" prop="content" show-overflow-tooltip /> <el-table-column label="事件内容" prop="content" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip /> <el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_event/edit']" type="primary" link <el-button v-perms="['safety.safety_event/edit']" type="primary" link @click="handleEdit(row)">
@click="handleEdit(row)">
编辑 编辑
</el-button> </el-button>
<el-button v-perms="['safety.safety_event/delete']" type="danger" link <el-button v-perms="['safety.safety_event/delete']" type="danger" link
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_event/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>

View File

@ -1,87 +1,64 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="危险源管理详情" :async="true" width="80vw" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="3" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="填报单位" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.fill_company }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="施工单位负责人" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.construction_company_user }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="监理单位负责人" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.build_company_user }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="建设单位负责人" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.build_company_user }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="危险源" label-align="left" align="left" label-class-name="my-label">
{{ formData.source }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="客户名称"> <el-descriptions-item label="可能发生事故" label-align="left" align="left" label-class-name="my-label">
{{ formData.custom.name {{ formData.accident }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="风险等级" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.risk_level }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="退款日期"> <el-descriptions-item label="管控层级" label-align="left" align="left" label-class-name="my-label">
{{ formData.reason {{ formData.control_level }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="主责部门" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.department }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="退款金额"> <el-descriptions-item label="主要人员" label-align="left" align="left" label-class-name="my-label">
{{ formData.amount }} {{ formData.users }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="技术措施" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.technical_measure }}
<el-form-item label="金额大写"> </el-descriptions-item>
{{ formData.amount_daxie }} <el-descriptions-item label="管理措施" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.manage_measure }}
</el-col> </el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="应急措施" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="退款方式"> {{ formData.emergency_measure }}
<dict-value :options="dictData.refund_type" :value="formData.refund_type" /> </el-descriptions-item>
</el-form-item> <el-descriptions-item label="备注" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.remark }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="退款人"> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
{{ formData.refunder }} <el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
</el-form-item> target="_blank"> 文件{{ index + 1 }}</el-link>
</el-col> </el-descriptions-item>
<el-col :span="12"> </el-descriptions>
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +80,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +91,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -106,19 +105,11 @@
<el-input v-model="formData.emergency_measure" clearable placeholder="请输入应急措施" /> <el-input v-model="formData.emergency_measure" clearable placeholder="请输入应急措施" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input v-model="formData.remark" type="textarea" clearable placeholder="请输入备注" /> <el-input v-model="formData.remark" type="textarea" clearable placeholder="请输入备注" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="附件"> <el-form-item label="附件">
@ -133,10 +124,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>
@ -302,12 +292,8 @@ const setFormData = async (data: Record<any, any>) => {
formData[key] = data[key] formData[key] = data[key]
} }
} }
if (data.dept_id) {
getlist1(data.dept_id
)
}
project_name.value = data.project_name project_name.value = data.project_name
getlist1(formData.org_id)
} }

View File

@ -53,29 +53,22 @@
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip /> <el-table-column label="项目名称" prop="project_name" show-overflow-tooltip />
<el-table-column label="项目编码" prop="project_code" show-overflow-tooltip /> <el-table-column label="项目编码" prop="project_code" show-overflow-tooltip />
<el-table-column label="填报单位" prop="fill_company" show-overflow-tooltip /> <el-table-column label="填报单位" prop="fill_company" show-overflow-tooltip />
<el-table-column label="施工单位负责人" prop="construction_company_user" show-overflow-tooltip /> <el-table-column label="施工单位负责人" prop="construction_company_user" show-overflow-tooltip width="140" />
<el-table-column label="监理单位负责人" prop="supervision_company_user" show-overflow-tooltip /> <el-table-column label="监理单位负责人" prop="supervision_company_user" show-overflow-tooltip width="140" />
<el-table-column label="建设单位负责人" prop="build_company_user" show-overflow-tooltip width="140" />
<el-table-column label="建设单位负责人" prop="build_company_user" show-overflow-tooltip />
<el-table-column label="危险源" prop="source" show-overflow-tooltip /> <el-table-column label="危险源" prop="source" show-overflow-tooltip />
<el-table-column label="可能发生事故" prop="accident" show-overflow-tooltip /> <el-table-column label="可能发生事故" prop="accident" show-overflow-tooltip width="120" />
<el-table-column label="风险等级" prop="control_level" show-overflow-tooltip /> <el-table-column label="风险等级" prop="control_level" show-overflow-tooltip />
<el-table-column label="管控层级" prop="build_company_user" show-overflow-tooltip /> <el-table-column label="管控层级" prop="build_company_user" show-overflow-tooltip />
<el-table-column label="主责部门" prop="department" show-overflow-tooltip /> <el-table-column label="主责部门" prop="department" show-overflow-tooltip />
<el-table-column label="主要人员" prop="users" show-overflow-tooltip /> <el-table-column label="主要人员" prop="users" show-overflow-tooltip />
<el-table-column label="技术措施" prop="technical_measure" show-overflow-tooltip /> <el-table-column label="技术措施" prop="technical_measure" show-overflow-tooltip />
<el-table-column label="管理措施" prop="manage_measure" show-overflow-tooltip /> <el-table-column label="管理措施" prop="manage_measure" show-overflow-tooltip />
<el-table-column label="应急措施" prop="emergency_measure" show-overflow-tooltip /> <el-table-column label="应急措施" prop="emergency_measure" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_hazard/edit']" type="primary" link <el-button v-perms="['safety.safety_hazard/edit']" type="primary" link @click="handleEdit(row)">
@click="handleEdit(row)">
编辑 编辑
</el-button> </el-button>
<el-button v-perms="['safety.safety_hazard/delete']" type="danger" link <el-button v-perms="['safety.safety_hazard/delete']" type="danger" link

View File

@ -1,87 +1,54 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全整改详情" :async="true" width="80vw" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="3" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="项目编码" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.project_code }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="检查性质" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.check_nature }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="检查日期" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.check_date }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="整改期限" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.modify_term }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="检查人" label-align="left" align="left" label-class-name="my-label">
{{ formData.check_user }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="客户名称"> <el-descriptions-item label="检查单位" label-align="left" align="left" label-class-name="my-label">
{{ formData.custom.name {{ formData.check_company }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="整改单位" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.modify_company }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="退款日期"> <el-descriptions-item label="责任人" label-align="left" align="left" label-class-name="my-label">
{{ formData.reason {{ formData.resp_user }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="检查项" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.check_item }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="退款金额"> <el-descriptions-item label="安全隐患" label-align="left" align="left" label-class-name="my-label">
{{ formData.amount }} {{ formData.safety_hazard }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="检查结果" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.check_result }}
<el-form-item label="金额大写"> </el-descriptions-item>
{{ formData.amount_daxie }} <el-descriptions-item label="整改人" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.modify_user }}
</el-col> </el-descriptions-item>
<el-col :span="12"> </el-descriptions>
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +70,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +81,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -2,8 +2,6 @@
<div> <div>
<el-card class="!border-none mb-4" shadow="never"> <el-card class="!border-none mb-4" shadow="never">
<el-form class="mb-[-16px]" :model="queryParams" inline label-width="auto"> <el-form class="mb-[-16px]" :model="queryParams" inline label-width="auto">
<el-form-item label="检查人" prop="check_user"> <el-form-item label="检查人" prop="check_user">
<el-input class="w-[280px]" v-model="queryParams.check_user" clearable placeholder="请输入检查人" /> <el-input class="w-[280px]" v-model="queryParams.check_user" clearable placeholder="请输入检查人" />
</el-form-item> </el-form-item>
@ -52,13 +50,10 @@
<div class="mt-4"> <div class="mt-4">
<el-table :data="pager.lists" @selection-change="handleSelectionChange"> <el-table :data="pager.lists" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column label="序号" type="index" width="55" />
<el-table-column label="组织名称" prop="org_name" show-overflow-tooltip /> <el-table-column label="组织名称" prop="org_name" show-overflow-tooltip />
<el-table-column label="部门名称" prop="dept_name" show-overflow-tooltip /> <el-table-column label="部门名称" prop="dept_name" show-overflow-tooltip />
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip /> <el-table-column label="项目名称" prop="project_name" show-overflow-tooltip />
<el-table-column label="项目编码" prop="project_code" show-overflow-tooltip /> <el-table-column label="项目编码" prop="project_code" show-overflow-tooltip />
<el-table-column label="检查日期" prop="check_date" show-overflow-tooltip />
<el-table-column label="整改期限" prop="modify_term" show-overflow-tooltip /> <el-table-column label="整改期限" prop="modify_term" show-overflow-tooltip />
<el-table-column label="检查人" prop="check_user" show-overflow-tooltip /> <el-table-column label="检查人" prop="check_user" show-overflow-tooltip />
<el-table-column label="检查单位" prop="check_company" show-overflow-tooltip /> <el-table-column label="检查单位" prop="check_company" show-overflow-tooltip />
@ -69,34 +64,18 @@
<el-table-column label="安全隐患" prop="safety_hazard" show-overflow-tooltip /> <el-table-column label="安全隐患" prop="safety_hazard" show-overflow-tooltip />
<el-table-column label="检查性质" prop="check_nature" show-overflow-tooltip /> <el-table-column label="检查性质" prop="check_nature" show-overflow-tooltip />
<el-table-column label="检查结果" prop="check_result" show-overflow-tooltip /> <el-table-column label="检查结果" prop="check_result" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_modify/edit']" type="primary" link <el-button v-perms="['safety.safety_modify/edit']" type="primary" link @click="handleEdit(row)">
@click="handleEdit(row)">
编辑 编辑
</el-button> </el-button>
<el-button v-perms="['safety.safety_modify/delete']" type="danger" link <el-button v-perms="['safety.safety_modify/delete']" type="danger" link
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_modify/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@ -1,87 +1,46 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全生产月表详情" :async="true" width="550px" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="1" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="月份" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.month }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="负责人" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.resp_user }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="分类" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.classify }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="隐患数量" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.hazard_num }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="数据统计" label-align="left" align="left" label-class-name="my-label">
{{ formData.data_statistics }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="客户名称"> <el-descriptions-item label="本月重点工作" label-align="left" align="left" label-class-name="my-label">
{{ formData.custom.name {{ formData.current_important_work }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="下一阶段重点工作计划" label-align="left" align="left" label-class-name="my-label">
</el-col> {{ formData.next_important_work }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="退款日期"> <el-descriptions-item label="需报告说明或协调的事项" label-align="left" align="left" label-class-name="my-label">
{{ formData.reason {{ formData.item }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
</el-col> <el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-col :span="12"> target="_blank"> 文件{{ index + 1 }}</el-link>
<el-form-item label="退款金额"> </el-descriptions-item>
{{ formData.amount }} </el-descriptions>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="金额大写">
{{ formData.amount_daxie }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +62,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +73,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="750px" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="750px" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -56,8 +55,7 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="数据统计" prop="data_statistics"> <el-form-item label="数据统计" prop="data_statistics">
<el-input v-model="formData.data_statistics" type="number" clearable <el-input v-model="formData.data_statistics" type="number" clearable placeholder="请输入数据统计" />
placeholder="请输入数据统计" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
@ -91,10 +89,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>
@ -242,10 +239,7 @@ const setFormData = async (data: Record<any, any>) => {
Object.assign(formDataannex, arry1) Object.assign(formDataannex, arry1)
} }
if (data.dept_id) {
getlist1(data.dept_id
)
}
for (const key in formData) { for (const key in formData) {
if (data[key] != null && data[key] != undefined) { if (data[key] != null && data[key] != undefined) {
@ -258,6 +252,8 @@ const setFormData = async (data: Record<any, any>) => {
project_name.value = data.project_name project_name.value = data.project_name
project_code.value = data.project_code project_code.value = data.project_code
getlist1(formData.org_id)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {
const data = await safetyproductmonthDetail({ const data = await safetyproductmonthDetail({

View File

@ -42,23 +42,7 @@
<el-table-column label="本月重点工作" width="155" prop="current_important_work" show-overflow-tooltip /> <el-table-column label="本月重点工作" width="155" prop="current_important_work" show-overflow-tooltip />
<el-table-column label="下一阶段重点工作计划" width="165" prop="next_important_work" show-overflow-tooltip /> <el-table-column label="下一阶段重点工作计划" width="165" prop="next_important_work" show-overflow-tooltip />
<el-table-column label="需报告说明或协调的事项" width="185" prop="item" show-overflow-tooltip /> <el-table-column label="需报告说明或协调的事项" width="185" prop="item" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_product_month/edit']" type="primary" link <el-button v-perms="['safety.safety_product_month/edit']" type="primary" link
@click="handleEdit(row)"> @click="handleEdit(row)">
@ -68,8 +52,9 @@
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_product_month/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@ -1,87 +1,34 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全演练详情" :async="true" width="550px" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="1" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="名称" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.name }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="内容" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.content }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="发生时间" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.happen_date }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="备注" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.remark }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-col :span="12"> target="_blank"> 文件{{ index + 1 }}</el-link>
<el-form-item label="客户名称"> </el-descriptions-item>
{{ formData.custom.name </el-descriptions>
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款日期">
{{ formData.reason
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款金额">
{{ formData.amount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="金额大写">
{{ formData.amount_daxie }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +50,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +61,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -45,8 +44,8 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="发生时间" prop="require"> <el-form-item label="发生时间" prop="require">
<el-date-picker v-model="formData.happen_date" clearable type="date" <el-date-picker v-model="formData.happen_date" clearable type="date" value-format="YYYY-MM-DD"
value-format="YYYY-MM-DD" placeholder="选择发生时间" class="flex-1 !flex"> placeholder="选择发生时间" class="flex-1 !flex">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -71,10 +70,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>
@ -180,7 +178,7 @@ const getlist1 = (id: any) => {
// //
const popupTitle = computed(() => { const popupTitle = computed(() => {
return mode.value == 'edit' ? '编辑安全演练表' : '新增安全评估表' return mode.value == 'edit' ? '编辑安全演练表' : '新增安全演练表'
}) })
// //
@ -217,10 +215,6 @@ const setFormData = async (data: Record<any, any>) => {
Object.assign(formDataannex, arry1) Object.assign(formDataannex, arry1)
} }
if (data.dept_id) {
getlist1(data.dept_id
)
}
for (const key in formData) { for (const key in formData) {
if (data[key] != null && data[key] != undefined) { if (data[key] != null && data[key] != undefined) {

View File

@ -41,20 +41,7 @@
<el-table-column label="发生时间" prop="happen_date" show-overflow-tooltip /> <el-table-column label="发生时间" prop="happen_date" show-overflow-tooltip />
<el-table-column label="内容" prop="content" show-overflow-tooltip /> <el-table-column label="内容" prop="content" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip /> <el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
@ -66,6 +53,9 @@
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_rehearsal/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>

View File

@ -1,70 +1,27 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="安全规范详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全规范详情" :async="true" width="550px" @close="handleClose" @confirm="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="1" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row>
<el-col :span="12">
<el-form-item label="组织名称">
{{ formData.org_name }} {{ formData.org_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.dept_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="规范类别" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="部门名称"> {{ formData.type }}
{{ formData.dept_name </el-descriptions-item>
<el-descriptions-item label="发布部门" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.publish_dep }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="内容" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12">
<el-form-item label="规范名称">
{{ formData.name
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="规范类别">
{{ formData.type
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="发布部门">
{{ formData.publish_dep
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="内容">
{{ formData.content }} {{ formData.content }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> <el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-form-item label="规范附件"> target="_blank"> 文件{{ index + 1 }}</el-link>
<div> </el-descriptions-item>
<div v-for="( item, index ) in formDataannex " </el-descriptions>
style="margin-left: 5px;display: block;">
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;"
@click="delFileFn(index)">x</span>
</div>
</div>
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,19 +60,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
if (data.file && data.file.length > 0) {
const arry1 = data.file.map((item: any, index: any) => {
return {
name: `文件${index + 1}`,
uri: item
};
});
Object.assign(formDataannex, arry1)
}
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -64,10 +63,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>

View File

@ -41,22 +41,6 @@
<el-table-column label="规范类别" prop="type" show-overflow-tooltip /> <el-table-column label="规范类别" prop="type" show-overflow-tooltip />
<el-table-column label="发布部门" prop="publish_dep" show-overflow-tooltip /> <el-table-column label="发布部门" prop="publish_dep" show-overflow-tooltip />
<el-table-column label="内容" prop="content" show-overflow-tooltip /> <el-table-column label="内容" prop="content" show-overflow-tooltip />
<el-table-column label="规范附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
@ -68,9 +52,9 @@
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<!-- <el-button v-perms="['safety.safety_standard/detail']" link @click="handledetail(row)"> <el-button v-perms="['safety.safety_standard/detail']" link @click="handledetail(row)">
详情 详情
</el-button> --> </el-button>
</template> </template>
</el-table-column> </el-table-column>

View File

@ -1,87 +1,34 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="项目合同详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="项目合同详情" :async="true" width="550px" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="1" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row> {{ formData.org_name }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="合同编号"> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.contract.contract_name }} {{ formData.dept_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="监督名称" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="项目名称"> {{ formData.name }}
{{ formData.project ? formData.project.name : '暂无数据' </el-descriptions-item>
}} <el-descriptions-item label="发生时间" label-align="left" align="left" label-class-name="my-label">
</el-form-item> {{ formData.happen_time }}
</el-col> </el-descriptions-item>
<el-descriptions-item label="设备事故" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> {{ formData.device_accident }}
<el-form-item label="项目编码"> </el-descriptions-item>
{{ formData.project.project_code <el-descriptions-item label="备注" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.remark }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-col :span="12"> target="_blank"> 文件{{ index + 1 }}</el-link>
<el-form-item label="客户名称"> </el-descriptions-item>
{{ formData.custom.name </el-descriptions>
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款日期">
{{ formData.reason
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款金额">
{{ formData.amount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="金额大写">
{{ formData.amount_daxie }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款方式">
<dict-value :options="dictData.refund_type" :value="formData.refund_type" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="退款人">
{{ formData.refunder }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款账号">
{{ formData.collection_acccount }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收款银行">
{{ formData.collection_bank }}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="备注">
{{ formData.remark
}}
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -103,12 +50,6 @@ const emit = defineEmits(['success', 'close'])
const formRef = shallowRef<FormInstance>() const formRef = shallowRef<FormInstance>()
const popupRef = shallowRef<InstanceType<typeof Popup>>() const popupRef = shallowRef<InstanceType<typeof Popup>>()
const datas = reactive({
provinceOptions: [],
cityOptions: [],
areaOptions: [],
});
// //
const formData = reactive({ const formData = reactive({
@ -120,9 +61,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -44,36 +44,23 @@
<el-table-column label="组织名称" prop="org_name" show-overflow-tooltip /> <el-table-column label="组织名称" prop="org_name" show-overflow-tooltip />
<el-table-column label="部门名称" prop="dept_name" show-overflow-tooltip /> <el-table-column label="部门名称" prop="dept_name" show-overflow-tooltip />
<el-table-column label="项目名称" prop="project_name" show-overflow-tooltip /> <el-table-column label="项目名称" prop="project_name" show-overflow-tooltip />
<!-- <el-table-column label="项目编码" prop="project_code" show-overflow-tooltip /> -->
<el-table-column label="监督名称" prop="name" show-overflow-tooltip /> <el-table-column label="监督名称" prop="name" show-overflow-tooltip />
<el-table-column label="发生时间" prop="happen_time" show-overflow-tooltip /> <el-table-column label="发生时间" prop="happen_time" show-overflow-tooltip />
<el-table-column label="设备事故" prop="device_accident" show-overflow-tooltip /> <el-table-column label="设备事故" prop="device_accident" show-overflow-tooltip />
<el-table-column label="备注" prop="remark" show-overflow-tooltip /> <el-table-column label="备注" prop="remark" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_event/edit']" type="primary" link <el-button v-perms="['safety.safety_event/edit']" type="primary" link @click="handleEdit(row)">
@click="handleEdit(row)">
编辑 编辑
</el-button> </el-button>
<el-button v-perms="['safety.safety_event/delete']" type="danger" link <el-button v-perms="['safety.safety_event/delete']" type="danger" link
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<el-button v-perms="['safety.safety_event/detail']" link @click="handledetail(row)">
详情
</el-button>
</template> </template>

View File

@ -1,88 +1,40 @@
<template> <template>
<div class="detail-popup"> <div class="detail-popup">
<popup ref="popupRef" title="安全目标详情" :async="true" width="80%" @confirm="handleSubmit" @close="handleClose"> <popup ref="popupRef" title="安全目标详情" :async="true" width="550px" @confirm="handleClose" @close="handleClose">
<el-form ref="formRef" :model="formData" label-width="160px"> <el-descriptions :column="1" border>
<el-card class="mb-2"> <el-descriptions-item label="组织名称" label-align="left" align="left" label-class-name="my-label">
<el-row>
<el-col :span="12">
<el-form-item label="组织名称">
{{ formData.org_name }} {{ formData.org_name }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="部门名称" label-align="left" align="left" label-class-name="my-label">
{{ formData.dept_name }}
</el-descriptions-item>
<el-col :span="12"> <el-descriptions-item label="项目名称" label-align="left" align="left" label-class-name="my-label">
<el-form-item label="部门名称"> {{ formData.project_name }}
{{ formData.dept_name </el-descriptions-item>
<el-descriptions-item label="项目类别" label-align="left" align="left" label-class-name="my-label">
}} {{ formData.project_type }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="安全目标" label-align="left" align="left" label-class-name="my-label">
{{ formData.target }}
<el-col :span="12"> </el-descriptions-item>
<el-form-item label="项目名称"> <el-descriptions-item label="基本要求" label-align="left" align="left" label-class-name="my-label">
{{ formData.project_name {{ formData.require }}
}} </el-descriptions-item>
</el-form-item> <el-descriptions-item label="目标规范" label-align="left" align="left" label-class-name="my-label">
</el-col>
<el-col :span="12">
<el-form-item label="项目类别">
{{ formData.project_type
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="安全目标">
{{ formData.target
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="基本要求">
{{ formData.require
}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="目标规范">
{{ formData.target_standard }} {{ formData.target_standard }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="合格率" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12">
<el-form-item label="合格率">
{{ formData.pass_rate }} {{ formData.pass_rate }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="允许偏差" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12">
<el-form-item label="允许偏差">
{{ formData.deviation }} {{ formData.deviation }}
</el-form-item> </el-descriptions-item>
</el-col> <el-descriptions-item label="附件" label-align="left" align="left" label-class-name="my-label">
<el-col :span="12"> <el-link type="primary" v-for="(item, index) in formData.file" :key="index" :href="item"
<el-form-item label="规范附件"> target="_blank"> 文件{{ index + 1 }}</el-link>
<div> </el-descriptions-item>
<div v-for="( item, index ) in formDataannex " </el-descriptions>
style="margin-left: 5px;display: block;">
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start"
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;"
@click="delFileFn(index)">x</span>
</div>
</div>
</el-form-item>
</el-col>
</el-row>
</el-card>
</el-form>
</popup> </popup>
</div> </div>
</template> </template>
@ -121,19 +73,6 @@ const formData = reactive({
// //
const setFormData = async (data: Record<any, any>) => { const setFormData = async (data: Record<any, any>) => {
Object.assign(formData, data) Object.assign(formData, data)
if (data.file && data.file.length > 0) {
const arry1 = data.file.map((item: any, index: any) => {
return {
name: `文件${index + 1}`,
uri: item
};
});
Object.assign(formDataannex, arry1)
}
} }
const getDetail = async (row: Record<string, any>) => { const getDetail = async (row: Record<string, any>) => {

View File

@ -1,8 +1,7 @@
<template> <template>
<div class="edit-popup"> <div class="edit-popup">
<popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" <popup ref="popupRef" :title="popupTitle" :async="true" width="550px" @confirm="handleSubmit" @close="handleClose">
@close="handleClose">
<el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules"> <el-form ref="formRef" :model="formData" label-width="auto" :rules="formRules">
<el-row :gutter="10"> <el-row :gutter="10">
@ -51,8 +50,7 @@
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="目标规范" prop="target_standard"> <el-form-item label="目标规范" prop="target_standard">
<el-input v-model="formData.target_standard" type="textarea" clearable <el-input v-model="formData.target_standard" type="textarea" clearable placeholder="请输入目标规范" />
placeholder="请输入目标规范" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
@ -82,10 +80,9 @@
</el-upload> </el-upload>
<div> <div>
<div v-for="( item, index ) in formDataannex " <div v-for="( item, index ) in formDataannex " style="margin-left: 5px;display: block;">
style="margin-left: 5px;display: block;"> <a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" :href="item.uri"
<a style="margin-left: 10px; color: #4a5dff; align-self: flex-start" target="_blank">{{ item.name }}</a>
:href="item.uri" target="_blank">{{ item.name }}</a>
<span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span> <span style="cursor: pointer;margin-left: 5px;" @click="delFileFn(index)">x</span>
</div> </div>
</div> </div>

View File

@ -41,35 +41,18 @@
<el-table-column label="目标规范" prop="target_standard" show-overflow-tooltip /> <el-table-column label="目标规范" prop="target_standard" show-overflow-tooltip />
<el-table-column label="合格率" prop="pass_rate" show-overflow-tooltip /> <el-table-column label="合格率" prop="pass_rate" show-overflow-tooltip />
<el-table-column label="允许偏差" prop="deviation" show-overflow-tooltip /> <el-table-column label="允许偏差" prop="deviation" show-overflow-tooltip />
<el-table-column label="附件" prop="file" show-overflow-tooltip>
<template #default="{ row }">
<div v-if="row.file && row.file.length > 0">
<div v-for="(item, i) in row.file " :key='i'>
<el-link :href="item" target="_blank">文件{{ i + 1 }}查看</el-link>
</div>
</div>
<div v-else>
暂无文件
</div>
</template>
</el-table-column>
<el-table-column label="操作" width="150" fixed="right"> <el-table-column label="操作" width="150" fixed="right">
<template #default="{ row }"> <template #default="{ row }">
<el-button v-perms="['safety.safety_target/edit']" type="primary" link <el-button v-perms="['safety.safety_target/edit']" type="primary" link @click="handleEdit(row)">
@click="handleEdit(row)">
编辑 编辑
</el-button> </el-button>
<el-button v-perms="['safety.safety_target/delete']" type="danger" link <el-button v-perms="['safety.safety_target/delete']" type="danger" link
@click="handleDelete(row.id)"> @click="handleDelete(row.id)">
删除 删除
</el-button> </el-button>
<!-- <el-button v-perms="['safety.safety_target/detail']" link @click="handledetail(row)"> <el-button v-perms="['safety.safety_target/detail']" link @click="handledetail(row)">
详情 详情
</el-button> --> </el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>

View File

@ -1,64 +1,71 @@
import { fileURLToPath, URL } from 'url' import { fileURLToPath, URL } from "url";
import { defineConfig } from 'vite' import { defineConfig } from "vite";
import vue from '@vitejs/plugin-vue' import vue from "@vitejs/plugin-vue";
import vueJsx from '@vitejs/plugin-vue-jsx' import vueJsx from "@vitejs/plugin-vue-jsx";
import AutoImport from 'unplugin-auto-import/vite' import AutoImport from "unplugin-auto-import/vite";
import Components from 'unplugin-vue-components/vite' import Components from "unplugin-vue-components/vite";
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
import { createStyleImportPlugin, ElementPlusResolve } from 'vite-plugin-style-import' import {
import { createSvgIconsPlugin } from 'vite-plugin-svg-icons' createStyleImportPlugin,
import vueSetupExtend from 'vite-plugin-vue-setup-extend' ElementPlusResolve,
import { visualizer } from 'rollup-plugin-visualizer' } from "vite-plugin-style-import";
import { createSvgIconsPlugin } from "vite-plugin-svg-icons";
import vueSetupExtend from "vite-plugin-vue-setup-extend";
import { visualizer } from "rollup-plugin-visualizer";
// import legacyPlugin from '@vitejs/plugin-legacy' // import legacyPlugin from '@vitejs/plugin-legacy'
// https://vitejs.dev/config/ // https://vitejs.dev/config/
export default defineConfig({ export default defineConfig({
base: '/admin/', base: "/admin/",
server: { server: {
host: '0.0.0.0', host: "0.0.0.0",
port:9527, port: 8888,
open:true open: true,
}, },
plugins: [ plugins: [
visualizer({ open: true }), visualizer({ open: true }),
vue(), vue(),
vueJsx(), vueJsx(),
AutoImport({ AutoImport({
imports: ['vue', 'vue-router'], imports: ["vue", "vue-router"],
resolvers: [ElementPlusResolver()], resolvers: [ElementPlusResolver()],
eslintrc: { eslintrc: {
enabled: true enabled: true,
} },
}), }),
Components({ Components({
directoryAsNamespace: true, directoryAsNamespace: true,
resolvers: [ElementPlusResolver()] resolvers: [ElementPlusResolver()],
}), }),
createStyleImportPlugin({ createStyleImportPlugin({
resolves: [ElementPlusResolve()] resolves: [ElementPlusResolve()],
}), }),
createSvgIconsPlugin({ createSvgIconsPlugin({
// 配置路劲在你的src里的svg存放文件 // 配置路劲在你的src里的svg存放文件
iconDirs: [fileURLToPath(new URL('./src/assets/icons', import.meta.url))], iconDirs: [fileURLToPath(new URL("./src/assets/icons", import.meta.url))],
symbolId: 'local-icon-[dir]-[name]' symbolId: "local-icon-[dir]-[name]",
}), }),
vueSetupExtend() vueSetupExtend(),
// legacyPlugin({ // legacyPlugin({
// targets: ['defaults', 'IE 11'] // targets: ['defaults', 'IE 11']
// }) // })
], ],
resolve: { resolve: {
alias: { alias: {
'@': fileURLToPath(new URL('./src', import.meta.url)) "@": fileURLToPath(new URL("./src", import.meta.url)),
} },
}, },
build: { build: {
rollupOptions: { rollupOptions: {
manualChunks(id) { manualChunks(id) {
if (id.includes('node_modules')) { if (id.includes("node_modules")) {
return id.toString().split('node_modules/')[1].split('/')[0].toString() return id
.toString()
.split("node_modules/")[1]
.split("/")[0]
.toString();
} }
} },
} },
} },
}) });