培训文件显示创建时间,不展示更新时间
continuous-integration/drone/push Build is passing Details

uat_us
wangxiaoshuang 2024-12-20 11:03:46 +08:00
parent c24c98b334
commit 2c0c2e8111
3 changed files with 114 additions and 56 deletions

View File

@ -104,8 +104,8 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="UpdateTime" prop="CreateTime"
label="上传时间" label="创建时间"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
/> />

View File

@ -456,7 +456,6 @@ export default {
}, },
// //
setPassword(val) { setPassword(val) {
console.log(val)
if (this.isShowPassword) { if (this.isShowPassword) {
this.loginForm.password = val this.loginForm.password = val
} else { } else {

View File

@ -1,5 +1,5 @@
<template> <template>
<box-content style="height: 100%;background: #fff;"> <box-content style="height: 100%; background: #fff">
<!-- 搜索框 --> <!-- 搜索框 -->
<div class="search"> <div class="search">
<el-form :inline="true" class="base-search-form"> <el-form :inline="true" class="base-search-form">
@ -8,7 +8,7 @@
<el-select <el-select
v-model="searchData.FileTypeId" v-model="searchData.FileTypeId"
clearable clearable
style="width:150px;" style="width: 150px"
> >
<el-option <el-option
v-for="item of $d.Trial_Document" v-for="item of $d.Trial_Document"
@ -20,14 +20,14 @@
</el-form-item> </el-form-item>
<!-- 文件名称 --> <!-- 文件名称 -->
<el-form-item :label="$t('trials:attachment:table:fileName')"> <el-form-item :label="$t('trials:attachment:table:fileName')">
<el-input v-model="searchData.Name" style="width:100px;" /> <el-input v-model="searchData.Name" style="width: 100px" />
</el-form-item> </el-form-item>
<!-- 培训状态 --> <!-- 培训状态 -->
<el-form-item :label="$t('trials:attachment:table:isDeleted')"> <el-form-item :label="$t('trials:attachment:table:isDeleted')">
<el-select <el-select
clearable clearable
v-model="searchData.IsDeleted" v-model="searchData.IsDeleted"
style="width:150px;" style="width: 150px"
> >
<el-option <el-option
v-for="item of $d.TrainingStatus" v-for="item of $d.TrainingStatus"
@ -42,11 +42,18 @@
<el-select <el-select
v-model="searchData.UserTypeId" v-model="searchData.UserTypeId"
clearable clearable
style="width:100%;" style="width: 100%"
> >
<el-option <el-option
v-for="item of userTypeOptions" v-for="item of userTypeOptions"
v-show="item.UserTypeEnum !== 1 && item.UserTypeEnum !== 8 && item.UserTypeEnum !== 20 && item.UserTypeEnum !== 26 && item.UserTypeEnum !== 27 && item.UserTypeEnum !== 31" v-show="
item.UserTypeEnum !== 1 &&
item.UserTypeEnum !== 8 &&
item.UserTypeEnum !== 20 &&
item.UserTypeEnum !== 26 &&
item.UserTypeEnum !== 27 &&
item.UserTypeEnum !== 31
"
:key="item.Id" :key="item.Id"
:label="item.UserTypeShortName" :label="item.UserTypeShortName"
:value="item.Id" :value="item.Id"
@ -55,20 +62,23 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<!-- 查询 --> <!-- 查询 -->
<el-button type="primary" icon="el-icon-search" @click="handleSearch"> <el-button type="primary" icon="el-icon-search" @click="handleSearch">
{{ $t('common:button:search') }} {{ $t('common:button:search') }}
</el-button> </el-button>
<!-- 重置 --> <!-- 重置 -->
<el-button type="primary" icon="el-icon-refresh-left" @click="handleReset"> <el-button
type="primary"
icon="el-icon-refresh-left"
@click="handleReset"
>
{{ $t('common:button:reset') }} {{ $t('common:button:reset') }}
</el-button> </el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span style="margin-left:auto;"> <span style="margin-left: auto">
<!-- 新增 --> <!-- 新增 -->
<el-button <el-button
v-hasPermi="['trials:trials-panel:setting:attachment:add']" v-hasPermi="['trials:trials-panel:setting:attachment:add']"
@ -85,7 +95,7 @@
<el-table <el-table
ref="attachmentList" ref="attachmentList"
v-loading="loading" v-loading="loading"
v-adaptive="{bottomOffset:60}" v-adaptive="{ bottomOffset: 60 }"
:data="list" :data="list"
stripe stripe
height="100" height="100"
@ -125,8 +135,12 @@
min-width="100" min-width="100"
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag v-if="scope.row.IsDeleted" type="danger">{{ $fd('TrainingStatus', !scope.row.IsDeleted) }}</el-tag> <el-tag v-if="scope.row.IsDeleted" type="danger">{{
<el-tag v-else type="primary">{{ $fd('TrainingStatus', !scope.row.IsDeleted) }}</el-tag> $fd('TrainingStatus', !scope.row.IsDeleted)
}}</el-tag>
<el-tag v-else type="primary">{{
$fd('TrainingStatus', !scope.row.IsDeleted)
}}</el-tag>
</template> </template>
</el-table-column> </el-table-column>
<!-- 需要签署的用户类型 --> <!-- 需要签署的用户类型 -->
@ -137,7 +151,11 @@
min-width="100" min-width="100"
> >
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.NeedConfirmedUserTypes?scope.row.NeedConfirmedUserTypes.join(', '):'' }} {{
scope.row.NeedConfirmedUserTypes
? scope.row.NeedConfirmedUserTypes.join(', ')
: ''
}}
</template> </template>
</el-table-column> </el-table-column>
<!-- 描述 --> <!-- 描述 -->
@ -148,14 +166,21 @@
min-width="300" min-width="300"
/> --> /> -->
<!-- 更新时间 --> <!-- 更新时间 -->
<el-table-column <!-- <el-table-column
prop="UpdateTime" prop="UpdateTime"
:label="$t('trials:attachment:table:updateTime')" :label="$t('trials:attachment:table:updateTime')"
show-overflow-tooltip show-overflow-tooltip
sortable="custom" sortable="custom"
min-width="160" min-width="160"
/> -->
<!--创建时间-->
<el-table-column
prop="CreateTime"
:label="$t('trials:attachment:table:CreateTime')"
show-overflow-tooltip
sortable="custom"
min-width="160"
/> />
<el-table-column <el-table-column
:label="$t('common:action:action')" :label="$t('common:action:action')"
min-width="140" min-width="140"
@ -192,7 +217,13 @@
</el-table> </el-table>
<!-- 分页组件 --> <!-- 分页组件 -->
<pagination class="page" :total="total" :page.sync="searchData.PageIndex" :limit.sync="searchData.PageSize" @pagination="getList" /> <pagination
class="page"
:total="total"
:page.sync="searchData.PageIndex"
:limit.sync="searchData.PageSize"
@pagination="getList"
/>
<!-- 新增/编辑 --> <!-- 新增/编辑 -->
<el-dialog <el-dialog
@ -203,7 +234,11 @@
width="800px" width="800px"
custom-class="base-dialog-wrapper" custom-class="base-dialog-wrapper"
> >
<AttachmentForm :data="currentRow" @closeDialog="closeDialog" @getList="getList" /> <AttachmentForm
:data="currentRow"
@closeDialog="closeDialog"
@getList="getList"
/>
</el-dialog> </el-dialog>
<!-- 预览文件 --> <!-- 预览文件 -->
@ -215,16 +250,25 @@
append-to-body append-to-body
custom-class="base-dialog-wrapper" custom-class="base-dialog-wrapper"
> >
<div class="base-modal-body" style="border:2px solid #ccc;padding: 10px"> <div
<PreviewFile v-if="previewVisible" :file-path="currentPath" :file-type="currentType" /> class="base-modal-body"
style="border: 2px solid #ccc; padding: 10px"
>
<PreviewFile
v-if="previewVisible"
:file-path="currentPath"
:file-type="currentType"
/>
</div> </div>
</el-dialog> </el-dialog>
</box-content> </box-content>
</template> </template>
<script> <script>
import {
import { getTrialDocumentList, userAbandonDoc, getTrialUserTypeList } from '@/api/trials' getTrialDocumentList,
userAbandonDoc,
getTrialUserTypeList,
} from '@/api/trials'
import BoxContent from '@/components/BoxContent' import BoxContent from '@/components/BoxContent'
import Pagination from '@/components/Pagination' import Pagination from '@/components/Pagination'
import AttachmentForm from './components/attachmentForm' import AttachmentForm from './components/attachmentForm'
@ -238,7 +282,7 @@ const searchDataDefault = () => {
SortField: '', SortField: '',
Asc: false, Asc: false,
IsDeleted: null, IsDeleted: null,
UserTypeId: null UserTypeId: null,
} }
} }
export default { export default {
@ -258,7 +302,7 @@ export default {
currentPath: '', currentPath: '',
currentType: '', currentType: '',
trialId: '', trialId: '',
userTypeOptions: [] userTypeOptions: [],
} }
}, },
mounted() { mounted() {
@ -271,31 +315,38 @@ export default {
getList() { getList() {
this.loading = true this.loading = true
this.searchData.TrialId = this.trialId this.searchData.TrialId = this.trialId
getTrialDocumentList(this.searchData).then(res => { getTrialDocumentList(this.searchData)
this.loading = false .then((res) => {
const { CurrentPageData, TotalCount } = res.Result this.loading = false
CurrentPageData.forEach(item => { const { CurrentPageData, TotalCount } = res.Result
item.NeedConfirmedUserTypes = [] CurrentPageData.forEach((item) => {
item.NeedConfirmedUserTypeeIds = [] item.NeedConfirmedUserTypes = []
item.NeedConfirmedUserTypeList.forEach((i) => { item.NeedConfirmedUserTypeeIds = []
item.NeedConfirmedUserTypes.push(i.UserTypeShortName) item.NeedConfirmedUserTypeList.forEach((i) => {
item.NeedConfirmedUserTypeeIds.push(i.NeedConfirmUserTypeId) item.NeedConfirmedUserTypes.push(i.UserTypeShortName)
item.NeedConfirmedUserTypeeIds.push(i.NeedConfirmUserTypeId)
})
}) })
this.list = CurrentPageData
this.total = TotalCount
})
.catch(() => {
this.loading = false
}) })
this.list = CurrentPageData
this.total = TotalCount
}).catch(() => {
this.loading = false
})
}, },
// //
getUserType() { getUserType() {
getTrialUserTypeList().then(res => { getTrialUserTypeList()
this.userTypeOptions = res.Result .then((res) => {
if (this.form.Id) { this.userTypeOptions = res.Result
this.form.NeedConfirmedUserTypeIdList = this.data.NeedConfirmedUserTypeeIds if (this.form.Id) {
} this.form.NeedConfirmedUserTypeIdList =
}).catch(() => { this.loading = false }) this.data.NeedConfirmedUserTypeeIds
}
})
.catch(() => {
this.loading = false
})
}, },
// //
handleAdd() { handleAdd() {
@ -307,7 +358,9 @@ export default {
handlePreview(row) { handlePreview(row) {
const { Name, FullFilePath } = row const { Name, FullFilePath } = row
this.currentPath = FullFilePath this.currentPath = FullFilePath
this.currentType = row.Name ? Name.substring(Name.lastIndexOf('.') + 1).toLocaleLowerCase() : '' this.currentType = row.Name
? Name.substring(Name.lastIndexOf('.') + 1).toLocaleLowerCase()
: ''
this.previewVisible = true this.previewVisible = true
}, },
// //
@ -320,19 +373,25 @@ export default {
handleRepeal(row) { handleRepeal(row) {
this.$confirm(this.$t('trials:attachment:message:abolish'), { this.$confirm(this.$t('trials:attachment:message:abolish'), {
type: 'warning', type: 'warning',
distinguishCancelAndClose: true distinguishCancelAndClose: true,
}) })
.then(() => { .then(() => {
this.loading = true this.loading = true
userAbandonDoc(row.Id, false) userAbandonDoc(row.Id, false)
.then(res => { .then((res) => {
this.loading = false this.loading = false
if (res.IsSuccess) { if (res.IsSuccess) {
this.getList() this.getList()
this.$message.success(this.$t('trials:trials-list:message:abolitionSuccessfully')) this.$message.success(
this.$t('trials:trials-list:message:abolitionSuccessfully')
)
} }
}).catch(() => { this.loading = false }) })
}).catch(() => {}) .catch(() => {
this.loading = false
})
})
.catch(() => {})
}, },
// //
closeDialog() { closeDialog() {
@ -361,7 +420,7 @@ export default {
this.searchData.SortField = column.prop this.searchData.SortField = column.prop
this.searchData.PageIndex = 1 this.searchData.PageIndex = 1
this.getList() this.getList()
} },
} },
} }
</script> </script>