Browse Source

speechConnect

master
pengjun 1 year ago
parent
commit
5a34700b6b
  1. 2
      public/sysConfig.json
  2. 5
      src/components/doctorCheck/CheckSumSug.vue
  3. 65
      src/components/doctorCheck/QueueCheckList.vue
  4. 2
      src/components/report/BtnReport.vue
  5. 15
      src/components/report/PatientRegisterListNobtn.vue
  6. 4
      src/components/sumDoctorCheck/SumSug.vue
  7. 6
      src/views/charge/charge.vue

2
public/sysConfig.json

@ -1,4 +1,4 @@
{
"apiurl": "http://localhost:9530",
"apiurl": "http://140.143.162.39:9529",
"softName": "神豚体检管理系统"
}

5
src/components/doctorCheck/CheckSumSug.vue

@ -51,7 +51,12 @@
<el-button type="primary" class="btnClass" style="min-width: 40px;" @click="btnLineUp"
:disabled="doctorBtnDisabled('btnLineUp')">排队</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs, '危急值')">
<el-button type="primary" class="btnClass" style="min-width: 40px;" @click="btnLineUp"
:disabled="doctorBtnDisabled('btnLineUp')">危急值</el-button>
</div>
</div>
<div
:style="`display: flex;position: absolute; top:${window.pageHeight - sumHeight - 38}px;right:125px;z-index: 1;`">
<div v-show="checkPagePriv(pagePriv.privs, '新增建议')">

65
src/components/doctorCheck/QueueCheckList.vue

