添加任务清单的认证目录

This commit is contained in:
qq787203167
2022-04-21 16:53:07 +08:00
parent 0e7a4538b0
commit 0a64be9cc6
5 changed files with 231 additions and 2 deletions
+2
View File
@@ -701,4 +701,6 @@ module.exports = {
certificationEnd:'Certification end',
directoryName:'Directory name',
batch:'batch',
uploadTime:'Upload time',
enclosure:'enclosure',
}
+2
View File
@@ -705,4 +705,6 @@ module.exports = {
certificationEnd:'认证结束',
directoryName:'目录名称',
batch:'批次',
uploadTime:'上传时间',
enclosure:'附件',
}
@@ -462,7 +462,7 @@
},
{
type: '',
value: 'status',
value: 'state',
text: this.$t('status'),
dictCode: 'state'//只要 dictCode 有值,无论 type 是什么,都显示为字典下拉框
},
@@ -53,12 +53,17 @@
>
</a-table>
</div>
<certificationDirectory :url="url" ref="certificationDirectoryRef"/>
</a-card>
</template>
<script>
import certificationDirectory from './certificationDirectory'
export default {
name: 'TaskList',
components:{
certificationDirectory
},
data() {
return {
columns: [
@@ -191,7 +196,7 @@
},
CertificationDirectory() {
this.$refs.certificationDirectoryRef.addModel()
}
}
}
@@ -0,0 +1,220 @@
<template>
<div>
<a-drawer
:title="$t('CertificationDirectory')"
:maskClosable="false"
:width="1000"
placement="right"
:closable="true"
@close="handleCancel"
:visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;">
<div style="margin-bottom: 60px">
<div class="table-operator">
<div class="operator-text">
<a-icon type="plus"/>
{{$t('add')}}
</div>
</div>
<a-table
:columns="columns"
:scroll="{x: 800}"
:data-source="dataList"
:pagination="false"
:loading="loading">
<span slot="operation" slot-scope="text,record">
<a class="text" @click="edit(record)">
{{ $t('edit') }}
</a>
</span>
</a-table>
<div class="page" v-if="dataList.length > 0">
<a-pagination
:show-total="total => $t('total')+`${total}`+$t('strip')"
show-quick-jumper
show-size-changer
:page-size.sync="pageSize"
:total="total"
@change="onChange"
@showSizeChange="SizeChange"
/>
</div>
</div>
<div class="drawer-bootom-button">
<a-button @click="handleCancel" type="danger" style="margin-right: 16px">{{$t('cancel')}}</a-button>
<a-button @click="handleSubmit" type="primary" :loading="confirmLoading">{{$t('submit')}}</a-button>
</div>
</a-drawer>
</div>
</template>
<script>
import { getAction, postAction } from '@/api/manage'
export default {
name: 'certificationDirectory',
components: {},
props: ['url'],
data() {
return {
visible: false,
queryParam: {},
confirmLoading: false,
selectedRowKeys: [],
columns: [
{
title: this.$t('directoryName'),
dataIndex: 'directoryName',
align: 'center',
ellipsis: true
},
{
title: this.$t('batch'),
dataIndex: 'batch',
align: 'center',
ellipsis: true
},
{
title: this.$t('uploadTime'),
dataIndex: 'uploadTime',
align: 'center',
ellipsis: true
},
{
title: this.$t('enclosure'),
dataIndex: 'enclosure',
align: 'center',
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
width: 130,
scopedSlots: { customRender: 'operation' }
}
],
dataList: [],
content: [],
loading: false,
pageNo: 1,
pageSize: 10,
total: 0
}
},
mounted() {
},
methods: {
addModel() {
this.visible = true
this.queryParam = {}
this.selectedRowKeys = []
this.replacePage()
},
searchQuery() {
this.pageNo = 1
this.replacePage()
},
searchReset() {
this.pageNo = 1
this.queryParam = {}
this.replacePage()
},
onChange(page, pageSize) {
this.pageNo = page
this.replacePage()
},
SizeChange(page, pageSize) {
this.pageNo = 1
this.pageSize = pageSize
this.replacePage()
},
replacePage() {
let query = {
pageNo: this.pageNo,
pageSize: this.pageSize,
...this.queryParam
}
this.loading = true
postAction(this.url.addModelList, query).then((res) => {
if (res.success) {
this.dataList = res.result.records || []
this.total = res.result.total
this.loading = false
} else {
this.loading = false
}
})
},
handleCancel() {
this.visible = false
},
handleSubmit() {
this.visible = false
},
edit() {
}
}
}
</script>
<style scoped>
@import '~@assets/less/common.less';
.page {
text-align: right;
margin-top: 20px;
}
.drawer-bootom-button {
position: absolute;
bottom: 0;
width: 100%;
border-top: 1px solid #e8e8e8;
padding: 10px 16px;
text-align: right;
left: 0;
background: #fff;
border-radius: 0 0 2px 2px;
}
.box-title-text {
line-height: 1.4;
display: flex;
align-items: center;
margin-bottom: 10px;
}
.title-text {
width: 20%;
min-width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
margin-top: 3px;
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.box-input {
display: inline-block;
width: 70%;
height: 38px;
margin-top: 2px;
}
.box-button {
height: 38px;
}
.table-operator{
text-align: right;
margin-bottom: 20px;
}
</style>