修改文档拆分详情左侧树的弹框输入框大小

This commit is contained in:
高嵩
2022-11-04 17:31:50 +08:00
parent b785097622
commit c21936171c
@@ -1,12 +1,12 @@
<template> <template>
<div class='mainItem'> <div class="mainItem">
<div class="split-detail" @click="clearMenu" :style="'width:' + (fullWidth - 200) + 'px'"> <div class="split-detail" @click="clearMenu" :style="'width:' + (fullWidth - 200) + 'px'">
<a-card :bordered="false"> <a-card :bordered="false">
<div class="split-detail-wrap"> <div class="split-detail-wrap">
<div class="split-detail-left"> <div class="split-detail-left">
<div class="split-detail-left-tree"> <div class="split-detail-left-tree">
<a-input-search style="margin-bottom: 8px" :placeholder="$t('NodeQuickLookup')" @change="onLeftChange" <a-input-search style="margin-bottom: 8px" :placeholder="$t('NodeQuickLookup')" @change="onLeftChange"
@search="onSearch"/> @search="onSearch" />
<a-tree <a-tree
v-if="gData.length>0" v-if="gData.length>0"
:selected-keys="selectedKeys" :selected-keys="selectedKeys"
@@ -25,32 +25,36 @@
<span v-if="title.indexOf(searchValue) >= -1 && title.length <= 18" :title="title" <span v-if="title.indexOf(searchValue) >= -1 && title.length <= 18" :title="title"
class="expand-title"> class="expand-title">
{{ title.substr(0, title.indexOf(searchValue)) }}<span {{ title.substr(0, title.indexOf(searchValue)) }}<span
style="color: #f50">{{ searchValue }}</span>{{ title.substr(title.indexOf(searchValue) + searchValue.length) }} style="color: #f50">{{ searchValue
}}</span>{{ title.substr(title.indexOf(searchValue) + searchValue.length) }}
</span> </span>
<span <span
v-else-if="title.indexOf(searchValue) >= -1 && title.length > 18 && title.indexOf(searchValue)>18" v-else-if="title.indexOf(searchValue) >= -1 && title.length > 18 && title.indexOf(searchValue)>18"
:title="title"> :title="title">
{{title && title.length > 18?title.slice(0,17)+'...':title}} {{ title && title.length > 18 ? title.slice(0, 17) + '...' : title }}
</span> </span>
<span <span
v-else-if="title.indexOf(searchValue) >= -1 && title.length > 18 && title.indexOf(searchValue)<=18" v-else-if="title.indexOf(searchValue) >= -1 && title.length > 18 && title.indexOf(searchValue)<=18"
:title="title"> :title="title">
{{ title.substr(0, title.indexOf(searchValue)) }}<span style="color: #f50">{{ title.indexOf(searchValue)+searchValue.length>18?searchValue.substr(0,18-title.indexOf(searchValue)) : searchValue }}</span>{{ title.indexOf(searchValue)+searchValue.length>18?'...': title.substr(title.indexOf(searchValue) + searchValue.length,18-title.indexOf(searchValue) - searchValue.length)+'...' }} {{ title.substr(0, title.indexOf(searchValue)) }}<span
style="color: #f50">{{ title.indexOf(searchValue) + searchValue.length > 18 ? searchValue.substr(0, 18 - title.indexOf(searchValue)) : searchValue
}}</span>{{ title.indexOf(searchValue) + searchValue.length > 18 ? '...' : title.substr(title.indexOf(searchValue) + searchValue.length, 18 - title.indexOf(searchValue) - searchValue.length) + '...'
}}
</span> </span>
<span v-else :title="title"> <span v-else :title="title">
{{title && title.length > 18?title.slice(0,17)+'...':title}} {{ title && title.length > 18 ? title.slice(0, 17) + '...' : title }}
</span> </span>
<template #overlay> <template #overlay>
<a-menu v-if="$route.query.createBy == userData.username || administrators" <a-menu v-if="$route.query.createBy == userData.username || administrators"
@click="({ key: menuKey }) => onContextMenuClick(treeKey, menuKey, record)"> @click="({ key: menuKey }) => onContextMenuClick(treeKey, menuKey, record)">
<a-menu-item key="1" @click="orgAdd" v-has="'split:sarFileSplitMenu:add'">{{$t('newNode')}} <a-menu-item key="1" @click="orgAdd" v-has="'split:sarFileSplitMenu:add'">{{ $t('newNode') }}
</a-menu-item> </a-menu-item>
<a-menu-item key="2" @click="orgEdit" v-has="'split:sarFileSplitMenu:update'"> <a-menu-item key="2" @click="orgEdit" v-has="'split:sarFileSplitMenu:update'">
{{$t('modifyNode')}} {{ $t('modifyNode') }}
</a-menu-item> </a-menu-item>
<a-menu-item key="3" @click="orgDelete" v-if="deleteNode" <a-menu-item key="3" @click="orgDelete" v-if="deleteNode"
v-has="'split:sarFileSplitMenu:delete'">{{$t('deleteNode')}} v-has="'split:sarFileSplitMenu:delete'">{{ $t('deleteNode') }}
</a-menu-item> </a-menu-item>
</a-menu> </a-menu>
</template> </template>
@@ -63,26 +67,26 @@
<div class="split-detail-right-wraper"> <div class="split-detail-right-wraper">
<div class="split-detail-search-header"> <div class="split-detail-search-header">
<search :flag="'4'" :url="url" :infoId="$route.query.infoId" <search :flag="'4'" :url="url" :infoId="$route.query.infoId"
:menuId="menuId" @resetSearch="resetSearch" @queryParams="queryParamsValues"/> :menuId="menuId" @resetSearch="resetSearch" @queryParams="queryParamsValues" />
</div> </div>
<div class="table-operator"> <div class="table-operator">
<div class="operator-text" @click="handleCopyManage" <div class="operator-text" @click="handleCopyManage"
v-if="$route.query.createBy == userData.username || administrators" v-if="$route.query.createBy == userData.username || administrators"
v-has="'split:sarFileSplitItems:copy'"> v-has="'split:sarFileSplitItems:copy'">
<a-icon type="copy"/> <a-icon type="copy" />
{{ $t('copy') }} {{ $t('copy') }}
</div> </div>
<div class="operator-text" @click="handleAddManage" <div class="operator-text" @click="handleAddManage"
v-if="$route.query.createBy == userData.username || administrators" v-if="$route.query.createBy == userData.username || administrators"
v-has="'split:sarFileSplitItems:add'"> v-has="'split:sarFileSplitItems:add'">
<a-icon type="plus"/> <a-icon type="plus" />
{{ $t('add') }} {{ $t('add') }}
</div> </div>
<div class="operator-text upload-split" <div class="operator-text upload-split"
v-if="$route.query.createBy == userData.username || administrators" v-if="$route.query.createBy == userData.username || administrators"
@click="handleImportManage" v-has="'split:sarFileSplitItems:import'"> @click="handleImportManage" v-has="'split:sarFileSplitItems:import'">
<a-icon type="import" :rotate="-90" v-if="uploadMenuId===undefined||uploadMenuId===''"/> <a-icon type="import" :rotate="-90" v-if="uploadMenuId===undefined||uploadMenuId===''" />
{{ (uploadMenuId===''||uploadMenuId===undefined)? $t('import'):'' }} {{ (uploadMenuId === '' || uploadMenuId === undefined) ? $t('import') : '' }}
<upload v-if="menuId" ref="uploadSplit" :infoId="infoId" :menuId="uploadMenuId" <upload v-if="menuId" ref="uploadSplit" :infoId="infoId" :menuId="uploadMenuId"
@uploadSuccess="uploadSuccess"></upload> @uploadSuccess="uploadSuccess"></upload>
<!-- <ImportFile :url="url"/>--> <!-- <ImportFile :url="url"/>-->
@@ -90,31 +94,31 @@
</div> </div>
<div class="operator-text" @click="handleExportManage" <div class="operator-text" @click="handleExportManage"
v-has="'split:sarFileSplitItems:export'"> v-has="'split:sarFileSplitItems:export'">
<a-icon type="export" :rotate="-90"/> <a-icon type="export" :rotate="-90" />
{{ $t('export') }} {{ $t('export') }}
</div> </div>
<div class="operator-text" @click="handleDownManage" <div class="operator-text" @click="handleDownManage"
v-if="$route.query.createBy == userData.username || administrators" v-if="$route.query.createBy == userData.username || administrators"
v-has="'split:sarFileSplitItems:template'"> v-has="'split:sarFileSplitItems:template'">
<a-icon type="download"/> <a-icon type="download" />
{{ $t('TemplateDownload') }} {{ $t('TemplateDownload') }}
</div> </div>
<div class="operator-text" @click="handleMergeManage" <div class="operator-text" @click="handleMergeManage"
v-if="$route.query.createBy == userData.username || administrators" v-if="$route.query.createBy == userData.username || administrators"
v-has="'split:sarFileSplitItems:merge'"> v-has="'split:sarFileSplitItems:merge'">
<a-icon type="snippets"/> <a-icon type="snippets" />
{{ $t('MergerClause') }} {{ $t('MergerClause') }}
</div> </div>
<div class="operator-text" @click="handleManage" <div class="operator-text" @click="handleManage"
v-if="$route.query.createBy == userData.username || administrators" v-if="$route.query.createBy == userData.username || administrators"
v-has="'split:sarFileSplitItems:set'"> v-has="'split:sarFileSplitItems:set'">
<a-icon type="setting"/> <a-icon type="setting" />
{{ $t('BatchSetting') }} {{ $t('BatchSetting') }}
</div> </div>
<div class="operator-text" @click="handleBatCancel" <div class="operator-text" @click="handleBatCancel"
v-if="$route.query.createBy == userData.username || administrators" v-if="$route.query.createBy == userData.username || administrators"
v-has="'split:sarFileSplitItems:delete'"> v-has="'split:sarFileSplitItems:delete'">
<a-icon type="delete"/> <a-icon type="delete" />
{{ $t('BatchDelete') }} {{ $t('BatchDelete') }}
</div> </div>
</div> </div>
@@ -143,7 +147,7 @@
:footer="false" :footer="false"
@cancel="handleCancel" @cancel="handleCancel"
> >
<p v-html='contentValue'></p> <p v-html="contentValue"></p>
</a-modal> </a-modal>
<!-- 添加节点--> <!-- 添加节点-->
<a-modal <a-modal
@@ -164,17 +168,17 @@
:wrapper-col="wrapperCol" :wrapper-col="wrapperCol"
> >
<a-form-model-item :label="$t('clauseNo')" prop="name"> <a-form-model-item :label="$t('clauseNo')" prop="name">
<a-input class="box-input" v-model="form.name" :placeholder="$t('PleaseEnter')+$t('clauseNo')"/> <a-input class="box-input" v-model="form.name" :placeholder="$t('PleaseEnter')+$t('clauseNo')" />
</a-form-model-item> </a-form-model-item>
<a-form-model-item :label="$t('clauseName')" prop="itemName"> <a-form-model-item :label="$t('clauseName')" prop="itemName">
<a-input class="box-input" v-model="form.itemName" :placeholder="$t('PleaseEnter')+$t('clauseName')"/> <a-input class="box-input" v-model="form.itemName" :placeholder="$t('PleaseEnter')+$t('clauseName')" />
</a-form-model-item> </a-form-model-item>
<a-form-model-item :label="$t('serialNumber')" prop="displaySeq"> <a-form-model-item :label="$t('serialNumber')" prop="displaySeq">
<a-input-number v-model="form.displaySeq" :min="1" :max="99999" <a-input-number v-model="form.displaySeq" :min="1" :max="99999"
class="box-input" class="box-input"
:placeholder="$t('PleaseEnter')+$t('serialNumber')" :placeholder="$t('PleaseEnter')+$t('serialNumber')"
:formatter="limitNumber" :formatter="limitNumber"
:parser="limitNumber" style="width: 100%"/> :parser="limitNumber" style="width: 100%" />
<!-- <a-input-number v-model="rowCount" :min="1" :placeholder="$t('pleaseEnter')+$t('numberRows')" :formatter="limitNumber" :parser="limitNumber" />--> <!-- <a-input-number v-model="rowCount" :min="1" :placeholder="$t('pleaseEnter')+$t('numberRows')" :formatter="limitNumber" :parser="limitNumber" />-->
</a-form-model-item> </a-form-model-item>
</a-form-model> </a-form-model>
@@ -209,21 +213,21 @@
</template> </template>
<script> <script>
import { getAction, postAction, deleteAction, putAction, downloadFile } from '@/api/manage' import { getAction, postAction, deleteAction, putAction, downloadFile } from '@/api/manage'
import search from '@/components/SplitSearch/index' import search from '@/components/SplitSearch/index'
import TableData from '@/components/SplitDetailTable/index' import TableData from '@/components/SplitDetailTable/index'
// import upload from '@/components/uploadFile/file.vue' // import upload from '@/components/uploadFile/file.vue'
import SplitBatForm from '@/components/SplitBatForm/index' import SplitBatForm from '@/components/SplitBatForm/index'
import SplitAddForm from './SplitAddForm' import SplitAddForm from './SplitAddForm'
import upload from '@/components/SplitImport/index' import upload from '@/components/SplitImport/index'
import axios from 'axios' import axios from 'axios'
import { ACCESS_TOKEN } from '@/store/mutation-types' import { ACCESS_TOKEN } from '@/store/mutation-types'
import moment from 'moment' import moment from 'moment'
import eventBUs from '@/common/event' import eventBUs from '@/common/event'
import Vue from 'vue' import Vue from 'vue'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
export default { export default {
name: 'SplitDetail', name: 'SplitDetail',
components: { components: {
search, search,
@@ -358,7 +362,6 @@
// document.querySelector('.split-detail-left').style.height = this.brownHeight-iframeTop-24 + 'px' // document.querySelector('.split-detail-left').style.height = this.brownHeight-iframeTop-24 + 'px'
// }, false); // }, false);
this.userData = this.userInfo() this.userData = this.userInfo()
this.administrators = false this.administrators = false
if (this.userInfo().userRoleList && this.userInfo().userRoleList.length > 0) { if (this.userInfo().userRoleList && this.userInfo().userRoleList.length > 0) {
@@ -794,7 +797,6 @@
}) })
this.attId = attIdList.join(',') this.attId = attIdList.join(',')
// eventBUs.$emit('searchReset') // eventBUs.$emit('searchReset')
} }
}, },
@@ -959,7 +961,6 @@
console.log(error) console.log(error)
}) })
}, },
onCancel() { onCancel() {
} }
@@ -1028,7 +1029,6 @@
console.log(error) console.log(error)
}) })
// postAction(`split/sarFileSplitItems/batchDeleteItems`,params).then(res=> { // postAction(`split/sarFileSplitItems/batchDeleteItems`,params).then(res=> {
// if(res.success){ // if(res.success){
// this.$message.success(this.$t('OperationSuccessful')) // this.$message.success(this.$t('OperationSuccessful'))
@@ -1178,13 +1178,13 @@
beforeDestroy() { beforeDestroy() {
window.removeEventListener('resize', {}, false) window.removeEventListener('resize', {}, false)
} }
} }
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
@import '~@assets/less/common.less'; @import '~@assets/less/common.less';
.split-detail { .split-detail {
/*height: 100% !important;*/ /*height: 100% !important;*/
.split-detail-wrap { .split-detail-wrap {
@@ -1265,29 +1265,29 @@
margin-top: 20px; margin-top: 20px;
} }
} }
} }
/deep/ .ant-table-body { /deep/ .ant-table-body {
overflow: hidden !important; overflow: hidden !important;
} }
</style> </style>
<style lang="less"> <style lang="less">
.split-item { .split-item {
.ant-form-item-label { .ant-form-item-label {
min-width: 100px; min-width: 100px;
} }
} }
.add-menus { .add-menus {
.ant-modal-wrap { .ant-modal-wrap {
.ant-modal-footer { .ant-modal-footer {
text-align: center; text-align: center;
} }
} }
} }
.split-detail-right-wraper { .split-detail-right-wraper {
.table-page-search-submitButtons { .table-page-search-submitButtons {
.ant-col-md-6 { .ant-col-md-6 {
display: flex; display: flex;
@@ -1318,9 +1318,9 @@
margin-right: 3px !important; margin-right: 3px !important;
} }
} }
} }
.show-setting { .show-setting {
.ant-modal { .ant-modal {
min-width: 700px; min-width: 700px;
} }
@@ -1336,9 +1336,9 @@
.ant-modal-footer { .ant-modal-footer {
text-align: center; text-align: center;
} }
} }
.split-detail-left { .split-detail-left {
.ant-tree-node-content-wrapper-normal { .ant-tree-node-content-wrapper-normal {
@@ -1374,27 +1374,27 @@
} }
} }
} }
.show-setting .ant-modal-body { .show-setting .ant-modal-body {
max-height: 500px; max-height: 500px;
overflow-y: auto; overflow-y: auto;
} }
.split-detail-table { .split-detail-table {
.ant-table-body { .ant-table-body {
overflow: auto !important; overflow: auto !important;
} }
} }
.item-content-show { .item-content-show {
.wordImg { .wordImg {
width: 40px; width: 40px;
height: auto; height: auto;
} }
} }
@media screen and (min-width: 600px) and (max-width: 1600px) { @media screen and (min-width: 600px) and (max-width: 1600px) {
.operator-text { .operator-text {
margin-right: 20px !important; margin-right: 20px !important;
@@ -1409,14 +1409,18 @@
/*.mainItem {*/ /*.mainItem {*/
/* height: 500px;*/ /* height: 500px;*/
/*}*/ /*}*/
} }
@media screen and (min-width: 1600px) and (max-width: 2000px) { @media screen and (min-width: 1600px) and (max-width: 2000px) {
/*.split-detail .split-detail-wrap .split-detail-left {*/ /*.split-detail .split-detail-wrap .split-detail-left {*/
/* height: 735px !important;*/ /* height: 735px !important;*/
/*}*/ /*}*/
/*.mainItem {*/ /*.mainItem {*/
/* height: 800px !important;*/ /* height: 800px !important;*/
/*}*/ /*}*/
} }
.box-input {
height: 38px;
}
</style> </style>