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

This commit is contained in:
闫晓茹 2024-07-01 17:58:50 +08:00
commit a8a13a822a
8 changed files with 1191 additions and 937 deletions

View File

@ -1,8 +1,13 @@
<template> <template>
<div class="header"> <div class="header">
<div class="leftheader"> <div class="leftheader">
<div class="item" v-for="(item, index) in namelist" :key="index" @click="clicknameitem(item, index)" <div
:class="index == itemindex ? 'selectitem' : ''"> class="item"
v-for="(item, index) in namelist"
:key="index"
@click="clicknameitem(item, index)"
:class="index == itemindex ? 'selectitem' : ''"
>
<div class="name"> <div class="name">
{{ item.name }} {{ item.name }}
</div> </div>
@ -10,113 +15,199 @@
</div> </div>
<div class="rightheader" v-if="categorylist.length > 0"> <div class="rightheader" v-if="categorylist.length > 0">
<div class="richtext" v-if="itemindex == 1"> <div class="richtext" v-if="itemindex == 1">
<div class="text" style="font-size: 20px;"> 手动创建任务:</div> <div class="text" style="font-size: 20px">手动创建任务:</div>
<div v-for="item in categorylist" :key="item.manageRouteId" style="margin: 0 auto 30px;"> <div
v-for="item in categorylist"
:key="item.manageRouteId"
style="margin: 0 auto 30px"
>
<div class="texts"> <div class="texts">
<div class="text">任务名称: {{ item.routeName }}</div>
<div class="text"> <div class="text">
任务名称: {{ item.routeName }} 适用范围: {{ item.suitRange == "IN_THE_HOSPITAL" ? "在院" : "" }}
</div> {{ item.suitRange == "DISCHARGE" ? "出院" : "" }}
<div class="text"> {{ item.suitRange == "OUTPATIENT_SERVICE" ? "门诊" : "" }}
适用范围: {{ item.suitRange == 'IN_THE_HOSPITAL' ? '在院' : '' }} {{
{{ item.suitRange == 'DISCHARGE' ? '出院' : '' }} item.suitRange == "OUTPATIENT_SERVICE_DISCHARGE"
{{ item.suitRange == 'OUTPATIENT_SERVICE' ? '门诊' : '' }} ? "门诊+出院"
{{ item.suitRange == 'OUTPATIENT_SERVICE_DISCHARGE' ? '门诊+出院' : "" }} : ""
}}
</div> </div>
</div> </div>
<div v-for="uitem in item.nodeList" :key="uitem.id"> <div v-for="uitem in item.nodeList" :key="uitem.id">
<div class="texts"> <div class="texts">
<div class="text" style="font-size:14px;font-weight: 400;"> <div class="text" style="font-size: 14px; font-weight: 400">
任务内容{{ uitem.taskType == 'PHONE_OUTBOUND' ? "电话外呼" : "" }} 任务内容{{
{{ uitem.taskType == 'QUESTIONNAIRE_SCALE' ? "问卷量表" : "" }} uitem.taskType == "PHONE_OUTBOUND" ? "电话外呼" : ""
{{ uitem.taskType == 'PROPAGANDA_ARTICLE' ? "宣教文案" : "" }} }}
{{ uitem.taskType == 'TEXT_REMIND' ? "文字提醒" : "" }} {{ uitem.taskType == "QUESTIONNAIRE_SCALE" ? "问卷量表" : "" }}
{{ uitem.taskType == 'ARTIFICIAL_FOLLOW_UP' ? "人工随访" : "" }} {{ uitem.taskType == "PROPAGANDA_ARTICLE" ? "宣教文案" : "" }}
{{ uitem.taskType == "TEXT_REMIND" ? "文字提醒" : "" }}
{{ uitem.taskType == "ARTIFICIAL_FOLLOW_UP" ? "人工随访" : "" }}
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'PHONE_OUTBOUND'"> class="text"
style="font-size: 14px; font-weight: 400"
v-if="uitem.taskType == 'PHONE_OUTBOUND'"
>
话术模板{{ uitem.phoneTemplateName }} 话术模板{{ uitem.phoneTemplateName }}
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'QUESTIONNAIRE_SCALE'"> class="text"
style="font-size: 14px; font-weight: 400"
v-if="uitem.taskType == 'QUESTIONNAIRE_SCALE'"
>
问卷模板{{ uitem.questionnaireName }} 问卷模板{{ uitem.questionnaireName }}
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'QUESTIONNAIRE_SCALE'"> class="text"
style="font-size: 14px; font-weight: 400"
v-if="uitem.taskType == 'QUESTIONNAIRE_SCALE'"
>
问卷有效期{{ uitem.questionExpirationDate }} 问卷有效期{{ uitem.questionExpirationDate }}
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'PROPAGANDA_ARTICLE'"> class="text"
style="font-size: 14px; font-weight: 400"
v-if="uitem.taskType == 'PROPAGANDA_ARTICLE'"
>
宣教模板{{ uitem.propagandaTitle }} 宣教模板{{ uitem.propagandaTitle }}
</div> </div>
<div class="textarea" v-if="uitem.taskType == 'TEXT_REMIND'"> <div class="textarea" v-if="uitem.taskType == 'TEXT_REMIND'">
提醒内容{{ uitem.textRemindContent }} 提醒内容{{ uitem.textRemindContent }}
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'ARTIFICIAL_FOLLOW_UP'"> class="text"
style="font-size: 14px; font-weight: 400"
v-if="uitem.taskType == 'ARTIFICIAL_FOLLOW_UP'"
>
人工随访模板{{ uitem.questionnaireName }} 人工随访模板{{ uitem.questionnaireName }}
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'ARTIFICIAL_FOLLOW_UP'"> class="text"
人工随访详情<el-button @click="lookquestion(uitem)" style="padding: 6px 10px;">预览</el-button> style="font-size: 14px; font-weight: 400"
v-if="uitem.taskType == 'ARTIFICIAL_FOLLOW_UP'"
>
人工随访详情<el-button
@click="lookquestion(uitem)"
style="padding: 6px 10px"
>预览</el-button
>
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'QUESTIONNAIRE_SCALE'"> class="text"
问卷模板详情<el-button @click="lookquestion(uitem)" style="padding: 6px 10px;">预览</el-button> style="font-size: 14px; font-weight: 400"
v-if="uitem.taskType == 'QUESTIONNAIRE_SCALE'"
>
问卷模板详情<el-button
@click="lookquestion(uitem)"
style="padding: 6px 10px"
>预览</el-button
>
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'PROPAGANDA_ARTICLE'"> class="text"
宣教模板详情<el-button @click="lookpropaganda(uitem)" style="font-size: 14px; font-weight: 400"
style="padding: 6px 10px;">预览</el-button> v-if="uitem.taskType == 'PROPAGANDA_ARTICLE'"
>
宣教模板详情<el-button
@click="lookpropaganda(uitem)"
style="padding: 6px 10px"
>预览</el-button
>
</div> </div>
<div class="text" style="font-size:14px;font-weight: 400;" <div
v-if="uitem.taskType == 'PHONE_OUTBOUND'"> class="text"
话术模板详情<el-button @click="lookphone(uitem)" style="padding: 6px 10px;">预览</el-button> style="font-size: 14px; font-weight: 400"
v-if="uitem.taskType == 'PHONE_OUTBOUND'"
>
话术模板详情<el-button
@click="lookphone(uitem)"
style="padding: 6px 10px"
>预览</el-button
>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="richtext" v-if="itemindex == 0"> <div class="richtext" v-if="itemindex == 0">
<div class="text" style="font-size: 20px;">专病管理路径:</div> <div class="text" style="font-size: 20px">专病管理路径:</div>
<div v-for="item in categorylist" :key="item.manageRouteId" style="margin: 0 auto 30px;"> <div
v-for="item in categorylist"
:key="item.manageRouteId"
style="margin: 0 auto 30px"
>
<div class="texts"> <div class="texts">
<div class="text">路径名称: {{ item.routeName }}</div>
<div class="text"> <div class="text">
路径名称: {{ item.routeName }} 适用范围: {{ item.suitRange == "IN_THE_HOSPITAL" ? "在院" : "" }}
{{ item.suitRange == "DISCHARGE" ? "出院" : "" }}
{{ item.suitRange == "OUTPATIENT_SERVICE" ? "门诊" : "" }}
{{
item.suitRange == "OUTPATIENT_SERVICE_DISCHARGE"
? "门诊+出院"
: ""
}}
</div> </div>
<div class="text"> <div class="text">
适用范围: {{ item.suitRange == 'IN_THE_HOSPITAL' ? '在院' : '' }} 路径详情:
{{ item.suitRange == 'DISCHARGE' ? '出院' : '' }} <el-button
{{ item.suitRange == 'OUTPATIENT_SERVICE' ? '门诊' : '' }} @click="lookspecialDiseaseNode(item)"
{{ item.suitRange == 'OUTPATIENT_SERVICE_DISCHARGE' ? '门诊+出院' : "" }} style="padding: 6px 10px"
>预览</el-button
>
</div> </div>
<div class="text"> <div class="text"></div>
路径详情: <el-button @click="lookspecialDiseaseNode(item)" <div class="text">触发条件:</div>
style="padding: 6px 10px;">预览</el-button> <div class="text"></div>
</div> <div
<div class="text"> v-for="uitem in item.specialDiseaseRoute.triggerConditionList"
</div> :key="uitem.id"
<div class="text"> class="text"
触发条件: style="font-weight: 400; width: 100%"
</div> >
<div class="text">
</div>
<div v-for="uitem in item.specialDiseaseRoute.triggerConditionList" :key="uitem.id" class="text"
style="font-weight: 400;width:100%">
<div class="tagtitle"> <div class="tagtitle">
<span> <span>
{{ uitem.triggerConditionName == 'DIAGNOSIS' ? '诊断' : '' }} {{ uitem.triggerConditionName == "DIAGNOSIS" ? "诊断" : "" }}
{{ uitem.triggerConditionName == 'DRESSING_CHANGE_DATE' ? '换药日期' : '' }} {{
{{ uitem.triggerConditionName == 'TREATMENT_METHOD' ? '治疗方式' : '' }} uitem.triggerConditionName == "DRESSING_CHANGE_DATE"
{{ uitem.triggerConditionName == 'SURGICAL_NAME' ? '手术名称' : '' }} ? "换药日期"
{{ uitem.triggerConditionName == 'DRUG_NAME' ? '药品名称' : '' }} : ""
}}
{{
uitem.triggerConditionName == "TREATMENT_METHOD"
? "治疗方式"
: ""
}}
{{
uitem.triggerConditionName == "SURGICAL_NAME"
? "手术名称"
: ""
}}
{{
uitem.triggerConditionName == "DRUG_NAME" ? "药品名称" : ""
}}
</span> </span>
<span style="padding: 0;"> <span style="padding: 0">
{{ uitem.triggerConditionOperator == 'CONTAIN' ? '包含' : '' }} {{
{{ uitem.triggerConditionOperator == 'NOT_CONTAIN' ? '不包含' : '' }} uitem.triggerConditionOperator == "CONTAIN" ? "包含" : ""
{{ uitem.triggerConditionOperator == 'EQUAL_TO' ? '等于' : '' }} }}
{{ uitem.triggerConditionOperator == 'NOT_EQUAL_TO' ? '不等于' : '' }} {{
uitem.triggerConditionOperator == "NOT_CONTAIN"
? "不包含"
: ""
}}
{{
uitem.triggerConditionOperator == "EQUAL_TO" ? "等于" : ""
}}
{{
uitem.triggerConditionOperator == "NOT_EQUAL_TO"
? "不等于"
: ""
}}
</span> </span>
<span style="padding: 0;"> <span style="padding: 0">
{{ uitem.triggerConditionValue }} {{ uitem.triggerConditionValue }}
</span> </span>
</div> </div>
@ -125,16 +216,26 @@
</div> </div>
</div> </div>
</div> </div>
<el-empty description="暂无" style="width: 100%;" v-else></el-empty> <el-empty description="暂无" style="width: 100%" v-else></el-empty>
<!-- 话术预览弹框 --> <!-- 话术预览弹框 -->
<el-dialog title="话术预览" :visible.sync="phoneopen" width="30%" :before-close="openfalse"> <el-dialog
title="话术预览"
:visible.sync="phoneopen"
width="30%"
:before-close="openfalse"
>
<img style="width: 200px" :src="baseUrl + lookitem.scriptFilePath" /> <img style="width: 200px" :src="baseUrl + lookitem.scriptFilePath" />
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="phoneopen = false"> </el-button> <el-button @click="phoneopen = false"> </el-button>
</span> </span>
</el-dialog> </el-dialog>
<!-- 宣教预览弹框 --> <!-- 宣教预览弹框 -->
<el-dialog title="宣教预览" :visible.sync="propagandaopen" width="30%" :before-close="openfalse"> <el-dialog
title="宣教预览"
:visible.sync="propagandaopen"
width="30%"
:before-close="openfalse"
>
<div class="bodytop"> <div class="bodytop">
<div class="titletop">文章模板:{{ lookitem.propagandaTitle }}</div> <div class="titletop">文章模板:{{ lookitem.propagandaTitle }}</div>
<div class="titledata">{{ lookitem.propagandaTitle }}</div> <div class="titledata">{{ lookitem.propagandaTitle }}</div>
@ -146,9 +247,13 @@
<!-- 问卷预览弹框 --> <!-- 问卷预览弹框 -->
<questionopen ref="question" :lookitem="lookitem"></questionopen> <questionopen ref="question" :lookitem="lookitem"></questionopen>
<!-- 专病节点预览 --> <!-- 专病节点预览 -->
<el-dialog title="专病节点预览" :visible.sync="specialDiseaseNodeopen" width="90%" v-if="specialDiseaseNodeopen"> <el-dialog
<specialDiseaseNodeopen :lookitem="lookitem"> title="专病节点预览"
</specialDiseaseNodeopen> :visible.sync="specialDiseaseNodeopen"
width="90%"
v-if="specialDiseaseNodeopen"
>
<specialDiseaseNodeopen :lookitem="lookitem"> </specialDiseaseNodeopen>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
@ -307,6 +412,7 @@ export default {
padding: 0 !important; padding: 0 !important;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
height: calc(100vh - 84px);
.rightheader { .rightheader {
width: 75%; width: 75%;
@ -343,12 +449,11 @@ export default {
} }
.richtext { .richtext {
overflow: scroll; height: calc(100vh - 352px);
//
overflow-x: hidden !important;
width: 100%; width: 100%;
margin: 0 auto; padding-left: 20px;
height: 550px; overflow: auto;
overflow-x: hidden !important;
.textarea { .textarea {
font-size: 14px; font-size: 14px;
@ -367,15 +472,17 @@ export default {
} }
.leftheader { .leftheader {
height: calc(100vh - 352px);
width: 20%; width: 20%;
margin-top: 20px; margin-top: 20px;
height: 450px; // height: 450px;
overflow: scroll; overflow: auto;
// //
overflow-x: hidden !important; overflow-x: hidden !important;
.selectitem { .selectitem {
background-color: #D2E9FC; background-color: #d2e9fc;
border-left: 2px solid #1890ff !important; border-left: 2px solid #1890ff !important;
border-bottom: 1px solid #fff !important; border-bottom: 1px solid #fff !important;
} }
@ -384,7 +491,7 @@ export default {
padding: 25px 10px; padding: 25px 10px;
position: relative; position: relative;
border-left: 2px solid #fff; border-left: 2px solid #fff;
border-bottom: 1px solid #E7E7E7; border-bottom: 1px solid #e7e7e7;
.name { .name {
font-size: 18px; font-size: 18px;

View File

@ -1,8 +1,13 @@
<template> <template>
<div class="header"> <div class="header">
<div class="leftheader" v-if="categorylist.length > 0"> <div class="leftheader" v-if="categorylist.length > 0">
<div class="item" v-for="(item, index) in categorylist" :key="item.propagandaInfoId" <div
@click="clickcategory(item, index)" :class="index == categoryindex ? 'selectitem' : ''"> class="item"
v-for="(item, index) in categorylist"
:key="item.propagandaInfoId"
@click="clickcategory(item, index)"
:class="index == categoryindex ? 'selectitem' : ''"
>
<div class="name"> <div class="name">
{{ item.propagandaTitle }} {{ item.propagandaTitle }}
</div> </div>
@ -11,7 +16,9 @@
<div class="rightheader" v-if="categorylist.length > 0"> <div class="rightheader" v-if="categorylist.length > 0">
<div class="richtext"> <div class="richtext">
<div class="bodytop"> <div class="bodytop">
<div class="titletop">文章模板:{{ categoryItem.propagandaTitle }}</div> <div class="titletop">
文章模板:{{ categoryItem.propagandaTitle }}
</div>
<div class="titledata">{{ categoryItem.propagandaTitle }}</div> <div class="titledata">{{ categoryItem.propagandaTitle }}</div>
<img :src="baseUrl + categoryItem.propagandaCoverPath" alt="" /> <img :src="baseUrl + categoryItem.propagandaCoverPath" alt="" />
<div class="know">知识卡片</div> <div class="know">知识卡片</div>
@ -19,7 +26,7 @@
</div> </div>
</div> </div>
</div> </div>
<el-empty description="暂无" style="width: 100%;" v-else></el-empty> <el-empty description="暂无" style="width: 100%" v-else></el-empty>
</div> </div>
</template> </template>
<script> <script>
@ -79,11 +86,12 @@ export default {
background-color: #fff !important; background-color: #fff !important;
padding: 0 !important; padding: 0 !important;
display: flex; display: flex;
height: calc(100vh - 84px);
.rightheader { .rightheader {
width: 80%; width: 80%;
padding-top: 20px; padding-top: 20px;
border-left: 3px solid #DFE4ED; border-left: 3px solid #dfe4ed;
.bodytop { .bodytop {
width: 96%; width: 96%;
@ -121,26 +129,27 @@ export default {
} }
.richtext { .richtext {
overflow: scroll; height: calc(100vh - 352px);
// overflow: auto;
overflow-x: hidden !important; overflow-x: hidden !important;
width: 100%; width: 100%;
margin: 0 auto; margin: 0 auto;
height: 450px;
// border: 1px solid #CCCCCC; // border: 1px solid #CCCCCC;
} }
} }
.leftheader { .leftheader {
height: calc(100vh - 352px);
width: 20%; width: 20%;
margin-top: 20px; margin-top: 20px;
height: 450px; // height: 450px;
overflow: scroll; overflow: auto;
// //
overflow-x: hidden !important; overflow-x: hidden !important;
.selectitem { .selectitem {
background-color: #D2E9FC; background-color: #d2e9fc;
border-left: 2px solid #1890ff !important; border-left: 2px solid #1890ff !important;
border-bottom: 1px solid #fff !important; border-bottom: 1px solid #fff !important;
} }
@ -149,7 +158,7 @@ export default {
padding: 25px 10px; padding: 25px 10px;
position: relative; position: relative;
border-left: 2px solid #fff; border-left: 2px solid #fff;
border-bottom: 1px solid #E7E7E7; border-bottom: 1px solid #e7e7e7;
.name { .name {
font-size: 18px; font-size: 18px;

View File

@ -229,10 +229,12 @@ export default {
} }
.leftheader { .leftheader {
height: calc(100vh - 352px);
width: 20%; width: 20%;
margin-top: 20px; margin-top: 20px;
height: 450px; // height: 450px;
overflow: scroll; overflow: auto;
// //
overflow-x: hidden !important; overflow-x: hidden !important;

View File

@ -1,66 +1,141 @@
<template> <template>
<div class="header"> <div class="header">
<div class="leftheader" v-if="categorylist.length > 0"> <div class="leftheader" v-if="categorylist.length > 0">
<div class="item" v-for="(item, index) in categorylist" :key="item.id" @click="clickcategory(item, index)" <div
:class="index == categoryindex ? 'selectitem' : ''"> class="item"
<div class="time">{{ item.signTime }} v-for="(item, index) in categorylist"
</div> :key="item.id"
<div class="name"> {{ item.packageName }} @click="clickcategory(item, index)"
</div> :class="index == categoryindex ? 'selectitem' : ''"
>
<div class="time">{{ item.signTime }}</div>
<div class="name">{{ item.packageName }}</div>
<el-tag class="type" size="mini">服务中</el-tag> <el-tag class="type" size="mini">服务中</el-tag>
<!-- <el-tag class="type" size="mini" type="success">门诊</el-tag> --> <!-- <el-tag class="type" size="mini" type="success">门诊</el-tag> -->
</div> </div>
</div> </div>
<div class="rightheader" v-if="categorylist.length > 0"> <div class="rightheader" v-if="categorylist.length > 0">
<div class="richtext"> <div class="richtext">
<el-descriptions title="基本信息" style="margin-top: 20px;"> <el-descriptions title="基本信息" style="margin-top: 20px">
<el-descriptions-item label="医院">{{ ByRecord.hospitalAgencyName }}</el-descriptions-item> <el-descriptions-item label="医院">{{
<el-descriptions-item label="科室">{{ ByRecord.departmentName }}</el-descriptions-item> ByRecord.hospitalAgencyName
<el-descriptions-item label="签约时诊断">{{ ByRecord.signDiagnosis }}</el-descriptions-item> }}</el-descriptions-item>
<el-descriptions-item label="院区">{{ ByRecord.campusAgencyName }}</el-descriptions-item> <el-descriptions-item label="科室">{{
<el-descriptions-item label="病区">{{ ByRecord.wardName }}</el-descriptions-item> ByRecord.departmentName
<el-descriptions-item label="审核后诊断">{{ ByRecord.reviewDiagnosis }}</el-descriptions-item> }}</el-descriptions-item>
<el-descriptions-item label="签约时诊断">{{
ByRecord.signDiagnosis
}}</el-descriptions-item>
<el-descriptions-item label="院区">{{
ByRecord.campusAgencyName
}}</el-descriptions-item>
<el-descriptions-item label="病区">{{
ByRecord.wardName
}}</el-descriptions-item>
<el-descriptions-item label="审核后诊断">{{
ByRecord.reviewDiagnosis
}}</el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-descriptions title="签约信息" style="margin-top: 40px;"> <el-descriptions title="签约信息" style="margin-top: 40px">
<el-descriptions-item label="服务包">{{ ByRecord.packageName }}</el-descriptions-item> <el-descriptions-item label="服务包">{{
<el-descriptions-item label="服务包缴费状态">{{ ByRecord.packagePaymentStatus == 'PAID' ? '已缴费' : ByRecord.packageName
ByRecord.packagePaymentStatus == 'UNPAID_FEES' ? '未缴费' : '' }}</el-descriptions-item> }}</el-descriptions-item>
<el-descriptions-item label="到期时间">{{ ByRecord.serviceEndTime }}</el-descriptions-item> <el-descriptions-item label="服务包缴费状态">{{
<el-descriptions-item label="服务包价格">{{ ByRecord.packagePrice }}</el-descriptions-item> ByRecord.packagePaymentStatus == "PAID"
<el-descriptions-item label="服务时间">{{ ByRecord.serviceStartTime }}</el-descriptions-item> ? "已缴费"
<el-descriptions-item label="服务周期">{{ ByRecord.packageTerm }}{{ ByRecord.packageTermUnit }} : ByRecord.packagePaymentStatus == "UNPAID_FEES"
? "未缴费"
: ""
}}</el-descriptions-item>
<el-descriptions-item label="到期时间">{{
ByRecord.serviceEndTime
}}</el-descriptions-item>
<el-descriptions-item label="服务包价格">{{
ByRecord.packagePrice
}}</el-descriptions-item>
<el-descriptions-item label="服务时间">{{
ByRecord.serviceStartTime
}}</el-descriptions-item>
<el-descriptions-item label="服务周期"
>{{ ByRecord.packageTerm }}{{ ByRecord.packageTermUnit }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="签约时间">{{ ByRecord.signTime }}</el-descriptions-item> <el-descriptions-item label="签约时间">{{
ByRecord.signTime
}}</el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-descriptions title="专病管理路径" style="margin-top: 20px;"> <el-descriptions title="专病管理路径" style="margin-top: 20px">
<el-descriptions-item label="路径名称">{{ ByRecord.routeName }}</el-descriptions-item> <el-descriptions-item label="路径名称">{{
ByRecord.routeName
}}</el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-descriptions title="硬件信息" style="margin-top: 20px;" class="descriptions"> <el-descriptions
title="硬件信息"
style="margin-top: 20px"
class="descriptions"
>
<el-descriptions-item> <el-descriptions-item>
<el-table :data="ByRecord.signDevices" style="width: 100%"> <el-table :data="ByRecord.signDevices" style="width: 100%">
<el-table-column label="序号" type="index" width="55" align="center" /> <el-table-column
<el-table-column prop="hardwareType" label="硬件类型" width="180" align="center"> label="序号"
type="index"
width="55"
align="center"
/>
<el-table-column
prop="hardwareType"
label="硬件类型"
width="180"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
{{ scope.row.hardwareType == 'BLOOD_PRESSURE' ? '血压仪' : '' }} {{
{{ scope.row.hardwareType == 'GLUCOSE_METER' ? '血糖仪' : '' }} scope.row.hardwareType == "BLOOD_PRESSURE" ? "血压仪" : ""
{{ scope.row.hardwareType == 'ELECTROCARDIOGRA' ? '心电仪' : '' }} }}
{{
scope.row.hardwareType == "GLUCOSE_METER" ? "血糖仪" : ""
}}
{{
scope.row.hardwareType == "ELECTROCARDIOGRA" ? "心电仪" : ""
}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="snCode" label="SN码" width="180" align="center" /> <el-table-column
<el-table-column prop="hardwarePrice" label="硬件金额(元)" align="center" /> prop="snCode"
<el-table-column prop="hardwareStatus" label="硬件状态" align="center" /> label="SN码"
width="180"
align="center"
/>
<el-table-column
prop="hardwarePrice"
label="硬件金额(元)"
align="center"
/>
<el-table-column
prop="hardwareStatus"
label="硬件状态"
align="center"
/>
</el-table> </el-table>
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-descriptions title="其他材料" style="margin-top: 20px;" class="descriptions"> <el-descriptions
title="其他材料"
style="margin-top: 20px"
class="descriptions"
>
<el-descriptions-item> <el-descriptions-item>
<el-image v-for="item in ByRecord.signPatientInformeds" :key="item.signPatientRecordId" <el-image
class="img" :src="item.informedFilePath" :preview-src-list="srcList" /> v-for="item in ByRecord.signPatientInformeds"
:key="item.signPatientRecordId"
class="img"
:src="item.informedFilePath"
:preview-src-list="srcList"
/>
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
</div> </div>
</div> </div>
<el-empty description="暂无" v-else style="width: 100%;"></el-empty> <el-empty description="暂无" v-else style="width: 100%"></el-empty>
</div> </div>
</template> </template>
<script> <script>
@ -119,6 +194,7 @@ export default {
} }
.header { .header {
height: calc(100vh - 84px);
background-color: #fff !important; background-color: #fff !important;
padding: 0 !important; padding: 0 !important;
display: flex; display: flex;
@ -130,30 +206,34 @@ export default {
} }
.rightheader { .rightheader {
height: calc(100vh - 352px);
width: 75%; width: 75%;
padding-top: 20px; padding-top: 20px;
border-left: 3px solid #DFE4ED; // overflow-y: auto;
/* overflow-y: auto; */
border-left: 3px solid #dfe4ed;
.richtext { .richtext {
width: 90%; height: calc(100vh - 352px);
width: 94%;
margin: 0 auto; margin: 0 auto;
height: 450px; // height: 450px;
overflow: scroll; overflow: auto;
// //
overflow-x: hidden !important; overflow-x: hidden !important;
} }
} }
.leftheader { .leftheader {
height: calc(100vh - 352px);
margin-top: 20px; margin-top: 20px;
width: 25%; width: 25%;
height: 450px; /* height: 450px; */
overflow: scroll; overflow: auto;
//
overflow-x: hidden !important; overflow-x: hidden !important;
.selectitem { .selectitem {
background-color: #D2E9FC; background-color: #d2e9fc;
border-left: 2px solid #1890ff !important; border-left: 2px solid #1890ff !important;
border-bottom: 1px solid #fff !important; border-bottom: 1px solid #fff !important;
} }
@ -163,7 +243,7 @@ export default {
padding: 25px 10px; padding: 25px 10px;
position: relative; position: relative;
border-left: 2px solid #fff; border-left: 2px solid #fff;
border-bottom: 1px solid #E7E7E7; border-bottom: 1px solid #e7e7e7;
.type { .type {
position: absolute; position: absolute;

View File

@ -2,16 +2,34 @@
<div class="header"> <div class="header">
<div class="leftheader"> <div class="leftheader">
<div class="time"> <div class="time">
<el-date-picker v-model="visitDate" type="daterange" range-separator="" start-placeholder="开始日期" <el-date-picker
value-format="yyyy-MM-dd" :picker-options="pickerOptions" end-placeholder="结束日期" style="width:95%"> v-model="visitDate"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
value-format="yyyy-MM-dd"
:picker-options="pickerOptions"
end-placeholder="结束日期"
style="width: 95%"
>
</el-date-picker> </el-date-picker>
</div> </div>
<div class="list"> <div class="list">
<div class="item" v-for="(item, index) in categorylist" :key="item.id" <div
class="item"
v-for="(item, index) in categorylist"
:key="item.id"
@click="clickcategory(item, index)" @click="clickcategory(item, index)"
:class="item.visitMethod == 'BE_IN_HOSPITAL' && index == categoryindex ? 'zyitem' : item.visitMethod == 'OUTPATIENT_SERVICE' && index == categoryindex ? 'mzitem' : ''"> :class="
<div class="time">{{ item.visitDate }} item.visitMethod == 'BE_IN_HOSPITAL' && index == categoryindex
</div> ? 'zyitem'
: item.visitMethod == 'OUTPATIENT_SERVICE' &&
index == categoryindex
? 'mzitem'
: ''
"
>
<div class="time">{{ item.visitDate }}</div>
<div class="name"> <div class="name">
{{ item.visitName }} {{ item.visitName }}
</div> </div>
@ -19,31 +37,62 @@
<span> <span>
{{ item.visitDept }} {{ item.visitDept }}
</span> </span>
<span style="margin-left: 10px;"> <span style="margin-left: 10px">
{{ item.createBy }} {{ item.createBy }}
</span> </span>
</div> </div>
<el-tag v-if="item.visitMethod == 'BE_IN_HOSPITAL'" class="type" size="mini">住院</el-tag> <el-tag
<el-tag v-if="item.visitMethod == 'OUTPATIENT_SERVICE'" class="type" size="mini" v-if="item.visitMethod == 'BE_IN_HOSPITAL'"
type="success">门诊</el-tag> 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>
</div> </div>
<div class="rightheader"> <div class="rightheader">
<div class="toptitle" v-if="categoryItem && categoryItem.visitMethod == 'BE_IN_HOSPITAL'"> <div
<div style="border-radius: 10px 0 0 10px" :class="recordindex == 0 ? 'zyclass' : ''" class="toptitle"
@click="clickrecord(0)"> 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>
<div class="centerdiv" :class="recordindex == 1 ? 'zyclass' : ''" @click="clickrecord(1)"> <div
class="centerdiv"
:class="recordindex == 1 ? 'zyclass' : ''"
@click="clickrecord(1)"
>
出院记录 出院记录
</div> </div>
<div style="border-radius: 0 10px 10px 0" :class="recordindex == 2 ? 'zyclass' : ''" <div
@click="clickrecord(2)"> style="border-radius: 0 10px 10px 0"
手术记录</div> :class="recordindex == 2 ? 'zyclass' : ''"
@click="clickrecord(2)"
>
手术记录
</div> </div>
<div class="toptitle" v-if="categoryItem && categoryItem.visitMethod == 'OUTPATIENT_SERVICE'"> </div>
<div style="border-radius: 10px" :class="recordindex == 3 ? 'mzclass' : ''" @click="clickrecord(3)"> <div
class="toptitle"
v-if="categoryItem && categoryItem.visitMethod == 'OUTPATIENT_SERVICE'"
>
<div
style="border-radius: 10px"
:class="recordindex == 3 ? 'mzclass' : ''"
@click="clickrecord(3)"
>
门诊记录 门诊记录
</div> </div>
</div> </div>
@ -182,6 +231,8 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.header { .header {
height: calc(100vh - 84px);
background-color: #fff !important; background-color: #fff !important;
padding: 0 !important; padding: 0 !important;
display: flex; display: flex;
@ -189,13 +240,13 @@ export default {
.rightheader { .rightheader {
width: 75%; width: 75%;
padding-top: 20px; padding-top: 20px;
border-left: 3px solid #DFE4ED; border-left: 3px solid #dfe4ed;
.righttext { .righttext {
width: 100%; width: 100%;
padding-left: 20px; padding-left: 20px;
height: 450px; // height: 450px;
overflow: scroll; overflow: auto;
// //
overflow-x: hidden !important; overflow-x: hidden !important;
} }
@ -220,36 +271,38 @@ export default {
line-height: 36px; line-height: 36px;
text-align: center; text-align: center;
height: 36px; height: 36px;
border: 1.5px solid #CCCCCC; border: 1.5px solid #cccccc;
} }
.centerdiv { .centerdiv {
border-left: none; border-left: none;
border-right: none border-right: none;
} }
} }
} }
.leftheader { .leftheader {
height: calc(100vh - 352px);
margin-top: 20px; margin-top: 20px;
width: 25%; width: 25%;
.list { .list {
height: calc(100vh - 352px);
margin-top: 20px; margin-top: 20px;
height: 450px; // height: 450px;
overflow: scroll; overflow: auto;
// //
overflow-x: hidden !important; overflow-x: hidden !important;
width: 96%; width: 96%;
.zyitem { .zyitem {
background-color: #D2E9FC; background-color: #d2e9fc;
border-left: 2px solid #1890ff !important; border-left: 2px solid #1890ff !important;
border-bottom: 1px solid #fff !important; border-bottom: 1px solid #fff !important;
} }
.mzitem { .mzitem {
background-color: #EBF7F5; background-color: #ebf7f5;
border-left: 2px solid #009982 !important; border-left: 2px solid #009982 !important;
border-bottom: 1px solid #fff !important; border-bottom: 1px solid #fff !important;
} }
@ -259,7 +312,7 @@ export default {
padding: 25px 10px; padding: 25px 10px;
position: relative; position: relative;
border-left: 2px solid #fff; border-left: 2px solid #fff;
border-bottom: 1px solid #E7E7E7; border-bottom: 1px solid #e7e7e7;
.type { .type {
position: absolute; position: absolute;

View File

@ -406,6 +406,7 @@ export default {
} }
.header { .header {
overflow: auto;
background-color: #fff; background-color: #fff;
width: 78%; width: 78%;
border-radius: 0 8px 8px 0; border-radius: 0 8px 8px 0;

View File

@ -214,7 +214,7 @@
<template slot-scope="scope"> <template slot-scope="scope">
<el-button size="mini" type="text" @click="handleAuthRole(scope.row)" <el-button size="mini" type="text" @click="handleAuthRole(scope.row)"
v-if="queryParams.serviceStatus == 'SERVICE_CENTER' || queryParams.serviceStatus == 'SERVICE_END'">详情</el-button> v-if="queryParams.serviceStatus == 'SERVICE_CENTER' || queryParams.serviceStatus == 'SERVICE_END'">详情</el-button>
<el-button size="mini" type="text" @click="handledata(scope.row)">生成数据</el-button> <!-- <el-button size="mini" type="text" @click="handledata(scope.row)">生成数据</el-button> -->
<el-button size="mini" type="text" @click="handleDelete(scope.row)" <el-button size="mini" type="text" @click="handleDelete(scope.row)"
v-if="queryParams.serviceStatus == 'SERVICE_CENTER'">取消签约</el-button> v-if="queryParams.serviceStatus == 'SERVICE_CENTER'">取消签约</el-button>
<el-button size="mini" type="text" @click="handleContinue(scope.row)" <el-button size="mini" type="text" @click="handleContinue(scope.row)"

View File

@ -690,6 +690,8 @@ export default {
.header { .header {
background-color: #f1f3f5; background-color: #f1f3f5;
padding-top: 10px; padding-top: 10px;
height: calc(100vh - 84px);
::v-deep .el-tabs__header { ::v-deep .el-tabs__header {
margin: 0 !important; margin: 0 !important;
@ -700,9 +702,9 @@ export default {
} }
.bottomheader { .bottomheader {
overflow-y: scroll; height: calc(100vh - 294px);
overflow-y: auto;
width: 99%; width: 99%;
height: 67vh;
background-color: #fff; background-color: #fff;
margin: 10px auto; margin: 10px auto;
padding: 10px 20px; padding: 10px 20px;