新增下载影像页面
continuous-integration/drone/push Build is passing Details

uat_us
wangxiaoshuang 2024-05-30 10:15:08 +08:00
parent 17c3c6f6d2
commit 3bbe3b3fa3
3 changed files with 54 additions and 8 deletions

View File

@ -6,12 +6,18 @@
custom-class="upload-dialog" custom-class="upload-dialog"
:before-close="beforeClose" :before-close="beforeClose"
> >
<span slot="title">{{ $t("trials:uploadImage:title:uploadImages") }}</span> <span slot="title">{{ title }}</span>
<el-divider content-position="left">{{ <el-divider content-position="left">{{
$t("trials:uploadImage:button:uploadTableTitle1") $t("trials:uploadImage:button:uploadTableTitle1")
}}</el-divider> }}</el-divider>
<!--已上传影像检查--> <!--已上传影像检查-->
<el-table :data="list" style="width: 100%" height="300" :loading="loading"> <el-table
:data="list"
style="width: 100%"
height="300"
v-adaptive="{ bottomOffset: 50, notAdaptive: isUpload }"
:loading="loading"
>
<!--受试者--> <!--受试者-->
<el-table-column <el-table-column
prop="SubjectCode" prop="SubjectCode"
@ -60,6 +66,7 @@
<template slot-scope="scope"> <template slot-scope="scope">
<!--下载---> <!--下载--->
<el-button <el-button
v-if="!isUpload && Criterion.ImageDownloadEnum > 0"
circle circle
icon="el-icon-download" icon="el-icon-download"
:title="$t('trials:uploadImage:button:download')" :title="$t('trials:uploadImage:button:download')"
@ -67,6 +74,7 @@
/> />
<!--删除---> <!--删除--->
<el-button <el-button
v-if="isUpload"
circle circle
icon="el-icon-delete" icon="el-icon-delete"
:title="$t('trials:uploadImage:button:delete')" :title="$t('trials:uploadImage:button:delete')"
@ -76,7 +84,7 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<upload-list <upload-list
v-if="Criterion.ImageUploadEnum > 0" v-if="Criterion.ImageUploadEnum > 0 && isUpload"
:StudyInstanceUidList="StudyInstanceUidList" :StudyInstanceUidList="StudyInstanceUidList"
:SopInstanceUidList="SopInstanceUidList" :SopInstanceUidList="SopInstanceUidList"
@getList="getList" @getList="getList"
@ -110,6 +118,10 @@ export default {
return {}; return {};
}, },
}, },
status: {
type: String,
default: "upload",
},
}, },
components: { components: {
"upload-list": uploadList, "upload-list": uploadList,
@ -132,6 +144,18 @@ export default {
modelList: [], modelList: [],
}; };
}, },
computed: {
title() {
let str = this.$t("trials:uploadImage:title:uploadImages");
if (this.status === "download") {
str = this.$t("trials:uploadImage:title:uploadImagesDownLoad");
}
return str;
},
isUpload() {
return this.status === "upload";
},
},
created() { created() {
this.getList(); this.getList();
}, },

View File

@ -4,11 +4,12 @@ import {
} from 'element-ui/src/utils/resize-event' } from 'element-ui/src/utils/resize-event'
// 设置表格高度 // 设置表格高度
const doResize = async(el, binding, vnode) => { const doResize = async (el, binding, vnode) => {
// 获取表格Dom对象 // 获取表格Dom对象
const { componentInstance: $table } = await vnode const { componentInstance: $table } = await vnode
// 获取调用传递过来的数据 // 获取调用传递过来的数据
const { value } = binding const { value } = binding
if (value && value.notAdaptive) return;
// 获取距底部距离(用于展示页码等信息) // 获取距底部距离(用于展示页码等信息)
const bottomOffset = (value && value.bottomOffset) || 40 const bottomOffset = (value && value.bottomOffset) || 40
if (!$table) return if (!$table) return
@ -24,7 +25,7 @@ export default {
// 初始化设置 // 初始化设置
bind(el, binding, vnode) { bind(el, binding, vnode) {
// 设置resize监听方法 // 设置resize监听方法
el.resizeListener = async() => { el.resizeListener = async () => {
await doResize(el, binding, vnode) await doResize(el, binding, vnode)
} }
// 绑定监听方法到addResizeListener // 绑定监听方法到addResizeListener

View File

@ -68,9 +68,9 @@ const searchDataDefault = () => {
UserType: null, UserType: null,
PageIndex: 1, PageIndex: 1,
PageSize: 20, PageSize: 20,
Asc: true, Asc: false,
RealName: '', RealName: '',
SortField: '' SortField: 'CreateTime'
} }
} }
export default { export default {
@ -163,6 +163,13 @@ export default {
minWidth: 100, minWidth: 100,
sortable: 'custom', sortable: 'custom',
showOverflowTooltip: true }, showOverflowTooltip: true },
{
prop: "CreateTime",
label: this.$t("system:userlist:table:createTime"),
minWidth: 200,
sortable: "custom",
showOverflowTooltip: true,
},
{ type: 'operate', { type: 'operate',
label: this.$t('common:action:action'), label: this.$t('common:action:action'),
minWidth: 200, minWidth: 200,
@ -193,6 +200,13 @@ export default {
width: '120px', width: '120px',
placeholder: '' placeholder: ''
}, },
{
type: "Input",
label: this.$t("system:userlist:label:EMail"),
prop: "EMail",
width: "120px",
placeholder: "",
},
{ {
type: 'Input', type: 'Input',
label: this.$t('system:userlist:label:Organization'), label: this.$t('system:userlist:label:Organization'),
@ -247,7 +261,14 @@ export default {
options: [], // options: [], //
props: { label: 'UserType', value: 'Id' }, // props: { label: 'UserType', value: 'Id' }, //
placeholder: '' placeholder: ''
} },
{
type: "Daterange",
label: this.$t("system:userlist:label:CreateTime"),
prop: "CreateTimeArr",
width: "400px",
placeholder: "",
},
], ],
searchHandle: [ searchHandle: [
{ label: this.$t('common:button:reset'), type: 'primary', emitKey: 'reset' }, { label: this.$t('common:button:reset'), type: 'primary', emitKey: 'reset' },