[1078] 增加电话回拨

This commit is contained in:
lin
2025-07-16 21:57:26 +08:00
parent 56b70d335a
commit ca07935232
5 changed files with 131 additions and 16 deletions

View File

@@ -5,7 +5,7 @@ import request from '@/utils/request'
export function queryDevices({ page, count, query, online }) { export function queryDevices({ page, count, query, online }) {
return request({ return request({
method: 'get', method: 'get',
url: `/api/jt1078/terminal/list`, url: '/api/jt1078/terminal/list',
params: { params: {
page: page, page: page,
count: count, count: count,
@@ -18,7 +18,7 @@ export function queryDevices({ page, count, query, online }) {
export function queryDeviceById(deviceId) { export function queryDeviceById(deviceId) {
return request({ return request({
method: 'get', method: 'get',
url: `/api/jt1078/terminal/query`, url: '/api/jt1078/terminal/query',
params: { params: {
deviceId: deviceId deviceId: deviceId
} }
@@ -28,7 +28,7 @@ export function queryDeviceById(deviceId) {
export function update(form) { export function update(form) {
return request({ return request({
method: 'post', method: 'post',
url: `/api/jt1078/terminal/update`, url: '/api/jt1078/terminal/update',
params: form params: form
}) })
} }
@@ -36,7 +36,7 @@ export function update(form) {
export function add(form) { export function add(form) {
return request({ return request({
method: 'post', method: 'post',
url: `/api/jt1078/terminal/add`, url: '/api/jt1078/terminal/add',
params: form params: form
}) })
} }
@@ -55,7 +55,7 @@ export function queryChannels(params) {
const { page, count, query, deviceId } = params const { page, count, query, deviceId } = params
return request({ return request({
method: 'get', method: 'get',
url: `/api/jt1078/terminal/channel/list`, url: '/api/jt1078/terminal/channel/list',
params: { params: {
page: page, page: page,
count: count, count: count,
@@ -91,14 +91,14 @@ export function stopPlay(params) {
export function updateChannel(data) { export function updateChannel(data) {
return request({ return request({
method: 'post', method: 'post',
url: `/api/jt1078/terminal/channel/update`, url: '/api/jt1078/terminal/channel/update',
data: data data: data
}) })
} }
export function addChannel(data) { export function addChannel(data) {
return request({ return request({
method: 'post', method: 'post',
url: `/api/jt1078/terminal/channel/add`, url: '/api/jt1078/terminal/channel/add',
data: data data: data
}) })
} }
@@ -215,7 +215,7 @@ export function stopPlayback(params) {
export function queryConfig(phoneNumber) { export function queryConfig(phoneNumber) {
return request({ return request({
method: 'get', method: 'get',
url: `/api/jt1078/config`, url: '/api/jt1078/config',
params: { params: {
phoneNumber: phoneNumber phoneNumber: phoneNumber
} }
@@ -224,14 +224,14 @@ export function queryConfig(phoneNumber) {
export function setConfig(data) { export function setConfig(data) {
return request({ return request({
method: 'post', method: 'post',
url: `/api/jt1078/set-config`, url: '/api/jt1078/set-config',
data: data data: data
}) })
} }
export function queryAttribute(phoneNumber) { export function queryAttribute(phoneNumber) {
return request({ return request({
method: 'get', method: 'get',
url: `/api/jt1078/attribute`, url: '/api/jt1078/attribute',
params: { params: {
phoneNumber: phoneNumber phoneNumber: phoneNumber
} }
@@ -240,7 +240,7 @@ export function queryAttribute(phoneNumber) {
export function linkDetection(phoneNumber) { export function linkDetection(phoneNumber) {
return request({ return request({
method: 'get', method: 'get',
url: `/api/jt1078/link-detection`, url: '/api/jt1078/link-detection',
params: { params: {
phoneNumber: phoneNumber phoneNumber: phoneNumber
} }
@@ -249,7 +249,7 @@ export function linkDetection(phoneNumber) {
export function queryPosition(phoneNumber) { export function queryPosition(phoneNumber) {
return request({ return request({
method: 'get', method: 'get',
url: `/api/jt1078/position-info`, url: '/api/jt1078/position-info',
params: { params: {
phoneNumber: phoneNumber phoneNumber: phoneNumber
} }
@@ -258,9 +258,20 @@ export function queryPosition(phoneNumber) {
export function sendTextMessage(data) { export function sendTextMessage(data) {
return request({ return request({
method: 'post', method: 'post',
url: `/api/jt1078/text-msg`, url: '/api/jt1078/text-msg',
data: data data: data
}) })
} }
export function telephoneCallback({ phoneNumber, sign, destPhoneNumber }) {
return request({
method: 'get',
url: '/api/jt1078/telephone-callback',
params: {
phoneNumber: phoneNumber,
sign: sign,
destPhoneNumber: destPhoneNumber
}
})
}

View File

@@ -6,7 +6,7 @@ import {
queryChannels, queryConfig, queryChannels, queryConfig,
queryDeviceById, queryDeviceById,
queryDevices, queryPosition, queryRecordList, sendTextMessage, setConfig, startPlayback, queryDevices, queryPosition, queryRecordList, sendTextMessage, setConfig, startPlayback,
stopPlay, stopPlayback, update, stopPlay, stopPlayback, telephoneCallback, update,
updateChannel, wiper updateChannel, wiper
} from '@/api/jtDevice' } from '@/api/jtDevice'
@@ -250,6 +250,16 @@ const actions = {
reject(error) reject(error)
}) })
}) })
},
telephoneCallback({ commit }, param) {
return new Promise((resolve, reject) => {
telephoneCallback(param).then(response => {
const { data } = response
resolve(data)
}).catch(error => {
reject(error)
})
})
} }
} }

View File

@@ -0,0 +1,87 @@
<template>
<div id="configInfo">
<el-dialog
v-el-drag-dialog
title="电话回拨"
width="=80%"
top="2rem"
:close-on-click-modal="false"
:visible.sync="showDialog"
:destroy-on-close="true"
@close="close()"
>
<div>
<el-form >
<el-form-item label="标志">
<el-radio-group v-model="form.sign">
<el-radio :label="0">普通通话</el-radio>
<el-radio :label="1">监听</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="回拨电话号码">
<el-input type="input" v-model="form.destPhoneNumber" ></el-input>
</el-form-item>
<el-form-item style="text-align: right">
<el-button type="primary" @click="onSubmit">回拨</el-button>
<el-button @click="close" >取消</el-button>
</el-form-item>
</el-form>
</div>
</el-dialog>
</div>
</template>
<script>
import elDragDialog from '@/directive/el-drag-dialog'
export default {
name: 'ConfigInfo',
directives: { elDragDialog },
props: {},
data() {
return {
showDialog: false,
form: {
phoneNumber: null,
sign: 0, // 标志: 0:普通通话,1:监听
destPhoneNumber: null // 回拨电话号码
}
}
},
computed: {},
created() {},
methods: {
openDialog: function(data) {
this.showDialog = true
this.form = {
phoneNumber: null,
sign: {
type: 3, // 1紧急,2服务,3通知
terminalDisplay: true, // 1终端显示器显示
tts: true, // 从选区创建新的临时文件
adScreen: true, // 广告屏显示
source: false // false: 中心导航信息 true CAN故障码信息
},
textType: 1, // 文本类型,1 = 通知 2 = 服务
content: '' // 消息内容最长为1024字节
}
this.form.phoneNumber = data.phoneNumber
},
close: function() {
this.showDialog = false
},
onSubmit: function() {
this.$store.dispatch('jtDevice/telephoneCallback', this.form)
.then(data => {
this.$message.success({
showClose: true,
message: '发送成功'
})
this.close()
})
}
}
}
</script>

View File

@@ -110,7 +110,7 @@ export default {
showClose: true, showClose: true,
message: '发送成功' message: '发送成功'
}) })
// this.close() this.close()
}) })
} }
} }

View File

@@ -149,6 +149,7 @@
<attribute ref="attribute" /> <attribute ref="attribute" />
<position ref="position" /> <position ref="position" />
<textMsg ref="textMsg" /> <textMsg ref="textMsg" />
<telephoneCallback ref="telephoneCallback" />
</div> </div>
</template> </template>
@@ -158,11 +159,12 @@ import configInfo from '../dialog/configInfo.vue'
import attribute from './dialog/attribute.vue' import attribute from './dialog/attribute.vue'
import position from './dialog/position.vue' import position from './dialog/position.vue'
import textMsg from './dialog/textMsg.vue' import textMsg from './dialog/textMsg.vue'
import telephoneCallback from './dialog/telephoneCallback.vue'
export default { export default {
name: 'App', name: 'App',
components: { components: {
deviceEdit, configInfo, attribute, position, textMsg deviceEdit, configInfo, attribute, position, textMsg, telephoneCallback
}, },
data() { data() {
return { return {
@@ -271,6 +273,8 @@ export default {
this.queryPosition(itemData) this.queryPosition(itemData)
} else if (command === 'textMsg') { } else if (command === 'textMsg') {
this.sendTextMsg(itemData) this.sendTextMsg(itemData)
} else if (command === 'telephoneCallback') {
this.telephoneCallback(itemData)
} else { } else {
this.$message.info('尚不支持') this.$message.info('尚不支持')
} }
@@ -297,6 +301,9 @@ export default {
sendTextMsg: function(itemData) { sendTextMsg: function(itemData) {
this.$refs.textMsg.openDialog(itemData) this.$refs.textMsg.openDialog(itemData)
}, },
telephoneCallback: function(itemData) {
this.$refs.telephoneCallback.openDialog(itemData)
},
linkDetection: function(itemData) { linkDetection: function(itemData) {
this.$store.dispatch('jtDevice/linkDetection', itemData.phoneNumber) this.$store.dispatch('jtDevice/linkDetection', itemData.phoneNumber)
.then((data) => { .then((data) => {