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

This commit is contained in:
2024-05-31 14:33:28 +08:00
commit f6531e6cf2
3 changed files with 978 additions and 440 deletions

View File

@ -1,61 +1,78 @@
<template> <template>
<div style="background-color:#F1F3F5"> <div style="background-color: #f1f3f5">
<div slot="footer" style="float: right;padding:10px 10px 0 0;height:35px"> <div
slot="footer"
style="float: right; padding: 10px 10px 0 0; height: 35px"
>
<el-button size="mini" @click="cancel"> </el-button> <el-button size="mini" @click="cancel"> </el-button>
<el-button size="mini" type="primary" @click="auditing">审核通过</el-button> <el-button size="mini" type="primary" @click="auditing"
>审核通过</el-button
>
<el-button size="mini" type="info" @click="ignore">忽略</el-button> <el-button size="mini" type="info" @click="ignore">忽略</el-button>
</div> </div>
<div class="card"> <div class="card">
<div class="cardleft"> <div class="cardleft">
<div class="title"> <div class="title">
<div style="display: flex;align-items:center"> <div style="display: flex; align-items: center">
<img class="headsculpture" v-if="list.sex == 'MALE'" src="../../../assets/manage/touxiang.png"> <img
<img class="headsculpture" v-else src="../../../assets/manage/nvtouxiang.png"> class="headsculpture"
v-if="list.sex == 'MALE'"
src="../../../assets/manage/touxiang.png"
/>
<img
class="headsculpture"
v-else
src="../../../assets/manage/nvtouxiang.png"
/>
<div class="name"> <div class="name">
{{ list.patientName ? list.patientName : '' }} {{ list.patientName ? list.patientName : "" }}
</div> </div>
<div class="genderandage"> <div class="genderandage">
<span> {{ list.sex == 'MALE' ? "男" : '' }} <span>
{{ list.sex == 'FEMALE' ? "女" : '' }} {{ list.sex == "MALE" ? "男" : "" }}
{{ list.sex == "FEMALE" ? "女" : "" }}
</span> </span>
<span v-if="list.sex && list.age" style="padding: 0 6px;">|</span> <span v-if="list.sex && list.age" style="padding: 0 6px">|</span>
<span v-if="list.age">{{ list.age }}</span> <span v-if="list.age">{{ list.age }}</span>
</div> </div>
</div> </div>
<div class="source"> <div class="source">
<div class="situation item"> <div class="situation item">
{{ list.visitMethod == 'OUTPATIENT_SERVICE' ? '门诊' : '' }} {{ list.visitMethod == "OUTPATIENT_SERVICE" ? "门诊" : "" }}
{{ list.visitMethod == 'BE_IN_HOSPITAL' ? '住院' : '' }} {{ list.visitMethod == "BE_IN_HOSPITAL" ? "住院" : "" }}
</div> </div>
<div class="item" style="color:#00E06E;border-color:#00E06E" <div
v-if="list.patientSource == 'WE_CHAT_OFFICIAL_ACCOUNT'"> class="item"
<img src="../../../assets/manage/gzh.png" alt=""> style="color: #00e06e; border-color: #00e06e"
<div> v-if="list.patientSource == 'WE_CHAT_OFFICIAL_ACCOUNT'"
公众号 >
<img src="../../../assets/manage/gzh.png" alt="" />
<div>公众号</div>
</div> </div>
<div
class="item"
style="color: #339de5; border-color: #339de5"
v-if="list.patientSource == 'WE_CHAT_APPLET'"
>
<img src="../../../assets/manage/xcx.png" alt="" />
<div>小程序</div>
</div> </div>
<div class="item" style="color:#339DE5;border-color:#339DE5" <div
v-if="list.patientSource == 'WE_CHAT_APPLET'"> class="item"
<img src="../../../assets/manage/xcx.png" alt=""> style="color: #f4881f; border-color: #f4881f"
<div> v-if="list.patientSource == 'MANAGE_END'"
小程序 >
</div> <img src="../../../assets/manage/gld.png" alt="" />
</div> <div>管理端</div>
<div class="item" style="color:#F4881F;border-color:#F4881F"
v-if="list.patientSource == 'MANAGE_END'">
<img src="../../../assets/manage/gld.png" alt="">
<div>
管理端
</div>
</div> </div>
</div> </div>
</div> </div>
<div class="texts"> <div class="texts">
<div class="text"> <div class="text">
医院: {{ list.hospitalAgencyName ? list.hospitalAgencyName : '' }} 医院: {{ list.hospitalAgencyName ? list.hospitalAgencyName : "" }}
</div> </div>
<div class="text"> <div class="text">
科室: {{ list.departmentName ? list.departmentName : '' }} 科室: {{ list.departmentName ? list.departmentName : "" }}
</div> </div>
<div class="text" v-if="list.visitMethod == 'BE_IN_HOSPITAL'"> <div class="text" v-if="list.visitMethod == 'BE_IN_HOSPITAL'">
入院时间: {{ list.admissionTime }} 入院时间: {{ list.admissionTime }}
@ -67,87 +84,152 @@
就诊时间: {{ list.dischargeTime }} 就诊时间: {{ list.dischargeTime }}
</div> </div>
</div> </div>
<el-descriptions title="诊断信息" style="margin:16px auto"> <el-descriptions title="诊断信息" style="margin: 16px auto">
<el-descriptions-item label="主要诊断">{{ list.mainDiagnosis }}</el-descriptions-item> <el-descriptions-item label="主要诊断">{{
list.mainDiagnosis
}}</el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-descriptions title="手术信息" style="margin:16px auto;border-top: 1px solid #e6ebf5;" <el-descriptions
v-if="list.visitMethod != 'OUTPATIENT_SERVICE'"> title="手术信息"
<el-descriptions-item label="手术名称">{{ list.surgicalName }}</el-descriptions-item> style="margin: 16px auto; border-top: 1px solid #e6ebf5"
v-if="list.visitMethod != 'OUTPATIENT_SERVICE'"
>
<el-descriptions-item label="手术名称">{{
list.surgicalName
}}</el-descriptions-item>
</el-descriptions> </el-descriptions>
<el-collapse v-model="activeNames"> <el-collapse v-model="activeNames">
<el-collapse-item title="入院记录" name="-1"> <el-collapse-item title="入院记录" name="-1">
<div v-html="list.inHospitalInfo"></div> <div v-html="list.inHospitalInfo"></div>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="手术记录" name="-2" v-if="list.visitMethod != 'OUTPATIENT_SERVICE'"> <el-collapse-item
title="手术记录"
name="-2"
v-if="list.visitMethod != 'OUTPATIENT_SERVICE'"
>
<div v-html="list.surgicalRecord"></div> <div v-html="list.surgicalRecord"></div>
</el-collapse-item> </el-collapse-item>
<el-collapse-item title="出院记录" name="-3" v-if="list.visitMethod != 'OUTPATIENT_SERVICE'"> <el-collapse-item
title="出院记录"
name="-3"
v-if="list.visitMethod != 'OUTPATIENT_SERVICE'"
>
<div v-html="list.outHospitalInfo"></div> <div v-html="list.outHospitalInfo"></div>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
</div> </div>
<div class="cardright"> <div class="cardright">
<div class="text" style="font-size: 20px;"> 任务:</div> <div class="text" style="font-size: 20px">任务:</div>
<div v-for="item in nodelist" :key="item.manageRouteId" style="margin: 0 auto 30px;"> <div
v-for="item in nodelist"
: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>
@ -155,14 +237,24 @@
</div> </div>
</div> </div>
<!-- 话术预览弹框 --> <!-- 话术预览弹框 -->
<el-dialog title="话术预览" :visible.sync="phoneopen" width="30%" :before-close="openfalse"> <el-dialog
<img style="width:200px" :src="baseUrl + lookitem.scriptFilePath" /> title="话术预览"
:visible.sync="phoneopen"
width="30%"
:before-close="openfalse"
>
<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="titletop">文章模板:{{ lookitem.propagandaTitle }}</div> <div class="titletop">文章模板:{{ lookitem.propagandaTitle }}</div>
<div class="bodytop"> <div class="bodytop">
<div class="titledata">{{ lookitem.propagandaTitle }}</div> <div class="titledata">{{ lookitem.propagandaTitle }}</div>
@ -170,7 +262,7 @@
<img :src="baseUrl + lookitem.propagandaCoverPath" alt="" /> <img :src="baseUrl + lookitem.propagandaCoverPath" alt="" />
<div class="know">知识卡片</div> <div class="know">知识卡片</div>
<div class="knowlist"> <div class="knowlist">
{{ lookitem.propagandaContent }} <Editorxj v-model="lookitem.propagandaContent" :min-height="192" />
</div> </div>
</div> </div>
</div> </div>
@ -201,9 +293,11 @@ import {
} from '@/api/manage/Auditing.js' } from '@/api/manage/Auditing.js'
import { getAge } from "@/utils/age"; import { getAge } from "@/utils/age";
import questionopen from '../components/questionopen.vue'; import questionopen from '../components/questionopen.vue';
import Editorxj from "../../system/Editorxj/index.vue";
export default { export default {
components: { components: {
questionopen, questionopen,
Editorxj
}, },
name: "Auditing", name: "Auditing",
data() { data() {
@ -372,10 +466,10 @@ export default {
display: flex; display: flex;
.situation { .situation {
background-color: #F1FAF7; background-color: #f1faf7;
padding: 3px 6px; padding: 3px 6px;
color: #83CAC0 !important; color: #83cac0 !important;
border: 1px solid #83CAC0 !important; border: 1px solid #83cac0 !important;
} }
.item { .item {

View File

@ -0,0 +1,377 @@
<template>
<div class="app-container">
<!-- 问卷模板 -->
<!-- <el-dialog title="问卷预览" :visible.sync="questionopen" width="30%"> -->
<div class="words" v-for="(item, index) in questiondata.questionSubjectList" :key="index">
{{ index + 1 }}.{{ item.questionName }}
<span v-if="item.questionType == 'MULTIPLE_CHOICE'">单选题</span>
<span v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS'">多选题</span>
<span v-if="item.questionType == 'SCORING_QUESTIONS'">打分题</span>
<span v-if="item.questionType == 'COMBINATION_RADIO_SUBJECT'">组合单选题</span>
<span v-if="item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'">组合多选题</span>
<span v-if="item.questionType == 'COMBINATION_BLANKS_SUBJECT'">组合填空题</span>
<span v-if="item.questionType == 'FILL_IN_THE_BLANKS'">填空题</span>
<span v-if="item.questionType == 'COMBINATION_SCORING_SUBJECT'">组合打分题</span>
<span v-if="item.questionType == 'DATE_BLANKS_SUBJECT'">日期填空题</span>
<span v-if="item.questionType == 'TIME_BLANKS_SUBJECT'">时间填空题</span>
<el-radio-group v-if="item.questionType == 'MULTIPLE_CHOICE' ||
item.questionType == 'COMBINATION_RADIO_SUBJECT' ||
item.questionType == 'SCORING_QUESTIONS' ||
item.questionType == 'COMBINATION_SCORING_SUBJECT'
" v-model="questiondata[index]" class="custom-radio-group" disabled
@change="radioGroupChange($event, item)">
<el-radio class="custom" v-for="(aitem, aindex) in item.questionSubjectOptionList" :key="aindex"
:label="aitem.id" @change="radioChange($event, aitem, index)">{{ aitem.optionName }}</el-radio>
</el-radio-group>
<!-- 多选组合多选 -->
<el-checkbox-group disabled v-model="checkeddata" @change="radioGroupChange($event, item, 'checkbox')"
v-if="item.questionType == 'MULTIPLE_CHOICE_QUESTIONS' ||
item.questionType == 'COMBINATION_MULTIPLE_SUBJECT'
">
<el-checkbox v-for="(aitem, aindex) in item.questionSubjectOptionList" :key="aindex"
:label="aitem.id" @change="radioChangecheck($event, aitem, index, aindex)">{{ aitem.optionName
}}</el-checkbox>
</el-checkbox-group>
<!-- 填空题组合填空 -->
<div v-if="item.questionType == 'FILL_IN_THE_BLANKS' ||
item.questionType == 'COMBINATION_BLANKS_SUBJECT'
" class="tk">
<el-input v-model="item.fillBlanksAnswer" disabled placeholder="请输入答案" type="textarea" />
<!-- <el-input></el-input> -->
</div>
<!-- 日期填空题 -->
<div v-if="item.questionType == 'DATE_BLANKS_SUBJECT'" style="margin: 20px 0 10px 30px">
<el-date-picker disabled @change="timepicker($event, index)" clearable
v-model="item.fillBlanksAnswer" type="date" value-format="yyyy-MM-dd" placeholder="选择日期">
</el-date-picker>
</div>
<!-- 时间填空题 -->
<div style="margin: 20px 0 10px 30px" v-if="item.questionType == 'TIME_BLANKS_SUBJECT'">
<el-time-select disabled @change="timepickerselect($event, index)" clearable
v-model="item.fillBlanksAnswer" :picker-options="{
start: '08:30',
step: '00:30',
end: '23:30',
}" placeholder="选择时间">
</el-time-select>
</div>
</div>
<!-- </el-dialog> -->
</div>
</template>
<script>
export default {
name: "questionopen",
props: ['lookitemnew'],
data() {
return {
checkeddata: [],
questiondata: {},
// questionopen: false,
};
},
watch: {
},
created() {
this.questiondata = this.lookitemnew
},
mounted() {
},
watch: {
lookitemnew(newValue, oldValue) {
console.log(newValue,'newValue111')
if (newValue) {
this.questiondata = newValue;
}
}
},
methods: {
// questionopentrue() {
// this.questionopen = true
// },
//
timepicker(e, index) {
this.questiondata.questionSubjectList[index].fillBlanksAnswer = e
},
//
radioChangecheck(e, item, index, aindex) {
console.log(e, item, index, '选中某个复选框时')
if (e == true) {
this.questiondata.questionSubjectList[index].questionSubjectOptionList[aindex].optionChooseSign = '0'
} else {
this.questiondata.questionSubjectList[index].questionSubjectOptionList[aindex].optionChooseSign = '1'
}
},
//
timepickerselect(e, index) {
this.questiondata.questionSubjectList[index].fillBlanksAnswer = e
},
radioGroupChange(e, item) {
},
// radio
radioChange(e, item, index) {
this.questiondata.questionSubjectList[index].questionSubjectOptionList.forEach(el => {
if (el.id == item.id) {
el.optionChooseSign = '0'
}
else {
el.optionChooseSign = '1'
}
})
console.log(this.questiondata, 'this.questiondata')
this.questiondata
},
//
radioChangecheck(e, item, index, aindex) {
if (e == true) {
this.questiondata.questionSubjectList[index].questionSubjectOptionList[aindex].optionChooseSign = '0'
} else {
this.questiondata.questionSubjectList[index].questionSubjectOptionList[aindex].optionChooseSign = '1'
}
},
}
};
</script>
<style scoped lang="scss">
::v-deep .el-input.is-disabled .el-input__inner {
background: #fff !important;
color: #606266;
}
::v-deep .el-textarea.is-disabled .el-textarea__inner {
color: #606266;
background: #fff;
}
.tk {
::v-deep .el-textarea__inner {
margin: 20px 0 10px 10px;
}
}
::v-deep .el-radio {
padding: 10px;
}
::v-deep .el-checkbox-group {
display: flex;
flex-direction: column;
padding: 10px 0px 10px 24px;
}
::v-deep .el-checkbox {
padding: 10px 0 10px 0px;
// padding: 10px;
}
.custom-radio-group {
display: flex;
flex-direction: column;
padding: 10px 0 10px 10px;
.custom {
padding: 10px 0 10px 10px;
}
}
.bodytop {
position: relative;
top: 20px;
// height: 500px;
width: 400px;
margin: 0 auto;
// background: red;f
overflow: auto;
border: 1px solid #e2e2e2;
.titledata {
margin: 30px 0px 15px 30px;
top: 14px;
font-size: 20px;
}
.audiotop {
margin: 10px 0px 10px 30px;
}
img {
// width: 362px;
// height: 127px;
margin: 0px 0px 0px 30px;
}
.know {
margin: 11px 0px 10px 30px;
font-size: 20px;
font-weight: 550;
}
.knowlist {
margin: 10px 0px 10px 30px;
font-size: 16px;
}
}
.right {
width: 100%;
height: 500px;
// background: yellow;
}
.header {
background-color: #f1f3f5;
padding-top: 10px;
::v-deep .el-tabs__header {
margin: 0 !important;
width: 100%;
// overflow: auto;
// height: 500px;
// background: red;
}
.bottomheader {
overflow: auto;
width: 99%;
background-color: #fff;
margin: 10px auto;
padding: 10px 20px;
.sport {
padding: 10px 50px 10px 10px;
font-size: 20px;
font-weight: 600;
}
.words {
font-size: 15px;
padding: 10px 50px 10px 10px;
}
.sports {
position: absolute;
left: 50%;
transform: translate(-50%);
font-size: 18px;
font-weight: 600;
}
.word {
font-size: 14px;
font-weight: 550;
padding: 50px 50px 10px 10px;
}
.videoleft {
width: 40%;
height: 200px;
background: red;
}
.time {
font-size: 20px;
font-weight: 550;
padding: 10px 50px 10px 10px;
}
.number {
width: 25px;
height: 25px;
text-align: center;
display: inline-block;
color: white;
background: blue;
border-radius: 50%;
}
.nexttime {
font-size: 15px;
padding: 10px 50px 10px 10px;
}
.images {
width: 53%;
height: 241px;
margin: 0 auto;
background: red;
}
.attention {
font-size: 14px;
font-weight: 550;
padding: 10px 50px 10px 10px;
}
// .videobottom
// {
// font-size: 14px;
// font-weight: 550;
// padding: 10px 50px 10px 10px;
// }
}
.topheader {
width: 99%;
background-color: #fff;
margin: 0 auto;
.information {
display: flex;
flex-wrap: wrap;
padding: 10px 20px;
height: 110px;
.top,
.bottom {
color: #666666;
width: 100%;
display: flex;
div {
width: 25%;
}
}
}
.user {
width: 100%;
padding: 0 20px;
display: flex;
height: 80px;
align-items: center;
line-height: 80px;
.source {
display: flex;
position: relative;
right: 59px;
position: absolute;
.item {
margin-left: 20px;
}
}
.name {
font-size: 20px;
padding-left: 12px;
}
.gender {
padding-left: 10px;
}
.age {
padding-left: 10px;
}
.headsculpture {
border-radius: 50%;
width: 40px;
height: 40px;
}
}
}
}
</style>

View File

@ -146,7 +146,7 @@
> >
</el-time-select> </el-time-select>
</el-form-item> </el-form-item>
<el-form-item <!-- <el-form-item
label="问卷库模板选择" label="问卷库模板选择"
prop="" prop=""
v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'" v-if="form.taskSubdivisiontemplateType == 'QUESTIONNAIRE'"
@ -167,16 +167,46 @@
disabled disabled
style="width: 200px" style="width: 200px"
></el-input> ></el-input>
</el-form-item> </el-form-item> -->
</el-form> </el-form>
</div> </div>
<div class="bottomform"> <div class="bottomform">
<!-- 问卷预览弹框 -->
<questionopennew
style="width: 100%; background: #fff"
ref="question"
:lookitemnew="lookitemnew"
v-if="form.templateType == 'QUESTIONNAIRE'"
></questionopennew>
<div class="propaganda" v-else-if="form.templateType == 'PROPAGANDA'">
<div class="titletop">
文章模板:{{ lookitemnew.propagandaTitle }}
</div>
<div class="bodytop">
<div class="titledata">{{ lookitemnew.propagandaTitle }}</div>
<div>
<img :src="baseUrl + lookitemnew.propagandaCoverPath" alt="" />
<div class="know">知识卡片</div>
<div class="knowlist">
<Editorxj
v-model="lookitemnew.propagandaContent"
:min-height="192"
/>
</div>
</div>
</div>
</div>
<div v-else>
<wangeditor <wangeditor
style="width: 100%" style="width: 100%"
:nodeContent="form.nodeContent" :nodeContent="form.nodeContent"
@on-nodeContent="onNodeContent" @on-nodeContent="onNodeContent"
ref="wangeditor" ref="wangeditor"
/> />
</div>
<div class="card"> <div class="card">
<div class="flex"> <div class="flex">
<div class="pushMethod"> <div class="pushMethod">
@ -372,12 +402,17 @@ import miniProgram from '@/views/system/components/miniProgram.vue'
import { import {
selectTaskTypeList, taskPartitionList, taskStatusDictList, specialDiseaseNode, selectSpecialDiseasenew, updateRouteCheckStatus, getById selectTaskTypeList, taskPartitionList, taskStatusDictList, specialDiseaseNode, selectSpecialDiseasenew, updateRouteCheckStatus, getById
} from '@/api/system/specialDiseaseNode' } from '@/api/system/specialDiseaseNode'
import questionopennew from '../components/questionopennew.vue';
import Editorxj from "../../system/Editorxj/index.vue";
export default { export default {
components: { wangeditor, question, propaganda, message, officialAccount, miniProgram }, components: { wangeditor, question, propaganda, message, officialAccount, miniProgram, questionopennew, Editorxj },
props: ['lookitem'], props: ['lookitem'],
name: "specialDiseaseNodeopen", name: "specialDiseaseNodeopen",
data() { data() {
return { return {
show: false,
baseUrl: process.env.VUE_APP_BASE_API,
dialogVisible: false, dialogVisible: false,
routeform: { routeform: {
routeCheckStatus: null, routeCheckStatus: null,
@ -418,6 +453,7 @@ export default {
itemindex: 0, itemindex: 0,
listindex: 0, listindex: 0,
lists: [], lists: [],
lookitemnew: {},
value: '', value: '',
input: '', input: '',
// //
@ -456,6 +492,7 @@ export default {
this.lists = this.handleData(res.data, 'routeNodeDay', 'routeNodeName') this.lists = this.handleData(res.data, 'routeNodeDay', 'routeNodeName')
getById(this.lists[0].list[0].id).then(res => { getById(this.lists[0].list[0].id).then(res => {
this.form = res.data this.form = res.data
this.lookitemnew = res.data.detailInfo
if (this.form.taskType) { if (this.form.taskType) {
this.changeTaskType(this.form.taskType, this.form.taskSubdivision) this.changeTaskType(this.form.taskType, this.form.taskSubdivision)
} }
@ -523,22 +560,6 @@ export default {
this.form.officialTemplateName = item.templateName this.form.officialTemplateName = item.templateName
this.form.officialRemindContent = item.templateContent this.form.officialRemindContent = item.templateContent
}, },
//
TemporaryStorage() {
this.$refs.wangeditor.emit()
this.updata.specialDiseaseNodeList = []
this.lists.forEach(e => {
e.list.length > 0 ? e.list.forEach(el => {
el.routeNodeDay = e.routeNodeDay
el.routeNodeName = e.routeNodeName
this.updata.specialDiseaseNodeList.push(el)
}) : ""
})
specialDiseaseNode(this.updata).then(res => {
this.info();
this.$modal.msgSuccess("暂存成功!");
})
},
// //
questionontemplate(item) { questionontemplate(item) {
this.form.templateId = item.templateId this.form.templateId = item.templateId
@ -550,16 +571,20 @@ export default {
this.form.templateName = item.templateName this.form.templateName = item.templateName
}, },
bottomclickevent(uitem, index, uindex, item) { bottomclickevent(uitem, index, uindex, item) {
console.log(uitem, item) // console.log(uitem, item)
if (uitem.id) { if (uitem.id) {
getById(uitem.id).then(res => { getById(uitem.id).then(res => {
this.form = res.data this.form = res.data
if (res.data.detailInfo) {
this.lookitemnew = res.data.detailInfo
} else {
this.$refs.wangeditor.emit()
}
if (this.form.taskType) { if (this.form.taskType) {
this.changeTaskType(this.form.taskType, this.form.taskSubdivision) this.changeTaskType(this.form.taskType, this.form.taskSubdivision)
} }
}) })
} }
this.$refs.wangeditor.emit()
// this.form = uitem // this.form = uitem
this.listindex = index this.listindex = index
@ -710,6 +735,48 @@ export default {
background-color: #fff !important; background-color: #fff !important;
cursor: default !important; cursor: default !important;
} }
.propaganda {
background: #fff;
.titletop {
font-size: 16px;
font-weight: 700;
margin-left: 30px;
}
.bodytop {
position: relative;
top: 20px;
// height: 500px;
// overflow: auto;
// border: 1px solid #e2e2e2;
.titledata {
margin: 30px 0px 15px 30px;
top: 14px;
font-size: 20px;
}
.audiotop {
margin: 10px 0px 10px 30px;
}
img {
// width: 100%;
// width: 362px;
// height: 127px;
margin: 0px 0px 0px 30px;
}
.know {
margin: 11px 0px 10px 30px;
font-size: 16px;
}
.knowlist {
margin: 10px 0px 10px 30px;
font-size: 16px;
}
}
}
.routeCheckStatus { .routeCheckStatus {
position: absolute; position: absolute;