标准/译文获取申请管理 主页

标准/译文获取申请管理 新增导出 文件名确认对话框
This commit is contained in:
baoyu
2024-03-27 18:40:55 +08:00
parent e312540f26
commit d361662e3f
2 changed files with 186 additions and 65 deletions
@@ -0,0 +1,61 @@
<template>
<!--导出文件改名字模态框-->
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px">
<el-form :inline="true" class="label-input-form search-area">
<el-form-item label="导出名称" class="search-item">
<el-input v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
</el-form-item>
</el-form>
<span slot="footer" class="demo-drawer-footer">
<el-button class="common-button-default" icon="el-icon-close" @click="cancel">取消</el-button>
<el-button type="primary" round class="common-button-primary" icon="el-icon-check" @click="submit">提交</el-button>
</span>
</el-dialog>
</template>
<script>
export default {
name: 'exportDialog',
data () {
return {
exportModelFlag: false,
exportName: ''
}
},
methods: {
openModel () {
this.exportName = ''
this.exportModelFlag = true
},
cancel () {
this.exportModelFlag = false
},
submit () {
this.$emit('exportName', this.exportName)
}
}
}
</script>
<style scoped>
/deep/ .label-input-form .add-form-item .el-form-item__content .el-input .el-input__inner {
width: 280px;
}
/deep/ .el-dialog .el-dialog__header {
width: 100%;
font-size: 14px;
color: #17233d;
font-weight: bold;
border-bottom: 1px solid #e5e5e5;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/deep/ .el-dialog .el-dialog__body {
padding: 15px 20px;
}
/deep/ .el-dialog .el-dialog__footer .el-button {
height: 32px;
padding: 8px 23px;
}
</style>
@@ -2,28 +2,40 @@
<!--标准/译文获取申请管理-->
<div class="standardTranslationAcquisitionRequest">
<div class="search-area">
<el-form :inline="true" :model="searchForm">
<el-form :inline="true" :model="StandardApplyForEOPage">
<el-form-item class="el-form-item search-item" label="类型">
<el-select v-model="searchForm.LX" clearable placeholder="请选择类型" />
<el-select v-model="StandardApplyForEOPage.type" clearable placeholder="请选择类型" />
</el-form-item>
<el-form-item class="el-form-item search-item" label="申请单位">
<el-select v-model="searchForm.SJDW" clearable placeholder="请选择申请单位" />
<el-select v-model="StandardApplyForEOPage.applyForUnitIds" clearable placeholder="请选择申请单位" />
</el-form-item>
<el-form-item class="el-form-item search-item" label="申请人">
<el-select v-model="searchForm.SQR" clearable placeholder="请选择申请人" />
<el-select v-model="StandardApplyForEOPage.applyForUserIds" clearable placeholder="请选择申请人" />
</el-form-item>
<el-form-item class="el-form-item search-item stand-date-range-picker" label="需求时间">
<el-form-item class="el-form-item search-item" style="margin-right: 0" label="需求时间">
<el-date-picker
v-model="searchForm.XQSJ"
type="daterange"
range-separator=""
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 285px"
v-model="StandardApplyForEOPage.requiredTimeStart"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
type="date"
clearable
:editable="true"
placeholder="请选择开始时间"
/>
</el-form-item>
<el-form-item label="至" label-width="25px" class="search-item">
<el-date-picker
v-model="StandardApplyForEOPage.requiredTimeEnd"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
type="date"
clearable
:editable="true"
placeholder="选择结束时间"
/>
</el-form-item>
<el-form-item class="el-form-item search-item" label="申请状态">
<el-select v-model="searchForm.SJZT" clearable placeholder="请选择申请状态" />
<el-select v-model="StandardApplyForEOPage.status" clearable placeholder="请选择申请状态" />
</el-form-item>
<el-form-item>
<el-button size="mini" type="primary" @click="searchData">查询</el-button>
@@ -34,11 +46,11 @@
<div class="table-container">
<div class="operate-options">
<div>
<el-button size="mini" type="danger" @click="batchOverrule">批量驳回</el-button>
<el-button size="mini" type="primary" @click="batchPass">批量通过</el-button>
<el-button size="mini" type="danger" @click="batchOverrule(selectedList)">批量驳回</el-button>
<el-button size="mini" type="primary" @click="batchPass(selectedList)">批量通过</el-button>
</div>
<div>
<el-button size="mini" type="primary" @click="standardsAndTranslationRequest">标准/译文获取申请</el-button>
<el-button size="mini" type="primary" @click="standardsAndTranslationRequestShowModal">标准/译文获取申请</el-button>
<el-button size="mini" @click="exportList">列表导出</el-button>
</div>
</div>
@@ -50,9 +62,10 @@
row-key="id"
border
:loading="tableLoading"
:data="tableData"
:data="StandardApplyForEO"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px'}"
@selection-change="handleSelectionChange">
@selection-change="handleSelectionChange"
>
<el-table-column
type="selection"
width="55"
@@ -67,7 +80,7 @@
<el-table-column
show-overflow-tooltip
label="类型"
prop=""
prop="type"
align="center"
min-width="100"
/>
@@ -76,55 +89,55 @@
label="标准编号"
width="150"
align="center"
prop="aa"
prop="standNum"
/>
<el-table-column
show-overflow-tooltip
label="标准名称"
prop="standardName"
prop="standName"
align="center"
min-width="150"
/>
<el-table-column
show-overflow-tooltip
label="原语言"
prop=""
prop="sourceLanguage"
align="center"
min-width="100"
/>
<el-table-column
show-overflow-tooltip
label="目标语言"
prop=""
prop="targetLanguage"
align="center"
min-width="100"
/>
<el-table-column
show-overflow-tooltip
label="理由"
prop=""
prop="reason"
align="center"
min-width="300"
/>
<el-table-column
show-overflow-tooltip
label="申请状态"
prop=""
prop="status"
align="center"
min-width="100"
/>
<el-table-column label="操作" align="center" width="200" fixed="right">
<template slot-scope="scope">
<div class="table-operate-btn" @click="toView(scope.row.id)">查看</div>
<div class="table-operate-btn" @click="pass(scope.row.id,'down')">通过</div>
<div class="table-operate-btn" @click="overrule(scope.row.id,'down')">驳回</div>
<div class="table-operate-btn" @click="batchPass([scope.row.id])">通过</div>
<div class="table-operate-btn" @click="batchOverrule([scope.row.id])">驳回</div>
</template>
</el-table-column>
</el-table>
<pagination
style="position: relative;"
:page="searchForm.page"
:total="searchForm.total"
:page="StandardApplyForEOPage.page"
:total="total"
@pageChange="pageChange"
@pageSizeChange="pageSizeChange"
/>
@@ -132,6 +145,7 @@
<standardsAndTranslationModal ref="standardsAndTranslationModalRef" />
<addModal ref="addModalRef" />
<detailModal ref="detailModalRef" />
<exportDialog ref="exportDialogRef"></exportDialog>
</div>
</template>
@@ -139,68 +153,112 @@
import standardsAndTranslationModal from './components/standardTranslationAcquisitionRequestModal';
import addModal from './components/addModal';
import detailModal from './components/detailModal';
import exportDialog from './components/exportDialog';
export default {
name: 'StandardTranslationAcquisitionRequest',
components: {
standardsAndTranslationModal,
addModal,
detailModal
detailModal,
exportDialog
},
data () {
return {
tableLoading: false,
total: 0,
searchForm: {
StandardApplyForEOPage: {
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
},
tableData: [ { aa: '123' } ],
selectedList: []
StandardApplyForEO: [],
selectedList: [],
url: {
getList: '/lawss/standardApplyFor/queryByPage',
updateState: '/lawss/standardApplyFor/batchUpdateStatus'
}
}
},
mounted () {
if (this.$route.query && this.$route.query.tag === 'fromSearchCenter') {
this.standardsAndTranslationRequest()
this.standardsAndTranslationRequestShowModal()
this.$router.replace({ query: { ...this.$route.query, tag: undefined } })
}
this.getList()
},
methods: {
searchData () {
this.page = 1
this.getList()
},
clearSerach () {
this.searchForm = {}
},
batchPass () {
if (this.selectedList.length === 0) {
this.$message({
message: '请选择至少一条数据',
type: 'warning',
offset: 20
})
this.StandardApplyForEOPage = {
page: 1,
pageSize: this.$store.getters.userInfo.configContent
}
},
batchOverrule () {
if (this.selectedList.length === 0) {
this.$message({
message: '请选择至少一条数据',
type: 'warning',
offset: 20
})
}
},
exportList () {
this.getList()
},
getList () {
this.tableLoading = true
this.$http.get(this.url.getList, {
...this.StandardApplyForEOPage
}, {
_this: this
}, res => {
if (res.ok) {
this.StandardApplyForEO = res.data.list
this.total = res.data.total
}else {
this.StandardApplyForEO = []
this.total = 0
}
this.tableLoading = false
})
},
// 需要调整
batchPass (id) {
if (id.length === 0) {
this.$message({
message: '请选择至少一条数据',
type: 'warning',
offset: 20
})
return
}
const ids = id.join(',')
this.$http.postData(this.url.updateState, { status: 'pass', ids }, { _this: this }, res => {
if(res.ok) {
this.$message.success('操作成功')
}
})
},
batchOverrule (id) {
if (id.length === 0) {
this.$message({
message: '请选择至少一条数据',
type: 'warning',
offset: 20
})
return
}
const ids = id.join(',')
this.$http.postData(this.url.updateState, { status: 'refuse', ids }, { _this: this }, res => {
if(res.ok) {
this.$message.success('操作成功')
}
})
},
exportName(name){
},
exportList () {
this.$refs.exportDialogRef.openModel()
},
toView (id) {
this.$refs.detailModalRef.showModal(id)
},
pass (id) {
},
overrule (id) {
},
standardsAndTranslationRequest () {
standardsAndTranslationRequestShowModal () {
this.$refs.standardsAndTranslationModalRef.showModal()
},
pageChange (page) {
@@ -211,10 +269,12 @@ export default {
this.questionSerach.pageSize = pageSize
this.getList()
},
formatClassification () {
},
handleSelectionChange (value) {
this.selectedList = value
const ids = []
value.forEach(item => {
ids.push(item.id)
})
this.selectedList = [ ...ids ]
}
},
}
@@ -233,7 +293,7 @@ export default {
display: flex;
flex-direction: column;
.drag-table{
.drag-table {
flex-grow: 1;
}
@@ -245,15 +305,15 @@ export default {
}
}
.table-operate-btn{
.table-operate-btn {
display: inline-block;
cursor: pointer;
color: #409EFF;
margin: 0 5px;
}
.stand-date-range-picker{
/deep/ .el-range-separator{
.stand-date-range-picker {
/deep/ .el-range-separator {
width: auto;
}
}