@ -93,7 +93,7 @@
style="width: 40px;min-width: 40px;height: 26px;">重呼</el-button>
</div>
<div style="margin: 10px 0;">
<el-button type="primary" class="commonbutton" @click="btnCall(overQueueRegisterId, '1')"
<el-button type="primary" class="commonbutton" @click="btnCall(overQueueRegisterId, '0')"
style="width: 40px;min-width: 40px;height: 26px;">退回</el-button>
</div>
</div>
@ -142,7 +142,7 @@ export default {
}
},
LocalConfigInit: {},
isInterval: 'N', //
interval: null, //
queue_refresh_interval: 15, // ()
queue_play_voice_repeate_times: 2, //
@ -161,6 +161,12 @@ export default {
this.fnMounted()
},
destroyed() {
console.log('this.interval', JSON.stringify(this.interval))
if (this.interval) clearInterval(this.interval)
console.log('this.interval clearInterval', JSON.stringify(this.interval))
},
computed: {
...mapState(['window', 'dialogWin', 'dataTransOpts', 'dict', 'doctorCheck']),
@ -210,7 +216,7 @@ export default {
this.queue_refresh_interval = Number(sysParam.data || 15)
} catch (error) {
console.log(error)
}
}
//
if (this.$peisAPI) {
@ -224,34 +230,43 @@ export default {
.then(res => {
if (res.code > -1) this.queue_play_voice_repeate_interval = Number(res.data || 1)
})
}
if (this.isInterval == 'N') {
this.isInterval = 'Y'
setInterval(() => {
if (!this.interval) {
this.interval = setInterval(() => {
this.getQueueRegisterList(this.LocalConfig.doctorCheck.queueRoom, this.LocalConfig.doctorCheck.queueItemTypeIds)
}, this.queue_refresh_interval * 1000);
}
}
},
btnCall(queueRegisterId, completeFlag) {
btnCall(refQueueRegisterId, completeFlag) {
let queueRegisterId = refQueueRegisterId
switch (completeFlag) {
case "0": // 退
if (!queueRegisterId) this.$message.warning({ showClose: true, message: '请选择过号人员' })
if (!queueRegisterId) {
if (this.overNumberDetail.length > 0) queueRegisterId = this.overNumberDetail[0].queueRegisterId
}
if (!queueRegisterId) this.$message.warning({ showClose: true, message: '未可操作的数据,或未选择过号人员' })
break;
case "1": //
if (!queueRegisterId) this.$message.warning({ showClose: true, message: '请选择候诊人员' })
if (!queueRegisterId) {
if (this.waitDetail.length > 0) queueRegisterId = this.waitDetail[0].queueRegisterId
}
if (!queueRegisterId) this.$message.warning({ showClose: true, message: '未可操作的数据,或未选择候诊人员' })
break;
case "2": //
if (!queueRegisterId) this.$message.warning({ showClose: true, message: '请选择已呼人员' })
if (!queueRegisterId) {
if (this.alreadyCalledDetail.length > 0) queueRegisterId = this.alreadyCalledDetail[0].queueRegisterId
}
if (!queueRegisterId) this.$message.warning({ showClose: true, message: '未可操作的数据,或未选择已呼人员' })
break;
case "9": //
if (!queueRegisterId) this.$message.warning({ showClose: true, message: '请选择过号人员' })
if (!queueRegisterId) {
if (this.overNumberDetail.length > 0) queueRegisterId = this.overNumberDetail[0].queueRegisterId
}
if (!queueRegisterId) this.$message.warning({ showClose: true, message: '未可操作的数据,或未选择过号人员' })
break;
}
if (queueRegisterId && completeFlag != '9') {
@ -259,14 +274,32 @@ export default {
.then(res => {
if (res.code > -1) {
this.getQueueRegisterList(this.LocalConfig.doctorCheck.queueRoom, this.LocalConfig.doctorCheck.queueItemTypeIds)
if (this.$peisAPI && completeFlag == '1') this.outShellCall()
}
})
} else if (completeFlag == '9') {
if (this.$peisAPI) this.outShellCall()
}
},
// api
outShellCall() {
// /api/app/Room/Get
// {
// "roomId": "3a13f191-1c1a-0749-fda4-5b10b0b10c15"
// }
refuseItem() {
this.$peisAPI.getIsSpeechEnable()
.then(res => {
if (res == 'Y') return this.$peisAPI.speechConnect()
})
.then(res => {
let toOutShell = { SendText: "欢迎光临", RepatPlayNum: 2, Delay: 1 }
return this.$peisAPI.speechSendText(JSON.stringify(toOutShell))
})
.catch(err => {
console.log('呼叫失败', err)
})
},
dictInit() {

2
src/components/report/BtnReport.vue

@ -338,7 +338,7 @@ export default {
try {
if (e.completeFlag == '3') {
toOutShell.BusinessCode = e.patientRegisterId
toOutShell.ExportDirectory = `${path}\\${e.patientRegisterNo + e.patientName}.pdf`
toOutShell.ExportDirectory = `${path}\\${e.patientRegisterNo}_${patientName}.pdf`
let jsonToOutShell = JSON.stringify(toOutShell)
console.log('toOutShell', jsonToOutShell)
let res = await this.$peisAPI.exportToPdfPre(jsonToOutShell)

15
src/components/report/PatientRegisterListNobtn.vue

@ -11,6 +11,13 @@
dddw(dict.completeFlag, "id", scope.row.completeFlag, "displayName") }}</div>
</template>
</el-table-column>
<el-table-column prop="medicalStartDate" label="体检日期" width="100" align="center" sortable>
<template slot-scope="scope">
<div v-if="scope.row.medicalStartDate">
{{ lmoment(scope.row.medicalStartDate, "yyyy-MM-DD") }}
</div>
</template>
</el-table-column>
<el-table-column prop="isReportPrint" label="打印" width="60" align="center" sortable>
<template slot-scope="scope">
<i class="el-icon-printer" v-if="scope.row.isReportPrint == 'Y'" style="font-size: 24px;color: green;"></i>
@ -66,8 +73,8 @@
<el-table-column prop="medicalCardNo" label="体检卡号" sortable/>
<el-table-column prop="jobCardNo" label="工卡号" sortable/>
<el-table-column prop="maritalStatusName" label="婚姻状况" align="center" sortable/>
<el-table-column prop="medicalTypeName" label="体检类别" align="center" sortable/>
<el-table-column prop="personnelTypeName" label="人员类别" align="center" sortable/>
<el-table-column prop="medicalTypeName" label="体检类别" min-width="100" align="center" sortable/>
<el-table-column prop="personnelTypeName" label="人员类别" min-width="100" align="center" sortable/>
<el-table-column prop="jobPost" label="职务" sortable/>
<el-table-column prop="jobTitle" label="职称" sortable/>
<el-table-column prop="salesman" label="介绍人" sortable/>
@ -76,8 +83,10 @@
<div>{{ scope.row.isVip == "Y" ? "是" : "否" }}</div>
</template>
</el-table-column>
<el-table-column prop="summaryDoctorName" label="总检人" align="center" sortable/>
<el-table-column prop="summaryDate" label="总检时间" width="150" align="center" sortable/>
<el-table-column prop="registerName" label="登记人" align="center" sortable/>
<el-table-column prop="registerDate" label="登记日期" width="150" align="center" sortable/>
<el-table-column prop="registerDate" label="登记时间" width="150" align="center" sortable/>
<el-table-column prop="isLock" label="锁住" align="center" width="60" sortable>
<template slot-scope="scope">
<div>{{ scope.row.isLock == "Y" ? "是" : "否" }}</div>

4
src/components/sumDoctorCheck/SumSug.vue

@ -242,7 +242,7 @@
<el-dialog title="插入特殊符号" :visible.sync="dialogWinSymbols" width="600px" :close-on-click-modal="false">
<div style="margin-top: -5px;">
<div style="overflow-y:auto; width:100%;display: flex;flex-wrap: wrap;align-content: flex-start;">
<div v-for="item in symbols" :key="item.id" style="margin: 1px; 2px;cursor:pointer;"
<div v-for="item in symbols" :key="item.id" style="margin: 1px 2px;cursor:pointer;"
@click="insertSymbols(item.displayName)">
<el-tag
style="padding: 0 3px;height: 24px;line-height: 24px;font-size: 15px;color: #303133;background-color: white;">
@ -300,7 +300,7 @@ export default {
collapse: false, // /
dispTermReason: 'N', //
dispTermReason: 'Y', //
dialogWinSymbols: false,
selection: { //

6
src/views/charge/charge.vue

@ -278,9 +278,9 @@ export default {
balance: 0, //
}, //
rules: {
invoiceNo: [
{ required: true, message: "请填写发票/收据号", trigger: "blur" },
],
// invoiceNo: [
// { required: true, message: "/", trigger: "blur" },
// ],
total: [
{ required: true, message: "请填写应收金额", trigger: "blur" },
],

Loading…
Cancel
Save