pengjun 2 days ago
parent
commit
9acc2c3bb7
  1. 3
      src/components/doctorCheck/QueueCheckList.vue
  2. 1
      src/components/queue/Queue.vue
  3. 284
      src/views/basic-dictionary/ThirdPartyInterfaces.vue
  4. 78
      src/views/common-settings/ItemType.vue
  5. 9
      src/views/fee-settings/Asbitem.vue

3
src/components/doctorCheck/QueueCheckList.vue

@ -432,6 +432,9 @@ export default {
console.log("叫号 this.$peisAPI.speechSendText",toOutShell)
return this.$peisAPI.speechSendText(JSON.stringify(toOutShell));
})
.then(res => {
console.log('叫号返回 this.$peisAPI.speechSendText',res)
})
.catch((err) => {
// console.log('', err)
this.$message.error({ showClose: true, message: err });

1
src/components/queue/Queue.vue

@ -369,7 +369,6 @@ export default {
});
}
}
},
//()

284
src/views/basic-dictionary/ThirdPartyInterfaces.vue

@ -30,27 +30,14 @@
<div style="display: block; margin-top: 7px; margin-right: 110px">
<div style="background-color: #fff; padding: 15px; border-radius: 8px">
<div id="printTest">
<el-table
:data="tableData"
row-key="id"
class="el-table__body-wrapper tbody"
@row-click="rowick"
@row-dblclick="dblClick"
highlight-current-row
:height="window.pageHeight < 600 ? 480 : window.pageHeight - 130"
ref="tableData"
tooltip-effect="light"
>
<el-table :data="tableData" row-key="id" class="el-table__body-wrapper tbody" @row-click="rowick"
@row-dblclick="dblClick" highlight-current-row
:height="window.pageHeight < 600 ? 480 : window.pageHeight - 130" ref="tableData" tooltip-effect="light">
<el-table-column prop="id" label="编号" width="300">
</el-table-column>
<el-table-column prop="displayName" label="名称" width="">
</el-table-column>
<el-table-column
prop="parmValue"
label="配置参数"
width=""
show-overflow-tooltip
>
<el-table-column prop="parmValue" label="配置参数" width="" show-overflow-tooltip>
</el-table-column>
<el-table-column prop="medicalCenterId" label="体检中心">
<template slot-scope="scope">
@ -64,11 +51,7 @@
</div>
</template>
</el-table-column>
<el-table-column
prop="thirdInterfaceType"
label="接口类型"
width=""
>
<el-table-column prop="thirdInterfaceType" label="接口类型" width="">
<template slot-scope="scope">
<div>
{{ dddw(thirdInterfaceType, "id", scope.row.thirdInterfaceType, "displayName") }}
@ -77,12 +60,7 @@
</el-table-column>
<el-table-column prop="isActive" label="启用" align="center">
<template slot-scope="scope">
<el-checkbox
v-model="scope.row.isActive"
true-label="Y"
false-label="N"
disabled
></el-checkbox>
<el-checkbox v-model="scope.row.isActive" true-label="Y" false-label="N" disabled></el-checkbox>
</template>
</el-table-column>
<el-table-column prop="creatorName" label="创建者" align="center">
@ -96,34 +74,23 @@
{{ scope.row.creationTime | dateFormat }}
</template>
</el-table-column>
<el-table-column
prop="lastModificationTime"
label="修改时间"
width="200" align="center"
>
<el-table-column prop="lastModificationTime" label="修改时间" width="200" align="center">
<template slot-scope="scope">
{{ scope.row.lastModificationTime | dateFormat }}
</template>
</el-table-column>
<el-table-column label="操作" align="center">
<template>
<el-tag
class="move"
style="
<el-tag class="move" style="
cursor: move;
background-color: rgb(245, 245, 245);
border: none;
"
draggable="true"
>
<i
class="el-icon-d-caret"
style="
" draggable="true">
<i class="el-icon-d-caret" style="
width: 1rem;
height: 1rem;
color: rgb(113, 113, 113);
"
></i>
"></i>
</el-tag>
</template>
</el-table-column>
@ -132,128 +99,74 @@
</div>
</div>
<!-- 按钮区域 -->
<div
style="
<div style="
margin-left: 10px;
margin-top: 3%;
position: absolute;
top: 0;
right: 0;
"
>
">
<el-button type="" @click="add" class="commonbutton">新增</el-button>
<div style="margin-top: 10px">
<el-button type="" @click="edlits" class="commonbutton"
>编辑</el-button
>
<el-button type="" @click="edlits" class="commonbutton">编辑</el-button>
</div>
<div style="margin-top: 10px">
<el-button type="" @click="deleteid" class="deleteButton"
>删除</el-button
>
<el-button type="" @click="deleteid" class="deleteButton">删除</el-button>
</div>
<div style="margin-top: 10px">
<el-button type="" @click="topping" class="commonbutton"
>置顶</el-button
>
<el-button type="" @click="topping" class="commonbutton">置顶</el-button>
</div>
<div style="margin-top: 10px">
<el-button type="" @click="toppings" class="commonbutton"
>置底</el-button
>
<el-button type="" @click="toppings" class="commonbutton">置底</el-button>
</div>
<div style="margin-top: 10px">
<el-button
type=""
:disabled="isshow"
@click="assertion"
class="commonbutton"
>排序</el-button
>
<el-button type="" :disabled="isshow" @click="assertion" class="commonbutton">排序</el-button>
</div>
<div style="margin-top: 10px">
<el-button
type=""
:disabled="isshow"
@click="cancellation"
class="commonbutton"
>取消</el-button
>
<el-button type="" :disabled="isshow" @click="cancellation" class="commonbutton">取消</el-button>
</div>
</div>
<!-- <div class="cancelorconfirm"></div> -->
<!-- 新增或者编辑弹框 -->
<el-dialog
:title="title == 1 ? '新增' : '修改'"
:visible.sync="dialogVisible"
width="90%"
:close-on-click-modal="false"
fullscreen
>
<el-dialog :title="title == 1 ? '新增' : '修改'" :visible.sync="dialogVisible" width="90%"
:close-on-click-modal="false" fullscreen>
<el-form ref="form" :model="form" label-width="80px">
<el-row>
<el-col :span="6">
<el-form-item label="编号">
<el-input
v-model="form.id"
style="width: 100%"
disabled
size="small"
></el-input>
<el-input v-model="form.id" style="width: 100%" disabled size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="名称">
<el-input
ref="refinput"
v-model="form.displayName"
style="width: 100%"
size="small"
></el-input>
<el-input ref="refinput" v-model="form.displayName" style="width: 100%" size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="体检中心">
<el-cascader
v-model="form.medicalCenterId"
:options="medicalCenter"
ref="example"
popper-class="example"
@change="ischangs"
:props="{
<el-cascader v-model="form.medicalCenterId" :options="medicalCenter" ref="example"
popper-class="example" @change="ischangs" :props="{
value: 'id',
label: 'displayName',
children: 'treeChildren',
checkStrictly: true,
expandTrigger: 'hover',
}"
size="small"
>
}" size="small">
</el-cascader>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="接口类型">
<el-select
v-model="form.thirdInterfaceType"
placeholder="请选择接口类型"
size="small"
>
<el-option v-for="item in thirdInterfaceType"
:key="item.id"
:label="item.displayName"
<el-select v-model="form.thirdInterfaceType" placeholder="请选择接口类型" size="small">
<el-option v-for="item in thirdInterfaceType" :key="item.id" :label="item.displayName"
:value="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="2">
<el-form-item label="启用">
<el-checkbox
v-model="form.isActive"
true-label="Y"
false-label="N"
></el-checkbox>
<el-checkbox v-model="form.isActive" true-label="Y" false-label="N"></el-checkbox>
</el-form-item>
</el-col>
</el-row>
@ -264,11 +177,7 @@
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input
type="textarea"
v-model="form.parmValue"
:autosize="{ minRows: 23, maxRows: 23 }"
></el-input>
<el-input type="textarea" v-model="form.parmValue" :autosize="{ minRows: 23, maxRows: 23 }"></el-input>
</el-form-item>
</el-col>
</el-row>
@ -276,50 +185,30 @@
<el-divider></el-divider>
<el-col :span="4" style="margin-left: 15px">
<el-form-item label="创建者">
<el-input
v-model="form.creatorName"
disabled
size="small"
></el-input>
<el-input v-model="form.creatorName" disabled size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="创建时间">
<el-input
:value="form.creationTime | dateFormat"
disabled
size="small"
></el-input>
<el-input :value="form.creationTime | dateFormat" disabled size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="修改者">
<el-input
v-model="form.lastModifierName"
disabled
size="small"
></el-input>
<el-input v-model="form.lastModifierName" disabled size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="修改时间">
<el-input
style="width: 85%"
:value="form.lastModificationTime | dateFormat"
disabled
size="small"
></el-input>
<el-input style="width: 85%" :value="form.lastModificationTime | dateFormat" disabled
size="small"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false" class="difference"
> </el-button
>
<el-button type="primary" @click="addoredit" class="commonbutton"
> </el-button
>
<el-button @click="dialogVisible = false" class="difference"> </el-button>
<el-button type="primary" @click="addoredit" class="commonbutton"> </el-button>
</span>
</el-dialog>
</div>
@ -358,65 +247,30 @@ export default {
department: "",
quckDepartment: [],
medicalCenter: [],
thirdInterfaceType:[{
id:"01",
displayName:"LIS申请"
},
{
id:"02",
displayName:"收费申请"
},
{
id:"03",
displayName:"检验结果导入"
},
{
id:"04",
displayName:"Pacs结果导入"
},
{
id:"05",
displayName:"人员导入"
},
{
id:"06",
displayName:"上传网上预约"
},{
id:"07",
displayName:"网上预约查询"
},{
id:"08",
displayName:"心电图结果导入"
},{
id:"09",
displayName:"同步组合项目价格"
},{
id:"10",
displayName:"体检报告短信推送"
},{
id:"11",
displayName:"危急值短信推送"
},{
id:"12",
displayName:"第三方预约对接"
},{
id:"13",
displayName:"AI对接"
},{
id:"14",
displayName:"外检检验导入"
},{
id:"15",
displayName:"自动签到"
},{
id:"16",
displayName:"检后报告推送"
}],
thirdInterfaceType: [
{ id: "01", displayName: "LIS申请" },
{ id: "02", displayName: "收费申请" },
{ id: "03", displayName: "检验结果导入" },
{ id: "04", displayName: "Pacs结果导入" },
{ id: "05", displayName: "人员导入" },
{ id: "06", displayName: "上传网上预约" },
{ id: "07", displayName: "网上预约查询" },
{ id: "08", displayName: "心电图结果导入" },
{ id: "09", displayName: "同步组合项目价格" },
{ id: "10", displayName: "体检报告短信推送" },
{ id: "11", displayName: "危急值短信推送" },
{ id: "12", displayName: "第三方预约对接" },
{ id: "13", displayName: "AI对接" },
{ id: "14", displayName: "外检检验导入" },
{ id: "15", displayName: "自动签到" },
{ id: "16", displayName: "检后报告推送" }
],
clickTime1: 0,
clickTime2: 0
}
},
created() {
this.dictInit()
this.getmedicalCenter();
this.getlist();
},
@ -428,6 +282,15 @@ export default {
},
methods: {
dddw,
dictInit() {
postapi('/api/app/ThirdInterface/GetThirdInterfaceFlagList')
.then(res => {
if (res.code > -1) {
this.thirdInterfaceType = res.data
}
})
},
getTreeName(list, id) {
for (let i = 0; i < list.length; i++) {
if (list[i].id === id) {
@ -468,7 +331,7 @@ export default {
this.initTableData.forEach((item) => {
if (
item.displayName.toLowerCase().indexOf(keyWords.toLowerCase()) >
-1 ||
-1 ||
item.simpleCode.toLowerCase().indexOf(keyWords.toLowerCase()) > -1
// || item.shortName.toLowerCase().indexOf(keyWords.toLowerCase()) > - 1
) {
@ -496,7 +359,7 @@ export default {
// if (index > 3) {
const targetTop = this.$refs["tableData"].$el
.querySelectorAll(".el-table__body tr")
[index - 1].getBoundingClientRect().top;
[index - 1].getBoundingClientRect().top;
const containerTop = this.$refs["tableData"].$el
.querySelector(".el-table__body")
.getBoundingClientRect().top;
@ -618,7 +481,7 @@ export default {
}
});
})
.catch(() => {});
.catch(() => { });
// deletecol(this.form.id).then((res) => {
// console.log("");
// this.getlist();
@ -674,7 +537,7 @@ export default {
isActive: this.form.isActive,
}).then((res) => {
if (res.code != -1) {
this.curRow={...res.data}
this.curRow = { ...res.data }
this.getlist();
this.dialogVisible = false;
//this.$message.success("");
@ -717,36 +580,45 @@ export default {
@import "../../assets/css/global_form.css";
@import "../../assets/css/global_input.css";
@import "../../assets/css/global.css";
.box {
display: flex;
flex-direction: column;
}
:deep .el-form-item {
margin-bottom: 14px;
}
/* el-dialog的头部样式 */
:deep .el-dialog__header {
padding: 11px 20px 11px;
}
/* el-dialog的主体样式 */
:deep .el-dialog__body {
padding: 0px 20px 0px;
}
/* el-divider样式 */
:deep .el-divider--horizontal {
margin: 0px 0 12px;
}
/* el-dialog的底部样式 */
:deep .el-dialog__footer {
padding: 0px 20px 14px;
}
.seachinput {
width: 250px;
margin-right: 110px;
}
:deep .seachinput .el-select {
width: 100%;
}
:deep .el-checkbox__input.is-disabled.is-checked .el-checkbox__inner {
background-color: #409eff !important;
border-color: #409eff !important;

78
src/views/common-settings/ItemType.vue

@ -28,6 +28,9 @@
">{{ scope.row.displayName }}</span>
</span>
</template>
</el-table-column>
<el-table-column prop="informedConsentTemplateName" label="知情同意书模板">
</el-table-column>
<el-table-column prop="simpleCode" label="拼音简码"></el-table-column>
<el-table-column prop="displayOrder" label="排序"></el-table-column>
@ -113,6 +116,8 @@
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="检查类别" prop="checkTypeFlag">
<el-select v-model="form.checkTypeFlag" placeholder="请选择" style="width: 100%" size="small">
@ -129,6 +134,19 @@
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="知情书模板" prop="informedConsentTemplateId">
<el-select style="width: 100%" v-model="form.informedConsentTemplateId" placeholder="请选择" size="small"
clearable>
<el-option v-for="item in acceptTemplates" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="合并组合" prop="isMergeAsbitem">
<!-- <el-select v-model="form.isMergeAsbitem" placeholder="请选择" style="width: 100%" size="small">
@ -172,9 +190,9 @@ import {
projectedid,
} from "@/request/commonapi";
import { basicsetings, physicalexaminationlist } from "@/request/systemapi";
import { getapi, putapi } from "@/api/api";
import { getapi, putapi, postapi } from "@/api/api";
import { mapState } from "vuex";
import { objCopy } from "@/utlis/proFunc";
import { objCopy, dddw } from "@/utlis/proFunc";
import Sortable from "sortablejs";
import AcceptTemplate from "@/components/common/AcceptTemplate.vue";
export default {
@ -185,6 +203,7 @@ export default {
return {
departmentname: "",
itemtypedata: [],
acceptTemplates: [],
rules: {
displayName: [
{ required: true, message: "请输入名称", trigger: "blur" },
@ -256,7 +275,8 @@ export default {
medicalReportTypeId: "",
isWrap: "N", //
lineModeFlagBox: false, // box
isCheckRequest: "N"
isCheckRequest: "N",
informedConsentTemplateId: null
},
value: "", //
dialogVisible: false,
@ -281,16 +301,28 @@ export default {
this.getlist();
},
mounted() {
this.dictInit()
this.rowDrop();
},
computed: {
...mapState(["window", "dialogWin"]),
},
methods: {
dddw,
cascaderchang(v) {
this.departmentname = v[v.length - 1];
},
dictInit() {
//
postapi("/api/app/InformedConsentTemplate/GetList").then((res) => {
if (res.code > -1) {
this.acceptTemplates = res.data;
}
});
},
treeToTable(tree, level, arr = []) {
tree.map((item, index) => {
this.$set(item, "level", level);
@ -501,8 +533,12 @@ export default {
//
btnAcceptTemplate() {
if(!this.row?.informedConsentTemplateId){
this.$message.warning({showClose:true,message:'没有选中可操作的模板!'})
return
}
this.dialogWin.acceptTemplate = true
this.acceptTemplateParams.id = this.row.id
this.acceptTemplateParams.id = this.row.informedConsentTemplateId
this.acceptTemplateParams.brushTimes++
},
@ -562,17 +598,11 @@ export default {
addoredit() {
this.$refs.ruleForm.validate((v) => {
if (v) {
let body = Object.assign({}, this.form)
if (!body.informedConsentTemplateId) delete body.informedConsentTemplateId
if (this.title == 1) {
if (this.tableData.length == 0) {
pojectadd({
displayName: this.form.displayName,
isMergeAsbitem: this.form.isMergeAsbitem,
checkTypeFlag: this.form.checkTypeFlag,
guidTypeId: this.form.guidTypeId,
medicalReportTypeId: this.form.medicalReportTypeId,
isWrap: this.form.isWrap,
isCheckRequest: this.form.isCheckRequest
}).then((res) => {
pojectadd(body).then((res) => {
if (res.code != -1) {
//this.$message.success("");
this.getlist();
@ -582,16 +612,7 @@ export default {
}
});
} else {
pojectadd({
parentId: this.form.parentId,
displayName: this.form.displayName,
isMergeAsbitem: this.form.isMergeAsbitem,
checkTypeFlag: this.form.checkTypeFlag,
guidTypeId: this.form.guidTypeId,
medicalReportTypeId: this.form.medicalReportTypeId,
isWrap: this.form.isWrap,
isCheckRequest: this.form.isCheckRequest
}).then((res) => {
pojectadd(body).then((res) => {
if (res.code != -1) {
//this.$message.success("");
this.getlist();
@ -604,16 +625,7 @@ export default {
// console.log(this.form);
} else if (this.title == 2) {
projectedid(this.form.id, {
parentId: this.form.parentId,
displayName: this.form.displayName,
isMergeAsbitem: this.form.isMergeAsbitem,
checkTypeFlag: this.form.checkTypeFlag,
guidTypeId: this.form.guidTypeId,
medicalReportTypeId: this.form.medicalReportTypeId,
isWrap: this.form.isWrap,
isCheckRequest: this.form.isCheckRequest
}).then((res) => {
projectedid(this.form.id, body).then((res) => {
if (res.code != -1) {
//this.$message.success("");
this.getlist();

9
src/views/fee-settings/Asbitem.vue

@ -1953,7 +1953,7 @@ export default {
//
btnAcceptTemplate() {
if(this.curRow?.informedConsentTemplateId){
if(!this.curRow?.informedConsentTemplateId){
this.$message.warning({showClose:true,message:'该项目未设置知情同意书模板!'})
return
}
@ -2146,13 +2146,14 @@ export default {
this.HcAsbitemBrush++;
this.PreAsbitemBrush++;
},
rowick(row) {
this.clickTime1 = new Date().getTime();
this.curRow = row;
this.form = { ...row };
this.values = row.itemTypeId;
setTimeout(() => {
if (this.clickTime1 > this.clickTime2) {
this.curRow = row;
this.form = { ...row };
this.values = row.itemTypeId;
this.refresh(row);
}
}, 400);

Loading…
Cancel
Save