提交 51947e87 authored 作者: 龙菲's avatar 龙菲

修复无法查看展览导入记录的问题

上级 b55410bd
...@@ -27,18 +27,4 @@ export const importRecordsTitle = [{ ...@@ -27,18 +27,4 @@ export const importRecordsTitle = [{
columnAlign: "center", columnAlign: "center",
width: "60px", width: "60px",
}, },
] ]
\ No newline at end of file
export const importOperates = {
operate: true,
label: "操作",
width: "220px",
minwidth: "220px",
titleAlign: "center",
columnAlign: "center",
}
export const importOperations = [{
type: 'delete',
title: '删除记录及文物'
},]
\ No newline at end of file
<template> <template>
<el-dialog <el-dialog
:visible="dialogVisible" :visible="visible"
width="70%" width="70%"
style="height: 98%" style="height: 98%"
:before-close="handleClose" :before-close="handleClose"
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
> >
<div class="title" slot="title"> <div class="title" slot="title">
<div class="divider"></div> <div class="divider"></div>
<span class="label">文物导入记录</span> <span class="label">{{ getTitle }}</span>
</div> </div>
<div class="upload-progress"> <div class="upload-progress">
<div class="top-bar"> <div class="top-bar">
...@@ -38,15 +38,6 @@ ...@@ -38,15 +38,6 @@
>昨天 >昨天
</el-tag> </el-tag>
</template> </template>
<template v-slot:operates="scope">
<TableOperation
:operations="tableOperations"
:rawData="scope.scope.row"
:deleteTitle="'点击确定将会删除该批次导入的所有文物,确定删除?'"
@handleOperation="handleOperation"
></TableOperation>
</template>
</TablePage> </TablePage>
<el-pagination <el-pagination
@size-change="handleSizeChange" @size-change="handleSizeChange"
...@@ -69,30 +60,21 @@ ...@@ -69,30 +60,21 @@
</template> </template>
<script> <script>
import { import { importRecordsTitle } from "./config";
importRecordsTitle,
importOperates,
importOperations,
} from "../configs/import";
import { parseTime, getYestoday, renderSize } from "@/utils/index"; import { parseTime, getYestoday, renderSize } from "@/utils/index";
import { getImportListPage, deleteByBatchNum } from "@/api/file"; import { getImportListPage } from "@/api/file";
export default { export default {
name: "ImportRecordDialog", name: "ImportRecordDialog",
props: { props: {
visible: { bizType: {
type: Boolean, type: String,
default: false, default: "biz_cultural_relic",
},
filesList: {
type: Array,
default: () => [],
}, },
}, },
watch: { watch: {
visible: { visible: {
handler: function (value) { handler: function (value) {
this.dialogVisible = value;
if (value) { if (value) {
this.loadData(); this.loadData();
} }
...@@ -102,19 +84,18 @@ export default { ...@@ -102,19 +84,18 @@ export default {
}, },
}, },
computed: { computed: {
getTitle() {
if (!this.bizType) {
return;
}
return this.bizType == "biz_cultural_relic"
? "文物导入记录"
: "展览导入记录";
},
tableTitle() { tableTitle() {
return importRecordsTitle; return importRecordsTitle;
}, },
tableOperates() {
return importOperates;
},
tableOperations() {
return importOperations;
},
getFileSize(fileSize) { getFileSize(fileSize) {
// return (fileSize) => {
// return (Number(fileSize) / 1024 / 1024).toFixed(2) + "M";
// };
return (fileSize) => { return (fileSize) => {
return renderSize(Number(fileSize)); return renderSize(Number(fileSize));
}; };
...@@ -132,13 +113,12 @@ export default { ...@@ -132,13 +113,12 @@ export default {
}; };
}, },
getYestoday() { getYestoday() {
console.log(getYestoday());
return getYestoday(); return getYestoday();
}, },
}, },
data() { data() {
return { return {
dialogVisible: false, visible: false,
list: { list: {
records: [], records: [],
size: 10, size: 10,
...@@ -150,73 +130,44 @@ export default { ...@@ -150,73 +130,44 @@ export default {
status: "", status: "",
}, },
searchConfig: [ searchConfig: [
// {
// prop: "type",
// type: "select",
// label: "所属分类",
// selectOptions: [
// {
// label: "文物",
// value: "biz_cultural_relic",
// },
// {
// label: "展览",
// value: "biz_exhibition",
// },
// ],
// },
{ {
prop: "batchNum", prop: "batchNum",
type: "input", type: "input",
label: "批次", label: "批次",
}, },
], ],
searchParams: {},
}; };
}, },
methods: { methods: {
async search(form) { async search(form) {
var params = { // 记录搜索的参数
page: this.list.current, this.searchParams = form;
limit: this.list.size, this.resetPage();
type: "biz_cultural_relic", this.loadData(form);
...form,
};
let res = await getImportListPage(params);
if (res.code == 0) {
this.list = res.data;
}
}, },
reset() { reset() {
this.searchParams = {};
this.loadData(); this.loadData();
}, },
// 加载表格数据 // 加载表格数据
async loadData() { async loadData(form) {
var params = { var params = {
page: this.list.current, page: this.list.current,
limit: this.list.size, limit: this.list.size,
type: "biz_cultural_relic", type: this.bizType,
}; };
const queryParams = form || this.searchParams;
if (Object.keys(queryParams)) {
params = { ...params, ...queryParams };
}
let res = await getImportListPage(params); let res = await getImportListPage(params);
if (res.code == 0) { if (res.code == 0) {
this.list = res.data; this.list = res.data;
} }
}, },
async handleOperation(value, row) {
switch (value.type) {
case "delete":
let { batchNum, type, id } = row;
let deleteRes = await deleteByBatchNum({ batchNum, type });
if (deleteRes.code == 0) {
this.$message.success("删除成功!");
this.$emit("reload");
this.loadData();
}
break;
}
},
// 改变页容量 // 改变页容量
handleSizeChange(value) { handleSizeChange(value) {
this.list.size = value; this.list.size = value;
...@@ -230,6 +181,7 @@ export default { ...@@ -230,6 +181,7 @@ export default {
}, },
handleClose() { handleClose() {
this.visible = false;
this.$emit("handleClose"); this.$emit("handleClose");
}, },
}, },
......
...@@ -39,12 +39,12 @@ export const passedTitle = [{ ...@@ -39,12 +39,12 @@ export const passedTitle = [{
// columnAlign: 'center', // columnAlign: 'center',
// }, // },
// { {
// prop: "deptName", prop: "deptName",
// label: "馆藏单位", label: "馆藏单位",
// columnAlign: 'center', columnAlign: 'center',
// showOverFlowToolTip: true, showOverFlowToolTip: true,
// }, },
// { // {
// prop: "regionName", // prop: "regionName",
// label: "所属地", // label: "所属地",
......
...@@ -148,11 +148,7 @@ ...@@ -148,11 +148,7 @@
:options="multiUploadOptions" :options="multiUploadOptions"
/> />
<ImportRecordDialog <ImportRecordDialog ref="ImportRecordDialog" bizType="biz_cultural_relic" />
:visible="importRecordVisible"
@reload="loadData"
@handleClose="handleImportRecordClose"
/>
<View3dDialog ref="View3dDialog" /> <View3dDialog ref="View3dDialog" />
...@@ -190,7 +186,7 @@ import { ...@@ -190,7 +186,7 @@ import {
} from "@/api/culturalRelic"; } from "@/api/culturalRelic";
import InfoEditDialog from "./components/InfoEditDialog"; import InfoEditDialog from "./components/InfoEditDialog";
import UploadDialog from "@/components/UploadDialog"; //上传弹窗 import UploadDialog from "@/components/UploadDialog"; //上传弹窗
import ImportRecordDialog from "./components/ImportRecordDialog"; import ImportRecordDialog from "@/components/ImportRecordDialog";
import PreviewDialog from "./components/PreviewDialog"; import PreviewDialog from "./components/PreviewDialog";
import View3dDialog from "./components/View3dDialog"; import View3dDialog from "./components/View3dDialog";
import { rules } from "./configs/validateRules"; import { rules } from "./configs/validateRules";
...@@ -447,7 +443,7 @@ export default { ...@@ -447,7 +443,7 @@ export default {
} }
}, },
view3d(row) { view3d(row) {
this.$refs.View3dDialog.visible = true; this.$appCommon.openDialog(this, "View3dDialog");
}, },
getCurrentPreviewRequest() { getCurrentPreviewRequest() {
...@@ -469,7 +465,7 @@ export default { ...@@ -469,7 +465,7 @@ export default {
let detailRes = await getRCDetailByIdTemp({ crId }); let detailRes = await getRCDetailByIdTemp({ crId });
if (detailRes.code == 0) { if (detailRes.code == 0) {
this.form = detailRes.data; this.form = detailRes.data;
this.$refs.InfoEditDialog.visible = true; this.$appCommon.openDialog(this, "InfoEditDialog");
} }
}, },
async deleteRow(row) { async deleteRow(row) {
...@@ -481,10 +477,10 @@ export default { ...@@ -481,10 +477,10 @@ export default {
} }
}, },
multiAdd() { multiAdd() {
this.$refs.UploadDialog.visible = true; this.$appCommon.openDialog(this, "UploadDialog");
}, },
viewImport() { viewImport() {
this.importRecordVisible = true; this.$appCommon.openDialog(this, "ImportRecordDialog");
}, },
//下载批量导入模板 //下载批量导入模板
handleDownloadTemplate() { handleDownloadTemplate() {
......
<template>
<el-dialog
:visible="visible"
width="70%"
style="height: 98%"
:before-close="handleClose"
top="5vh"
lock-scroll
>
<div class="title" slot="title">
<div class="divider"></div>
<span class="label">展览导入记录</span>
</div>
<div class="upload-progress">
<div class="top-bar">
<SearchBar :config="searchConfig" @search="search" @reset="reset" />
</div>
<TablePage :data="list.records" :tableTitle="tableTitle">
<template v-slot:fileSize="scope">
{{ getFileSize(scope.scope.fileSize) }}
</template>
<template v-slot:createTime="scope">
{{ scope.scope.createTime }}
<el-tag
size="mini"
type="success"
v-if="isToday(scope.scope.createTime)"
>今天</el-tag
>
<el-tag
size="mini"
type="primary"
v-if="getYestoday == scope.scope.createTime.split(' ')[0]"
>昨天
</el-tag>
</template>
<template v-slot:optType="scope">
<el-tag
size="mini"
type="primary"
v-if="scope.scope.optType.indexOf('导入') != -1"
>
{{ scope.scope.optType }}</el-tag
>
<el-tag
size="mini"
type="danger"
v-if="scope.scope.optType.indexOf('删除') != -1"
>
{{ scope.scope.optType }}
</el-tag>
</template>
<!-- <template v-slot:operates="scope">
<TableOperation
:operations="tableOperations"
:rawData="scope.scope.row"
:deleteTitle="'点击确定将会删除该批次导入的所有文物,确定删除?'"
@handleOperation="handleOperation"
></TableOperation>
</template> -->
</TablePage>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="Number(list.current)"
:page-sizes="[10, 20, 40, 50]"
:page-size="Number(list.size)"
layout="total, sizes, prev, pager, next, jumper"
:total="Number(list.total)"
class="pagination"
>
</el-pagination>
</div>
<div class="dialog-footer">
<el-button type="primary" size="mini" @click.native="handleClose"
>关闭</el-button
>
</div>
</el-dialog>
</template>
<script>
import {
importRecordsTitle,
importOperates,
importOperations,
} from "../configs/import";
import { parseTime, getYestoday } from "@/utils/index";
import { getImportListPage, deleteByBatchNum } from "@/api/file";
import { getLogList } from "@/api/log";
export default {
name: "ImportRecordDialog",
props: {
filesList: {
type: Array,
default: () => [],
},
},
watch: {
visible: {
handler: function (value) {
if (value) {
this.loadData();
}
},
deep: true,
immediate: true,
},
},
computed: {
tableTitle() {
return importRecordsTitle;
},
tableOperates() {
return importOperates;
},
tableOperations() {
return importOperations;
},
getFileSize(fileSize) {
return (fileSize) => {
return (Number(fileSize) / 1024 / 1024).toFixed(2) + "M";
};
},
isToday(time) {
return (time) => {
if (time) {
let timeDate = time.split(" ")[0];
let today = parseTime(new Date(), "{yy}-{mm}-{dd}");
return timeDate == today;
} else {
return false;
}
};
},
},
data() {
return {
visible: false,
list: {
records: [],
size: 10,
current: 1,
total: 0,
},
searchConfig: [
{
prop: "createTime",
type: "dateTimeRange",
label: "操作日期",
},
],
};
},
methods: {
getYestoday,
async search(form) {
var params = {
page: this.list.current,
limit: this.list.size,
optType: "整量",
...form,
};
if (params.createTime && params.createTime.length > 0) {
params.startTime = params.createTime[0];
params.endTime = params.createTime[1];
}
if (params.createTime) {
delete params.createTime;
}
let res = await getLogList(params);
if (res.code == 0) {
this.list = res.data;
}
},
reset() {
this.loadData();
},
// 加载表格数据
async loadData() {
var params = {
page: this.list.current,
limit: this.list.size,
// type: "biz_exhibition",
optType: "整量",
};
if (params.createTime && params.createTime.length > 0) {
params.startTime = params.createTime[0];
params.endTime = params.createTime[1];
}
if (params.createTime) {
delete params.createTime;
}
let res = await getLogList(params);
if (res.code == 0) {
this.list = res.data;
}
},
async handleOperation(value, row) {
switch (value.type) {
case "delete":
let { batchNum, type, id } = row;
let deleteRes = await deleteByBatchNum({ batchNum, type });
if (deleteRes.code == 0) {
this.$message.success("删除成功!");
this.$emit("reload");
this.loadData();
}
break;
}
},
// 改变页容量
handleSizeChange(value) {
this.list.size = value;
this.loadData();
},
// 改变当前显示页
handleCurrentChange(value) {
this.list.current = value;
this.loadData();
},
handleClose() {
this.visible = false;
},
},
};
</script>
<style lang="scss" scoped>
.title {
display: flex;
.divider {
width: 8px;
height: 16px;
border-left: 4px solid #409eff;
margin-right: 8px;
}
.label {
font-weight: bold;
}
}
.dialog-content {
padding: 0 32px;
display: flex;
flex-direction: column;
}
.dialog-footer {
margin-top: 30px;
display: flex;
justify-content: flex-end;
}
.el-dialog__body {
padding: 0 20px 30px 20px;
}
.top-bar {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 10px;
}
.pagination {
margin: 16px;
}
</style>
export const importRecordsTitle = [{
prop: "createTime",
label: "导入时间",
columnAlign: "left",
needTimeTag: true
},
// {
// prop: "batchNum",
// label: "导入批次",
// columnAlign: "center",
// },
{
prop: "sourceName",
label: "文件名称",
columnAlign: "center",
width: 300
},
{
prop: 'username',
label: '操作用户',
columnAlign: "center",
},
{
prop: 'optType',
label: '操作类型',
columnAlign: "center",
},
// {
// prop: "fileSize",
// label: "文件大小",
// columnAlign: "center",
// },
// {
// prop: "remark",
// label: "备注",
// columnAlign: "center",
// width: "60px",
// },
]
export const importOperates = {
operate: true,
label: "操作",
width: "220px",
minwidth: "220px",
titleAlign: "center",
columnAlign: "center",
}
export const importOperations = [{
type: 'delete',
title: '删除记录及展览'
},]
\ No newline at end of file
...@@ -151,7 +151,7 @@ ...@@ -151,7 +151,7 @@
ref="InfoEditDialog" ref="InfoEditDialog"
/> />
<PreviewDialog ref="PreviewDialog" :info="curPreview" /> <PreviewDialog ref="PreviewDialog" :info="curPreview" />
<ImportRecordDialog ref="ImportRecordDialog" @reload="loadData" /> <ImportRecordDialog ref="ImportRecordDialog" bizType="biz_exhibition" />
<UploadListDialog <UploadListDialog
:visible="multiUploadVisible" :visible="multiUploadVisible"
...@@ -194,7 +194,7 @@ import { ...@@ -194,7 +194,7 @@ import {
} from "@/api/display"; } from "@/api/display";
import InfoEditDialog from "./components/InfoEditDialog"; import InfoEditDialog from "./components/InfoEditDialog";
import PreviewDialog from "./components/PreviewDialog"; import PreviewDialog from "./components/PreviewDialog";
import ImportRecordDialog from "./components/ImportRecordDialog"; import ImportRecordDialog from "@/components/ImportRecordDialog";
import UploadListDialog from "./components/UploadListDialog"; //上传列表弹窗 import UploadListDialog from "./components/UploadListDialog"; //上传列表弹窗
import UploadDialog from "@/components/UploadDialog"; //上传弹窗 import UploadDialog from "@/components/UploadDialog"; //上传弹窗
import { mapGetters } from "vuex"; import { mapGetters } from "vuex";
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论