文档详情

This commit is contained in:
caoyang
2022-02-28 17:40:48 +08:00
parent cf2e6400b3
commit 8f1d4b9847
10 changed files with 384 additions and 47 deletions
+12 -1
View File
@@ -348,5 +348,16 @@ module.exports = {
Push:'Push', Push:'Push',
templateDownload:'Template download', templateDownload:'Template download',
textInformation:'Text information', textInformation:'Text information',
relatedInformation:'Related information' relatedInformation:'Related information',
RetrieveFiles:'Retrieve received files',
SplitText:'Split received text',
ImportResults:'Import split results',
copy:'copy',
TemplateDownload:'Template download',
MergerClause:'Merger clause',
BatchSetting:'Batch setting',
BatchCancel:'Batch cancel collection',
SubscriptionManagement:'Subscription domain management',
BatchCancellation:'Batch cancellation',
} }
+12 -1
View File
@@ -352,5 +352,16 @@ module.exports = {
Push:'推送', Push:'推送',
templateDownload:'模板下载', templateDownload:'模板下载',
textInformation:'文本信息', textInformation:'文本信息',
relatedInformation:'关联信息' relatedInformation:'关联信息',
RetrieveFiles:'调取已入库文件',
SplitText:'拆分已入库文本',
ImportResults:'导入拆分结果',
copy:'复制',
TemplateDownload:'模板下载',
MergerClause:'合并条款',
BatchSetting:'批量设置',
BatchCancel:'批量取消收藏',
SubscriptionManagement:'订阅领域管理',
BatchCancellation:'批量取消',
} }
+4 -4
View File
@@ -3,7 +3,7 @@
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :md="6" :sm="8" v-for="(item,index) in searchList" :key="index" style="line-height: 48px"> <a-col :md="6" :sm="8" v-for="(item,index) in searchList" :key="index" style="line-height: 48px">
<template> <template>
<div class="box-title-text" v-if="item.field_show_type == '1'"> <div class="box-title-text" v-if="item.field_show_type == 'text'">
<div class="title-text" :title="item.db_field_txt"> <div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span> <span>{{item.db_field_txt}}</span>
</div> </div>
@@ -17,7 +17,7 @@
<a-input-number class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt" <a-input-number class="box-input" :placeholder="$t('PleaseEnter')+item.db_field_txt"
v-model="queryParam[item.db_field_name]" :min="1" :max="99999999"/> v-model="queryParam[item.db_field_name]" :min="1" :max="99999999"/>
</div> </div>
<div class="box-title-text" v-else-if="item.field_show_type == '4'"> <div class="box-title-text" v-else-if="item.field_show_type == 'checkbox'">
<div class="title-text" :title="item.db_field_txt"> <div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span> <span>{{item.db_field_txt}}</span>
</div> </div>
@@ -25,7 +25,7 @@
:placeholder="$t('PleaseSelect')+item.db_field_txt" :type="'select'" :placeholder="$t('PleaseSelect')+item.db_field_txt" :type="'select'"
:triggerChange="false" :dictCode="item.dict_field"/> :triggerChange="false" :dictCode="item.dict_field"/>
</div> </div>
<div class="box-title-text" v-else-if="item.field_show_type == '6'"> <div class="box-title-text" v-else-if="item.field_show_type == 'datetime'">
<div class="title-text" :title="item.db_field_txt"> <div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span> <span>{{item.db_field_txt}}</span>
</div> </div>
@@ -42,7 +42,7 @@
@change="dateChange(item.db_field_name)" @change="dateChange(item.db_field_name)"
v-model="queryParam[item.db_field_name]"/> v-model="queryParam[item.db_field_name]"/>
</div> </div>
<div class="box-title-text" v-else-if="item.field_show_type == '3'"> <div class="box-title-text" v-else-if="item.field_show_type == 'list'">
<div class="title-text" :title="item.db_field_txt"> <div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span> <span>{{item.db_field_txt}}</span>
</div> </div>
@@ -29,7 +29,7 @@
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">{{$t('query')}}</a-button> <a-button type="primary" @click="searchQuery" icon="search">{{$t('query')}}</a-button>
<a-button @click="searchReset" icon="reload" style="margin-left: 8px">清空</a-button> <a-button @click="searchReset" icon="reload" style="margin-left: 8px">{{ $t('reset') }}</a-button>
</span> </span>
</a-col> </a-col>
</a-row> </a-row>
@@ -40,7 +40,7 @@
<div class="table-operator"> <div class="table-operator">
<div class="operator-text" @click="handleBatCancel"> <div class="operator-text" @click="handleBatCancel">
<a-icon type="delete" /> <a-icon type="delete" />
批量取消收藏 {{ $t('BatchCancel') }}
</div> </div>
</div> </div>
<div class="colloction-table"> <div class="colloction-table">
@@ -7,15 +7,15 @@
<div class="table-operator"> <div class="table-operator">
<div class="operator-text" @click="handleUpload"> <div class="operator-text" @click="handleUpload">
<a-icon type="plus" /> <a-icon type="plus" />
上传 {{ $t('upload1') }}
</div> </div>
<div class="operator-text" @click="handleFileExport"> <div class="operator-text" @click="handleFileExport">
<a-icon type="export" /> <a-icon type="export" />
调取已入库文件 {{ $t('RetrieveFiles') }}
</div> </div>
<div class="operator-text" @click="handleDel"> <div class="operator-text" @click="handleDel">
<a-icon type="delete" /> <a-icon type="delete" />
批量删除 {{ $t('BatchDelete') }}
</div> </div>
</div> </div>
@@ -4,6 +4,7 @@
class="doc-table-drawer" class="doc-table-drawer"
title="调取已入库文件" title="调取已入库文件"
placement="right" placement="right"
v-if="visible"
:visible="visible" :visible="visible"
:after-visible-change="afterVisibleChange" :after-visible-change="afterVisibleChange"
@close="onClose" @close="onClose"
@@ -11,16 +12,16 @@
> >
<div class="doc-table-content"> <div class="doc-table-content">
<div class="doc-header"> <div class="doc-header">
<a-form layout="inline" @keyup.enter.native="searchQuery(queryParams)"> <a-form layout="inline" v-model="queryParams" @keyup.enter.native="searchQuery(queryParams)">
<a-row :gutter="24"> <a-row :gutter="24">
<a-col :md="6" :sm="12"> <a-col :md="6" :sm="12">
<a-form-item :label="'编号'"> <a-form-item :label="'编号'">
<j-input :placeholder="'请输入编号'" v-model="queryParams.standNumber"></j-input> <j-input :placeholder="'请输入编号'" v-model="queryParams.serialNumber"></j-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="6" :sm="12"> <a-col :md="6" :sm="12">
<a-form-item :label="'标题'"> <a-form-item :label="'标题'">
<j-input :placeholder="'请输入标题'" v-model="queryParams.standName"></j-input> <j-input :placeholder="'请输入标题'" v-model="queryParams.title"></j-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
@@ -60,6 +61,7 @@
</template> </template>
<script> <script>
import { getAction, postAction, deleteAction } from '@/api/manage'
export default { export default {
name: 'docTable', name: 'docTable',
props:{ props:{
@@ -72,9 +74,11 @@
visible:false, visible:false,
queryParams:{ queryParams:{
pageNo:1, pageNo:1,
pageSize:10 pageSize:10,
serialNumber:'',
title:''
}, },
currentPage:1, total:0,
ipagination: { ipagination: {
defaultPageSize: 10, defaultPageSize: 10,
defaultCurrent: 1, defaultCurrent: 1,
@@ -99,47 +103,59 @@
}, },
{ {
title:'标准编号', title:'标准编号',
key: 'standNumber', key: 'serial_number',
align:"center", align:"center",
dataIndex: 'standNumber', dataIndex: 'serial_number',
ellipsis: true, ellipsis: true,
}, },
{ {
title:'标题', title:'标题',
key: 'standName', key: 'title',
align:"center", align:"center",
dataIndex: 'standName', dataIndex: 'title',
ellipsis: true, ellipsis: true,
}, },
{ {
title:'文本状态', title:'状态',
key: 'fileType_dictText', key: 'state',
align:"center", align:"center",
dataIndex: 'fileType_dictText', dataIndex: 'state',
ellipsis: true, ellipsis: true,
}, },
{ {
title:'文件名称', title:'文件名称',
key: 'fileName', key: 'file_name',
align:"center", align:"center",
dataIndex: 'fileName', dataIndex: 'file_name',
ellipsis: true, ellipsis: true,
}, },
{ {
title:'文件信息', title:'文件信息',
key: 'fileInfo', key: 'text_info',
align:"center", align:"center",
dataIndex: 'fileInfo', dataIndex: 'text_info',
ellipsis: true, ellipsis: true,
}, },
] ],
} }
}, },
mounted() { mounted() {
this.visible=this.drawVisible this.visible=this.drawVisible
this.tableSource= [...this.drawTableSorce] this.loadData()
// this.tableSource= [...this.drawTableSorce]
}, },
methods: { methods: {
loadData(){
let params={
...this.queryParams
}
postAction(`document/bussDocumentLibraryEO/ocrPageInfo`,params).then(res=>{
if(res.success){
this.total=res.result.total
this.tableSource=[...res.result.records]
}
})
},
afterVisibleChange(val) { afterVisibleChange(val) {
console.log('visible', val); console.log('visible', val);
}, },
@@ -7,15 +7,15 @@
<div class="table-operator"> <div class="table-operator">
<div class="operator-text" @click="handleModule"> <div class="operator-text" @click="handleModule">
<a-icon type="plus" /> <a-icon type="plus" />
拆分已入库文本 {{ $t('SplitText') }}
</div> </div>
<div class="operator-text" @click="handleExport"> <div class="operator-text" @click="handleExport">
<a-icon type="export" /> <a-icon type="export" />
导入拆分结果 {{ $t('ImportResults') }}
</div> </div>
<div class="operator-text" @click="handleDel"> <div class="operator-text" @click="handleDel">
<a-icon type="delete" /> <a-icon type="delete" />
批量删除 {{ $t('BatchDelete') }}
</div> </div>
</div> </div>
<div class="splitting-table"> <div class="splitting-table">
@@ -0,0 +1,290 @@
<template>
<div class="split-add-form">
<div class="split-add-form-wrapper">
<a-drawer
class="split-table-drawer"
title="新增条款"
placement="right"
:visible="visible"
:after-visible-change="afterVisibleChange"
@close="onClose"
width="1100"
>
<a-form>
<a-form-model
class="split-content"
:model="form"
:rules="validatorRules"
ref="splitEditForm"
:label-col="labelCol"
:wrapper-col="wrapperCol"
>
<a-row :gutter="24">
<a-col :span="12">
<a-form-model-item label="条款号" prop="number">
<a-input v-model="form.number" placeholder="请输入条款号" />
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="条款名称" prop="name">
<a-input v-model="form.name" placeholder="请输入条款名称" />
</a-form-model-item>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<a-form-model-item label="功能领域" prop="funArea">
<j-dict-select-tag type="list" v-model="form.funArea" dictCode="function_territory" placeholder="请选择功能领域" />
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="技术领域" prop="tecArea">
<j-dict-select-tag type="list" v-model="form.tecArea" dictCode="technology_territory" placeholder="请选择技术领域" />
</a-form-model-item>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<a-form-model-item label="信息类别" prop="infoType">
<j-dict-select-tag type="list" v-model="form.infoType" dictCode="xxx" placeholder="请选择信息类别" />
</a-form-model-item>
</a-col>
</a-row>
<span class="con-divider">内容简介</span>
<a-divider dashed />
<a-row :gutter="24" class="split-content" id="split-content" v-for="(item, index) in contentList" :key="item.id">
<div class="split-row">
<div class="row-left">
<a-textarea v-if="item.type=='TEXT'" v-model="item.textContent" placeholder="请输入内容" auto-size />
</div>
<div class="row-right">
<a-button class="row-btn-add" @click="splitAdd">增加</a-button>
<a-button @click="splitDelete">删除</a-button>
</div>
</div>
</a-row>
</a-form-model>
</a-form>
<div class="split-form-footer">
<a-button type="primary" class="footer-btn-save" @click="splitSave">保存</a-button>
<a-button type="primary" @click="splitCancel">取消</a-button>
</div>
<!-- 类型选择弹框-->
<a-modal
:title="Title"
class="split-title"
:visible="addConVisible"
:confirm-loading="confirmLoading"
@ok="handleOk"
@cancel="handleCancel"
>
<div class="title-wraper">
<div class="title-top">
<span class="title-flex title-text" :class="{'title-flex-active':selected==1}" @click="selectTitle(1)">文本</span>
<span class="title-flex title-pic" :class="{'title-flex-active':selected==2}" @click="selectTitle(2)">图片</span>
<span class="title-flex title-table" :class="{'title-flex-active':selected==3}" @click="selectTitle(3)">表格</span>
</div>
<div class="title-num" v-if="selectedNum">
<span class="title-num-add">添加数量</span>
<a-input-number class="title-num-edit" :min="1" v-model="textNumber" placeholder="请输入数据"></a-input-number>
</div>
</div>
</a-modal>
</a-drawer>
</div>
</div>
</template>
<script>
import Vue from 'vue'
export default {
name: 'splitAddForm',
data(){
return{
contentList:[
{
id:'001',
type:'TEXT',
textContent:'本标准规定了车辆正面碰撞时前排外侧座椅乘员保护方面的术语和定义、要求和试验方法。'
},
{
id:'002',
type:'TEXT',
textContent:'本标准适用于M1类汽车和最大设计总质量不大于2500kg的N1类汽车,以及多用途货车。'
}
],
content:{},
selected:1,
selectedNum:true,
textNumber:1,
Title:'新增',
confirmLoading: false,
labelCol: {
xs: { span: 24 },
sm: { span: 5 },
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 16 },
},
visible:false,
addConVisible:false,
form:{},
validatorRules:{
number:[
{ required:true,message: '请输入条款号',trigger: 'blur' }
],
name:[
{ required:true,message: '请输入条款名称',trigger: 'blur' }
]
}
}
},
props:{
addVisible:Boolean
},
watch:{
selected(val){
if(this.selected==1){
this.selectedNum=true
}else{
this.selectedNum=false
}
}
},
mounted() {
this.visible=this.addVisible
},
methods:{
afterVisibleChange(){
},
onClose(){
this.$emit('closeVisible',false)
},
//增加按钮
splitAdd(){
this.addConVisible=true
},
//删除按钮
splitDelete(){
},
//保存
splitSave(){
this.$refs.splitEditForm.validate(valid=>{
if(valid){
}
})
},
//取消
splitCancel(){
this.visible=false
this.$emit('closeVisible',false)
},
//确定增加的类型
handleOk(){
this.addConVisible=false
if(this.selected==1){
}
},
handleCancel(){
this.addConVisible=false
},
selectTitle(val){
this.selected=val
}
}
}
</script>
<style lang="less" scoped>
.split-add-form{
.split-add-form-wrapper{
}
}
.split-table-drawer{
.split-content{
.con-divider{
font-size: 16px;
font-weight: 500;
color: rgba(0, 0, 0, 0.85)
}
.split-row{
display: flex;
justify-content: space-between;
margin: 0 20px 20px;
.row-left{
flex: 1;
/*border:1px solid #9e9e9e;*/
}
.row-right{
min-width: 150px;
margin-left: 20px;
.row-btn-add{
margin-right: 20px;
}
}
}
}
.split-form-footer{
margin-top: 20px;
text-align: center;
.footer-btn-save{
margin-right: 20px;
}
}
}
.split-title{
.title-wraper {
.title-top {
display: flex;
justify-content: space-around;
.title-flex {
border: 1px solid #d9d9d9;
padding: 10px 40px;
cursor: pointer;
}
.title-flex-active {
background: #00B3BE;
border-color: #00B3BE;
color:#FFFFFF;
}
}
.title-num {
margin: 20px 20px 0;
line-height: 32px;
display: flex;
justify-content: start;
.title-num-add {
min-width: 70px;
}
.title-num-edit {
flex: 1;
}
}
}
}
</style>
<style lang="less">
.split-title{
.ant-modal-footer{
text-align: center;
}
}
</style>
@@ -47,7 +47,7 @@
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">{{$t('query')}}</a-button> <a-button type="primary" @click="searchQuery" icon="search">{{$t('query')}}</a-button>
<a-button @click="searchReset" icon="reload" style="margin-left: 8px">清空</a-button> <a-button @click="searchReset" icon="reload" style="margin-left: 8px">{{ $t('reset') }}</a-button>
</span> </span>
</a-col> </a-col>
</a-row> </a-row>
@@ -57,35 +57,35 @@
<div class="table-operator"> <div class="table-operator">
<div class="operator-text" @click="handleCopyManage"> <div class="operator-text" @click="handleCopyManage">
<a-icon type="copy" /> <a-icon type="copy" />
复制 {{ $t('copy') }}
</div> </div>
<div class="operator-text" @click="handleAddManage"> <div class="operator-text" @click="handleAddManage">
<a-icon type="plus" /> <a-icon type="plus" />
新增 {{ $t('add') }}
</div> </div>
<div class="operator-text" @click="handleImportManage"> <div class="operator-text" @click="handleImportManage">
<a-icon type="import" :rotate="-90" /> <a-icon type="import" :rotate="-90" />
导入 {{ $t('import') }}
</div> </div>
<div class="operator-text" @click="handleExportManage"> <div class="operator-text" @click="handleExportManage">
<a-icon type="export" :rotate="-90"/> <a-icon type="export" :rotate="-90"/>
导出 {{ $t('export') }}
</div> </div>
<div class="operator-text" @click="handleDownManage"> <div class="operator-text" @click="handleDownManage">
<a-icon type="download" /> <a-icon type="download" />
模板下载 {{ $t('TemplateDownload') }}
</div> </div>
<div class="operator-text" @click="handleMergeManage"> <div class="operator-text" @click="handleMergeManage">
<a-icon type="snippets" /> <a-icon type="snippets" />
合并条款 {{ $t('MergerClause') }}
</div> </div>
<div class="operator-text" @click="handleManage"> <div class="operator-text" @click="handleManage">
<a-icon type="setting" /> <a-icon type="setting" />
批量设置 {{ $t('BatchSetting') }}
</div> </div>
<div class="operator-text" @click="handleBatCancel"> <div class="operator-text" @click="handleBatCancel">
<a-icon type="delete" /> <a-icon type="delete" />
批量删除 {{ $t('BatchDelete') }}
</div> </div>
</div> </div>
<div class="split-detail-table"> <div class="split-detail-table">
@@ -110,15 +110,19 @@
</div> </div>
</div> </div>
</div> </div>
<splitAddForm v-if="addVisible" :addVisible="addVisible" @closeVisible="closeVisible"></splitAddForm>
</div> </div>
</a-card> </a-card>
</div> </div>
</template> </template>
<script> <script>
import splitAddForm from './splitAddForm'
export default { export default {
name: 'splitDetail', name: 'splitDetail',
components:{
splitAddForm
},
data() { data() {
return { return {
queryParams:{ queryParams:{
@@ -191,6 +195,7 @@
key: 'serialContent', key: 'serialContent',
align: "center", align: "center",
width: 200, width: 200,
ellipsis: true,
}, },
{ {
title: '功能领域', title: '功能领域',
@@ -215,7 +220,8 @@
align: "center", align: "center",
width: 80 width: 80
} }
] ],
addVisible:false
} }
}, },
mounted() { mounted() {
@@ -319,7 +325,10 @@
}, },
//新增 //新增
handleAddManage(){ handleAddManage(){
this.addVisible=true
},
closeVisible(val){
this.addVisible=val
}, },
//导入 //导入
handleImportManage(){ handleImportManage(){
@@ -28,7 +28,7 @@
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons"> <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">{{$t('query')}}</a-button> <a-button type="primary" @click="searchQuery" icon="search">{{$t('query')}}</a-button>
<a-button @click="searchReset" icon="reload" style="margin-left: 8px">清空</a-button> <a-button @click="searchReset" icon="reload" style="margin-left: 8px">{{ $t('reset') }}</a-button>
</span> </span>
</a-col> </a-col>
</a-row> </a-row>
@@ -39,11 +39,11 @@
<div class="table-operator"> <div class="table-operator">
<div class="operator-text" @click="handleBatManage"> <div class="operator-text" @click="handleBatManage">
<a-icon type="plus" /> <a-icon type="plus" />
订阅领域管理 {{ $t('SubscriptionManagement') }}
</div> </div>
<div class="operator-text" @click="handleBatCancel"> <div class="operator-text" @click="handleBatCancel">
<a-icon type="delete" /> <a-icon type="delete" />
批量取消 {{ $t('BatchCancellation') }}
</div> </div>
</div> </div>
<div class="colloction-table"> <div class="colloction-table">