Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
闫晓茹 2024-04-09 13:32:46 +08:00
commit ac6a76b98e
16 changed files with 190 additions and 314 deletions

View File

@ -9,7 +9,7 @@
<div class="list">
<div class="item" v-for="(item, index) in categorylist" :key="item.id"
@click="clickcategory(item, index)"
:class="item.visitMethod == 'BE_HOSPITALIZED' && index == categoryindex ? 'zyitem' : item.visitMethod == 'OUTPATIENT_SERVICE' && index == categoryindex ? 'mzitem' : ''">
:class="item.visitMethod == 'BE_IN_HOSPITAL' && index == categoryindex ? 'zyitem' : item.visitMethod == 'OUTPATIENT_SERVICE' && index == categoryindex ? 'mzitem' : ''">
<div class="time">{{ item.visitDate }}
</div>
<div class="name">
@ -23,58 +23,42 @@
{{ item.createBy }}
</span>
</div>
<el-tag v-if="item.visitMethod == 'BE_HOSPITALIZED'" class="type" size="mini">住院</el-tag>
<el-tag v-if="item.visitMethod == 'BE_IN_HOSPITAL'" class="type" size="mini">住院</el-tag>
<el-tag v-if="item.visitMethod == 'OUTPATIENT_SERVICE'" class="type" size="mini"
type="success">门诊</el-tag>
</div>
</div>
</div>
<div class="rightheader">
<div class="toptitle" v-if="categoryItem && categoryItem.visitMethod == 'BE_HOSPITALIZED'">
<div class="toptitle" v-if="categoryItem && categoryItem.visitMethod == 'BE_IN_HOSPITAL'">
<div style="border-radius: 10px 0 0 10px" :class="recordindex == 0 ? 'zyclass' : ''"
@click="clickrecord(0)">
入院记录
</div>
<div class="centerdiv" :class="recordindex == 1 ? 'zyclass' : ''" @click="clickrecord(1)">出院记录
<div class="centerdiv" :class="recordindex == 1 ? 'zyclass' : ''" @click="clickrecord(1)">
出院记录
</div>
<div style="border-radius: 0 10px 10px 0" :class="recordindex == 2 ? 'zyclass' : ''"
@click="clickrecord(2)">
手术记录</div>
</div>
<div class="toptitle" v-if="categoryItem && categoryItem.visitMethod == 'OUTPATIENT_SERVICE'">
<div style="border-radius: 10px" :class="recordindex == 3 ? 'mzclass' : ''" @click="clickrecord(0)">
<div style="border-radius: 10px" :class="recordindex == 3 ? 'mzclass' : ''" @click="clickrecord(3)">
门诊记录
</div>
</div>
<div class="righttext" v-if="categoryItem">
<div v-if="recordindex == 0 && recordlist">
<p>婚姻史{{ recordlist.maritalHistory }}</p>
<p>个人史{{ recordlist.personalHistory }}</p>
<p>月经生育史{{ recordlist.menstrualFertilityHistory }}</p>
<p>现病史{{ recordlist.presentIllnessHistory }}</p>
<p>家族史{{ recordlist.familyHistory }}</p>
<p>既往史{{ recordlist.pastHistory }}</p>
<div v-if="recordindex == 0">
<p>{{ categoryItem.inHospitalInfo }}</p>
</div>
<div v-if="recordindex == 1 && recordlist">
<p>入院诊断{{ recordlist.admissionDiagnosis }}</p>
<p>入院情况{{ recordlist.admissionSituation }}</p>
<p>诊疗经过{{ recordlist.diagnosisTreatmentProcess }}</p>
<p>出院诊断{{ recordlist.dischargeDiagnosis }}</p>
<p>出院情况{{ recordlist.dischargeStatus }}</p>
<p>出院医嘱{{ recordlist.dischargeOrder }}</p>
<div v-if="recordindex == 1">
<p>{{ categoryItem.outHospitalInfo }}</p>
</div>
<div v-if="recordindex == 2 && recordlist">
<p>手术名称{{ recordlist.operationName }}</p>
<p>手术日期{{ recordlist.operationDate }}</p>
<p>手术麻醉方式{{
recordlist.operationAnesthesiaWay == 'GENERAL_ANESTHESIA' ? '全身麻醉' :
recordlist.operationAnesthesiaWay == 'LOCAL_ANESTHESIA' ? '局部麻醉' : '' }}
</p>
<p>手术入路{{ recordlist.operationApproach }}</p>
<p>手术方式{{ recordlist.operationWay }}</p>
<div v-if="recordindex == 2">
<p>{{ categoryItem.surgicalRecord }}</p>
</div>
<div v-if="recordindex == 3">
<p>{{ categoryItem.outpatientVisitInfo }}</p>
<p>{{ categoryItem.inHospitalInfo }}</p>
</div>
</div>
</div>
@ -133,22 +117,13 @@ export default {
//
clickrecord(index) {
this.recordindex = index
if (index == 0) {
this.InRecordinfo();
} else if (index == 1) {
this.OutRecordinfo();
} else if (index == 2) {
this.OperationRecordinfo();
}
},
//item
clickcategory(item, index) {
console.log(index, item)
this.categoryindex = index
this.categoryItem = item
if (item.visitMethod == 'BE_HOSPITALIZED') {
if (item.visitMethod == 'BE_IN_HOSPITAL') {
this.recordindex = 0
this.InRecordinfo();
} else if (item.visitMethod == 'OUTPATIENT_SERVICE') {
this.recordindex = 3
}
@ -162,25 +137,6 @@ export default {
}
})
},
//
OperationRecordinfo() {
OperationRecord(this.categoryItem.id).then(res => {
this.recordlist = res.data
})
},
//
OutRecordinfo() {
OutRecord(this.categoryItem.id).then(res => {
this.recordlist = res.data
})
},
//
InRecordinfo() {
InRecord(this.categoryItem.id).then(res => {
this.recordlist = res.data
})
},
//
//info
info() {
var date = new Date();

View File

@ -284,7 +284,7 @@ export default {
this.uploadsave();
},
uploadsave() {
if (this.signPackage.healthManageId) {
if (this.signPackage.healthManageId && this.attendingPhysicianlist?.length > 0) {
this.signPackage.healthManageName = this.attendingPhysicianlist.find(e => e.userId == this.signPackage.healthManageId).nickName
}
this.form.signPackage = this.signPackage

View File

@ -1,23 +1,9 @@
<template>
<div class="app-container">
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="68px"
>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="创建时间">
<el-date-picker
v-model="daterangeCreateTime"
style="width: 240px"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
<el-date-picker v-model="daterangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd" type="daterange"
range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</el-form-item>
<!-- <el-form-item label="素材状态" prop="materialsStatus">
<el-select
@ -34,12 +20,8 @@
</el-select>
</el-form-item> -->
<el-form-item label="素材名称" prop="materialsName">
<el-input
v-model="queryParams.materialsName"
placeholder="请输入素材名称"
clearable
@keyup.enter.native="handleQuery"
/>
<el-input v-model="queryParams.materialsName" placeholder="请输入素材名称" clearable
@keyup.enter.native="handleQuery" />
</el-form-item>
<!-- <el-form-item label="素材来源" prop="materialsName">
<el-select
@ -58,101 +40,53 @@
</el-form-item> -->
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="mini"
@click="handleQuery"
>搜索</el-button
>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
>重置</el-button
>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['manage:materials:add']"
>新增素材</el-button
>
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['manage:materials:add']">新增素材</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
@click="handleDelete"
:disabled="multiple"
v-hasPermi="['manage:materials:remove']"
>批量删除</el-button
>
<el-button type="danger" plain icon="el-icon-delete" size="mini" @click="handleDelete" :disabled="multiple"
v-hasPermi="['manage:materials:remove']">批量删除</el-button>
</el-col>
<right-toolbar
:showSearch.sync="showSearch"
@queryTable="getList"
></right-toolbar>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-tabs
v-model="queryParams.materialsType"
type="card"
@tab-click="handleClick"
>
<el-tabs v-model="queryParams.materialsType" type="card" @tab-click="handleClick">
<el-tab-pane label="图片" name="IMAGE_TEXT"></el-tab-pane>
<el-tab-pane label="视频" name="VIDEO"></el-tab-pane>
</el-tabs>
<div class="bodytopxj">
<div class="bodylist" v-for="item in materialsList" :key="item.id">
<el-checkbox
v-model="item.checked"
@change="changecheck($event, item)"
></el-checkbox>
<el-checkbox v-model="item.checked" @change="changecheck($event, item)"></el-checkbox>
<div @click.stop="viewshow(item)">
<img
:src="baseUrl + item.materialsFilePath"
alt=""
v-if="item.materialsFilePath && !item.videoCoverFilePath"
/>
<img
:src="baseUrl + item.videoCoverFilePath"
alt=""
v-if="item.videoCoverFilePath && item.materialsFilePath"
/>
<img :src="baseUrl + item.materialsFilePath" alt=""
v-if="item.materialsFilePath && !item.videoCoverFilePath" />
<img :src="baseUrl + item.videoCoverFilePath" alt=""
v-if="item.videoCoverFilePath && item.materialsFilePath" />
<div class="texttitle">{{ item.materialsName }}</div>
<div class="dataliat">
创建人/创建时间<span>{{ item.createBy }}</span
>/<span>{{ item.createTime }}</span>
创建人/创建时间<span>{{ item.createBy }}</span>/<span>{{ item.createTime }}</span>
</div>
<!-- <div class="dataliat">素材来源</div>
<div class="dataliat">标签暂无</div> -->
<div
class="dataliat bq"
v-if="
item.indications ||
item.drugName ||
item.applicableDiseases ||
item.surgicalName ||
item.inspectionItems ||
item.checkItems
"
>
<div class="dataliat bq" v-if="item.indications ||
item.drugName ||
item.applicableDiseases ||
item.surgicalName ||
item.inspectionItems ||
item.checkItems
">
标签
<span v-if="item.indications">{{ item.indications }}</span>
<span v-if="item.drugName">{{ item.drugName }}</span>
<span v-if="item.applicableDiseases"
>{{ item.applicableDiseases }}</span
>
<span v-if="item.applicableDiseases">{{ item.applicableDiseases }}</span>
<span v-if="item.surgicalName">{{ item.surgicalName }}</span>
<span v-if="item.inspectionItems"
>{{ item.inspectionItems }}</span
>
<span v-if="item.inspectionItems">{{ item.inspectionItems }}</span>
<span v-if="item.checkItems">{{ item.checkItems }}</span>
</div>
<div class="dataliat bq" v-else>标签暂无</div>
@ -162,42 +96,15 @@
</div>
</div>
<pagination
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
@pagination="getList" />
<!-- 添加或修改素材信息对话框 -->
<el-dialog
:title="title"
:visible.sync="open"
width="800px"
append-to-body
v-if="open"
>
<el-form
ref="form"
:model="form"
:rules="rules"
label-width="110px"
:inline="true"
>
<el-dialog :title="title" :visible.sync="open" width="800px" append-to-body v-if="open">
<el-form ref="form" :model="form" :rules="rules" label-width="110px" :inline="true">
<el-form-item label="素材类型" prop="materialsType">
<el-radio
v-model="form.materialsType"
label="IMAGE_TEXT"
@change="radioChange('IMAGE_TEXT')"
>图文</el-radio
>
<el-radio
v-model="form.materialsType"
label="VIDEO"
@change="radioChange('VIDEO')"
>视频</el-radio
>
<el-radio v-model="form.materialsType" label="IMAGE_TEXT" @change="radioChange('IMAGE_TEXT')">图文</el-radio>
<el-radio v-model="form.materialsType" label="VIDEO" @change="radioChange('VIDEO')">视频</el-radio>
</el-form-item>
<br />
<el-form-item label="素材名称" prop="materialsName">
@ -205,48 +112,19 @@
</el-form-item>
<br />
<el-form-item
label="素材上传"
prop="materialsFilePath"
v-if="form.materialsType == 'IMAGE_TEXT'"
>
<stationAcatar
@imgUrl="imgUrl"
:img="form.materialsFilePath"
:type="'materialsCoverUrl'"
/>
<el-form-item label="素材上传" prop="materialsFilePath" v-if="form.materialsType == 'IMAGE_TEXT'">
<stationAcatar @imgUrl="imgUrl" :img="form.materialsFilePath" :type="'materialsCoverUrl'" />
</el-form-item>
<el-form-item
label="视频封面"
prop="videoCoverFilePath"
v-if="form.materialsType == 'VIDEO'"
>
<stationAcatar
@imgUrl="imgUrl3"
:img="form.videoCoverFilePath"
:type="'materialsCoverUrl'"
/>
<el-form-item label="视频封面" prop="videoCoverFilePath" v-if="form.materialsType == 'VIDEO'">
<stationAcatar @imgUrl="imgUrl3" :img="form.videoCoverFilePath" :type="'materialsCoverUrl'" />
</el-form-item>
<el-form-item
label="视频素材上传"
prop="materialsFilePath"
v-if="form.materialsType == 'VIDEO'"
>
<trainingAvatar
@imgUrl="imgUrl2"
:tovideo="form.materialsFilePath"
:type="'materialsVideoUrl'"
/>
<el-form-item label="视频素材上传" prop="materialsFilePath" v-if="form.materialsType == 'VIDEO'">
<trainingAvatar @imgUrl="imgUrl2" :tovideo="form.materialsFilePath" :type="'materialsVideoUrl'" />
</el-form-item>
<el-form-item label="素材摘要" prop="materialsAbstract">
<el-input
style="width: 530px"
v-model="form.materialsAbstract"
type="textarea"
placeholder="请输入内容"
/>
<el-input style="width: 530px" v-model="form.materialsAbstract" type="textarea" placeholder="请输入内容" />
</el-form-item>
<div style="margin: 20px; font-weight: 700; font-size: 18px">
标签管理
@ -256,10 +134,7 @@
<el-input v-model="form.indications" placeholder="请输入适用症状" />
</el-form-item>
<el-form-item label="适用疾病" prop="applicableDiseases">
<el-input
v-model="form.applicableDiseases"
placeholder="请输入适用疾病"
/>
<el-input v-model="form.applicableDiseases" placeholder="请输入适用疾病" />
</el-form-item>
<el-form-item label="药物名称" prop="drugName">
<el-input v-model="form.drugName" placeholder="请输入药物名称" />
@ -271,24 +146,11 @@
<el-input v-model="form.checkItems" placeholder="请输入检查项目" />
</el-form-item>
<el-form-item label="检验项目" prop="inspectionItems">
<el-input
v-model="form.inspectionItems"
placeholder="请输入检验项目"
/>
<el-input v-model="form.inspectionItems" placeholder="请输入检验项目" />
</el-form-item>
<el-form-item label="人群名称" prop="crowName">
<el-select
v-model="form.crowName"
placeholder="请选择"
style="width: 206px"
@change="crowNamechange"
>
<el-option
v-for="item in optionscrowName"
:key="item.id"
:label="item.crowdName"
:value="item.id"
>
<el-select v-model="form.crowName" placeholder="请选择" style="width: 206px" @change="crowNamechange">
<el-option v-for="item in optionscrowName" :key="item.id" :label="item.crowdName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
@ -302,17 +164,9 @@
<el-dialog title="预览" :visible.sync="openview" width="60%">
<div class="viewbody">
<div class="left">
<video
v-if="queryParams.materialsType == 'VIDEO'"
ref="myVideo"
:src="baseUrl + viewform.materialsFilePath"
controls
></video>
<img
:src="baseUrl + viewform.materialsFilePath"
alt=""
v-if="queryParams.materialsType == 'IMAGE_TEXT'"
/>
<video v-if="queryParams.materialsType == 'VIDEO'" ref="myVideo" :src="baseUrl + viewform.materialsFilePath"
controls></video>
<img :src="baseUrl + viewform.materialsFilePath" alt="" v-if="queryParams.materialsType == 'IMAGE_TEXT'" />
</div>
<div class="right">
<div class="nametitle">素材名称</div>
@ -433,7 +287,7 @@ export default {
//
form: {},
id: null,
show:false,
show: false,
//
rules: {
materialsName: [
@ -473,8 +327,8 @@ export default {
this.form.videoCoverFilePath = null
} else if (this.title == '修改素材信息') {
getMaterials(this.id).then(response => {
if(response.data.videoCoverFilePath){
this.form= response.data;
if (response.data.videoCoverFilePath) {
this.form = response.data;
}
});
if (this.form.videoCoverFilePath) {
@ -497,8 +351,8 @@ export default {
this.form.videoCoverFilePath = null
} else if (this.title == '修改素材信息') {
getMaterials(this.id).then(response => {
if(!response.data.videoCoverFilePath){
this.form= response.data;
if (!response.data.videoCoverFilePath) {
this.form = response.data;
}
});
if (!this.form.videoCoverFilePath) {
@ -612,10 +466,10 @@ export default {
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
if (this.daterangeCreateTime) {
if (this.daterangeCreateTime?.length > 0) {
this.queryParams.createTimeStart = this.daterangeCreateTime[0]
this.queryParams.createTimeEnd = this.daterangeCreateTime[1]
}else{
} else {
this.queryParams.createTimeStart = null
this.queryParams.createTimeEnd = null
@ -723,18 +577,22 @@ export default {
// top: -84px;
left: 8px;
}
::v-deep .el-textarea__inner {
height: 100px;
}
video {
height: 500px;
width: 100%;
}
.viewbody {
width: 100%;
height: 500px;
// background: #409eff;
display: flex;
.left {
overflow: auto;
@ -742,25 +600,30 @@ video {
height: 500px;
// background: #989992;
}
img {
// height: 100%;
// width: 100%;
}
.right {
width: 20%;
overflow: auto;
// background: red;
margin-left: 30px;
.nametitle {
font-size: 14px;
font-weight: 600;
}
.nameitem {
color: #959595;
margin: 13px;
}
}
}
.bodytopxj {
width: 100%;
display: flex;
@ -768,6 +631,7 @@ video {
align-items: center;
flex-wrap: wrap;
justify-content: flex-start;
// align-content: space-between;
.bodylist {
width: 19%;
@ -777,6 +641,7 @@ video {
position: relative;
// margin-bottom: 10px;
margin: 6px;
.texttitle {
white-space: nowrap;
overflow: hidden;
@ -784,6 +649,7 @@ video {
font-weight: 700;
margin: 5px 0px 5px 10px;
}
//
.dataliat {
white-space: nowrap;
@ -793,13 +659,16 @@ video {
font-size: 12px;
color: #989992;
}
.bq {
width: 155px;
}
img {
width: 100%;
height: 100px;
}
.label {
position: absolute;
right: 0px;
@ -811,4 +680,3 @@ video {
}
}
</style>

View File

@ -246,10 +246,10 @@ export default {
}
},
uploadsave() {
if (this.signPackage.servicePackageId) {
if (this.signPackage.servicePackageId && this.packagelist?.length > 0) {
this.signPackage.packageName = this.packagelist.find(e => e.id == this.signPackage.servicePackageId).packageName
}
if (this.form.record.healthManageId) {
if (this.form.record.healthManageId && this.attendingPhysicianlist?.length > 0) {
this.form.record.healthManageName = this.attendingPhysicianlist.find(e => e.userId == this.form.record.healthManageId).nickName
}
this.form.signPackage = this.signPackage

View File

@ -264,11 +264,11 @@ export default {
},
/** 搜索按钮操作 */
handleQuery() {
if (this.visitDate.length > 0) {
if (this.visitDate?.length > 0) {
this.queryParams.visitDateStart = this.visitDate[0]
this.queryParams.visitDateEnd = this.visitDate[1]
}
if (this.admissionTime.length > 0) {
if (this.admissionTime?.length > 0) {
this.queryParams.admissionTimeStart = this.admissionTime[0]
this.queryParams.admissionTimeEnd = this.admissionTime[1]
}

View File

@ -574,7 +574,7 @@ export default {
},
/** 搜索按钮操作 */
handleQuery() {
if (this.appointmentDate.length > 0) {
if (this.appointmentDate?.length > 0) {
this.queryParams.appointmentDateStart = this.appointmentDate[0]
this.queryParams.appointmentDateEnd = this.appointmentDate[1]
}
@ -622,19 +622,19 @@ export default {
},
/** 提交按钮 */
submitForm() {
if (this.form.hospitalAgencyId && this.hospitalAgencylist.length > 0) {
if (this.form.hospitalAgencyId && this.hospitalAgencylist?.length > 0) {
this.form.hospitalAgencyName = this.hospitalAgencylist.find(e => e.id == this.form.hospitalAgencyId).agencyName
}
if (this.form.campusAgencyId && this.form_campusAgencylist.length > 0) {
if (this.form.campusAgencyId && this.form_campusAgencylist?.length > 0) {
this.form.campusAgencyName = this.form_campusAgencylist.find(e => e.id == this.form.campusAgencyId).agencyName
}
if (this.form.departmentId && this.form_departmentlist.length > 0) {
if (this.form.departmentId && this.form_departmentlist?.length > 0) {
this.form.departmentName = this.form_departmentlist.find(e => e.id == this.form.departmentId).departmentName
}
if (this.form.hospitalAgencyId && this.form_wardlist.length > 0) {
if (this.form.hospitalAgencyId && this.form_wardlist?.length > 0) {
this.form.wardName = this.form_wardlist.find(e => e.id == this.form.wardId).departmentName
}
if (this.form.certificateIssuingDoctorId && this.form_attendingPhysicianlist.length > 0) {
if (this.form.certificateIssuingDoctorId && this.form_attendingPhysicianlist?.length > 0) {
this.form.certificateIssuingDoctorName = this.form_attendingPhysicianlist.find(e => e.userId == this.form.certificateIssuingDoctorId).nickName
}
this.$refs["form"].validate(valid => {

View File

@ -607,7 +607,7 @@ export default {
},
/** 搜索按钮操作 */
handleQuery() {
if (this.admissionTime.length > 0) {
if (this.admissionTime?.length > 0) {
this.queryParams.admissionTimeStart = this.admissionTime[0]
this.queryParams.admissionTimeEnd = this.admissionTime[1]
}
@ -656,19 +656,19 @@ export default {
},
/** 提交按钮 */
submitForm() {
if (this.form.hospitalAgencyId && this.hospitalAgencylist.length > 0) {
if (this.form.hospitalAgencyId && this.hospitalAgencylist?.length > 0) {
this.form.hospitalAgencyName = this.hospitalAgencylist.find(e => e.id == this.form.hospitalAgencyId).agencyName
}
if (this.form.campusAgencyId && this.form_campusAgencylist.length > 0) {
if (this.form.campusAgencyId && this.form_campusAgencylist?.length > 0) {
this.form.campusAgencyName = this.form_campusAgencylist.find(e => e.id == this.form.campusAgencyId).agencyName
}
if (this.form.departmentId && this.form_departmentlist.length > 0) {
if (this.form.departmentId && this.form_departmentlist?.length > 0) {
this.form.departmentName = this.form_departmentlist.find(e => e.id == this.form.departmentId).departmentName
}
if (this.form.hospitalAgencyId && this.form_wardlist.length > 0) {
if (this.form.hospitalAgencyId && this.form_wardlist?.length > 0) {
this.form.wardName = this.form_wardlist.find(e => e.id == this.form.wardId).departmentName
}
if (this.form.attendingPhysicianId && this.form_attendingPhysicianlist.length > 0) {
if (this.form.attendingPhysicianId && this.form_attendingPhysicianlist?.length > 0) {
this.form.attendingPhysicianName = this.form_attendingPhysicianlist.find(e => e.userId == this.form.attendingPhysicianId).nickName
}
this.$refs["form"].validate(valid => {

View File

@ -603,7 +603,7 @@ export default {
},
methods: {
addsignupload() {
if (this.addsignform.billingDoctorId && this.addsignattendingPhysicianlist.length > 0) {
if (this.addsignform.billingDoctorId && this.addsignattendingPhysicianlist?.length > 0) {
this.addsignform.billingDoctorName = this.addsignattendingPhysicianlist.find(e => e.userId == this.addsignform.billingDoctorId).nickName
}
intentionalSign(this.addsignform).then(res => {
@ -714,7 +714,7 @@ export default {
},
/** 搜索按钮操作 */
handleQuery() {
if (this.dischargeTime.length > 0) {
if (this.dischargeTime?.length > 0) {
this.queryParams.dischargeTimeStart = this.dischargeTime[0]
this.queryParams.dischargeTimeEnd = this.dischargeTime[1]
}
@ -769,19 +769,19 @@ export default {
} else if (this.form.visitMethod == 'OUTPATIENT_SERVICE') {
this.form.patientType = 'OUTPATIENT'
}
if (this.form.hospitalAgencyId && this.hospitalAgencylist.length > 0) {
if (this.form.hospitalAgencyId && this.hospitalAgencylist?.length > 0) {
this.form.hospitalAgencyName = this.hospitalAgencylist.find(e => e.id == this.form.hospitalAgencyId).agencyName
}
if (this.form.campusAgencyId && this.form_campusAgencylist.length > 0) {
if (this.form.campusAgencyId && this.form_campusAgencylist?.length > 0) {
this.form.campusAgencyName = this.form_campusAgencylist.find(e => e.id == this.form.campusAgencyId).agencyName
}
if (this.form.departmentId && this.form_departmentlist.length > 0) {
if (this.form.departmentId && this.form_departmentlist?.length > 0) {
this.form.departmentName = this.form_departmentlist.find(e => e.id == this.form.departmentId).departmentName
}
if (this.form.hospitalAgencyId && this.form_wardlist.length > 0) {
if (this.form.hospitalAgencyId && this.form_wardlist?.length > 0) {
this.form.wardName = this.form_wardlist.find(e => e.id == this.form.wardId).departmentName
}
if (this.form.attendingPhysicianId && this.form_attendingPhysicianlist.length > 0) {
if (this.form.attendingPhysicianId && this.form_attendingPhysicianlist?.length > 0) {
this.form.attendingPhysicianName = this.form_attendingPhysicianlist.find(e => e.userId == this.form.attendingPhysicianId).nickName
}
this.$refs["form"].validate(valid => {

View File

@ -22,6 +22,10 @@
</div>
<div class="nodes">
<div class="nodenames">
<div class="timetitle">
管理路径节点({{ list.length }})
<i class="el-icon-circle-plus-outline" @click="additem"></i>
</div>
<el-timeline>
<el-timeline-item v-for="(item, index) in list" :key="index"
:color="listindex == index ? '#409EFF' : ''" @click.native='clicktimelineitem(item, index)'>
@ -40,7 +44,6 @@
</div>
<div>
<i class="el-icon-delete" @click="delitem(item, index)"></i>
<i class="el-icon-circle-plus-outline" @click="additem(item)"></i>
</div>
</div>
<el-card :class="listindex == index ? 'cards' : ''">
@ -115,7 +118,7 @@ export default {
this.listindex = index
},
additem(item) {
item.push({
this.list.push({
})
},
delitem(item, index) {
@ -141,7 +144,21 @@ export default {
background-color: #fff;
height: 700px;
width: 25%;
padding: 20px 40px 0 0;
padding: 0 40px 0 40px;
background-color: #fff;
overflow: scroll;
.timetitle {
height: 60px;
display: flex;
align-items: center;
justify-content: space-between;
}
::v-deep .el-timeline {
width: 100%;
padding: 15px 0 0 !important;
}
}
.nodetexts {

View File

@ -260,7 +260,7 @@
<template slot-scope="scope">
<span
>{{ scope.row.visitMethod == "OUTPATIENT_SERVICE" ? "门诊" : "" }}
{{ scope.row.visitMethod == "BE_HOSPITALIZED" ? "住院" : "" }}
{{ scope.row.visitMethod == "BE_IN_HOSPITAL" ? "住院" : "" }}
</span>
</template></el-table-column
>

View File

@ -193,7 +193,7 @@ export default {
this.classificationform.diseaseTypeName = ''
},
changedepartment(e) {
this.classificationform.departmentName = this.departmentlist.find(el => el.id == e).departmentName
this.classificationform.departmentName = this.departmentlist?.find(el => el.id == e).departmentName
let query = {
departmentId: e
}
@ -202,7 +202,7 @@ export default {
})
},
changediseaseType(e) {
this.classificationform.diseaseTypeName = this.diseaselist.find(el => el.id == e).diseaseTypeName
this.classificationform.diseaseTypeName = this.diseaselist?.find(el => el.id == e).diseaseTypeName
},
//
switchstatus(e, item) {

View File

@ -495,9 +495,7 @@ export default {
},
//
changeTaskType(name, taskSubdivision) {
console.log(name)
console.log(this.selectTaskTypeList.find(e => e.taskTypeName == name))
let id = this.selectTaskTypeList.find(e => e.taskTypeName == name).id
let id = this.selectTaskTypeList?.find(e => e.taskTypeName == name).id
taskPartitionList(id).then(res => {
this.taskPartitionList = res.data
this.form.taskSubdivision = ''

View File

@ -133,10 +133,10 @@
</el-col>
</el-row>
<!-- 添加或修改专病路径信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-dialog :title="title" :visible.sync="open" width="560px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-form-item label="所属科室" prop="departmentId">
<el-select v-model="form.departmentId" placeholder="请选择所属科室" style="width:380px">
<el-select v-model="form.departmentId" placeholder="请选择所属科室" style="width:380px" @change="changedepartment">
<el-option v-for="item in adddepartmentlist" :key="item.id" :label="item.departmentName" :value="item.id" />
</el-select>
</el-form-item>
@ -145,11 +145,16 @@
<el-option v-for="item in adddiseaselist" :key="item.id" :label="item.diseaseTypeName" :value="item.id" />
</el-select>
</el-form-item>
<el-form-item label="所属服务包" prop="servicePackageId">
<el-select v-model="form.servicePackageId" placeholder="请选择所属服务包" style="width:380px" multiple>
<el-option v-for="item in addpackagelist" :key="item.id" :label="item.packageName" :value="item.id" />
</el-select>
</el-form-item>
<el-form-item label="路径名称" prop="routeName">
<el-input v-model="form.routeName" placeholder="请输入路径名称" />
<el-input v-model="form.routeName" placeholder="请输入路径名称" style="width:380px" />
</el-form-item>
<el-form-item label="版本号" prop="version">
<el-input v-model="form.version" placeholder="请输入版本号" />
<el-input v-model="form.version" placeholder="请输入版本号" style="width:380px" />
</el-form-item>
<el-form-item label="路径分类" prop="routeClassify">
<el-select v-model="form.routeClassify" placeholder="请选择路径分类" style="width:380px">
@ -167,10 +172,10 @@
</el-select>
</el-form-item>
<el-form-item label="排序" prop="routeSort">
<el-input v-model="form.routeSort" placeholder="请输入排序" />
<el-input v-model="form.routeSort" placeholder="请输入排序" style="width:380px" />
</el-form-item>
<el-form-item label="备注信息" prop="routeRemark">
<el-input v-model="form.routeRemark" placeholder="请输入备注信息" />
<el-input v-model="form.routeRemark" placeholder="请输入备注信息" style="width:380px" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@ -186,6 +191,9 @@ import {
listSpecialDiseaseRoute, getSpecialDiseaseRoute, delSpecialDiseaseRoute, addSpecialDiseaseRoute, updateSpecialDiseaseRoute,
editReleaseStatus, selectDiseaseCount, getDepartmentList, getdiseaseList
} from "@/api/system/specialDiseaseRoute";
import {
servicepackageinfo
} from '@/api/manage/signRecord.js'
export default {
name: "SpecialDiseaseRoute",
data() {
@ -215,6 +223,7 @@ export default {
departmentId: null,
departmentName: null,
diseaseTypeId: null,
servicePackageId: null,
diseaseTypeName: null,
routeName: null,
routeCode: null,
@ -235,6 +244,9 @@ export default {
diseaseTypeId: [
{ required: true, message: "所属病种不能为空", trigger: "blur" }
],
servicePackageId: [
{ required: true, message: "所属服务包不能为空", trigger: "blur" }
],
routeName: [
{ required: true, message: "路径名称不能为空", trigger: "blur" }
],
@ -258,6 +270,7 @@ export default {
departmentName: '',
adddepartmentlist: [],
adddiseaselist: [],
addpackagelist: [],
};
},
created() {
@ -274,9 +287,16 @@ export default {
getDepartmentList().then(res => {
this.adddepartmentlist = res.data
})
getdiseaseList().then(res => {
},
//
changedepartment(id) {
getdiseaseList({ departmentId: id }).then(res => {
this.adddiseaselist = res.data
})
//
servicepackageinfo({ departmentId: id }).then(res => {
this.addpackagelist = res.data
})
},
clickDepartmenitem(item) {
this.loading = true;
@ -307,10 +327,12 @@ export default {
//
reset() {
this.form = {
routePackageList: null,
id: null,
departmentId: null,
departmentName: null,
diseaseTypeId: null,
servicePackageId: null,
diseaseTypeName: null,
routeName: null,
routeCode: null,
@ -372,12 +394,27 @@ export default {
},
/** 提交按钮 */
submitForm() {
if (this.form.departmentId && this.adddepartmentlist.length > 0) {
if (this.form.departmentId && this.adddepartmentlist?.length > 0) {
this.form.departmentName = this.adddepartmentlist.find(e => e.id == this.form.departmentId).departmentName
}
if (this.form.diseaseTypeId && this.adddiseaselist.length > 0) {
if (this.form.diseaseTypeId && this.adddiseaselist?.length > 0) {
this.form.diseaseTypeName = this.adddiseaselist.find(e => e.id == this.form.diseaseTypeId).diseaseTypeName
}
if (this.form.servicePackageId?.length > 0 && this.addpackagelist?.length > 0) {
let routePackageList = []
this.addpackagelist.forEach(e => {
this.form.servicePackageId.forEach(el => {
if (e.id == el) {
let item = {
servicePackageId: el,
servicePackageName: e.packageName
}
routePackageList.push(item)
}
})
})
this.form.routePackageList = routePackageList
}
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {

View File

@ -341,7 +341,7 @@
<template slot-scope="scope">
<span
>{{ scope.row.visitMethod == "OUTPATIENT_SERVICE" ? "门诊" : "" }}
{{ scope.row.visitMethod == "BE_HOSPITALIZED" ? "住院" : "" }}
{{ scope.row.visitMethod == "BE_IN_HOSPITAL" ? "住院" : "" }}
</span>
</template></el-table-column
>
@ -567,7 +567,7 @@ export default {
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
if (this.intentionalTime.length > 0) {
if (this.intentionalTime?.length > 0) {
this.queryParams.startDate = this.intentionalTime[0]
this.queryParams.endDate = this.intentionalTime[1]
}

View File

@ -25,7 +25,7 @@
<div class="text">出院时间{{ item.dischargeTime }}
</div>
<div class="text">就诊类型{{ item.visitMethod == 'OUTPATIENT_SERVICE' ? '门诊' : "" }}
{{ item.visitMethod == 'BE_HOSPITALIZED' ? '住院' : "" }}
{{ item.visitMethod == 'BE_IN_HOSPITAL' ? '住院' : "" }}
</div>
</div>
</div>
@ -40,7 +40,7 @@
<el-form ref="form" :model="form" label-width="120px" :rules="rules">
<el-form-item label="就诊方式" prop="visitMethod">
<el-radio-group v-model="form.visitMethod">
<el-radio label="BE_HOSPITALIZED">住院</el-radio>
<el-radio label="BE_IN_HOSPITAL">住院</el-radio>
<el-radio label="OUTPATIENT_SERVICE">门诊</el-radio>
</el-radio-group>
</el-form-item>
@ -85,11 +85,11 @@
placeholder="选择日期时间">
</el-date-picker>
</el-form-item>
<el-form-item label="手术记录" prop="surgicalRecord" v-if="form.visitMethod == 'BE_HOSPITALIZED'">
<el-form-item label="手术记录" prop="surgicalRecord" v-if="form.visitMethod == 'BE_IN_HOSPITAL'">
<el-input type="textarea" v-model="form.surgicalRecord" style="width:800px"
:rows="8"></el-input>
</el-form-item>
<el-form-item label="入院病历" prop="inHospitalInfo" v-if="form.visitMethod == 'BE_HOSPITALIZED'">
<el-form-item label="入院病历" prop="inHospitalInfo" v-if="form.visitMethod == 'BE_IN_HOSPITAL'">
<el-input type="textarea" v-model="form.inHospitalInfo" style="width:800px"
:rows="8"></el-input>
</el-form-item>
@ -97,7 +97,7 @@
<el-input type="textarea" v-model="form.inHospitalInfo" style="width:800px"
:rows="8"></el-input>
</el-form-item>
<el-form-item label="出院病历" prop="outHospitalInfo" v-if="form.visitMethod == 'BE_HOSPITALIZED'">
<el-form-item label="出院病历" prop="outHospitalInfo" v-if="form.visitMethod == 'BE_IN_HOSPITAL'">
<el-input type="textarea" v-model="form.outHospitalInfo" style="width:800px"
:rows="8"></el-input>
</el-form-item>
@ -205,10 +205,10 @@ export default {
},
//
submitForm() {
if (this.form.departmentId) {
if (this.form.departmentId && this.departmentlist?.length > 0) {
this.form.departmentName = this.departmentlist.find(e => e.id == this.form.departmentId).departmentName
}
if (this.form.attendingPhysicianId) {
if (this.form.attendingPhysicianId && this.attendingPhysicianlist?.length > 0) {
this.form.attendingPhysicianName = this.attendingPhysicianlist.find(e => e.userId == this.form.attendingPhysicianId).nickName
}
if (this.form.id) {

View File

@ -48,8 +48,8 @@
placeholder="请选择出生日期格式yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="就诊类型门诊OUTPATIENT_SERVICE住院BE_HOSPITALIZED" prop="visitType">
<el-select v-model="queryParams.visitType" placeholder="请选择就诊类型门诊OUTPATIENT_SERVICE住院BE_HOSPITALIZED" clearable>
<el-form-item label="就诊类型门诊OUTPATIENT_SERVICE住院BE_IN_HOSPITAL" prop="visitType">
<el-select v-model="queryParams.visitType" placeholder="请选择就诊类型门诊OUTPATIENT_SERVICE住院BE_IN_HOSPITAL" clearable>
<el-option
v-for="dict in dict.type.visit_type"
:key="dict.value"