检查工单
This commit is contained in:
@ -1,4 +1,6 @@
|
||||
export interface QualityInspectionVO {
|
||||
verificationType: string;
|
||||
measure: string;
|
||||
/**
|
||||
* 巡检类型
|
||||
*/
|
||||
|
@ -28,6 +28,6 @@ export function delOss(ossId: string | number | Array<string | number>) {
|
||||
}
|
||||
|
||||
// 下载OSS对象存储
|
||||
export function downLoadOss(ossId: string | number | Array<string | number>) {
|
||||
return download('/safety/questionUserAnswer/exportFile', { idList: ossId }, '安全考试.zip');
|
||||
export function downLoadOss(ossId: { id?: string | number; idList?: string | number | Array<string | number> }, url: string, fileName: string) {
|
||||
return download(url, ossId, fileName);
|
||||
}
|
||||
|
@ -19,36 +19,39 @@
|
||||
:data="data"
|
||||
>
|
||||
<slot>
|
||||
<!-- 上传按钮 -->
|
||||
<el-button v-if="!isConstruction && !isImportInfo" type="primary">选取文件</el-button>
|
||||
<el-button v-if="isImportInfo" type="warning" plain icon="Edit">导入员工资料 </el-button>
|
||||
<!-- 上传提示 -->
|
||||
<div v-if="showTip" class="el-upload__tip">
|
||||
请上传
|
||||
<template v-if="fileSize">
|
||||
大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b>
|
||||
</template>
|
||||
<template v-if="fileType">
|
||||
格式为 <b style="color: #f56c6c">{{ fileType.join('/') }}</b>
|
||||
</template>
|
||||
的文件
|
||||
<div>
|
||||
<!-- 上传按钮 -->
|
||||
<el-button v-if="!isConstruction && !isImportInfo" type="primary">选取文件</el-button>
|
||||
<el-button v-if="isImportInfo" type="warning" plain icon="Edit">导入员工资料 </el-button>
|
||||
<!-- 上传提示 -->
|
||||
<div v-if="showTip" class="el-upload__tip" @click.stop>
|
||||
请上传
|
||||
<template v-if="fileSize">
|
||||
大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b>
|
||||
</template>
|
||||
<template v-if="fileType">
|
||||
格式为 <b style="color: #f56c6c">{{ fileType.join('/') }}</b>
|
||||
</template>
|
||||
的文件
|
||||
</div>
|
||||
<!-- 文件列表 -->
|
||||
<transition-group
|
||||
v-if="!isConstruction && !isImportInfo"
|
||||
class="upload-file-list el-upload-list el-upload-list--text"
|
||||
name="el-fade-in-linear"
|
||||
tag="ul"
|
||||
@click.stop
|
||||
>
|
||||
<li v-for="(file, index) in fileList" :key="file.uid" class="el-upload-list__item ele-upload-list__item-content">
|
||||
<el-link :href="`${file.url}`" :underline="false" target="_blank">
|
||||
<span class="el-icon-document"> {{ getFileName(file.name) }} </span>
|
||||
</el-link>
|
||||
<div class="ele-upload-list__item-content-action">
|
||||
<el-button type="danger" link @click="handleDelete(index)">删除</el-button>
|
||||
</div>
|
||||
</li>
|
||||
</transition-group>
|
||||
</div>
|
||||
<!-- 文件列表 -->
|
||||
<transition-group
|
||||
v-if="!isConstruction && !isImportInfo"
|
||||
class="upload-file-list el-upload-list el-upload-list--text"
|
||||
name="el-fade-in-linear"
|
||||
tag="ul"
|
||||
>
|
||||
<li v-for="(file, index) in fileList" :key="file.uid" class="el-upload-list__item ele-upload-list__item-content">
|
||||
<el-link :href="`${file.url}`" :underline="false" target="_blank">
|
||||
<span class="el-icon-document"> {{ getFileName(file.name) }} </span>
|
||||
</el-link>
|
||||
<div class="ele-upload-list__item-content-action">
|
||||
<el-button type="danger" link @click="handleDelete(index)">删除</el-button>
|
||||
</div>
|
||||
</li>
|
||||
</transition-group>
|
||||
</slot>
|
||||
|
||||
<el-icon v-if="isConstruction"><Plus /></el-icon>
|
||||
@ -214,6 +217,8 @@ const handleUploadSuccess = (res: any, file: UploadFile) => {
|
||||
|
||||
// 删除文件
|
||||
const handleDelete = async (index: string | number, type?: string) => {
|
||||
console.log('🚀 ~ handleDelete ~ index:', index);
|
||||
|
||||
await proxy?.$modal.confirm('是否确认删除此文件?').finally();
|
||||
if (type === 'ossId') {
|
||||
delOss(index);
|
||||
|
@ -113,7 +113,7 @@
|
||||
|
||||
<!-- </el-card> -->
|
||||
<div class="dialog-footer">
|
||||
<div class="btn-item">
|
||||
<div class="btn-item" @click="handleExport">
|
||||
<img src="../../../../assets/icons/svg/derived.png" />
|
||||
<span>导出</span>
|
||||
</div>
|
||||
@ -130,7 +130,7 @@ import { QualityConstructionLogVO, QualityConstructionLogQuery, QualityConstruct
|
||||
import { dayjs } from 'element-plus';
|
||||
import { useUserStoreHook } from '@/store/modules/user';
|
||||
import { s } from 'node_modules/vite/dist/node/types.d-aGj9QkWt';
|
||||
import { listByIds } from '@/api/system/oss';
|
||||
import { downLoadOss, listByIds } from '@/api/system/oss';
|
||||
const safetyInspectionDetail = ref<QualityConstructionLogVO>();
|
||||
const checkFileList = ref<any[]>();
|
||||
// 获取用户 store
|
||||
@ -159,6 +159,9 @@ const get = async () => {
|
||||
// }
|
||||
}
|
||||
};
|
||||
const handleExport = async () => {
|
||||
await downLoadOss({ id: safetyInspectionDetail.value.id }, '/quality/qualityConstructionLog/export/word', '施工日志.zip');
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
get();
|
||||
|
@ -47,8 +47,30 @@
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="序号" align="center" type="index" width="70" />
|
||||
|
||||
<el-table-column label="生产情况" align="center" prop="productionStatus" />
|
||||
<el-table-column label="技术质量安全工作" align="center" prop="technologyQuality" />
|
||||
<el-table-column label="生产情况" align="center" prop="productionStatus" width="410">
|
||||
<template #default="scope">
|
||||
<el-tooltip placement="top" effect="dark">
|
||||
<template #content>
|
||||
<div class="w-670px">{{ scope.row.productionStatus }}</div>
|
||||
</template>
|
||||
<el-text truncated>
|
||||
{{ scope.row.productionStatus }}
|
||||
</el-text>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="技术质量安全工作" align="center" prop="technologyQuality" width="410">
|
||||
<template #default="scope">
|
||||
<el-tooltip placement="top" effect="dark">
|
||||
<template #content>
|
||||
<div class="w-670px">{{ scope.row.technologyQuality }}</div>
|
||||
</template>
|
||||
<el-text truncated>
|
||||
{{ scope.row.technologyQuality }}
|
||||
</el-text>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="发生日期" align="center" prop="happenDate" width="180">
|
||||
<template #default="scope">
|
||||
<span>{{ parseTime(scope.row.happenDate, '{y}-{m}-{d}') }}</span>
|
||||
@ -58,18 +80,10 @@
|
||||
<el-table-column label="备注" align="center" prop="remark" />
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template #default="scope">
|
||||
<el-tooltip content="详情" placement="top">
|
||||
<el-button link type="primary" icon="View" @click="handleUpdate(scope.row)"></el-button>
|
||||
</el-tooltip>
|
||||
<el-tooltip content="删除" placement="top">
|
||||
<el-button
|
||||
link
|
||||
type="primary"
|
||||
icon="Delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['quality:qualityConstructionLog:remove']"
|
||||
></el-button>
|
||||
</el-tooltip>
|
||||
<el-button link type="primary" icon="View" @click="handleUpdate(scope.row)">详情</el-button>
|
||||
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['quality:qualityConstructionLog:remove']">
|
||||
删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@ -93,9 +107,13 @@ import {
|
||||
} from '@/api/quality/qualityConstructionLog';
|
||||
import { QualityConstructionLogVO, QualityConstructionLogQuery, QualityConstructionLogForm } from '@/api/quality/qualityConstructionLog/types';
|
||||
import QualityConstructionDetail from './cpmponent/qualityConstructionDetail.vue';
|
||||
|
||||
import { useUserStoreHook } from '@/store/modules/user';
|
||||
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
||||
|
||||
// 获取用户 store
|
||||
const userStore = useUserStoreHook();
|
||||
// 从 store 中获取项目列表和当前选中的项目
|
||||
const currentProject = computed(() => userStore.selectedProject);
|
||||
const qualityConstructionLogList = ref<QualityConstructionLogVO[]>([]);
|
||||
const buttonLoading = ref(false);
|
||||
const loading = ref(true);
|
||||
@ -115,7 +133,7 @@ const dialog = reactive<DialogOption>({
|
||||
|
||||
const initFormData: QualityConstructionLogForm = {
|
||||
id: undefined,
|
||||
projectId: undefined,
|
||||
projectId: currentProject.value.id,
|
||||
happenDate: undefined,
|
||||
productionStatus: undefined,
|
||||
technologyQuality: undefined,
|
||||
@ -127,7 +145,7 @@ const data = reactive<PageData<QualityConstructionLogForm, QualityConstructionLo
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
projectId: undefined,
|
||||
projectId: currentProject.value.id,
|
||||
happenDate: undefined,
|
||||
params: {}
|
||||
},
|
||||
@ -231,6 +249,20 @@ const handleExport = () => {
|
||||
);
|
||||
};
|
||||
|
||||
//监听项目id刷新数据
|
||||
const listeningProject = watch(
|
||||
() => currentProject.value.id,
|
||||
(nid, oid) => {
|
||||
queryParams.value.projectId = nid;
|
||||
form.value.projectId = nid;
|
||||
getList();
|
||||
}
|
||||
);
|
||||
|
||||
onUnmounted(() => {
|
||||
listeningProject();
|
||||
});
|
||||
|
||||
onMounted(() => {
|
||||
getList();
|
||||
});
|
||||
|
@ -5,7 +5,7 @@
|
||||
<div class="resultIcon"><img :src="'../../../../../src/assets/icons/svg/' + inspectionType + '.png'" alt="" /></div>
|
||||
<h2 style="text-align: center; margin-top: 5px; font-weight: bold">整改通知单</h2>
|
||||
<el-row>
|
||||
<el-col :span="12" style="text-align: left">填报人:{{ safetyInspectionDetail?.creatorName }}</el-col>
|
||||
<el-col :span="12" style="text-align: left">填报人:{{ safetyInspectionDetail?.createBy }}</el-col>
|
||||
<el-col :span="12" style="text-align: right">填报时间:{{ safetyInspectionDetail?.createTime }}</el-col>
|
||||
</el-row>
|
||||
<el-descriptions :column="2" border style="margin-top: 8px" label-width="160px" size="large">
|
||||
@ -19,17 +19,19 @@
|
||||
{{ safetyInspectionDetail?.correctorName }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label-align="center" label="整改日期" class-name="zebra">
|
||||
{{ dayjs(safetyInspectionDetail?.rectificationTime).format('YYYY 年 MM 月 DD 日') }}
|
||||
{{ safetyInspectionDetail?.rectificationTime }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label-align="center" label="巡检类型" label-class-name="white">
|
||||
<dict-tag :options="quality_inspection_check_type" :value="safetyInspectionDetail?.inspectionType" />
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label-align="center" label="填报人" label-class-name="white"
|
||||
>{{ safetyInspectionDetail?.creatorName }}
|
||||
>{{ safetyInspectionDetail?.createBy }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label-align="center" label="填报日期" class-name="zebra"
|
||||
>{{ safetyInspectionDetail?.createTime }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label-align="center" label="填报日期" class-name="zebra">{{ safetyInspectionDetail?.checkTime }} </el-descriptions-item>
|
||||
<el-descriptions-item label-align="center" label="要求回复期限" class-name="zebra"
|
||||
>{{ safetyInspectionDetail?.replyPeriodDate }}
|
||||
>{{ parseTime(safetyInspectionDetail?.replyPeriodDate, '{y}-{m}-{d}') }}
|
||||
</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
<el-descriptions border direction="vertical" size="large">
|
||||
@ -64,7 +66,7 @@
|
||||
</el-descriptions>
|
||||
<el-descriptions :column="2" border label-width="160px" size="large">
|
||||
<el-descriptions-item label-align="center" label="整改措施及完成情况" :span="2" label-class-name="white">
|
||||
{{ safetyInspectionDetail?.measure }}
|
||||
{{ safetyInspectionDetail?.verificationResult }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label-align="center" label="整改附件" :span="2" label-class-name="white">
|
||||
<el-space wrap>
|
||||
@ -73,7 +75,7 @@
|
||||
<image-preview :src="item.url" width="200px" />
|
||||
</span>
|
||||
<span v-else>
|
||||
<el-link :href="`${item.url}`" :underline="false" target="_blank">
|
||||
<el-link :href="`${item.url}`" :underline="false" type="primary" target="_blank">
|
||||
<span> {{ item.originalName }} </span>
|
||||
</el-link>
|
||||
</span>
|
||||
@ -94,7 +96,7 @@
|
||||
|
||||
<!-- </el-card> -->
|
||||
<div class="dialog-footer">
|
||||
<div class="btn-item">
|
||||
<div class="btn-item" @click="handleExport">
|
||||
<img src="../../../../assets/icons/svg/derived.png" />
|
||||
<span>导出</span>
|
||||
</div>
|
||||
@ -108,7 +110,7 @@
|
||||
<script lang="ts" setup>
|
||||
import { getQualityInspection } from '@/api/quality/qualityInspection';
|
||||
import { QualityInspectionVO } from '@/api/quality/qualityInspection/types';
|
||||
import { listByIds } from '@/api/system/oss';
|
||||
import { downLoadOss, listByIds } from '@/api/system/oss';
|
||||
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
||||
import { dayjs } from 'element-plus';
|
||||
const { quality_inspection_check_type, quality_inspection_status_type } = toRefs<any>(
|
||||
@ -127,8 +129,8 @@ const rectificationFileList = ref<any[]>();
|
||||
const inspectionType = computed(() => {
|
||||
let imgName = 'successLogo';
|
||||
if (safetyInspectionDetail.value?.inspectionStatus == '2') imgName = 'rectification';
|
||||
if (safetyInspectionDetail.value?.inspectionStatus == '1') imgName = 'successVerification';
|
||||
if (safetyInspectionDetail.value?.inspectionStatus == '2') imgName = 'danggerVerification';
|
||||
if (safetyInspectionDetail.value?.verificationType == '1') imgName = 'successVerification';
|
||||
if (safetyInspectionDetail.value?.verificationType == '2') imgName = 'danggerVerification';
|
||||
return imgName;
|
||||
});
|
||||
|
||||
@ -149,8 +151,12 @@ const get = async () => {
|
||||
}
|
||||
};
|
||||
|
||||
const handleExport = async () => {
|
||||
await downLoadOss({ id: safetyInspectionDetail.value.id }, '/quality/qualityInspection/export/word', '整改通知单.zip');
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
// get();
|
||||
get();
|
||||
});
|
||||
|
||||
watch(
|
||||
|
@ -55,28 +55,41 @@
|
||||
<el-table v-loading="loading" :data="qualityInspectionList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="主键id" align="center" prop="id" v-if="false" />
|
||||
<el-table-column label="填报人" align="center" prop="createBy" />
|
||||
<el-table-column label="填报时间" align="center" prop="createTime" width="180">
|
||||
<template #default="scope">
|
||||
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d} {hh}:{mm}:{ss}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="巡检标题" align="center" prop="inspectionHeadline" />
|
||||
<el-table-column label="巡检类型" align="center" prop="inspectionType">
|
||||
<template #default="scope">
|
||||
<dict-tag :options="quality_inspection_check_type" :value="scope.row.inspectionType" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="巡检标题" align="center" prop="inspectionHeadline" />
|
||||
<el-table-column label="巡检结果" align="center" prop="inspectionResult" />
|
||||
<el-table-column label="工单状态" align="center" prop="inspectionStatus">
|
||||
<el-table-column label="巡检结果" align="center" prop="inspectionResult">
|
||||
<template #default="scope">
|
||||
<el-tooltip placement="top" effect="dark">
|
||||
<template #content>
|
||||
<div class="max-w-670px">{{ scope.row.inspectionResult }}</div>
|
||||
</template>
|
||||
<el-text truncated>
|
||||
{{ scope.row.inspectionResult }}
|
||||
</el-text>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="整改人" align="center" prop="correctorName" />
|
||||
<!-- <el-table-column label="工单状态" align="center" prop="inspectionStatus">
|
||||
<template #default="scope">
|
||||
<dict-tag :options="quality_inspection_status_type" :value="scope.row.inspectionStatus" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table-column> -->
|
||||
<el-table-column label="备注" align="center" prop="remark" />
|
||||
<el-table-column label="创建者" align="center" prop="createBy" />
|
||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
||||
<template #default="scope">
|
||||
<span>{{ parseTime(scope.row.createTime, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template #default="scope">
|
||||
<el-tooltip content="验证" placement="top">
|
||||
<!-- <el-tooltip content="验证" placement="top">
|
||||
<el-button
|
||||
link
|
||||
type="primary"
|
||||
@ -84,19 +97,13 @@
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['quality:qualityInspection:edit']"
|
||||
></el-button>
|
||||
</el-tooltip>
|
||||
<el-tooltip content="详情" placement="top">
|
||||
<el-button link type="primary" icon="View" @click="handleDetail(scope.row)" v-hasPermi="['quality:qualityInspection:edit']"></el-button>
|
||||
</el-tooltip>
|
||||
<el-tooltip content="删除" placement="top">
|
||||
<el-button
|
||||
link
|
||||
type="primary"
|
||||
icon="Delete"
|
||||
@click="handleDelete(scope.row)"
|
||||
v-hasPermi="['quality:qualityInspection:remove']"
|
||||
></el-button>
|
||||
</el-tooltip>
|
||||
</el-tooltip> -->
|
||||
<el-button link type="primary" icon="View" @click="handleDetail(scope.row)" v-hasPermi="['quality:qualityInspection:edit']">
|
||||
详情
|
||||
</el-button>
|
||||
<el-button link type="primary" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['quality:qualityInspection:remove']">
|
||||
删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@ -191,7 +198,7 @@ const qualityInspectionFormRef = ref<ElFormInstance>();
|
||||
|
||||
const dialog = reactive<DialogOption>({
|
||||
visible: false,
|
||||
details: true,
|
||||
details: false,
|
||||
title: ''
|
||||
});
|
||||
|
||||
|
@ -211,7 +211,7 @@ const handleSelectionChange = (selection: QuestionUserAnswerVO[]) => {
|
||||
/** 批量下载按钮操作 */
|
||||
const handleDownload = async () => {
|
||||
const _ids = ids.value;
|
||||
await downLoadOss(_ids);
|
||||
await downLoadOss({ idList: _ids }, '/safety/questionUserAnswer/exportFile', '安全考试.zip');
|
||||
};
|
||||
/** 下载单个按钮操作 */
|
||||
const downloadOssOne = async (row?: QuestionUserAnswerVO) => {
|
||||
|
@ -99,7 +99,7 @@
|
||||
|
||||
<!-- </el-card> -->
|
||||
<div class="dialog-footer">
|
||||
<div class="btn-item">
|
||||
<div class="btn-item" @click="handleExport">
|
||||
<img src="../../../../assets/icons/svg/derived.png" />
|
||||
<span>导出</span>
|
||||
</div>
|
||||
@ -114,7 +114,7 @@
|
||||
import { useUserStoreHook } from '@/store/modules/user';
|
||||
import { SafetyInspectionVO } from '@/api/safety/safetyInspection/types';
|
||||
import { getSafetyInspection } from '@/api/safety/safetyInspection';
|
||||
import { listByIds } from '@/api/system/oss';
|
||||
import { downLoadOss, listByIds } from '@/api/system/oss';
|
||||
import { OssVO } from '@/api/system/oss/types';
|
||||
import dayjs from 'dayjs';
|
||||
|
||||
@ -163,6 +163,10 @@ const get = async () => {
|
||||
loading.value = false;
|
||||
};
|
||||
|
||||
const handleExport = async () => {
|
||||
await downLoadOss({ id: safetyInspectionDetail.value.id }, '/safety/safetyInspection/export/word', '安全生产监督检查通知书.zip');
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
console.log('🚀 ~ onMounted ~ props.safetyInspectionId:', props.safetyInspectionId);
|
||||
get();
|
||||
|
@ -70,7 +70,18 @@
|
||||
<dict-tag :options="safety_inspection_violation_type" :value="scope.row.violationType" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="巡检结果" align="center" prop="inspectionResult" />
|
||||
<el-table-column label="巡检结果" align="center" prop="inspectionResult">
|
||||
<template #default="scope">
|
||||
<el-tooltip placement="top" effect="dark">
|
||||
<template #content>
|
||||
<div class="max-w-670px">{{ scope.row.inspectionResult }}</div>
|
||||
</template>
|
||||
<el-text truncated>
|
||||
{{ scope.row.inspectionResult }}
|
||||
</el-text>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="整改人" align="center" prop="correctorName" />
|
||||
<el-table-column label="复查状态" align="center" prop="reviewType">
|
||||
<template #default="scope">
|
||||
|
@ -90,7 +90,7 @@
|
||||
<el-date-picker clearable v-model="form.scopeEnd" type="date" value-format="YYYY-MM-DD" placeholder="请选择周期范围结束" />
|
||||
</el-form-item>
|
||||
<el-form-item label="文件位置" prop="path">
|
||||
<file-upload v-model="form.path" :file-size="20" :limit="1" :file-type="['doc', 'docx']" />
|
||||
<div><file-upload v-model="form.path" :file-size="20" :limit="1" :file-type="['doc', 'docx']" /></div>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
|
||||
|
Reference in New Issue
Block a user