添加人员、材料、机械管理上传图片、文件功能

This commit is contained in:
lcj
2025-03-14 18:19:27 +08:00
parent 600c11e87b
commit f9faa34486
34 changed files with 564 additions and 587 deletions

View File

@ -7,18 +7,6 @@
<el-form-item label="公司名称" prop="name">
<el-input v-model="queryParams.name" placeholder="请输入公司名称" clearable @keyup.enter="handleQuery" />
</el-form-item>
<!--<el-form-item label="负责人" prop="principal">
<el-input v-model="queryParams.principal" placeholder="请输入负责人" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="负责人联系电话" prop="principalPhone">
<el-input v-model="queryParams.principalPhone" placeholder="请输入负责人联系电话" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="管理人" prop="custodian">
<el-input v-model="queryParams.custodian" placeholder="请输入管理人" clearable @keyup.enter="handleQuery" />
</el-form-item>
<el-form-item label="管理人联系电话" prop="custodianPhone">
<el-input v-model="queryParams.custodianPhone" placeholder="请输入管理人联系电话" clearable @keyup.enter="handleQuery" />
</el-form-item>-->
<el-form-item>
<el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
<el-button icon="Refresh" @click="resetQuery">重置</el-button>
@ -63,6 +51,7 @@
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template #default="scope">
<el-space wrap>
<el-button link type="primary" icon="Plus" @click="handleContractorFile(scope.row)">文件</el-button>
<el-button link type="success" icon="Edit" @click="handleUpdate(scope.row)" v-hasPermi="['project:contractor:edit']">修改 </el-button>
<el-button link type="danger" icon="Delete" @click="handleDelete(scope.row)" v-hasPermi="['project:contractor:remove']">
删除
@ -103,12 +92,16 @@
</div>
</template>
</el-dialog>
<el-dialog title="上传文件" v-model="visible" width="800px">
<contractor-file-dialog :contractor-id="currentContractorId" />
</el-dialog>
</div>
</template>
<script setup name="Contractor" lang="ts">
import { addContractor, delContractor, getContractor, listContractor, updateContractor } from '@/api/project/contractor';
import { ContractorForm, ContractorQuery, ContractorVO } from '@/api/project/contractor/types';
import ContractorFileDialog from '@/views/project/contractor/component/ContractorFileDialog.vue';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
@ -136,6 +129,7 @@ const initFormData: ContractorForm = {
principalPhone: undefined,
custodian: undefined,
custodianPhone: undefined,
fileMap: undefined,
remark: undefined
};
const data = reactive<PageData<ContractorForm, ContractorQuery>>({
@ -253,6 +247,15 @@ const handleExport = () => {
);
};
/** 文件操作 **/
const visible = ref();
const currentContractorId = ref<number | string>(0);
const handleContractorFile = (row?: ContractorVO) => {
currentContractorId.value = row.id ?? 0;
console.log(currentContractorId.value);
visible.value = true;
};
onMounted(() => {
getList();
});