feat: 数字民警开发

ocr_2.1
xiangcongshuai 7 months ago
parent ea32db9f9c
commit 8cd3aac10c

@ -5,7 +5,7 @@ const network = {
// 默认的接口地址 如果是开发环境和生产环境走vab-mock-server当然你也可以选择自己配置成需要的接口地址
baseURL:
process.env.NODE_ENV === 'development'
? 'http://192.168.10.142:8097/fu-hsi-server'
? 'http://192.168.10.25:8097/fu-hsi-server'
: '/fuHsiApi',
// 配后端数据的接收方式application/json;charset=UTF-8或者application/x-www-form-urlencoded;charset=UTF-8
contentType: 'application/json;charset=UTF-8',

@ -7,44 +7,140 @@
-->
<template>
<div>
<div
ref="floatButton"
class="float_info"
@click="onBtnClicked"
/>
<div class="HoverButton">
<el-popover
placement="left"
width="240"
trigger="click"
>
<div class="HoverButton-main">
<div class="main-new-item" @click="onBtnClicked">
<img src="@/assets/common/new.png" alt="">
<span>新对话</span>
</div>
<div class="main-message-item">
<img src="@/assets/common/message.png" alt="">
<span>最近对话</span>
<!-- <i class="el-icon-arrow-down el-icon--right" /> -->
</div>
<div class="case-list">
<span v-for="(item,index) in caseList" :key="index" class="case-item" @click="openPage(item)">{{ item.name }}</span>
</div>
</div>
<div
ref="floatButton"
slot="reference"
class="float_info"
/>
</el-popover>
<!--对话弹窗-->
<conversation-dialog ref="conversion"/>
<conversation-dialog ref="conversion" />
</div>
</template>
<script>
import store from '@/store'
import { conversationList } from '@/api/caseManagement'
export default {
name: 'HoverButton',
data() {
return {
caseList: [
]
}
},
methods: {
onBtnClicked() {
this.$refs.conversion.show()
this.$router.push({
path: '/policeAi'
})
},
//
async getList() {
const res = await conversationList({
pageNum: 1,
pageSize: 99999
})
if (res.code === 200) {
this.caseList = res.data.records.splice(0, 3)
}
},
openPage(item) {
store.dispatch('user/setPermissions', ['admin'])
this.$router.push({
path: '/policeAi'
})
}
}
}
</script>
<style lang="scss" scoped>
.float_info {
position: fixed;
bottom: 120px;
right: 2%;
width: 50px;
height: 50px;
margin: 5px 10px;
display: flex;
z-index: 999;
cursor: pointer;
background: url("~@/assets/home/anjianzhushou@2x.png") center no-repeat;
background-size: 100% 100%;
.HoverButton {
.float_info {
position: fixed;
bottom: 120px;
right: 2%;
width: 50px;
height: 50px;
margin: 5px 10px;
display: flex;
z-index: 999;
cursor: pointer;
background: url("~@/assets/home/anjianzhushou@2x.png") center no-repeat;
background-size: 100% 100%;
}
}
.HoverButton-main {
// padding: 16px;
.main-new-item {
display: flex;
background: rgba(55,99,255,0.1);
border-radius: 8px 8px 8px 8px;
border: 1px solid #3763FF;
height: 49px;
align-items: center;
padding-left: 16px;
cursor: pointer;
img {
width: 18px;
height: 18px;
}
span {
font-size: 16px;
color: #3763FF;
margin-left: 10px;
}
}
.main-message-item {
display: flex; height: 49px;
align-items: center;
padding-left: 16px;
cursor: pointer;
img {
width: 18px;
height: 18px;
}
span {
font-size: 16px;
color: #333333;
margin-left: 10px;
margin-right: 100px;
}
}
.case-list {
display: flex;
flex-direction: column;
.case-item {
height: 34px;font-size: 14px;
color: #666666;
padding-left: 45px;
line-height: 34px;
cursor: pointer;
}
.case-item:hover {
background: #F5F5F5;
}
}
}
</style>

@ -19,6 +19,7 @@ const state = () => ({
endTime: null,
avatar: null,
adminFlag: '',
caseId: "",
permissions: []
})
const getters = {
@ -31,7 +32,8 @@ const getters = {
userId: (state) => state.userId,
unitId: (state) => state.unitId,
adminFlag: (state) => state.adminFlag,
permissions: (state) => state.permissions
permissions: (state) => state.permissions,
caseId: (state) => state.caseId
}
const mutations = {
setAccessToken(state, accessToken) {
@ -67,13 +69,18 @@ const mutations = {
},
setPermissions(state, permissions) {
state.permissions = permissions
},
setConversationId(state, conversationId) {
state.conversationId = conversationId
}
}
const actions = {
setPermissions({ commit }, permissions) {
commit('setPermissions', permissions)
},
setCaseId({ commit }, conversationId) {
commit('setConversationId', conversationId)
},
async login({ commit }, userInfo) {
const { userAccount, password } = userInfo
const { data } = await login({

Loading…
Cancel
Save