|
|
|
@ -1,8 +1,8 @@
|
|
|
|
|
<template>
|
|
|
|
|
<div class="PoliceAi">
|
|
|
|
|
<HistoricalRecords ref="HistoricalRecordsRef" @getDetail="getDetail" @addNew="addNew" />
|
|
|
|
|
<HistoricalRecords v-if="caseOptions.length > 0" ref="HistoricalRecordsRef" @getDetail="getDetail" @addNew="addNew" />
|
|
|
|
|
<div class="PoliceAi-main">
|
|
|
|
|
<div class="case-title">
|
|
|
|
|
<div v-if="!conversationId" class="case-title">
|
|
|
|
|
<div class="case-item">
|
|
|
|
|
<span>案件名称</span>
|
|
|
|
|
<span>|</span>
|
|
|
|
@ -13,12 +13,12 @@
|
|
|
|
|
</div>
|
|
|
|
|
<el-input v-model="caseActorName" class="case-input" readonly placeholder="行为人" />
|
|
|
|
|
</div>
|
|
|
|
|
<el-scrollbar ref="scrollbar" :style="{marginTop:firstEnter?'110px':'0px'}" class="main-content" @scroll="handleScroll">
|
|
|
|
|
<div ref="scrollbar" :style="{marginTop:!conversationId?'110px':'0px'}" class="main-content" @scroll="handleScroll">
|
|
|
|
|
|
|
|
|
|
<div class="robot">
|
|
|
|
|
<div class="robot-top">
|
|
|
|
|
<img src="../../assets/police/robot.png" alt="">
|
|
|
|
|
<span>数字民警</span>
|
|
|
|
|
<span>伏小羲</span>
|
|
|
|
|
</div>
|
|
|
|
|
<span class="robot-item">
|
|
|
|
|
你好,本数字民警可为您提供案件分析结果查询服务,您还能通过输入 @来选取特定罪与非罪指标结果,以便精准获取您所需信息。
|
|
|
|
@ -48,80 +48,87 @@
|
|
|
|
|
<div v-if="message.role === 'robot'" class="robot">
|
|
|
|
|
<div class="robot-top">
|
|
|
|
|
<img src="../../assets/police/robot.png" alt="">
|
|
|
|
|
<span>数字民警</span>
|
|
|
|
|
<span>伏小羲</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="index !== conversationList.length -1 || !loading">
|
|
|
|
|
<!-- 案件分析结果 -->
|
|
|
|
|
<div v-if="message.intentType === '1'" class="robot-item">
|
|
|
|
|
<span>您好,【<span>{{ message.caseName }}</span> 】的综合得分为<span :class="['score', message.totalScore >= 70 ? 'success' : 'warning']">{{ `${message.commonScore}+${message.specificCrimeScore}=${message.totalScore}` }}</span>
|
|
|
|
|
分, 认定<span :class="['score', message.totalScore >= 70 ? 'success' : 'warning']">{{ message.scoreDesc }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
<span class="robot-message-item">
|
|
|
|
|
<span class="point" />
|
|
|
|
|
<span>{{ `${message.commonIndexCount}个共性证据指标占${message.commonIndexHitCount}个` }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
<span class="robot-message-item">
|
|
|
|
|
<span class="point" />
|
|
|
|
|
<span>{{ `${message.specificCrimeIndexCount}个${message.specificCrime}占${message.specificCrimeIndexHitCount}个` }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- 案件概述 案件证据指引 -->
|
|
|
|
|
<div v-if="message.intentType === '2' || message.intentType === '3'" class="robot-item">
|
|
|
|
|
<span class="robot-message-item">
|
|
|
|
|
{{ message.text }}
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- 指标回答 -->
|
|
|
|
|
<div v-if="message.intentType === '0'">
|
|
|
|
|
<div class="robot-item index-content">
|
|
|
|
|
<span class="index-item">
|
|
|
|
|
<span class="label">指标类型:</span>
|
|
|
|
|
<span class="value">{{ getIndexType(message.indexType) }}</span>
|
|
|
|
|
<!-- 不询问 -->
|
|
|
|
|
<div v-if="message.dialogueCount !== 1 ">
|
|
|
|
|
<!-- 案件分析结果 -->
|
|
|
|
|
<div v-if="message.intentType === '1'" class="robot-item">
|
|
|
|
|
<span>您好,【<span>{{ message.caseName }}</span> 】的综合得分为<span :class="['score', message.totalScore >= 70 ? 'success' : 'warning']">{{ `${message.commonScore}+${message.specificCrimeScore}=${message.totalScore}` }}</span>
|
|
|
|
|
分, 认定<span :class="['score', message.totalScore >= 70 ? 'success' : 'warning']">{{ message.scoreDesc }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
<span class="index-item">
|
|
|
|
|
<span class="label">指标名称:</span>
|
|
|
|
|
<span class="value">{{ message.indexName }}</span>
|
|
|
|
|
<span class="robot-message-item">
|
|
|
|
|
<span class="point" />
|
|
|
|
|
<span>{{ `${message.commonIndexCount}个共性证据指标占${message.commonIndexHitCount}个` }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
<span class="index-item">
|
|
|
|
|
<span class="label">分析结果:</span>
|
|
|
|
|
<span class="value">{{ message.result }}</span>
|
|
|
|
|
<span class="robot-message-item">
|
|
|
|
|
<span class="point" />
|
|
|
|
|
<span>{{ `${message.specificCrimeIndexCount}个${message.specificCrime}占${message.specificCrimeIndexHitCount}个` }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="message.qaSplitList.length > 0 || message.evidenceNames.length > 0" class="collapse" @click="changeShowFlag(message)">
|
|
|
|
|
<span>相关笔录及证据</span>
|
|
|
|
|
<i v-if="!message.showFlag" class="el-icon-arrow-down" />
|
|
|
|
|
<i v-if="message.showFlag" class="el-icon-arrow-up" />
|
|
|
|
|
<!-- 案件概述 案件证据指引 -->
|
|
|
|
|
<div v-if="message.intentType === '2' || message.intentType === '3'" class="robot-item">
|
|
|
|
|
<span class="robot-message-item">
|
|
|
|
|
{{ message.text }}
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="message.showFlag" class="collapse-content">
|
|
|
|
|
<div v-if="message.qaSplitList.length > 0" class="title">涉及笔录:</div>
|
|
|
|
|
<div v-for="(item, index) in message.qaSplitList" :key="index" class="record-item">
|
|
|
|
|
<span class="file-name" @click="downloadRecord(item)">{{ item.noteName }}</span>
|
|
|
|
|
<span>{{ item.answer }}</span>
|
|
|
|
|
<span>{{ item.question }}</span>
|
|
|
|
|
<!-- 指标回答 -->
|
|
|
|
|
<div v-if="message.intentType === '0'">
|
|
|
|
|
<div class="robot-item index-content">
|
|
|
|
|
<span class="index-item">
|
|
|
|
|
<span class="label">指标类型:</span>
|
|
|
|
|
<span :title="getIndexType(message.indexType)" class="value">{{ getIndexType(message.indexType) }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
<span class="index-item">
|
|
|
|
|
<span class="label">指标名称:</span>
|
|
|
|
|
<span class="value">{{ message.indexName }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
<span class="index-item">
|
|
|
|
|
<span class="label">分析结果:</span>
|
|
|
|
|
<span class="value">{{ message.result }}</span>
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="message.evidenceNames.length > 0" class="title">证据:</div>
|
|
|
|
|
<div class="evidence-list">
|
|
|
|
|
<div v-for="(item, index) in message.evidenceNames" :key="index" class="evidence-item">
|
|
|
|
|
<span class="file-name" @click="downloadEvidence(item)">{{ item.evidenceName }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="message.qaSplitList.length > 0 || message.evidenceNames.length > 0" class="collapse" @click="changeShowFlag(message)">
|
|
|
|
|
<span>相关笔录及证据</span>
|
|
|
|
|
<i v-if="!message.showFlag" class="el-icon-arrow-down" />
|
|
|
|
|
<i v-if="message.showFlag" class="el-icon-arrow-up" />
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="message.showFlag" class="collapse-content">
|
|
|
|
|
<div v-if="message.qaSplitList.length > 0" class="title">涉及笔录:</div>
|
|
|
|
|
<div v-for="(item, index) in message.qaSplitList" :key="index" class="record-item">
|
|
|
|
|
<span class="file-name" @click="downloadRecord(item)">{{ item.noteName }}</span>
|
|
|
|
|
<span>{{ item.answer }}</span>
|
|
|
|
|
<span>{{ item.question }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="message.evidenceNames.length > 0" class="title">证据:</div>
|
|
|
|
|
<div class="evidence-list">
|
|
|
|
|
<div v-for="(item, index) in message.evidenceNames" :key="index" class="evidence-item">
|
|
|
|
|
<span class="file-name" @click="downloadEvidence(item)">{{ item.evidenceName }}</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<!-- dify回答 -->
|
|
|
|
|
<div v-if="message.type === '0'">
|
|
|
|
|
<div v-if="message.type === '0' ">
|
|
|
|
|
<div class="robot-item">
|
|
|
|
|
<span class="robot-message-item">
|
|
|
|
|
{{ message.answer }}
|
|
|
|
|
</span>
|
|
|
|
|
<div v-if="message.askFlag && message.intentType" class="btns">
|
|
|
|
|
<div class="btn-item" @click="selectAskItem(message,'是')">是</div>
|
|
|
|
|
<div class="btn-item" @click="selectAskItem(message,'否')">否</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="message.segmentList.length > 0" class="collapse" @click="changeShowFlag(message)">
|
|
|
|
|
<div v-if="message.segmentList && message.segmentList.length > 0" class="collapse" @click="changeShowFlag(message)">
|
|
|
|
|
<span>相关知识内容</span>
|
|
|
|
|
<i v-if="!message.showFlag" class="el-icon-arrow-down" />
|
|
|
|
|
<i v-if="message.showFlag" class="el-icon-arrow-up" />
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="message.segmentList.length > 0 && message.showFlag" class="collapse-content">
|
|
|
|
|
<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>
|
|
|
|
@ -129,28 +136,32 @@
|
|
|
|
|
</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>
|
|
|
|
|
<i class="el-icon-arrow-right" />
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- <div v-if="!message.adviceList && message.askFlag ">
|
|
|
|
|
|
|
|
|
|
</div> -->
|
|
|
|
|
<div v-else class="loading">
|
|
|
|
|
<img src="../../assets/common/loading.gif" alt="">
|
|
|
|
|
<span>模型正在生成结果....</span>
|
|
|
|
|
</div>
|
|
|
|
|
<!-- <div v-if="message.type === '3'">
|
|
|
|
|
<div>您好,您是要查询【案件名称】的分析结果吗?</div>
|
|
|
|
|
<div class="btns">
|
|
|
|
|
<div class="btn-item">是</div>
|
|
|
|
|
<div class="btn-item">否</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div> -->
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</transition>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</el-scrollbar>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="send-bottom">
|
|
|
|
|
<el-input
|
|
|
|
|
v-model="sendText"
|
|
|
|
|
:readonly="!caseId"
|
|
|
|
|
placeholder="可咨询案件内容、输入@可选择查询指标结果"
|
|
|
|
|
@keyup.enter.native="handleSend"
|
|
|
|
|
/>
|
|
|
|
@ -172,12 +183,12 @@
|
|
|
|
|
<i slot="prefix" class="el-input__icon el-icon-search" />
|
|
|
|
|
</el-input>
|
|
|
|
|
<div class="index-list">
|
|
|
|
|
<span v-for="(item,index) in showIndexList" :key="index" class="index-list-item" @click="selectIndex(item)">
|
|
|
|
|
<span v-for="(item,index) in showIndexList" :key="index" class="index-list-item" @click="selectIndex(item.name)">
|
|
|
|
|
{{ item.name }}
|
|
|
|
|
</span>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div v-if="isShowDownIcon" class="scroll-icon">
|
|
|
|
|
<div v-if="isShowDownIcon" class="scroll-icon" @click="scrollToBottom">
|
|
|
|
|
<img src="../../assets/police/down.png" alt="">
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
@ -370,18 +381,44 @@ export default {
|
|
|
|
|
// const fileId = item.fileIds.split(',')[0]
|
|
|
|
|
this.downloadFile(`${baseURL}${commonDownloadFile}${item.noteFileId}`, item.noteName)
|
|
|
|
|
},
|
|
|
|
|
// 选择询问指标
|
|
|
|
|
selectAskIndex(item, name) {
|
|
|
|
|
this.$set(item, 'askFlag', false)
|
|
|
|
|
this.selectIndex(name)
|
|
|
|
|
},
|
|
|
|
|
// 选择是否
|
|
|
|
|
selectAskItem(item, val) {
|
|
|
|
|
this.$set(item, 'askFlag', false)
|
|
|
|
|
if (this.loading) return
|
|
|
|
|
this.indexFlag = false
|
|
|
|
|
this.searchName = ''
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'user',
|
|
|
|
|
text: val
|
|
|
|
|
})
|
|
|
|
|
this.sendText = ''
|
|
|
|
|
this.chat({
|
|
|
|
|
caseId: this.caseId,
|
|
|
|
|
query: val,
|
|
|
|
|
conversationId: this.conversationId,
|
|
|
|
|
dialogueCount: item.dialogueCount,
|
|
|
|
|
type: '0',
|
|
|
|
|
intentType: item.intentType
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 选择指标
|
|
|
|
|
selectIndex(item) {
|
|
|
|
|
selectIndex(name) {
|
|
|
|
|
if (this.loading) return
|
|
|
|
|
this.indexFlag = false
|
|
|
|
|
this.searchName = ''
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'user',
|
|
|
|
|
text: item.name
|
|
|
|
|
text: name
|
|
|
|
|
})
|
|
|
|
|
this.sendText = ''
|
|
|
|
|
this.chat({
|
|
|
|
|
caseId: this.caseId,
|
|
|
|
|
query: item.name,
|
|
|
|
|
query: name,
|
|
|
|
|
conversationId: this.conversationId,
|
|
|
|
|
type: '1',
|
|
|
|
|
intentType: '0'
|
|
|
|
@ -394,59 +431,86 @@ export default {
|
|
|
|
|
})
|
|
|
|
|
this.scrollToBottom()
|
|
|
|
|
robotChat(obj).then(res => {
|
|
|
|
|
this.conversationList.splice(this.conversationList.length - 1, 1)
|
|
|
|
|
if (res.code === 200) {
|
|
|
|
|
this.conversationList.splice(this.conversationList.length - 1, 1)
|
|
|
|
|
if (this.conversationId !== res.data.conversationId) {
|
|
|
|
|
this.$refs.HistoricalRecordsRef.getList()
|
|
|
|
|
this.$refs.HistoricalRecordsRef.getList(res.data.conversationId)
|
|
|
|
|
}
|
|
|
|
|
this.conversationId = res.data.conversationId
|
|
|
|
|
this.getAnswerContent(res.data)
|
|
|
|
|
this.getAnswerContent(res.data, 'add')
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 识别回答内容
|
|
|
|
|
getAnswerContent(data) {
|
|
|
|
|
if (data.intentType === '1') {
|
|
|
|
|
}).catch(() => {
|
|
|
|
|
// 处理错误
|
|
|
|
|
this.loading = false
|
|
|
|
|
this.conversationList.splice(this.conversationList.length - 1, 1)
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
...data.answwerMap,
|
|
|
|
|
role: 'robot',
|
|
|
|
|
intentType: data.intentType
|
|
|
|
|
})
|
|
|
|
|
} else if (data.intentType === '2') {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'robot',
|
|
|
|
|
intentType: data.intentType,
|
|
|
|
|
text: data.answwerMap.answerText
|
|
|
|
|
intentType: '2',
|
|
|
|
|
text: '抱歉,我可能没理解清楚。如需进一步咨询,请明确您的问题。同时,输入“@”可选取特定指标结果,以便精准获取信息。'
|
|
|
|
|
|
|
|
|
|
})
|
|
|
|
|
} else if (data.intentType === '3') {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'robot',
|
|
|
|
|
intentType: data.intentType,
|
|
|
|
|
text: data.answwerMap.guideDesc
|
|
|
|
|
|
|
|
|
|
})
|
|
|
|
|
// 指标问答
|
|
|
|
|
} else if (data.intentType === '0') {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'robot',
|
|
|
|
|
intentType: data.intentType,
|
|
|
|
|
...data.answwerMap
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
// dify 问答
|
|
|
|
|
if (data.type === '0') {
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
// 识别回答内容
|
|
|
|
|
getAnswerContent(data, type) {
|
|
|
|
|
// 判断是否询问
|
|
|
|
|
if (data.dialogueCount === 1) {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'robot',
|
|
|
|
|
answer: data.answer,
|
|
|
|
|
type: data.type,
|
|
|
|
|
segmentList: data.segmentList
|
|
|
|
|
...data.answwerMap,
|
|
|
|
|
intentType: data.intentType,
|
|
|
|
|
dialogueCount: data.dialogueCount,
|
|
|
|
|
askFlag: type === 'add'
|
|
|
|
|
})
|
|
|
|
|
} else {
|
|
|
|
|
if (data.intentType === '1') {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
...data.answwerMap,
|
|
|
|
|
role: 'robot',
|
|
|
|
|
intentType: data.intentType
|
|
|
|
|
})
|
|
|
|
|
data.type = '1'
|
|
|
|
|
} else if (data.intentType === '2') {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'robot',
|
|
|
|
|
intentType: data.intentType,
|
|
|
|
|
text: data.answwerMap.answerText
|
|
|
|
|
})
|
|
|
|
|
data.type = '1'
|
|
|
|
|
} else if (data.intentType === '3') {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'robot',
|
|
|
|
|
intentType: data.intentType,
|
|
|
|
|
text: data.answwerMap.guideDesc
|
|
|
|
|
})
|
|
|
|
|
data.type = '1'
|
|
|
|
|
// 指标问答
|
|
|
|
|
} else if (data.intentType === '0' && data.answwerMap.indexName) {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'robot',
|
|
|
|
|
intentType: data.intentType,
|
|
|
|
|
...data.answwerMap
|
|
|
|
|
})
|
|
|
|
|
data.type = '1'
|
|
|
|
|
}
|
|
|
|
|
// dify 问答
|
|
|
|
|
if (data.type === '0') {
|
|
|
|
|
this.conversationList.push({
|
|
|
|
|
role: 'robot',
|
|
|
|
|
answer: data.answer,
|
|
|
|
|
type: data.type,
|
|
|
|
|
segmentList: data.segmentList,
|
|
|
|
|
...data.answwerMap
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.$nextTick(() => {
|
|
|
|
|
setTimeout(() => {
|
|
|
|
|
this.loading = false
|
|
|
|
|
}, 3000)
|
|
|
|
|
}, 2000)
|
|
|
|
|
|
|
|
|
|
this.scrollToBottom()
|
|
|
|
|
})
|
|
|
|
@ -468,20 +532,18 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
scrollToBottom() {
|
|
|
|
|
const scrollbar = this.$refs.scrollbar
|
|
|
|
|
if (scrollbar) {
|
|
|
|
|
scrollbar.wrap.scrollTo(0, scrollbar.wrap.scrollHeight)
|
|
|
|
|
}
|
|
|
|
|
// const scrollbar = this.$refs.scrollbar
|
|
|
|
|
// if (scrollbar) {
|
|
|
|
|
// scrollbar.wrap.scrollTo(0, scrollbar.wrap.scrollHeight)
|
|
|
|
|
// }
|
|
|
|
|
const div = this.$refs.scrollbar
|
|
|
|
|
div.scrollTop = div.scrollHeight
|
|
|
|
|
},
|
|
|
|
|
// 滚动
|
|
|
|
|
handleScroll(event) {
|
|
|
|
|
console.log('1111111111111')
|
|
|
|
|
debugger
|
|
|
|
|
const scrollTop = event.target.scrollTop // 当前滚动位置
|
|
|
|
|
const clientHeight = event.target.clientHeight // 可视区域高度
|
|
|
|
|
const scrollHeight = this.$refs.scrollContent.scrollHeight // 内容总高度
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const scrollHeight = this.$refs.scrollbar.scrollHeight // 内容总高度
|
|
|
|
|
// 计算滚动条底部的距离
|
|
|
|
|
this.distanceToBottom = scrollHeight - (scrollTop + clientHeight)
|
|
|
|
|
if (this.distanceToBottom > 0) {
|
|
|
|
@ -622,6 +684,23 @@ export default {
|
|
|
|
|
margin-bottom: 16px;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
.btns {
|
|
|
|
|
display: flex;
|
|
|
|
|
margin-top: 16px;
|
|
|
|
|
.btn-item {
|
|
|
|
|
width: 80px;
|
|
|
|
|
height: 40px;
|
|
|
|
|
box-shadow: 0px 2px 0px 0px rgba(0,0,0,0.04);
|
|
|
|
|
border-radius: 6px 6px 6px 6px;
|
|
|
|
|
border: 1px solid #3763FF;
|
|
|
|
|
margin-right: 24px;
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
color: #3763FF;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
text-align: center;
|
|
|
|
|
line-height: 40px;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.success {
|
|
|
|
|
color: #00975E;
|
|
|
|
|
font-weight: bold;
|
|
|
|
@ -657,6 +736,10 @@ export default {
|
|
|
|
|
.value {
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
color: #333333;
|
|
|
|
|
width: 900px;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -706,6 +789,37 @@ export default {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.option-list {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
.option-item {
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
|
|
|
|
|
position: relative;
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
color: #464546;
|
|
|
|
|
|
|
|
|
|
margin-bottom: 16px;
|
|
|
|
|
.name {
|
|
|
|
|
border-radius: 9px 9px 9px 9px;
|
|
|
|
|
border: 1px solid #D9D9D9;
|
|
|
|
|
padding: 8px 36px 8px 16px;
|
|
|
|
|
}
|
|
|
|
|
i {
|
|
|
|
|
margin-left: -32px;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.option-item:hover {
|
|
|
|
|
color: #3763FF;
|
|
|
|
|
.name{
|
|
|
|
|
|
|
|
|
|
border: 1px solid #3763FF;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
.user-message {
|
|
|
|
|
margin: 24px 0;
|
|
|
|
@ -817,7 +931,10 @@ export default {
|
|
|
|
|
font-size: 16px;
|
|
|
|
|
color: #333333;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
margin-bottom: 24px;
|
|
|
|
|
line-height: 45px;
|
|
|
|
|
}
|
|
|
|
|
.index-list-item:hover {
|
|
|
|
|
background: #F2F6FD;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|