|
|
|
@ -118,7 +118,7 @@
|
|
|
|
|
<span class="robot-message-item">
|
|
|
|
|
{{ message.answer }}
|
|
|
|
|
</span>
|
|
|
|
|
<div v-if="message.askFlag && message.intentType" class="btns">
|
|
|
|
|
<div v-if="message.askFlag && message.intentType && message.intentType!=='0'" class="btns">
|
|
|
|
|
<div class="btn-item" @click="selectAskItem(message,'是')">是</div>
|
|
|
|
|
<div class="btn-item" @click="selectAskItem(message,'否')">否</div>
|
|
|
|
|
</div>
|
|
|
|
@ -131,15 +131,15 @@
|
|
|
|
|
<div v-if="message.segmentList && message.segmentList.length > 0 && message.showFlag" class="collapse-content">
|
|
|
|
|
<div class="title">涉及文件:</div>
|
|
|
|
|
<div v-for="(item, index) in message.segmentList" :key="index" class="record-item">
|
|
|
|
|
<span style="color: #333333;" class="file-name ">{{ item.name }}</span>
|
|
|
|
|
<span style="color: #333333;cursor: unset;" class="file-name ">{{ item.name }}</span>
|
|
|
|
|
<span v-html="item.snippet" />
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- 指标询问选项 -->
|
|
|
|
|
<div v-if="message.adviceList && message.askFlag " class="option-list">
|
|
|
|
|
<span v-for="(item, index) in message.adviceList" :key="index" class="option-item" @click="selectAskIndex(message,item)">
|
|
|
|
|
<span class="name">{{ item }}</span>
|
|
|
|
|
<span v-for="(item, index) in message.adviceList" :key="index" class="option-item" @click="selectAskIndex(message,item.indexName)">
|
|
|
|
|
<span class="name">{{ `${item.indexType} ${item.indexType?'|':''} ${item.indexName}` }}</span>
|
|
|
|
|
<i class="el-icon-arrow-right" />
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
@ -175,6 +175,7 @@
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
<el-input
|
|
|
|
|
ref="myInput"
|
|
|
|
|
v-model="searchName"
|
|
|
|
|
maxlength="50"
|
|
|
|
|
class="top-input"
|
|
|
|
@ -267,6 +268,10 @@ export default {
|
|
|
|
|
this.indexFlag = true
|
|
|
|
|
this.activedIndex = '1'
|
|
|
|
|
this.getIndexData('1')
|
|
|
|
|
this.$nextTick(() => {
|
|
|
|
|
const inputElement = this.$refs.myInput.$el.querySelector('input')
|
|
|
|
|
inputElement.focus()
|
|
|
|
|
})
|
|
|
|
|
} else {
|
|
|
|
|
this.indexFlag = false
|
|
|
|
|
}
|
|
|
|
@ -384,7 +389,7 @@ export default {
|
|
|
|
|
// 选择询问指标
|
|
|
|
|
selectAskIndex(item, name) {
|
|
|
|
|
this.$set(item, 'askFlag', false)
|
|
|
|
|
this.selectIndex(name)
|
|
|
|
|
this.selectIndex(name, name === '以上都不是' ? 'none' : '', item.dialogueCount)
|
|
|
|
|
},
|
|
|
|
|
// 选择是否
|
|
|
|
|
selectAskItem(item, val) {
|
|
|
|
@ -407,7 +412,7 @@ export default {
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 选择指标
|
|
|
|
|
selectIndex(name) {
|
|
|
|
|
selectIndex(name, val, dialogueCount) {
|
|
|
|
|
if (this.loading) return
|
|
|
|
|
this.indexFlag = false
|
|
|
|
|
this.searchName = ''
|
|
|
|
@ -419,9 +424,10 @@ export default {
|
|
|
|
|
this.chat({
|
|
|
|
|
caseId: this.caseId,
|
|
|
|
|
query: name,
|
|
|
|
|
dialogueCount,
|
|
|
|
|
conversationId: this.conversationId,
|
|
|
|
|
type: '1',
|
|
|
|
|
intentType: '0'
|
|
|
|
|
type: val === 'none' ? '0' : '1',
|
|
|
|
|
intentType: val === 'none' ? '' : '0'
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
chat(obj) {
|
|
|
|
@ -506,14 +512,10 @@ export default {
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.$nextTick(() => {
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
this.loading = false
|
|
|
|
|
}, 2000)
|
|
|
|
|
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
this.loading = false
|
|
|
|
|
this.scrollToBottom()
|
|
|
|
|
})
|
|
|
|
|
}, 2000)
|
|
|
|
|
},
|
|
|
|
|
// 获取指标类型名称
|
|
|
|
|
getIndexType(val) {
|
|
|
|
@ -536,8 +538,10 @@ export default {
|
|
|
|
|
// if (scrollbar) {
|
|
|
|
|
// scrollbar.wrap.scrollTo(0, scrollbar.wrap.scrollHeight)
|
|
|
|
|
// }
|
|
|
|
|
const div = this.$refs.scrollbar
|
|
|
|
|
div.scrollTop = div.scrollHeight
|
|
|
|
|
this.$nextTick(() => {
|
|
|
|
|
const div = this.$refs.scrollbar
|
|
|
|
|
div.scrollTop = div.scrollHeight
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 滚动
|
|
|
|
|
handleScroll(event) {
|
|
|
|
@ -546,7 +550,7 @@ export default {
|
|
|
|
|
const scrollHeight = this.$refs.scrollbar.scrollHeight // 内容总高度
|
|
|
|
|
// 计算滚动条底部的距离
|
|
|
|
|
this.distanceToBottom = scrollHeight - (scrollTop + clientHeight)
|
|
|
|
|
if (this.distanceToBottom > 0) {
|
|
|
|
|
if (this.distanceToBottom > 2) {
|
|
|
|
|
this.isShowDownIcon = true
|
|
|
|
|
} else {
|
|
|
|
|
this.isShowDownIcon = false
|
|
|
|
@ -572,8 +576,9 @@ export default {
|
|
|
|
|
caseId: this.caseId,
|
|
|
|
|
query: this.sendText,
|
|
|
|
|
conversationId: this.conversationId,
|
|
|
|
|
dialogueCount: this.conversationList.length > 2 ? this.conversationList[this.conversationList.length - 2].dialogueCount : '',
|
|
|
|
|
type: '0',
|
|
|
|
|
intentType: ''
|
|
|
|
|
intentType: this.conversationList.length > 2 ? this.conversationList[this.conversationList.length - 2].intentType : ''
|
|
|
|
|
})
|
|
|
|
|
this.sendText = ''
|
|
|
|
|
}
|
|
|
|
@ -585,13 +590,14 @@ export default {
|
|
|
|
|
background: #FFFFFF;
|
|
|
|
|
height: 100%;
|
|
|
|
|
position: relative;
|
|
|
|
|
padding-top: 24px;
|
|
|
|
|
// padding-top: 24px;
|
|
|
|
|
display: flex;
|
|
|
|
|
.PoliceAi-main {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
align-items: center;
|
|
|
|
|
flex: 1;
|
|
|
|
|
padding-top: 24px;
|
|
|
|
|
.case-title {
|
|
|
|
|
width: 632px;
|
|
|
|
|
height: 98px;
|
|
|
|
@ -680,7 +686,7 @@ export default {
|
|
|
|
|
line-height: 28px;font-size: 16px;
|
|
|
|
|
color: #333333;
|
|
|
|
|
padding: 16px;
|
|
|
|
|
width: 90%;
|
|
|
|
|
// width: 90%;
|
|
|
|
|
margin-bottom: 16px;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
@ -759,7 +765,7 @@ export default {
|
|
|
|
|
padding: 16px;
|
|
|
|
|
background: #F6F7F9;
|
|
|
|
|
border-radius: 6px 6px 6px 6px;
|
|
|
|
|
width: 90%;
|
|
|
|
|
// width: 90%;
|
|
|
|
|
.title {
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
color: #333333;
|
|
|
|
@ -927,6 +933,7 @@ export default {
|
|
|
|
|
padding-left: 24px;
|
|
|
|
|
height: 260px;
|
|
|
|
|
.index-list-item {
|
|
|
|
|
padding-left: 8px;
|
|
|
|
|
font-weight: 400;
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
color: #333333;
|
|
|
|
|