对接文档对比

This commit is contained in:
qq787203167
2022-08-05 14:33:46 +08:00
parent 63ef236d3c
commit ff0068715e
3 changed files with 106 additions and 28 deletions
@@ -20,7 +20,7 @@
</div>
<div class="comment-box" v-if="dataList && dataList.length > 0">
<div class="comment-box-top-box" v-for="(item,index) in dataList" :key="index">
<!-- <div class="title-text">{{$t('record')+(index + 1)}}</div>-->
<!-- <div class="title-text">{{$t('record')+(index + 1)}}</div>-->
<div class="box-content">
<div class="img-box">
<img src="../../../../assets/daiban.png" class="img" alt="">
@@ -112,8 +112,8 @@
confirmLoading: false,
visibleComment: false,
url: {
list: '/project/projectCommentEO/list',
add: '/project/projectCommentEO/add',
list: '/compare/sarFileCompareResComment/list',
add: '/sarFileCompareResComment/add',
edit: '/project/projectReplyEO/add'
},
rules: {
@@ -387,7 +387,7 @@
}
</style>
<style>
.box-input-search .ant-input-suffix .ant-input-search-icon{
.box-input-search .ant-input-suffix .ant-input-search-icon {
display: none;
}
</style>
@@ -28,14 +28,14 @@
style="margin-left: 20px;float: left"></a-checkbox>
<div class="detail-content-header-content">
<div class="detail-content-header-content-left"
:class="{'detail-content-header-content-left-active':$route.query.isDisplay}">
:class="{'detail-content-header-content-left-active':isDisplay}">
所选标准:GB 23456-2020 机动车标准 FMVSS 114 中文.word
</div>
<div class="detail-content-header-content-content"
:class="{'detail-content-header-content-left-active':$route.query.isDisplay}">
:class="{'detail-content-header-content-left-active':isDisplay}">
所选标准:GB 23456-2020 机动车标准 FMVSS 114 中文.word
</div>
<div class="detail-content-header-content-right" v-if="!$route.query.isDisplay">
<div class="detail-content-header-content-right" v-if="!isDisplay">
操作
</div>
</div>
@@ -47,7 +47,7 @@
</a-checkbox>
<div class="detail-content-content-text">
<div class="detail-content-content-text-left"
:class="{'detail-content-content-text-dis':$route.query.isDisplay}">
:class="{'detail-content-content-text-dis':isDisplay}">
<div class="detail-content-left">
<div class="detail-content-left-top">
<span>第10条</span>
@@ -77,7 +77,7 @@
</div>
</div>
</div>
<div class="detail-content-content-text-right" v-if="!$route.query.isDisplay">
<div class="detail-content-content-text-right" v-if="!isDisplay">
<span class="text-button-one">
<a class="text-button" @click="comparaEdit">{{$t('edit')}}</a>
<a class="text-button" @click="comparaDelete">{{$t('delete')}}</a>
@@ -91,7 +91,7 @@
</a-checkbox>
<div class="detail-content-content-text">
<div class="detail-content-content-text-left"
:class="{'detail-content-content-text-dis':this.$route.query.isDisplay}">
:class="{'detail-content-content-text-dis':isDisplay}">
<div class="detail-content-content-text-left-text">
{{$t('fullTextComments')}}: 文字占位符评论文字内容文字占位符评论文
字内容文字占位符评论文字内容文字
@@ -110,7 +110,7 @@
占位符评论文字内容文字占位符评论文字内容文字占
</div>
</div>
<div class="detail-content-content-text-right" v-if="!this.$route.query.isDisplay">
<div class="detail-content-content-text-right" v-if="!isDisplay">
<span class="text-button-one">
<a class="text-button" @click="fullTextEdit">{{$t('edit')}}</a>
<!-- <a class="text-button">{{$t('delete')}}</a>-->
@@ -184,9 +184,18 @@
rulesText: {},
title: '',
indeterminate: false,
checkAll: false
checkAll: false,
isDisplay: false
}
},
mounted() {
if (this.$route.query.isDisplay == 2) {
this.isDisplay = false
} else {
this.isDisplay = true
}
this.getData()
},
methods: {
Fallback() {
this.$router.push({
@@ -198,6 +207,16 @@
},
exportComparisonReportClick() {
},
getData() {
let query = {
id: this.$route.query.id
}
getAction('/compare/sarFileCompareItemComment/list', query).then((res) => {
if (res.success) {
}
})
},
checkboxChange(checkedList) {
this.indeterminate = !!checkedList.length && checkedList.length < this.checkboxList.length
@@ -76,7 +76,7 @@
<div class="detail-content-content-right-right">
<div class="detail-content-content-right-data-right" @click="detailRight(index,item)"
v-for="(item,index) in resultData.textRight"
:class="{'detail-content-content-right-data-blue-right':true}">
:class="{'detail-content-content-right-data-blue-right':false}">
<div class="detail-content-content-right-data-text" style="margin-bottom: 10px;color: #040B29">
{{item.itemsNum + ' ' + item.itemsName}}
</div>
@@ -93,9 +93,9 @@
<div class="title-text-Remarks" :title="$t('comparativeComments')">
<span>{{$t('comparativeComments')}}</span>
</div>
<a-form-model-item class="itemModel" prop="dreUserIdName">
<a-form-model-item class="itemModel" prop="comment">
<a-textarea :placeholder="$t('pleaseEnter')+$t('comparativeComments')"
v-model="formInline.RemarkInfo"
v-model="formInline.comment"
:rows="4"/>
</a-form-model-item>
</div>
@@ -119,7 +119,7 @@
<a-button type="primary" @click="fullTextCommentsEdit">
{{$t('edit')}}
</a-button>
<a-button type="primary" @click="fullTextCommentsSubmit">
<a-button type="primary" :confirm-loading="confirmLoading" @click="fullTextCommentsSubmit">
{{$t('submit')}}
</a-button>
</template>
@@ -128,16 +128,16 @@
<div class="title-text-Remarks" :title="$t('fullTextComments')">
<span>{{$t('fullTextComments')}}</span>
</div>
<a-form-model-item class="itemModel" style="width: calc(100% - 113px)" prop="fullTextComments">
<a-form-model-item class="itemModel" style="width: calc(100% - 113px)" prop="comment">
<a-textarea :placeholder="$t('pleaseEnter')+$t('fullTextComments')"
v-model="formInlineText.fullTextComments"
v-model="formInlineText.comment"
:disabled="fullTextDisabled"
:rows="4"/>
</a-form-model-item>
</div>
</a-form-model>
</a-modal>
<JLoading :loading="loading">{{$t('dataLoading')}}</JLoading>
<JLoading :loading="loading">{{dataLoadingText}}</JLoading>
</div>
</template>
@@ -150,8 +150,18 @@
return {
formInline: {},
formInlineText: {},
dataLoadingText: '',
rules: {
fullTextComments: [
comment: [
{
max: 300,
message: this.$t('comparativeComments') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
]
},
rulesText: {
comment: [
{
max: 300,
message: this.$t('fullTextComments') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
@@ -159,7 +169,6 @@
}
]
},
rulesText: {},
loading: false,
visible: false,
confirmLoading: false,
@@ -186,13 +195,36 @@
}
this.$refs.ruleForm.validate(valid => {
if (valid) {
let query = {
itemsIdLeft: this.dataLeft.id,
itemsIdRight: this.dataRight.id,
infoId: this.$route.query.id,
comment: this.formInline.comment
}
this.dataLoadingText = this.$t('pleaseWaitWhileRunning')
this.loading = true
postAction('/compare/sarFileCompareItemComment/add', query).then((res) => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.loading = false
// this.$router.push({
// path: '/documentComparison'
// })
} else {
this.$message.warning(this.$t('operationFailed'))
this.loading = false
}
})
}
})
},
viewTheComparisonResultsClick() {
let newUrl = this.$router.resolve({
path: '/comparisonResults'
path: '/comparisonResults',
query: {
id: this.$route.query.id,
isDisplay: 2
}
})
window.open(newUrl.href, '_blank')
},
@@ -208,12 +240,31 @@
this.fullTextDisabled = false
},
fullTextCommentsSubmit() {
this.$refs.ruleFormText.validate(valid => {
if (valid) {
this.confirmLoading = true
let query = {
infoId: this.$route.query.id,
comment: this.formInlineText.comment
}
postAction('/compare/sarFileCompareItemComment/add', query).then((res) => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.confirmLoading = false
this.fullTextDisabled = false
} else {
this.$message.warning(this.$t('operationFailed'))
this.confirmLoading = false
}
})
}
})
},
getData() {
let query = {
id: this.$route.query.id
}
this.dataLoadingText = this.$t('dataLoading')
this.loading = true
postAction('/compare/sarFileCompareInfo/getComparisonDetail', query).then((res) => {
if (res.success) {
@@ -231,6 +282,10 @@
if (detailLeftColor && detailLeftColor.length > 0) {
detailLeftColor[0].classList.remove('detail-content-content-right-data-color')
}
if (item.id == this.dataLeft.id && !this.isMatching) {
this.dataLeft = {}
return
}
let detailLeft = document.getElementsByClassName('detail-content-content-right-data')
if (detailLeft && detailLeft.length > 0) {
detailLeft[num].classList.add('detail-content-content-right-data-color')
@@ -243,10 +298,10 @@
}
let detailContent = document.getElementsByClassName('detail-content-content-right-right-top')
let detailRight = document.getElementsByClassName('detail-content-content-right-data-right')
this.dataRight = this.resultData.textRight[item.itemsDisplayNum - 1]
this.dataRight = this.resultData.textRight[item.targetStand - 1]
if (detailRight && detailRight.length > 0) {
detailRight[item.itemsDisplayNum - 1].classList.add('detail-content-content-right-data-color-right')
detailContent[0].scrollTop = detailRight[item.itemsDisplayNum - 1].offsetTop - 150
detailContent[0].scrollTop = detailRight[item.targetStand - 1].offsetTop - 150
}
}
},
@@ -255,6 +310,10 @@
if (detailRightColor && detailRightColor.length > 0) {
detailRightColor[0].classList.remove('detail-content-content-right-data-color-right')
}
if (item.id == this.dataRight.id && !this.isMatching) {
this.dataRight = {}
return
}
let detailRight = document.getElementsByClassName('detail-content-content-right-data-right')
if (detailRight && detailRight.length > 0) {
detailRight[num].classList.add('detail-content-content-right-data-color-right')
@@ -265,12 +324,12 @@
if (detailLeftColor && detailLeftColor.length > 0) {
detailLeftColor[0].classList.remove('detail-content-content-right-data-color')
}
this.dataLeft = this.resultData.textLeft[item.itemsDisplayNum - 1]
this.dataLeft = this.resultData.textLeft[item.targetStand - 1]
let detailContent = document.getElementsByClassName('detail-content-content-right-top')
let detailLeft = document.getElementsByClassName('detail-content-content-right-data')
if (detailLeft && detailLeft.length > 0) {
detailLeft[item.itemsDisplayNum - 1].classList.add('detail-content-content-right-data-color')
detailContent[0].scrollTop = detailLeft[item.itemsDisplayNum - 1].offsetTop - 150
detailContent[0].scrollTop = detailLeft[item.targetStand - 1].offsetTop - 150
}
}
},