修改全文对比得细节问题
This commit is contained in:
@@ -484,7 +484,7 @@ module.exports = {
|
|||||||
remarkInfo: 'Remarks Info',
|
remarkInfo: 'Remarks Info',
|
||||||
comparisonOfTerms: 'Comparison Of Terms',
|
comparisonOfTerms: 'Comparison Of Terms',
|
||||||
comparison: 'Comparison',
|
comparison: 'Comparison',
|
||||||
initiateDocumentComparison: 'Initiate Document Comparison',
|
initiateDocumentComparison: 'Full Text Comparison',
|
||||||
documentComparison: 'Doc Comparison',
|
documentComparison: 'Doc Comparison',
|
||||||
viewTheComparisonResults: 'View Results',
|
viewTheComparisonResults: 'View Results',
|
||||||
addFullTextComment: 'Full Text Comment',
|
addFullTextComment: 'Full Text Comment',
|
||||||
|
|||||||
@@ -496,7 +496,7 @@ module.exports = {
|
|||||||
remarkInfo: '备注信息',
|
remarkInfo: '备注信息',
|
||||||
comparisonOfTerms: '条款对比',
|
comparisonOfTerms: '条款对比',
|
||||||
comparison: '比对',
|
comparison: '比对',
|
||||||
initiateDocumentComparison: '发起文档对比',
|
initiateDocumentComparison: '全文对比',
|
||||||
documentComparison: '文档对比',
|
documentComparison: '文档对比',
|
||||||
viewTheComparisonResults: '查看对比结果',
|
viewTheComparisonResults: '查看对比结果',
|
||||||
addFullTextComment: '添加全文评论',
|
addFullTextComment: '添加全文评论',
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ export const constantRouterMap = [
|
|||||||
path: '/documentTool/DocumentDataComparison',
|
path: '/documentTool/DocumentDataComparison',
|
||||||
name: 'documentTool-DocumentDataComparison',
|
name: 'documentTool-DocumentDataComparison',
|
||||||
meta: {
|
meta: {
|
||||||
title: '新旧拆分单对比-文档对比'
|
title: '新旧拆分单对比-全文对比'
|
||||||
},
|
},
|
||||||
component: () => import(/* webpackChunkName: "user" */ '@/views/documentTool/documentComparison/DocumentDataComparison')
|
component: () => import(/* webpackChunkName: "user" */ '@/views/documentTool/documentComparison/DocumentDataComparison')
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -300,16 +300,14 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
if (item.releaseState === 'draft') {
|
|
||||||
item.isDisplay = 2
|
|
||||||
} else {
|
|
||||||
item.isDisplay = 1
|
|
||||||
}
|
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
path: '/documentTool/ComparisonResults',
|
path: '/documentTool/DocumentDataComparison',
|
||||||
query: {
|
query: {
|
||||||
id: item.id,
|
id: item.id,
|
||||||
isDisplay: item.isDisplay
|
infoNameLeft: item.titleLeft,
|
||||||
|
infoNumberLeft: item.serialNumberLeft,
|
||||||
|
infoNameRight: item.titleRight,
|
||||||
|
infoNumberRight: item.serialNumberRight
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,39 +1,21 @@
|
|||||||
<template>
|
<template>
|
||||||
<internal-detail-page :title="$t('docTool.comparison.documentComparison')"
|
<internal-detail-page :title="$t('docTool.comparison.initiateDocumentComparison')"
|
||||||
:content-padding="0"
|
:content-padding="0"
|
||||||
:loading="loading"
|
:loading="loading"
|
||||||
need-custom-back-func
|
need-custom-back-func
|
||||||
@back="handleBack">
|
@back="handleBack">
|
||||||
<template v-slot:titleRightCustom>
|
|
||||||
<!--查看比对结果-->
|
|
||||||
<a-button class="header-btn"
|
|
||||||
type="primary"
|
|
||||||
icon="eye"
|
|
||||||
ghost
|
|
||||||
@click="viewTheComparisonResultsClick">
|
|
||||||
{{ $t('docTool.comparison.viewTheComparisonResults') }}
|
|
||||||
</a-button>
|
|
||||||
<!--添加全文评论-->
|
|
||||||
<a-button class="header-btn"
|
|
||||||
type="primary"
|
|
||||||
icon="message"
|
|
||||||
ghost
|
|
||||||
@click="addFullTextCommentClick">
|
|
||||||
{{ $t('docTool.comparison.addFullTextComment') }}
|
|
||||||
</a-button>
|
|
||||||
<!--关闭/打开自动匹配-->
|
|
||||||
<a-button class="header-btn"
|
|
||||||
type="primary"
|
|
||||||
:icon="isMatching?'close-circle':'check-circle'"
|
|
||||||
ghost
|
|
||||||
@click="turnOffAutomaticMatchingClick">
|
|
||||||
{{ isMatching ? $t('docTool.comparison.turnOffAutomaticMatching') : $t('docTool.comparison.turnOnAutoMatch') }}
|
|
||||||
</a-button>
|
|
||||||
</template>
|
|
||||||
<div class="can-scroll-content">
|
<div class="can-scroll-content">
|
||||||
<div class="detail-content">
|
<div class="detail-content">
|
||||||
<!--左边的文档-->
|
<!--左边的文档-->
|
||||||
<div class="detail-content-left">
|
<div class="detail-content-left">
|
||||||
|
<div class="detail-content-left-title">
|
||||||
|
<a-tooltip placement="topLeft">
|
||||||
|
<template #title>
|
||||||
|
<span>{{ $route.query.infoNumberLeft }} {{ $route.query.infoNameLeft }}</span>
|
||||||
|
</template>
|
||||||
|
<span>{{ $route.query.infoNumberLeft }} {{ $route.query.infoNameLeft }}</span>
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
<!--左边的目录-->
|
<!--左边的目录-->
|
||||||
<div class="standard-catalogue part-common" :class="{'hide-catalogue': !leftCatalogueShow}">
|
<div class="standard-catalogue part-common" :class="{'hide-catalogue': !leftCatalogueShow}">
|
||||||
<div class="catalogue-show" @click="changeLeftCatalogueShow">
|
<div class="catalogue-show" @click="changeLeftCatalogueShow">
|
||||||
@@ -80,6 +62,14 @@
|
|||||||
</div>
|
</div>
|
||||||
<!--右侧文档-->
|
<!--右侧文档-->
|
||||||
<div class="detail-content-right">
|
<div class="detail-content-right">
|
||||||
|
<div class="detail-content-right-title">
|
||||||
|
<a-tooltip placement="topLeft">
|
||||||
|
<template #title>
|
||||||
|
<span>{{ $route.query.infoNumberRight }} {{ $route.query.infoNameRight }}</span>
|
||||||
|
</template>
|
||||||
|
<span>{{ $route.query.infoNumberRight }} {{ $route.query.infoNameRight }}</span>
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
<!--右侧目录-->
|
<!--右侧目录-->
|
||||||
<div class="standard-catalogue part-common" :class="{'hide-catalogue': !rightCatalogueShow}">
|
<div class="standard-catalogue part-common" :class="{'hide-catalogue': !rightCatalogueShow}">
|
||||||
<div class="catalogue-show" @click="changeRightCatalogueShow">
|
<div class="catalogue-show" @click="changeRightCatalogueShow">
|
||||||
@@ -126,49 +116,19 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="remarks">
|
|
||||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
|
||||||
<div class="box-title-text-remarks">
|
|
||||||
<div class="title-text-remarks" :title="$t('docTool.comparison.comparisonOfArticles')" style="width: 84px">
|
|
||||||
<span>{{ $t('docTool.comparison.comparisonOfArticles') }}</span>
|
|
||||||
</div>
|
|
||||||
<a-form-model-item class="item-model" prop="comment">
|
|
||||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('docTool.comparison.comparisonOfArticles')"
|
|
||||||
v-model="formInline.comment"
|
|
||||||
:maxLength="500"
|
|
||||||
:rows="3" />
|
|
||||||
</a-form-model-item>
|
|
||||||
</div>
|
|
||||||
</a-form-model>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="submit-button">
|
|
||||||
<!--一致-->
|
|
||||||
<a-button style="margin-right: 10px"
|
|
||||||
type="primary"
|
|
||||||
@click="consistentAssessmentClick">
|
|
||||||
{{ $t('docTool.comparison.consistentAssessment') }}
|
|
||||||
</a-button>
|
|
||||||
<!--保存-->
|
|
||||||
<a-button type="primary" @click="submit">{{ $t('preservation') }}</a-button>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!--全文评论-->
|
|
||||||
<comparison-add-full-comment ref="comparisonAddFullComment" />
|
|
||||||
</internal-detail-page>
|
</internal-detail-page>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// 添加全文评论弹框
|
// 添加全文评论弹框
|
||||||
import ComparisonAddFullComment from './modules/ComparisonAddFullComment.vue'
|
|
||||||
import InternalDetailPage from '../../../components/InternalDetailPage.vue'
|
import InternalDetailPage from '../../../components/InternalDetailPage.vue'
|
||||||
import { docComparsionConsistentAndSave, getComparisonDetail, clauseComparison } from '../../../api/documentToolApi.js'
|
import { getComparisonDetail, clauseComparison } from '../../../api/documentToolApi.js'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'DocumentDataComparison',
|
name: 'DocumentDataComparison',
|
||||||
components: { ComparisonAddFullComment, InternalDetailPage },
|
components: { InternalDetailPage },
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
formInline: {},
|
formInline: {},
|
||||||
@@ -192,98 +152,6 @@ export default {
|
|||||||
this.getData()
|
this.getData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 文档对比的一致按钮点击
|
|
||||||
consistentAssessmentClick () {
|
|
||||||
if (!this.dataLeft.id && !this.dataRight.id) {
|
|
||||||
this.$message.warning(this.$t('docTool.comparison.pleaseSelectTheDataCompared'))
|
|
||||||
return
|
|
||||||
}
|
|
||||||
const query = {
|
|
||||||
itemsIdLeft: this.dataLeft.id,
|
|
||||||
itemsIdRight: this.dataRight.id,
|
|
||||||
infoId: this.$route.query.id,
|
|
||||||
comment: '一致'
|
|
||||||
}
|
|
||||||
this.loading = true
|
|
||||||
docComparsionConsistentAndSave(query).then((res) => {
|
|
||||||
if (res.success) {
|
|
||||||
this.$message.success(res.message)
|
|
||||||
this.formInline = {}
|
|
||||||
// 保存之后会有一个淡蓝色的边框
|
|
||||||
if (this.leftHighlightMenuId === this.dataLeft.menuId) {
|
|
||||||
this.leftHighlightMenuId = null
|
|
||||||
}
|
|
||||||
if (this.rightHighlightMenuId === this.dataRight.menuId) {
|
|
||||||
this.rightHighlightMenuId = null
|
|
||||||
}
|
|
||||||
this.resultData.textRight.forEach(val => {
|
|
||||||
if (val.id === this.dataRight.id) {
|
|
||||||
val.reviewed = '1'
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.resultData.textLeft.forEach(val => {
|
|
||||||
if (val.id === this.dataLeft.id) {
|
|
||||||
val.reviewed = '1'
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.resultData = { ...this.resultData }
|
|
||||||
this.dataLeft = {}
|
|
||||||
this.dataRight = {}
|
|
||||||
} else {
|
|
||||||
this.$message.warning(res.message)
|
|
||||||
}
|
|
||||||
}).finally(() => {
|
|
||||||
this.loading = false
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 文档对比的保存按钮点击
|
|
||||||
submit () {
|
|
||||||
if (!this.dataLeft.id && !this.dataRight.id) {
|
|
||||||
this.$message.warning(this.$t('docTool.comparison.pleaseSelectTheDataCompared'))
|
|
||||||
return
|
|
||||||
}
|
|
||||||
this.$refs.ruleForm.validate(valid => {
|
|
||||||
if (valid) {
|
|
||||||
const query = {
|
|
||||||
itemsIdLeft: this.dataLeft.id,
|
|
||||||
itemsIdRight: this.dataRight.id,
|
|
||||||
infoId: this.$route.query.id,
|
|
||||||
comment: this.formInline.comment
|
|
||||||
}
|
|
||||||
this.loading = true
|
|
||||||
docComparsionConsistentAndSave(query).then((res) => {
|
|
||||||
if (res.success) {
|
|
||||||
this.$message.success(res.message)
|
|
||||||
this.formInline = {}
|
|
||||||
// 保存之后会有一个淡蓝色的边框
|
|
||||||
if (this.leftHighlightMenuId === this.dataLeft.menuId) {
|
|
||||||
this.leftHighlightMenuId = null
|
|
||||||
}
|
|
||||||
if (this.rightHighlightMenuId === this.dataRight.menuId) {
|
|
||||||
this.rightHighlightMenuId = null
|
|
||||||
}
|
|
||||||
this.resultData.textRight.forEach(val => {
|
|
||||||
if (val.id === this.dataRight.id) {
|
|
||||||
val.reviewed = '1'
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.resultData.textLeft.forEach(val => {
|
|
||||||
if (val.id === this.dataLeft.id) {
|
|
||||||
val.reviewed = '1'
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.resultData = { ...this.resultData }
|
|
||||||
this.dataLeft = {}
|
|
||||||
this.dataRight = {}
|
|
||||||
} else {
|
|
||||||
this.$message.warning(res.message)
|
|
||||||
}
|
|
||||||
}).finally(() => {
|
|
||||||
this.loading = false
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 查看对比结果按钮点击
|
// 查看对比结果按钮点击
|
||||||
viewTheComparisonResultsClick () {
|
viewTheComparisonResultsClick () {
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
@@ -294,17 +162,6 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 添加全文评论按钮点击
|
|
||||||
addFullTextCommentClick () {
|
|
||||||
const query = {
|
|
||||||
id: this.$route.query.id
|
|
||||||
}
|
|
||||||
getComparisonDetail(query).then((res) => {
|
|
||||||
if (res.success) {
|
|
||||||
this.$refs.comparisonAddFullComment.open(res.result.comments || '')
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 关闭自动匹配、开启自动匹配
|
// 关闭自动匹配、开启自动匹配
|
||||||
turnOffAutomaticMatchingClick () {
|
turnOffAutomaticMatchingClick () {
|
||||||
this.isMatching = !this.isMatching
|
this.isMatching = !this.isMatching
|
||||||
@@ -415,7 +272,6 @@ export default {
|
|||||||
},
|
},
|
||||||
// 右侧树选中
|
// 右侧树选中
|
||||||
onSelectRight (selectedKeys, exports) {
|
onSelectRight (selectedKeys, exports) {
|
||||||
debugger
|
|
||||||
const node = exports.node.$vnode.data.props.dataRef
|
const node = exports.node.$vnode.data.props.dataRef
|
||||||
const index = this.resultData.textRight.findIndex(tt => tt.menuId === node.menuId)
|
const index = this.resultData.textRight.findIndex(tt => tt.menuId === node.menuId)
|
||||||
this.dataRight = this.resultData.textRight[index]
|
this.dataRight = this.resultData.textRight[index]
|
||||||
@@ -443,7 +299,7 @@ export default {
|
|||||||
if (index > -1) {
|
if (index > -1) {
|
||||||
const scrollContent = document.getElementsByClassName('detail-content-left-scroll')
|
const scrollContent = document.getElementsByClassName('detail-content-left-scroll')
|
||||||
const clauseItemDom = document.getElementsByClassName('detail-content-left-item')
|
const clauseItemDom = document.getElementsByClassName('detail-content-left-item')
|
||||||
scrollContent[0].scrollTop = clauseItemDom[index].offsetTop - 150
|
scrollContent[0].scrollTop = clauseItemDom[index].offsetTop - 175
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
@@ -453,7 +309,7 @@ export default {
|
|||||||
if (index > -1) {
|
if (index > -1) {
|
||||||
const detailContent = document.getElementsByClassName('detail-content-right-scroll')
|
const detailContent = document.getElementsByClassName('detail-content-right-scroll')
|
||||||
const detailRight = document.getElementsByClassName('detail-content-right-item')
|
const detailRight = document.getElementsByClassName('detail-content-right-item')
|
||||||
detailContent[0].scrollTop = detailRight[index].offsetTop - 150
|
detailContent[0].scrollTop = detailRight[index].offsetTop - 175
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleBack () {
|
handleBack () {
|
||||||
@@ -472,285 +328,327 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="less">
|
<style scoped lang="less">
|
||||||
.header-btn {
|
.header-btn {
|
||||||
margin-left: 12px;
|
margin-left: 12px;
|
||||||
}
|
|
||||||
|
|
||||||
.header-btn:first-child {
|
|
||||||
margin-left: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.can-scroll-content {
|
|
||||||
height: calc(100% - 52px);
|
|
||||||
overflow: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content {
|
|
||||||
height: calc(100% - 131px);
|
|
||||||
background-color: #eff1f4;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-left {
|
|
||||||
width: 50%;
|
|
||||||
float: left;
|
|
||||||
height: 100%;
|
|
||||||
border-right: 2px #EFF1F3 solid;
|
|
||||||
box-sizing: border-box;
|
|
||||||
border-bottom: 2px #EFF1F3 solid;
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-right {
|
|
||||||
width: 50%;
|
|
||||||
height: 100%;
|
|
||||||
float: left;
|
|
||||||
box-sizing: border-box;
|
|
||||||
border-bottom: 2px #EFF1F3 solid;
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-left-header {
|
|
||||||
width: 100%;
|
|
||||||
font-size: 16px;
|
|
||||||
font-family: Blue Sky Noto;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #040B29;
|
|
||||||
margin-bottom: 24px;
|
|
||||||
white-space: nowrap;
|
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
}
|
|
||||||
|
|
||||||
.box-title-text-remarks {
|
|
||||||
line-height: 1.4;
|
|
||||||
display: flex;
|
|
||||||
/*align-items: center;*/
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.item-model {
|
|
||||||
width: calc(100% - 232px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.title-text-remarks {
|
|
||||||
width: 68px;
|
|
||||||
color: #000F16;
|
|
||||||
display: inline-block;
|
|
||||||
font-weight: 500;
|
|
||||||
font-size: 14px;
|
|
||||||
margin-right: 16px;
|
|
||||||
margin-top: 6px;
|
|
||||||
text-align: right;
|
|
||||||
white-space: nowrap;
|
|
||||||
overflow: hidden;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
}
|
|
||||||
|
|
||||||
.box-button {
|
|
||||||
height: 38px;
|
|
||||||
/*margin-top: 2px;*/
|
|
||||||
}
|
|
||||||
|
|
||||||
.remarks {
|
|
||||||
margin-top: 20px;
|
|
||||||
width: 50%;
|
|
||||||
display: inline-block;
|
|
||||||
padding: 0 32px;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
.itemModel {
|
|
||||||
width: calc(100% - 232px);
|
|
||||||
}
|
|
||||||
|
|
||||||
.submit-button {
|
|
||||||
height: 52px;
|
|
||||||
text-align: right;
|
|
||||||
padding: 10px 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-left-container {
|
|
||||||
height: 100%;
|
|
||||||
overflow-y: auto;
|
|
||||||
transition: all 1s;
|
|
||||||
scroll-behavior: smooth;
|
|
||||||
flex: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-right-container {
|
|
||||||
height: 100%;
|
|
||||||
overflow-y: auto;
|
|
||||||
transition: all 1s;
|
|
||||||
scroll-behavior: smooth;
|
|
||||||
flex: 1;
|
|
||||||
|
|
||||||
.standard-name {
|
|
||||||
margin-right: 0;
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-left-scroll {
|
.header-btn:first-child {
|
||||||
height: calc(100% - 25px - 40px);
|
margin-left: 0;
|
||||||
width: calc(100% - 20px);
|
}
|
||||||
display: inline-block;
|
|
||||||
margin: 0 10px 0 10px;
|
|
||||||
overflow: auto;
|
|
||||||
background-color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-right-scroll {
|
.can-scroll-content {
|
||||||
height: calc(100% - 25px - 40px);
|
height: 100%;
|
||||||
width: calc(100% - 10px);
|
overflow: auto;
|
||||||
display: inline-block;
|
}
|
||||||
margin-left: 10px;
|
|
||||||
overflow: auto;
|
|
||||||
background-color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-left-item {
|
.detail-content {
|
||||||
padding: 16px 20px;
|
height: 100%;
|
||||||
box-sizing: border-box;
|
background-color: #eff1f4;
|
||||||
border: 1px solid #EFF1F3;
|
}
|
||||||
cursor: pointer;
|
|
||||||
background-color: white;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-right-item {
|
.detail-content-left {
|
||||||
padding: 16px 20px;
|
width: 50%;
|
||||||
box-sizing: border-box;
|
float: left;
|
||||||
border: 1px solid #EFF1F3;
|
height: 100%;
|
||||||
cursor: pointer;
|
border-right: 2px #EFF1F3 solid;
|
||||||
background-color: white;
|
box-sizing: border-box;
|
||||||
}
|
border-bottom: 2px #EFF1F3 solid;
|
||||||
|
/*display: flex;*/
|
||||||
|
}
|
||||||
|
|
||||||
.detail-content-left-item:last-child {
|
.detail-content-right {
|
||||||
margin-bottom: 0;
|
width: 50%;
|
||||||
}
|
height: 100%;
|
||||||
|
float: left;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border-bottom: 2px #EFF1F3 solid;
|
||||||
|
/*display: flex;*/
|
||||||
|
}
|
||||||
|
|
||||||
.detail-content-item-text {
|
.detail-content-left-header {
|
||||||
font-size: 16px;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #040B29;
|
|
||||||
word-break: break-word;
|
|
||||||
|
|
||||||
/deep/ table {
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
font-size: 16px;
|
||||||
|
font-family: Blue Sky Noto;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #040B29;
|
||||||
|
margin-bottom: 24px;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
|
|
||||||
/deep/ img {
|
.box-title-text-remarks {
|
||||||
max-width: 100%;
|
line-height: 1.4;
|
||||||
}
|
display: flex;
|
||||||
}
|
/*align-items: center;*/
|
||||||
|
margin-bottom: 10px;
|
||||||
.detail-content-item-selected {
|
|
||||||
border: 2px red solid !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.detail-content-item-saved {
|
|
||||||
border: 2px #21c9cc solid;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
::v-deep .delClass {
|
|
||||||
color: #ff7168;
|
|
||||||
}
|
|
||||||
|
|
||||||
::v-deep .insertClass {
|
|
||||||
color: green;
|
|
||||||
}
|
|
||||||
|
|
||||||
/deep/ .ant-tree li span.ant-tree-switcher {
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
::-webkit-scrollbar {
|
|
||||||
width: 3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.part-common {
|
|
||||||
border-radius: 8px;
|
|
||||||
background: #FFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
.standard-catalogue {
|
|
||||||
height: calc(100% - 20px);
|
|
||||||
width: 200px;
|
|
||||||
margin: 10px 10px 10px 0;
|
|
||||||
position: relative;
|
|
||||||
transition: width .2s linear;
|
|
||||||
|
|
||||||
/deep/ .ant-tree li .ant-tree-node-content-wrapper.ant-tree-node-selected {
|
|
||||||
background-color: transparent !important;
|
|
||||||
color: @primary-color;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.catalogue-show {
|
.item-model {
|
||||||
position: absolute;
|
width: calc(100% - 232px);
|
||||||
width: 12px;
|
}
|
||||||
height: 24px;
|
|
||||||
left: 100%;
|
|
||||||
top: 50%;
|
|
||||||
transform: translateY(-50%);
|
|
||||||
background-color: @primary-color;
|
|
||||||
border-radius: 0 12px 12px 0;
|
|
||||||
cursor: pointer;
|
|
||||||
color: white;
|
|
||||||
|
|
||||||
.anticon {
|
.title-text-remarks {
|
||||||
left: -2px;
|
width: 68px;
|
||||||
position: absolute;
|
color: #000F16;
|
||||||
top: 50%;
|
display: inline-block;
|
||||||
transform: translateY(-50%);
|
font-weight: 500;
|
||||||
|
font-size: 14px;
|
||||||
|
margin-right: 16px;
|
||||||
|
margin-top: 6px;
|
||||||
|
text-align: right;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
}
|
||||||
|
|
||||||
|
.box-button {
|
||||||
|
height: 38px;
|
||||||
|
/*margin-top: 2px;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
.remarks {
|
||||||
|
margin-top: 20px;
|
||||||
|
width: 50%;
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0 32px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.itemModel {
|
||||||
|
width: calc(100% - 232px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.submit-button {
|
||||||
|
height: 52px;
|
||||||
|
text-align: right;
|
||||||
|
padding: 10px 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.detail-content-left-container {
|
||||||
|
height: calc(100% - 65px);
|
||||||
|
width: calc(100% - 201px);
|
||||||
|
display: inline-block;
|
||||||
|
overflow-y: auto;
|
||||||
|
transition: all 1s;
|
||||||
|
border-radius: 4px;
|
||||||
|
scroll-behavior: smooth;
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.detail-content-right-container {
|
||||||
|
height: calc(100% - 65px);
|
||||||
|
width: calc(100% - 201px);
|
||||||
|
overflow-y: auto;
|
||||||
|
display: inline-block;
|
||||||
|
transition: all 1s;
|
||||||
|
scroll-behavior: smooth;
|
||||||
|
flex: 1;
|
||||||
|
|
||||||
|
.standard-name {
|
||||||
|
margin-right: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
.hide-catalogue {
|
.detail-content-left-scroll {
|
||||||
width: 0;
|
height: calc(100% - 25px - 40px);
|
||||||
min-width: 0;
|
width: calc(100% - 20px);
|
||||||
}
|
display: inline-block;
|
||||||
|
margin: 0 10px 0 10px;
|
||||||
|
overflow: auto;
|
||||||
|
background-color: white;
|
||||||
|
border-radius: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
.part-title {
|
.detail-content-right-scroll {
|
||||||
height: 40px;
|
height: calc(100% - 25px - 40px);
|
||||||
background: rgba(213, 44, 38, 0.12);
|
width: calc(100% - 10px);
|
||||||
border-radius: 8px 8px 0 0;
|
display: inline-block;
|
||||||
line-height: 40px;
|
margin-left: 10px;
|
||||||
padding: 0 24px;
|
overflow: auto;
|
||||||
font-size: 16px;
|
border-radius: 7px;
|
||||||
font-family: PingFang SC-Semibold, PingFang SC, sans-serif;
|
background-color: white;
|
||||||
font-weight: 600;
|
}
|
||||||
color: #1D2129;
|
|
||||||
white-space: nowrap;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.has-title-part-content {
|
.detail-content-left-item {
|
||||||
height: calc(100% - 40px);
|
padding: 16px 20px;
|
||||||
overflow: auto;
|
box-sizing: border-box;
|
||||||
padding: 0 20px;
|
border: 1px solid #EFF1F3;
|
||||||
}
|
cursor: pointer;
|
||||||
|
background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
.standard-name {
|
.detail-content-right-item {
|
||||||
margin: 10px 10px 5px 10px;
|
padding: 16px 20px;
|
||||||
height: 40px;
|
box-sizing: border-box;
|
||||||
background: #FFFFFF;
|
border: 1px solid #EFF1F3;
|
||||||
border-radius: 8px;
|
cursor: pointer;
|
||||||
display: flex;
|
background-color: white;
|
||||||
align-items: center;
|
}
|
||||||
justify-content: space-between;
|
|
||||||
padding: 0 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.standard-name > span {
|
.detail-content-left-item:last-child {
|
||||||
font-size: 16px;
|
margin-bottom: 0;
|
||||||
font-family: PingFang SC-Semibold, PingFang SC, sans-serif;
|
}
|
||||||
font-weight: 600;
|
|
||||||
color: #1D2129;
|
.detail-content-item-text {
|
||||||
flex: 1;
|
font-size: 16px;
|
||||||
width: 0;
|
font-weight: 400;
|
||||||
white-space: nowrap;
|
color: #040B29;
|
||||||
overflow: hidden;
|
word-break: break-word;
|
||||||
text-overflow: ellipsis;
|
|
||||||
cursor: pointer;
|
/deep/ table {
|
||||||
}
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/deep/ img {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.detail-content-item-selected {
|
||||||
|
border: 2px red solid !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.detail-content-item-saved {
|
||||||
|
border: 2px #21c9cc solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
::v-deep .delClass {
|
||||||
|
color: #ff7168;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .insertClass {
|
||||||
|
color: green;
|
||||||
|
}
|
||||||
|
|
||||||
|
/deep/ .ant-tree li span.ant-tree-switcher {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-scrollbar {
|
||||||
|
width: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.part-common {
|
||||||
|
border-radius: 8px;
|
||||||
|
background: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.standard-catalogue {
|
||||||
|
height: calc(100% - 83px);
|
||||||
|
width: 200px;
|
||||||
|
overflow: auto;
|
||||||
|
display: inline-block;
|
||||||
|
margin: 10px 0 10px 0;
|
||||||
|
position: relative;
|
||||||
|
transition: width .2s linear;
|
||||||
|
|
||||||
|
/deep/ .ant-tree li .ant-tree-node-content-wrapper.ant-tree-node-selected {
|
||||||
|
background-color: transparent !important;
|
||||||
|
color: @primary-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
.catalogue-show {
|
||||||
|
position: absolute;
|
||||||
|
width: 12px;
|
||||||
|
height: 24px;
|
||||||
|
left: 100%;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
background-color: @primary-color;
|
||||||
|
border-radius: 0 12px 12px 0;
|
||||||
|
cursor: pointer;
|
||||||
|
color: white;
|
||||||
|
|
||||||
|
.anticon {
|
||||||
|
left: -2px;
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
transform: translateY(-50%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.hide-catalogue {
|
||||||
|
width: 0;
|
||||||
|
min-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.part-title {
|
||||||
|
height: 40px;
|
||||||
|
background: rgba(213, 44, 38, 0.12);
|
||||||
|
border-radius: 8px 8px 0 0;
|
||||||
|
line-height: 40px;
|
||||||
|
padding: 0 24px;
|
||||||
|
font-size: 16px;
|
||||||
|
font-family: PingFang SC-Semibold, PingFang SC, sans-serif;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #1D2129;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.has-title-part-content {
|
||||||
|
height: calc(100% - 40px);
|
||||||
|
overflow: auto;
|
||||||
|
padding: 0 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.standard-name {
|
||||||
|
margin: 10px 10px 5px 10px;
|
||||||
|
height: 40px;
|
||||||
|
background: #FFFFFF;
|
||||||
|
border-radius: 8px;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
padding: 0 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.standard-name > span {
|
||||||
|
font-size: 16px;
|
||||||
|
font-family: PingFang SC-Semibold, PingFang SC, sans-serif;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #1D2129;
|
||||||
|
flex: 1;
|
||||||
|
width: 0;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.detail-content-left-title {
|
||||||
|
height: 50px;
|
||||||
|
width: calc(100% - 12px);
|
||||||
|
background: #fff;
|
||||||
|
margin-top: 8px;
|
||||||
|
border-radius: 4px;
|
||||||
|
line-height: 50px;
|
||||||
|
padding: 0 10px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFang SC-Semibold, PingFang SC, sans-serif;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #1D2129;
|
||||||
|
}
|
||||||
|
.detail-content-right-title{
|
||||||
|
height: 50px;
|
||||||
|
width: calc(100% - 2px);
|
||||||
|
background: #fff;
|
||||||
|
margin-top: 8px;
|
||||||
|
border-radius: 4px;
|
||||||
|
line-height: 50px;
|
||||||
|
padding: 0 10px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
font-size: 14px;
|
||||||
|
font-family: PingFang SC-Semibold, PingFang SC, sans-serif;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #1D2129;
|
||||||
|
}
|
||||||
|
.detail-content-button{
|
||||||
|
text-align: right;
|
||||||
|
padding-right: 16px;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
:can-drag="true"
|
:can-drag="true"
|
||||||
:loading="loadingLeft"
|
:loading="loadingLeft"
|
||||||
:pagination="false"
|
:pagination="false"
|
||||||
:scroll="{x: '100%',y:340}"
|
:scroll="{x: '100%',y:'calc(100vh - 400px)'}"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
:data-source="dataSourceLeft"
|
:data-source="dataSourceLeft"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeysLeft, onChange: onSelectChangeLeft, columnTitle:' ', type: 'radio'}"
|
:row-selection="{ selectedRowKeys: selectedRowKeysLeft, onChange: onSelectChangeLeft, columnTitle:' ', type: 'radio'}"
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
:can-drag="true"
|
:can-drag="true"
|
||||||
:loading="loadingRight"
|
:loading="loadingRight"
|
||||||
:pagination="false"
|
:pagination="false"
|
||||||
:scroll="{x: '100%',y:340}"
|
:scroll="{x: '100%',y:'calc(100vh - 400px)'}"
|
||||||
rowKey="id"
|
rowKey="id"
|
||||||
:data-source="dataSourceRight"
|
:data-source="dataSourceRight"
|
||||||
:row-selection="{ selectedRowKeys: selectedRowKeysRight, onChange: onSelectChangeRight, columnTitle:' ', type: 'radio'}"
|
:row-selection="{ selectedRowKeys: selectedRowKeysRight, onChange: onSelectChangeRight, columnTitle:' ', type: 'radio'}"
|
||||||
@@ -112,21 +112,21 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="remarks">
|
<!-- <div class="remarks">-->
|
||||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
<!-- <a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">-->
|
||||||
<div class="box-title-text-remarks">
|
<!-- <div class="box-title-text-remarks">-->
|
||||||
<div class="title-text-remarks" :title="$t('docTool.comparison.remarkInfo')">
|
<!-- <div class="title-text-remarks" :title="$t('docTool.comparison.remarkInfo')">-->
|
||||||
<span>{{ $t('docTool.comparison.remarkInfo') }}</span>
|
<!-- <span>{{ $t('docTool.comparison.remarkInfo') }}</span>-->
|
||||||
</div>
|
<!-- </div>-->
|
||||||
<a-form-model-item class="item-model" prop="remark">
|
<!-- <a-form-model-item class="item-model" prop="remark">-->
|
||||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('docTool.comparison.remarkInfo')"
|
<!-- <a-textarea :placeholder="$t('pleaseEnter')+$t('docTool.comparison.remarkInfo')"-->
|
||||||
:maxLength="500"
|
<!-- :maxLength="500"-->
|
||||||
v-model="formInline.remark"
|
<!-- v-model="formInline.remark"-->
|
||||||
:rows="4" />
|
<!-- :rows="4" />-->
|
||||||
</a-form-model-item>
|
<!-- </a-form-model-item>-->
|
||||||
</div>
|
<!-- </div>-->
|
||||||
</a-form-model>
|
<!-- </a-form-model>-->
|
||||||
</div>
|
<!-- </div>-->
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="box-button">
|
<div class="box-button">
|
||||||
@@ -346,55 +346,55 @@ export default {
|
|||||||
this.$message.warning(this.$t('docTool.comparison.pleaseSelectTheDataCompared'))
|
this.$message.warning(this.$t('docTool.comparison.pleaseSelectTheDataCompared'))
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
this.$refs.ruleForm.validate(valid => {
|
this.loading = true
|
||||||
if (valid) {
|
const query = {
|
||||||
this.loading = true
|
leftStandard: this.selectedRowsLeft[0].id,
|
||||||
const query = {
|
rightStandard: this.selectedRowsRight[0].id,
|
||||||
leftStandard: this.selectedRowsLeft[0].id,
|
remark: this.formInline.remark
|
||||||
rightStandard: this.selectedRowsRight[0].id,
|
}
|
||||||
remark: this.formInline.remark
|
if (type === 'comparisonOfTerms') {
|
||||||
}
|
submitItemComparison(query).then((res) => {
|
||||||
if (type === 'comparisonOfTerms') {
|
if (res.success) {
|
||||||
submitItemComparison(query).then((res) => {
|
this.loading = false
|
||||||
if (res.success) {
|
this.$message.success(this.$t('operationSuccessful'))
|
||||||
this.loading = false
|
this.$router.push({
|
||||||
this.$message.success(this.$t('operationSuccessful'))
|
path: '/documentTool/comparisonOfTerms',
|
||||||
this.$router.push({
|
query: {
|
||||||
path: '/documentTool/comparisonOfTerms',
|
id: res.result,
|
||||||
query: {
|
infoIdLeft: this.selectedRowsLeft[0].id,
|
||||||
id: res.result,
|
infoNameLeft: this.selectedRowsLeft[0].title,
|
||||||
infoIdLeft: this.selectedRowsLeft[0].id,
|
infoNumberLeft: this.selectedRowsLeft[0].serialNumber,
|
||||||
infoNameLeft: this.selectedRowsLeft[0].title,
|
infoIdRight: this.selectedRowsRight[0].id,
|
||||||
infoNumberLeft: this.selectedRowsLeft[0].serialNumber,
|
infoNameRight: this.selectedRowsRight[0].title,
|
||||||
infoIdRight: this.selectedRowsRight[0].id,
|
infoNumberRight: this.selectedRowsRight[0].serialNumber
|
||||||
infoNameRight: this.selectedRowsRight[0].title,
|
|
||||||
infoNumberRight: this.selectedRowsRight[0].serialNumber,
|
|
||||||
}
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
this.loading = false
|
|
||||||
this.$message.warning(res.message)
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
submitInitComparsion(query).then((res) => {
|
this.loading = false
|
||||||
if (res.success) {
|
this.$message.warning(res.message)
|
||||||
this.loading = false
|
}
|
||||||
this.$message.success(this.$t('operationSuccessful'))
|
})
|
||||||
this.$router.push({
|
} else {
|
||||||
path: '/documentTool/DocumentDataComparison',
|
submitInitComparsion(query).then((res) => {
|
||||||
query: {
|
if (res.success) {
|
||||||
id: res.result
|
this.loading = false
|
||||||
}
|
this.$message.success(this.$t('operationSuccessful'))
|
||||||
})
|
this.$router.push({
|
||||||
} else {
|
path: '/documentTool/DocumentDataComparison',
|
||||||
this.loading = false
|
query: {
|
||||||
this.$message.warning(res.message)
|
id: res.result,
|
||||||
|
infoNameLeft: this.selectedRowsLeft[0].title,
|
||||||
|
infoNumberLeft: this.selectedRowsLeft[0].serialNumber,
|
||||||
|
infoNameRight: this.selectedRowsRight[0].title,
|
||||||
|
infoNumberRight: this.selectedRowsRight[0].serialNumber
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
} else {
|
||||||
|
this.loading = false
|
||||||
|
this.$message.warning(res.message)
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
})
|
}
|
||||||
},
|
},
|
||||||
getListLeft () {
|
getListLeft () {
|
||||||
const queryParam = JSON.parse(JSON.stringify(this.queryParamLeft))
|
const queryParam = JSON.parse(JSON.stringify(this.queryParamLeft))
|
||||||
@@ -498,8 +498,8 @@ export default {
|
|||||||
|
|
||||||
.detail-content-box {
|
.detail-content-box {
|
||||||
display: flex;
|
display: flex;
|
||||||
height: calc(100% - 152px);
|
height: calc(100% - 12px);
|
||||||
min-height: calc(340px + 46px + 40px + 72px + 48px);
|
/*min-height: calc(340px + 46px + 40px + 72px + 48px);*/
|
||||||
}
|
}
|
||||||
|
|
||||||
.detail-content-left {
|
.detail-content-left {
|
||||||
|
|||||||
Reference in New Issue
Block a user