fix: BUG修改
This commit is contained in:
parent
b09575a867
commit
b3cf69647d
@ -436,3 +436,13 @@ export const fileShowAdd = (params: any) => {
|
|||||||
export const fileShowDelete = (params: any) => {
|
export const fileShowDelete = (params: any) => {
|
||||||
return http.post(BASEURL + `/gov/engineeringAnnex/delete`, params);
|
return http.post(BASEURL + `/gov/engineeringAnnex/delete`, params);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 项目列表管理--根据ID查询附件文件列表
|
||||||
|
export const annexFileList = (params: any) => {
|
||||||
|
return http.post(BASEURL + `/gov/engineeringAnnex/queryById`, params);
|
||||||
|
};
|
||||||
|
|
||||||
|
// 项目列表管理--保存附件文件列表
|
||||||
|
export const annexFileSave = (params: any) => {
|
||||||
|
return http.post(BASEURL + `/gov/engineeringAnnex/batchUpdateFile`, params);
|
||||||
|
};
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-dialog title="查看文件列表" width="70%" v-model="visible1" show-close>
|
<el-dialog title="查看文件列表" width="70%" v-model="visible1" show-close>
|
||||||
<div>
|
<div class="table-content">
|
||||||
<div style="width: 100%; height: 500px">
|
<div style="width: 100%; height: 500px">
|
||||||
<el-button type="primary" @click="addAnnexData" style="margin-left: 20px">新增</el-button>
|
<el-button type="primary" @click="addAnnexData" style="margin-left: 20px">新增</el-button>
|
||||||
<ProTable
|
<ProTable
|
||||||
@ -31,7 +31,7 @@
|
|||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<el-dialog v-model="addDialogVisible" title="添加附件" width="30%" show-close>
|
<el-dialog v-model="addDialogVisible" title="添加附件名称" width="30%" show-close>
|
||||||
<el-form ref="formRef" :model="addFormData" label-width="100px" :rules="rules" size="default">
|
<el-form ref="formRef" :model="addFormData" label-width="100px" :rules="rules" size="default">
|
||||||
<!-- <el-form-item label="项目名称:">
|
<!-- <el-form-item label="项目名称:">
|
||||||
<el-input v-model="editProjectName" disabled />
|
<el-input v-model="editProjectName" disabled />
|
||||||
@ -62,29 +62,30 @@
|
|||||||
</el-upload>
|
</el-upload>
|
||||||
<el-table
|
<el-table
|
||||||
:data="current"
|
:data="current"
|
||||||
height="180"
|
height="200"
|
||||||
class="el-table"
|
class="el-table"
|
||||||
:header-cell-style="{ textAlign: 'center' }"
|
:header-cell-style="{ textAlign: 'center' }"
|
||||||
:cell-style="{ textAlign: 'center' }"
|
:cell-style="{ textAlign: 'center', height: '60px' }"
|
||||||
>
|
>
|
||||||
<el-table-column prop="fileName" label="文件名称" />
|
<el-table-column prop="fileName" label="文件名称" />
|
||||||
<el-table-column label="操作" width="200">
|
<el-table-column label="操作" width="200">
|
||||||
<template #default="{ row }">
|
<template #default="{ row, $index }">
|
||||||
<el-button type="primary" link size="small" @click="onDowmload(row)">下载</el-button>
|
<el-button type="primary" link size="small" @click="onDowmload(row)">下载</el-button>
|
||||||
<el-button type="primary" link size="small" @click="onDowmload(row)">删除</el-button>
|
<el-button type="primary" link size="small" @click="deleteFile($index)">删除</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<span class="dialog-footer">
|
<span class="dialog-footer">
|
||||||
<el-button type="primary" @click="dialogVisible = false"> 关闭 </el-button>
|
<el-button type="primary" @click="saveAnnexFile"> 保存 </el-button>
|
||||||
|
<el-button type="primary" @click="dialogVisible = false"> 取消 </el-button>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="tsx" name="readonlyDialog">
|
<script setup lang="tsx" name="readonlyDialog">
|
||||||
import { onMounted, watch, ref, reactive } from "vue";
|
import { onMounted, watch, ref, reactive } from "vue";
|
||||||
import { getIdEngApproveList, fileShowList, fileShowAdd, fileShowDelete } from "@/api/modules/goverment";
|
import { fileShowList, fileShowAdd, fileShowDelete, annexFileList, annexFileSave } from "@/api/modules/goverment";
|
||||||
import { getDicList, exportApp } from "@/api/modules/jxjview";
|
import { getDicList, exportApp } from "@/api/modules/jxjview";
|
||||||
import { ElMessage, ElMessageBox, FormInstance, FormRules } from "element-plus";
|
import { ElMessage, ElMessageBox, FormInstance, FormRules } from "element-plus";
|
||||||
import { useDownload } from "@/hooks/useDownload";
|
import { useDownload } from "@/hooks/useDownload";
|
||||||
@ -96,6 +97,7 @@ import { jxj_User } from "@/api/types";
|
|||||||
import { useHandleData } from "@/hooks/useHandleData";
|
import { useHandleData } from "@/hooks/useHandleData";
|
||||||
const emits = defineEmits(["update:fileListVisible"]);
|
const emits = defineEmits(["update:fileListVisible"]);
|
||||||
const props = defineProps(["relativeId", "engineeringSn", "fileListVisible"]);
|
const props = defineProps(["relativeId", "engineeringSn", "fileListVisible"]);
|
||||||
|
const selectedAnnex = ref(); // 选中的查看附件
|
||||||
const formRef = ref<FormInstance>();
|
const formRef = ref<FormInstance>();
|
||||||
const rules = reactive<FormRules>({
|
const rules = reactive<FormRules>({
|
||||||
name: {
|
name: {
|
||||||
@ -121,17 +123,30 @@ const columns: ColumnProps[] = [
|
|||||||
const store = GlobalStore();
|
const store = GlobalStore();
|
||||||
const baseUrl = import.meta.env.VITE_API_URL;
|
const baseUrl = import.meta.env.VITE_API_URL;
|
||||||
const headers = ref({ Authorization: "Bearer " + store.token });
|
const headers = ref({ Authorization: "Bearer " + store.token });
|
||||||
const current = ref([]);
|
const current = ref<any>([]);
|
||||||
const addDialogVisible = ref(false);
|
const addDialogVisible = ref(false);
|
||||||
const dialogVisible = ref(false);
|
const dialogVisible = ref(false);
|
||||||
const annexFiles = ref([]);
|
const annexFiles = ref([]);
|
||||||
const visible1 = ref(false);
|
const visible1 = ref(false);
|
||||||
const form = ref({});
|
// 保存附件文件上传列表
|
||||||
const addressList = ref({});
|
const saveAnnexFile = async () => {
|
||||||
|
let requestData = {
|
||||||
|
id: selectedAnnex.value.id,
|
||||||
|
annexFileList: current.value,
|
||||||
|
annexName: selectedAnnex.value.annexName,
|
||||||
|
engineeringSn: selectedAnnex.value.engineeringSn
|
||||||
|
};
|
||||||
|
const res = await annexFileSave(requestData);
|
||||||
|
console.log(res);
|
||||||
|
if (res.code == 200) {
|
||||||
|
ElMessage.success("保存成功");
|
||||||
|
dialogVisible.value = false;
|
||||||
|
}
|
||||||
|
};
|
||||||
// 删除
|
// 删除
|
||||||
const handleDeleteItem = async (params: jxj_User.ResUserList) => {
|
const handleDeleteItem = async (params: jxj_User.ResUserList) => {
|
||||||
await useHandleData(fileShowDelete, { id: params.id }, `删除【${params.annexName}】`);
|
await useHandleData(fileShowDelete, { id: params.id }, `删除【${params.annexName}】`);
|
||||||
proTable.value.getTableList();
|
proTable.value?.getTableList();
|
||||||
};
|
};
|
||||||
// 保存添加附件数据
|
// 保存添加附件数据
|
||||||
const saveAnnexAdd = async (formEl: FormInstance | undefined) => {
|
const saveAnnexAdd = async (formEl: FormInstance | undefined) => {
|
||||||
@ -140,7 +155,7 @@ const saveAnnexAdd = async (formEl: FormInstance | undefined) => {
|
|||||||
if (valid) {
|
if (valid) {
|
||||||
await fileShowAdd({ engineeringSn: props.engineeringSn, annexName: addFormData.value.name });
|
await fileShowAdd({ engineeringSn: props.engineeringSn, annexName: addFormData.value.name });
|
||||||
ElMessage.success("保存成功");
|
ElMessage.success("保存成功");
|
||||||
proTable.value.getTableList();
|
proTable.value?.getTableList();
|
||||||
addDialogVisible.value = false;
|
addDialogVisible.value = false;
|
||||||
} else {
|
} else {
|
||||||
console.log("error submit!", fields);
|
console.log("error submit!", fields);
|
||||||
@ -172,9 +187,21 @@ const getTableList = (params: any) => {
|
|||||||
return fileShowList(newParams);
|
return fileShowList(newParams);
|
||||||
};
|
};
|
||||||
const uploadSuccess = (response: any) => {
|
const uploadSuccess = (response: any) => {
|
||||||
|
console.log(response);
|
||||||
ElMessage.success("上传成功");
|
ElMessage.success("上传成功");
|
||||||
// formData.value.videoUrl = response.result.url;
|
current.value.push({
|
||||||
// fileList.value = [{ name: response.result.originalFilename, url: response.result.downloadPath }];
|
createTime: response.result.createTime,
|
||||||
|
extendName: response.result.ext,
|
||||||
|
fileId: response.result.id,
|
||||||
|
fileName: response.result.originalFilename,
|
||||||
|
fileSize: response.result.size,
|
||||||
|
fileUrl: response.result.url
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 删除附件文件
|
||||||
|
const deleteFile = (index: any) => {
|
||||||
|
console.log(index);
|
||||||
|
current.value.splice(index, 1);
|
||||||
};
|
};
|
||||||
const onDowmload = row => {
|
const onDowmload = row => {
|
||||||
ElMessageBox.confirm("确认下载数据?", "温馨提示", { type: "warning" }).then(() =>
|
ElMessageBox.confirm("确认下载数据?", "温馨提示", { type: "warning" }).then(() =>
|
||||||
@ -182,29 +209,21 @@ const onDowmload = row => {
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
// 附件信息的查看点击
|
// 附件信息的查看点击
|
||||||
const onAppendix = row => {
|
const onAppendix = async (row: any) => {
|
||||||
|
console.log(row);
|
||||||
|
selectedAnnex.value = row;
|
||||||
|
const res = await annexFileList({ id: row.id });
|
||||||
|
console.log(res);
|
||||||
|
if (res && res.result) {
|
||||||
|
current.value = res.result.annexFileList;
|
||||||
|
} else {
|
||||||
|
current.value = [];
|
||||||
|
}
|
||||||
dialogVisible.value = true;
|
dialogVisible.value = true;
|
||||||
|
|
||||||
current.value = form.value.annexFiles.filter(item => item.label == row.dictLabel);
|
|
||||||
};
|
|
||||||
const getDataDetail = async () => {
|
|
||||||
// console.log(row);
|
|
||||||
const res = await getIdEngApproveList({ id: props.relativeId });
|
|
||||||
form.value = res.result;
|
|
||||||
addressList.value = {
|
|
||||||
province: res.result.province,
|
|
||||||
city: res.result.city,
|
|
||||||
district: res.result.district
|
|
||||||
};
|
|
||||||
form.value.position = `${"经度:" + res.result.longitude + ",纬度:" + res.result.latitude}`;
|
|
||||||
console.log(props.relativeId);
|
|
||||||
};
|
};
|
||||||
watch(
|
watch(
|
||||||
() => props.fileListVisible,
|
() => props.fileListVisible,
|
||||||
(n, o) => {
|
(n, o) => {
|
||||||
if (n) {
|
|
||||||
getDataDetail();
|
|
||||||
}
|
|
||||||
visible1.value = n;
|
visible1.value = n;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
@ -217,10 +236,17 @@ watch(
|
|||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
const res2 = await getDicList({ dictType: "attachment_name" });
|
const res2 = await getDicList({ dictType: "attachment_name" });
|
||||||
annexFiles.value = res2.result.map(item => ({ ...item, files: [] }));
|
annexFiles.value = res2.result.map(item => ({ ...item, files: [] }));
|
||||||
proTable.value.getTableList();
|
proTable.value?.getTableList();
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
|
.table-content {
|
||||||
|
:deep() {
|
||||||
|
.theme-transform {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
.el-table {
|
.el-table {
|
||||||
width: calc(100% - 20px);
|
width: calc(100% - 20px);
|
||||||
margin-left: 20px;
|
margin-left: 20px;
|
||||||
@ -229,6 +255,11 @@ onMounted(async () => {
|
|||||||
.el-table_main {
|
.el-table_main {
|
||||||
padding: 2% 4% 0 4%;
|
padding: 2% 4% 0 4%;
|
||||||
}
|
}
|
||||||
|
:deep() {
|
||||||
|
.cell {
|
||||||
|
line-height: 30px;
|
||||||
|
}
|
||||||
|
}
|
||||||
:deep(.el-tabs--card > .el-tabs__header) {
|
:deep(.el-tabs--card > .el-tabs__header) {
|
||||||
border-bottom: none;
|
border-bottom: none;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -140,12 +140,12 @@ const columns: ColumnProps[] = [
|
|||||||
const relativeId = ref("");
|
const relativeId = ref("");
|
||||||
const detailsDialog = ref(false);
|
const detailsDialog = ref(false);
|
||||||
const approvalTitle = ref("");
|
const approvalTitle = ref("");
|
||||||
|
// 获取 ProTable 元素,调用其获取刷新数据方法(还能获取到当前查询参数,方便导出携带参数)
|
||||||
|
const proTable = ref();
|
||||||
const childrenDataUpdate = () => {
|
const childrenDataUpdate = () => {
|
||||||
console.log(666);
|
console.log(666);
|
||||||
proTable.value.getTableList();
|
proTable.value.getTableList();
|
||||||
};
|
};
|
||||||
// 获取 ProTable 元素,调用其获取刷新数据方法(还能获取到当前查询参数,方便导出携带参数)
|
|
||||||
const proTable = ref();
|
|
||||||
// 查看文件列表
|
// 查看文件列表
|
||||||
const onFileList = (row: any) => {
|
const onFileList = (row: any) => {
|
||||||
engineeringSn.value = row.engineeringSn;
|
engineeringSn.value = row.engineeringSn;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user