1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000 |
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8" />
- <title>筛选类型</title>
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="renderer" content="webkit" />
- <meta http-equiv="Cache-Control" content="no-siteapp" />
- <meta name="keywords" content="筛选类型" />
- <meta name="description" content="筛选类型" />
- <link rel="shortcut icon" href="../../favicon.ico" />
- <link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
- <link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
- <link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
- <link rel="stylesheet" type="text/css" href="../../../css/element-ui.css" />
- <link href="../../../plugins/toastr/toastr.min.css" rel="stylesheet" />
- <style type="text/css">
- [v-cloak] {
- display: none;
- }
- .flex-box {
- display: -webkit-box;
- display: -ms-flexbox;
- display: flex;
- -webkit-box-pack: center;
- -ms-flex-pack: center;
- justify-content: center;
- -webkit-box-align: center;
- -ms-flex-align: center;
- align-items: center;
- }
- .flex-box-item {
- -webkit-box-flex: 1;
- -ms-flex: 1;
- flex: 1;
- }
- p {
- word-break: break-all;
- }
- /*.question-content{max-height: 195px;overflow: auto;}*/
- .prompt-text {
- background-color: #ffa39e;
- color: #fff;
- font-size: 12px;
- text-align: center;
- line-height: 26px;
- }
- .single-choice-question {
- margin: 20px;
- padding: 0 20px;
- max-height: 540px;
- overflow-y: auto;
- border: 1px solid #d7dce6;
- border-radius: 10px;
- }
- .question-title {
- font-size: 16px;
- line-height: 40px;
- }
- .question-list,
- .daan-list {
- margin: 0;
- padding-left: 0;
- list-style: none;
- font-size: 14px;
- line-height: 1;
- }
- .question-list > li {
- border-top: 1px solid #d7dce6;
- padding: 10px 0;
- }
- .question-name {
- margin-bottom: 10px;
- }
- .daan-list > * {
- padding-left: 20px;
- line-height: 20px;
- height: 28px;
- }
- .daan-list input {
- opacity: 0;
- }
- .daan-list input[type='radio'] {
- width: 100%;
- height: 100%;
- opacity: 0;
- position: absolute;
- cursor: pointer;
- margin: 0;
- left: 0;
- right: 0;
- top: 0;
- bottom: 0;
- }
- .daan-list i {
- width: 20px;
- height: 20px;
- display: inline-block;
- vertical-align: middle;
- margin-right: 10px;
- background: url(../images/dianxuan_btn.png) center center / 100% 100% no-repeat;
- }
- .daan-list input[type='radio']:checked ~ i {
- background-image: url(../images/dianxuan_pre.png);
- }
- .label-block {
- display: block;
- position: relative;
- cursor: pointer;
- }
- .label-block + .label-block {
- margin-top: 16px;
- }
- .label-block span,
- .calculation-score .pull-right {
- color: #ff9630;
- }
- .w-250 {
- width: 250px;
- border: 1px solid #d7dce6;
- position: relative;
- border-top: 0;
- overflow: hidden;
- height: 605px;
- overflow: auto;
- }
- .f-16 {
- font-size: 16px;
- }
- .mb20 {
- margin-bottom: 20px !important;
- }
- .m20 {
- margin: 20px;
- }
- .f16 {
- font-size: 16px;
- }
- .base-info,
- .calculation-score,
- .btn-group-bottom,
- .assessment-report {
- padding: 17px;
- font-size: 14px;
- }
- .calculation-score p {
- margin-bottom: 5px;
- }
- .assessment-report p {
- margin-bottom: 0;
- }
- .canvas-box canvas {
- width: 100%;
- height: 100%;
- }
- .w-70 {
- width: 70px;
- }
- .base-info .flex-box {
- margin-top: 20px;
- }
- .right-triangle {
- position: relative;
- background: url(../images/right-triangle.png) right center / auto 15px no-repeat;
- }
- .base-info .w-70 {
- padding-right: 10px;
- text-align: justify;
- position: relative;
- text-align-last: justify;
- }
- .base-info .w-70:after {
- content: ':';
- position: absolute;
- right: 2px;
- top: 0;
- font-weight: bold;
- }
- .base-info input {
- height: 20px;
- padding: 0;
- text-align: center;
- width: 60px;
- margin: 0 5px;
- border-radius: 10px;
- border: 1px solid #d7dce6;
- }
- .progress-number {
- position: absolute;
- top: 50%;
- margin-top: -30px;
- text-align: center;
- left: 0;
- right: 0;
- }
- .progress-number > span {
- font-size: 14px;
- color: #12b7f5;
- }
- .clear-bottom {
- height: 91px;
- }
- .btn-group-bottom {
- padding: 40px 0 10px;
- position: fixed;
- right: 0;
- left: 0;
- bottom: 0;
- border-left: 1px solid #d7dce6;
- background: #fff;
- border-top: 1px solid #d7dce6;
- }
- .btn-group-bottom .btn {
- width: 100%;
- height: 40px;
- padding: 8px 12px;
- border-radius: 0;
- width: 90px;
- margin: 0 10px;
- }
- .warning-text .screen_result {
- color: #ff3b30;
- font-size: 12px;
- }
- .success-text .screen_result {
- color: #74bf00;
- font-size: 12px;
- }
- .score-box {
- height: 80px;
- padding-left: 120px;
- padding-top: 8px;
- background-size: auto 100%;
- background-repeat: no-repeat;
- background-position: 0 center;
- }
- .warning-text .score-box {
- color: #ff9630;
- background-image: url(../images/jiaofeishibai_icon.png);
- }
- .success-text .score-box {
- color: #74bf00;
- background-image: url(../images/jiaofeichengong_icon.png);
- }
- .score-box1 {
- color: #e52f2f;
- background-image: url(../images/jiaofeishibai_1.png);
- height: 80px;
- padding-left: 120px;
- padding-top: 8px;
- background-size: auto 100%;
- background-repeat: no-repeat;
- background-position: 0 center;
- }
- .score-box2 {
- color: #e56d27;
- background-image: url(../images/jiaofeishibai_2.png);
- height: 80px;
- padding-left: 120px;
- padding-top: 8px;
- background-size: auto 100%;
- background-repeat: no-repeat;
- background-position: 0 center;
- }
- .score-box3 {
- color: #fea13f;
- background-image: url(../images/jiaofeishibai_3.png);
- height: 80px;
- padding-left: 120px;
- padding-top: 8px;
- background-size: auto 100%;
- background-repeat: no-repeat;
- background-position: 0 center;
- }
- .score-box4 {
- color: #18d6aa;
- background-image: url(../images/jiaofeishibai_4.png);
- height: 80px;
- padding-left: 120px;
- padding-top: 8px;
- background-size: auto 100%;
- background-repeat: no-repeat;
- background-position: 0 center;
- }
- .score-box5 {
- color: #d0cfcd;
- background-image: url(../images/jiaofeishibai_5.png);
- height: 80px;
- padding-left: 120px;
- padding-top: 8px;
- background-size: auto 100%;
- background-repeat: no-repeat;
- background-position: 0 center;
- }
- .score {
- font-size: 30px;
- }
- .score > small {
- font-size: 12px;
- }
- .orange-text {
- color: #ffa65b;
- }
- .answer-content,
- .advice-content {
- border: 1px solid #ececec;
- border-radius: 10px;
- padding: 10px 20px 5px;
- }
- .advice-content {
- padding: 0;
- }
- .advice-list {
- padding: 20px 20px 0;
- overflow: hidden;
- }
- .advice-list li {
- padding-left: 20px;
- line-height: 1;
- position: relative;
- list-style: none;
- margin-bottom: 20px;
- }
- .advice-list li:before {
- position: absolute;
- left: 0;
- top: 50%;
- margin-top: -6px;
- width: 12px;
- height: 12px;
- border-radius: 100%;
- background-color: #02cfb9;
- content: '';
- }
- .other-advice {
- border-top: 1px solid #ececec;
- line-height: 2;
- height: 90px;
- padding: 5px 20px;
- }
- .bgc-02cfb9 {
- background-color: #02cfb9;
- color: #fff;
- }
- .bgc-12b7f5 {
- background-color: #12b7f5;
- color: #fff;
- }
- .bgc-FF9630 {
- background-color: #ff9630;
- color: #fff;
- }
- .bgc-2DBE55 {
- background-color: #2dbe55;
- color: #fff;
- }
- .bgc-2DBE55.focus,
- .bgc-2DBE55:focus,
- .bgc-2DBE55:hover {
- color: #fff;
- background-color: #30a14f;
- }
- .bgc-FF9630.focus,
- .bgc-FF9630:focus,
- .bgc-FF9630:hover {
- color: #fff;
- background-color: #f58920;
- }
- .bgc-12b7f5.focus,
- .bgc-12b7f5:focus,
- .bgc-12b7f5:hover {
- color: #fff;
- background-color: #01a9bd;
- }
- .bgc-02cfb9.focus,
- .bgc-02cfb9:focus,
- .bgc-02cfb9:hover {
- color: #fff;
- background-color: #00bda8;
- }
- .el-dialog--center .el-dialog__body {
- text-align: center;
- }
- .wenjuan-textarea {
- width: 240px;
- }
- </style>
- </head>
- <body>
- <div id="app" v-cloak>
- <div class="m20 mb0" style="line-height: 1">
- <div class="flex-box mb20">
- <div class="flex-box-item">
- 筛查类型:
- <span v-text="userInfo.template_title"></span>
- </div>
- <div class="flex-box-item">
- 筛查人员:
- <span v-text="userInfo.doctorName"></span>
- </div>
- </div>
- <div class="flex-box mb20">
- <div class="flex-box-item">
- 筛查对象:
- <span v-text="userInfo.patient_name+'('+(userInfo.sex==1?'男':'女')+(!userInfo.age?'<1':userInfo.age)+'岁)'"></span>
- </div>
- <div class="flex-box-item">
- 体征记录:
- <span v-if="!noTiZhong">
- <span v-text="tizhongRecord.value1+'kg'"></span>
- 身高
- <span v-text="tizhongRecord.value2+'cm'"></span>
- </span>
- <span v-else>暂无体征</span>
- </div>
- </div>
- <div class="flex-box">
- <div class="flex-box-item">
- 处理情况:
- <span>{{dealAction}}</span>
- </div>
- <div class="flex-box-item ui-grid">
- <div class="ui-col-0">筛查机构:</div>
- <div class="ui-col-1" v-text="">{{userInfo.doctorHosptailName}}</div>
- </div>
- </div>
- </div>
- <div class="single-choice-question" v-loading="isloading">
- <div class="question-title">问卷题目</div>
- <div class="question-content" v-if="surveyCode == 'aa9bd609fd8b492296f6a34849b76520'">
- <div class="pt10 pb5 pr10" v-for="(item,index) in questionList" :key="item.field">
- <div class="question-name">{{index + 1}}、{{item.label}}</div>
- <div class="daan-list" v-if="item.type== 'input'">
- <textarea class="wenjuan-textarea" rows="1" v-model="answer[item.field]"></textarea>
- </div>
- <div class="daan-list" v-if="item.type =='radio'">
- <label class="label-block" v-if="answer[item.field]">
- <input type="radio" readonly="readonly" checked="checked" value="1" />
- <i></i>
- <span v-text="answer[item.field]"></span>
- </label>
- </div>
- <div class="daan-list" v-if="item.type =='checkbox'">
- <label class="label-block" v-for="el in answer[item.field]">
- <input type="radio" readonly="readonly" checked="checked" value="1" />
- <i></i>
- <span v-text="el"></span>
- </label>
- </div>
- </div>
- </div>
- <div class="question-content" v-else>
- <ul class="question-list" v-for="(qst,key,index) in answer">
- <li v-if="qst.option">
- <p class="question-name" v-html="key+'、'+qst.question.title"></p>
- <div class="daan-list" v-if="qst.question.questionType==0">
- <label class="label-block">
- <span class="pull-right" v-text="qst.option.score+'分'" v-if="getScreenData.result.screen_result_score!=-1&&userInfo.isThird != 1 && userInfo.isThird !=2"></span>
- <input :type="qst.questionType==1?'checked':'radio'" readonly="readonly" :name="'ques'+index+(qst.questionType==1?'[]':'')" checked="checked" value="1" />
- <i></i>
- <span v-text="qst.option.content"></span>
- </label>
- </div>
- <div class="daan-list" v-else-if="qst.question.questionType==1">
- <label class="label-block" v-for="opt in qst.option">
- <span class="pull-right" v-text="opt.score+'分'" v-if="userInfo.isThird != 1 && userInfo.isThird !=2"></span>
- <input :type="qst.questionType==1?'checked':'radio'" readonly="readonly" :name="'ques'+index+(qst.questionType==1?'[]':'')" checked="checked" value="1" />
- <i></i>
- <span v-text="opt.content"></span>
- </label>
- </div>
- <div class="daan-list" v-else>
- <textarea class="wenjuan-textarea" rows="1" v-model="qst.option.content"></textarea>
- </div>
- </li>
- </ul>
- </div>
- </div>
- <div class="base-info">
- <div :class="userInfo.is_danger?'warning-text':'success-text'" v-if="result.screen_result_score!=-1">
- <div class="score-box">
- <p class="f-16 mb0" v-if="userInfo.isThird != 1 && userInfo.isThird !=2">
- <span class="c-333">评分</span>
- <span class="score">
- <span v-text="result.screen_result_score"></span>
- <small>分</small>
- </span>
- </p>
- <p class="screen_result" v-text="result.screen_result"></p>
- </div>
- </div>
- <div v-else>
- <div
- v-if="userInfo.screen_result_code"
- :class="userInfo.screen_result_code==1?'score-box1':userInfo.screen_result_code==2?'score-box2':userInfo.screen_result_code==3?'score-box3':userInfo.screen_result_code==4?'score-box4':'score-box5'">
- <p class="mt10" style="font-size: 30px" v-text="result.screen_result"></p>
- </div>
- </div>
- </div>
- <div class="calculation-score">
- <p class="f16 mb10">评估报告</p>
- <div class="answer-content">
- <p v-text="(result && result.advice) || userInfo.third_advice"></p>
- </div>
- </div>
- <div class="calculation-score" v-if="result.doctorOtherAdvice || result.doctorAdvice">
- <p class="f16 mb10">家庭医生的建议</p>
- <div class="advice-content">
- <div class="option-advice" v-if="result.doctorAdvice">
- <ul class="advice-list">
- <li v-for="advice in result.doctorAdvice" v-text="advice.advice || '无'"></li>
- </ul>
- </div>
- <div class="other-advice" v-if="result.doctorOtherAdvice">
- <p>
- <span class="orange-text">补充建议:</span>
- <span v-text="result.doctorOtherAdvice || '无'"></span>
- </p>
- </div>
- </div>
- </div>
- <template v-if="docInfo.level=='2'&&!userInfo.survey_status&&!showOpt&&btnHide!=1">
- <div class="clear-bottom" v-if="!isView || userInfo.is_danger==1">
- <div class="btn-group-bottom flex-box">
- <button class="btn bgc-2DBE55" @click="jkjy" v-if="result.doctorOtherAdvice || result.doctorAdvice">健康教育</button>
- <template v-else>
- <button class="btn bgc-FF9630" @click="jkzg">健康跟踪</button>
- <button class="btn bgc-02cfb9" @click="referral">转诊</button>
- </template>
- <button class="btn bgc-12b7f5" v-if="(result.doctorOtherAdvice || result.doctorAdvice)" @click="reScreening">再次筛查</button>
- <button class="btn bgc-02cfb9" v-if="(result.doctorOtherAdvice || result.doctorAdvice)" @click="referral">转诊</button>
- </div>
- </div>
- <div class="clear-bottom" v-if="userInfo.is_danger==0">
- <div class="btn-group-bottom flex-box">
- <button class="btn" style="background-color: #12b7f5; color: #fff" @click="jkzd(userInfo)">健康指导</button>
- </div>
- </div>
- </template>
- <!-- 专科 已管理 待处理 已预约 已接诊-->
- <template
- v-if="docInfo.level=='1'&&(userInfo.survey_status == 1||(userInfo.following == 0 && (userInfo.isOrder == 0 || userInfo.is_order == 0))||(userInfo.isOrder == 1 || userInfo.is_order == 1)||(userInfo.isOrder == 2 || userInfo.is_order == 2))&&!showOpt&&btnHide!=1">
- <div class="clear-bottom">
- <div class="btn-group-bottom flex-box">
- <button class="btn bgc-12b7f5" @click="lianxijiayi">联系家医</button>
- </div>
- </div>
- </template>
- <template v-if="docInfo.level=='2'&&!showOpt&&btnHide!=1">
- <div
- class="clear-bottom"
- v-if="!userInfo.survey_status&&userInfo.screen_result_score==-1&&(userInfo.isDanger == 1 || userInfo.is_danger == 1)&&(userInfo.following == 0 && (userInfo.isOrder == 0 || userInfo.is_order == 0))">
- <div class="btn-group-bottom flex-box">
- <button class="btn bgc-FF9630" style="width: 120px" @click="sqsf">纳入社区管理</button>
- <button class="btn bgc-02cfb9" @click="referral">转诊</button>
- <button class="btn bgc-12b7f5" @click="openMessageDialog">消息提醒</button>
- </div>
- </div>
- </template>
- <div class="clear-bottom" v-if="(userInfo.is_order>=1)">
- <div class="btn-group-bottom text-center">
- <p class="c-12b7f5">{{userInfo.is_order==1?'已预约':'已接诊'}}</p>
- <p v-if="(userInfo.is_order==2)">专科医生{{specialDoctorName}}已同意安排接诊</p>
- </div>
- </div>
- <el-dialog title="提示" :visible.sync="centerDialogVisible" width="65%" center>
- <span>是否确认纳入社区进行管理</span>
- <span slot="footer" class="dialog-footer">
- <el-button @click="centerDialogVisible = false">取 消</el-button>
- <el-button type="primary" @click="centerDialogClick">确 定</el-button>
- </span>
- </el-dialog>
- <el-dialog title="家医联系方式" :visible.sync="jiayiShow" width="65%" center>
- <span>
- 如需联系家医,请拨打下方电话:
- <br />
- {{userInfo.doctorMobile}}
- </span>
- <span slot="footer" class="dialog-footer">
- <el-button type="primary" @click="jiayiShow = false">确 定</el-button>
- </span>
- </el-dialog>
- <el-dialog title="消息提醒" :visible.sync="messageVisible" @close="closeMessageDialog" width="540px">
- <div v-html="messInfo"></div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="messageVisible = false">取消</el-button>
- <el-button type="primary" @click="messageWarn">确定</el-button>
- </span>
- </el-dialog>
- </div>
- <script src="../../../js/jquery-2.2.4.js" type="text/javascript" charset="utf-8"></script>
- <script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
- <script src="../../../js/element-ui.js" type="text/javascript" charset="utf-8"></script>
- <script src="../../../api/http-request.js" type="text/javascript" charset="utf-8"></script>
- <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></script>
- <script src="../../../plugins/toastr/toastr.min.js"></script>
- <script type="text/javascript" src="../../../api/jbsc-api.js"></script>
- <script src="../../../js/underscore.js" type="text/javascript" charset="utf-8"></script>
- <script src="../../../js/util.js" type="text/javascript" charset="utf-8"></script>
- <script src="../js/questionList.js" type="text/javascript" charset="utf-8"></script>
- <script type="text/javascript">
- var httpData = GetRequest()
- var wlyyAgent = JSON.parse(window.localStorage.getItem('wlyyAgent'))
- var func_doctor = null,
- func_hospital = null
- new Vue({
- el: '#app',
- data: {
- centerDialogVisible: false,
- answer: [], //问卷
- userInfo: { is_again: 0 }, //用户信息
- result: [], //结果
- tizhongRecord: [],
- specialDoctorName: '',
- noTiZhong: true,
- doctorInfo: { code: wlyyAgent.uid },
- resultCode: httpData['resultCode'],
- btnHide: httpData['btnHide'],
- isView: httpData['isView'] || false,
- dealAction: [],
- getScreenData: '',
- surveyResultCode: '',
- isloading: false,
- docInfo: JSON.parse(window.localStorage.getItem('docInfo')),
- jiayiShow: false,
- showOpt: httpData['opt'],
- flag: httpData['flag'] || false, // flag == yd,说明是平和县医院统计跳转过来的
- messageVisible: false,
- messInfo: '',
- questionList: [],
- dictData: [
- {
- name: 'obScreen_isMerge',
- field: 'isMerge'
- },
- {
- name: 'obScreen_eduState',
- field: 'eduState'
- },
- {
- name: 'obScreen_jobState',
- field: 'jobState'
- },
- {
- name: 'obScreen_ksDrugName1',
- field: 'ksDrugName1'
- }
- ],
- surveyCode: ''
- },
- mounted: function () {
- var vm = this
- this.getDictData()
- setTimeout(function () {
- vm.getScreenResultDetail()
- }, 200)
- this.getDoctorInfo()
- },
- methods: {
- lianxijiayi: function () {
- this.jiayiShow = true
- },
- centerDialogClick: function () {
- var vm = this
- var docInfo = JSON.parse(window.localStorage.getItem('docInfo'))
- this.centerDialogVisible = false
- vm.isloading = true
- jbscAPI
- .changeSurveyState({
- surveyResultCode: this.resultCode, //问卷code
- surveyStatus: 1, //surveyStatus =1 社区随访--已管理
- doctorCode: docInfo.code //医生code
- })
- .then(function (res) {
- if (res.status == 200) {
- top.layer.msg('操作成功')
- vm.isloading = false
- vm.getScreenResultDetail()
- }
- })
- },
- getDoctorInfo: function () {
- var vm = this
- var data = {
- code: vm.doctorInfo.code
- }
- jbscAPI.doctorBaseinfo(data).then(function (res) {
- if (res.status == 200) {
- vm.doctorInfo = res.data
- } else {
- top.layer.msg(res.msg, { icon: 5 })
- }
- })
- },
- jkjy: function () {
- var vm = this
- top.layer.open({
- type: 2,
- // offset: ['100px'], //右下角弹出
- area: ['80%', '648px'],
- shade: 0.5,
- title: '健康教育',
- fixed: true, //不固定
- maxmin: true,
- closeBtn: 1,
- shift: 5,
- shadeClose: false, //点击遮罩关闭层
- content: '../../article/html/article.html?code=' + this.userInfo.patient_code + '&resultCode=' + vm.resultCode
- })
- },
- //健康指导
- jkzd: function (data) {
- top.layer.open({
- type: 2,
- // offset: ['100px'], //右下角弹出
- area: ['80%', '648px'],
- shade: 0.5,
- title: '健康指导',
- fixed: true, //不固定
- maxmin: true,
- closeBtn: 1,
- shift: 5,
- shadeClose: false, //点击遮罩关闭层
- content: '../../guidance/html/index.html?patient=' + data.patientCode + '&resultCode=' + data.code
- })
- },
- jkzg: function () {
- var vm = this
- var index = top.layer.getFrameIndex(window.name) //先得到当前iframe层的索引
- top.layer.open({
- type: 2,
- area: ['500px', '550px'],
- shade: 0.5,
- title: '家医建议',
- fixed: true, //不固定
- maxmin: false,
- closeBtn: 1,
- shift: 5,
- shadeClose: false, //点击遮罩关闭层
- content: '../../jbsc/html/advice.html?parentIframe=' + index + '&resultCode=' + vm.resultCode + '&filter_code=' + vm.userInfo.template_code
- })
- },
- sqsf: function () {
- var vm = this
- vm.centerDialogVisible = true
- },
- getDictData() {
- this.questionList = questionList
- var vm = this
- this.dictData.forEach(function (item) {
- jbscAPI.getDictDataByName(item.name).then(function (res) {
- var index = vm.questionList.findIndex(function (el) {
- return el.field == item.field
- })
- vm.questionList[index].options = res.list.map(function (el) {
- return {
- label: el.value,
- value: el.code
- }
- })
- vm.$forceUpdate()
- })
- })
- },
- getScreenResultDetail: function () {
- var vm = this
- var loadding = top.layer.load(0, { shade: false }) //0代表加载的风格,支持0-2
- var data = {
- code: vm.resultCode
- }
- var api
- if (this.flag == 'yd') {
- api = jbscAPI.getYdScreenResultDetail
- } else {
- api = jbscAPI.getScreenResultDetail
- }
- api(data).then(function (res) {
- top.layer.close(loadding)
- if (res.status == 200) {
- var data = res.data
- vm.surveyCode = data.info.template_code
- vm.getScreenData = res.data
- data && ((vm.answer = data.answer), (vm.userInfo = data.info), (vm.result = data.result))
- data && data.info && data.info.code && vm.getHealth()
- data && (vm.specialDoctorName = data.specialDoctorName)
- var userInfo = data.info || []
- vm.dealAction = []
- data && (vm.messInfo = data.info)
- if (!userInfo.survey_status) {
- if (
- userInfo.isDanger == 1 ||
- userInfo.is_danger == 1
- // (userInfo.isAgain == 1 || userInfo.is_again == 1)
- ) {
- //只有高危的筛查需要处理
- if (userInfo.following == 1) {
- vm.dealAction.push('已跟踪')
- }
- if (userInfo.isOrder == 1 || userInfo.is_order == 1) {
- vm.dealAction.push('已预约')
- }
- if (userInfo.isOrder == 2 || userInfo.is_order == 2) {
- vm.dealAction.push('已接诊')
- }
- if (userInfo.following == 0 && (userInfo.isOrder == 0 || userInfo.is_order == 0)) {
- vm.dealAction.push('待处理')
- }
- // if (userInfo.isDanger == 0 || userInfo.is_danger == 0) {
- // vm.dealAction.push('日常健康管理')
- // }
- } else {
- vm.dealAction.push('日常健康管理')
- }
- } else {
- if (userInfo.survey_status == 1) {
- vm.dealAction.push('已管理')
- }
- if (userInfo.survey_status == 2) {
- vm.dealAction.push('住院补筛')
- }
- if (userInfo.survey_status == 3) {
- vm.dealAction.push('已提醒')
- }
- }
- vm.dealAction = vm.dealAction.join(',')
- if (data.info.third_source && data.info.third_source != 4) {
- for (let i in vm.answer) {
- if (vm.answer[i].question.title == '评估医生:') {
- if (vm.answer[i].option) {
- jbscAPI.getDoctorInfoByJwDoctor({ jwDoctor: data.answer[i].option.content }).then(function (res1) {
- if (res.status == 200) {
- vm.answer[i].option.content = res1.data.jwDoctorName
- }
- })
- }
- } else if (vm.answer[i].question.title == '评估机构:') {
- if (vm.answer[i].option) {
- jbscAPI.getHospitalInfoByMappingId({ mappingId: vm.answer[i].option.content }).then(function (res1) {
- if (res.status == 200) {
- vm.answer[i].option.content = res1.data.name
- }
- })
- }
- }
- }
- } else {
- }
- if (data.info.template_code == 'aa9bd609fd8b492296f6a34849b76520') {
- vm.questionList.forEach(function (item) {
- if (item.type == 'radio') {
- var obj = item.options.find(function (el) {
- return el.value == vm.answer[item.field]
- })
- if (obj) {
- vm.answer[item.field] = obj.label
- }
- }
- if (item.type == 'checkbox') {
- var arr = vm.answer[item.field].split(',')
- var answer = []
- arr.forEach(function (el) {
- var obj = item.options.find(function (el1) {
- return el1.value == el
- })
- if (obj) {
- answer.push(obj.label)
- }
- })
- vm.answer[item.field] = answer
- }
- })
- }
- } else {
- top.layer.msg(res.msg, { icon: 5 })
- }
- })
- },
- getHealth: function () {
- var vm = this
- var data = {
- patient: vm.userInfo.patient_code
- }
- if (this.flag && this.flag == 'yd') {
- // 异地医院管理情况过来的
- jbscAPI.getLastYd(data).then(function (res) {
- if (res.status == 200) {
- vm.tizhongRecord =
- _.find(res.data, function (o) {
- return o.type == '3'
- }) || {}
- } else {
- top.layer.msg(res.msg, { icon: 5 })
- }
- JSON.stringify(vm.tizhongRecord) !== '{}' && (vm.noTiZhong = false)
- setTimeout(function () {
- vm.dealAction = '住院补筛'
- }, 1000)
- })
- } else {
- jbscAPI.getHealth(data).then(function (res) {
- if (res.status == 200) {
- vm.tizhongRecord =
- _.find(res.data, function (o) {
- return o.type == '3'
- }) || {}
- } else {
- top.layer.msg(res.msg, { icon: 5 })
- }
- JSON.stringify(vm.tizhongRecord) !== '{}' && (vm.noTiZhong = false)
- })
- }
- },
- referral: function () {
- // top.layer.msg('PC上暂不支持,请打开手机端疑似高危记录进行转诊预约', { icon: 5 })
- var vm = this
- var patient = vm.userInfo.patient_code,
- callCode = ''
- // 如果是康复复诊过去预约挂号,在就诊信息页面少一个字段显示,1隐藏字段,0正常显示
- sessionStorage.setItem('isFuzhen', 0)
- top.layer.open({
- type: 2,
- closeBtn: 1, // 显示关闭按钮
- area: ['800px', '90%'],
- title: '预约挂号',
- content: '../../jbsc/html/appointment/appoint-select.html?patient=' + patient + '&callCode=' + callCode + '&surveyCode=' + vm.resultCode
- })
- },
- reScreening: function () {
- //再次筛查
- var vm = this
- top.layer.open({
- type: 2,
- // offset: ['100px'], //右下角弹出
- area: ['820px', '648px'],
- shade: 0.5,
- title: '筛选统计',
- fixed: true, //不固定
- maxmin: true,
- closeBtn: 1,
- shift: 5,
- shadeClose: false, //点击遮罩关闭层
- content:
- '../../jbsc/html/questionnaire.html?isAgain=1&fliter_title=' +
- vm.userInfo.template_title +
- '&fliter_code=' +
- vm.userInfo.template_code +
- '&resident_code=' +
- vm.userInfo.patient_code +
- '&resident_name=' +
- vm.userInfo.patient_name
- })
- var index = top.layer.getFrameIndex(window.name) //先得到当前iframe层的索引
- top.layer.close(index) //再执行关闭
- },
- messageWarn() {
- var vm = this
- var docInfo = JSON.parse(window.localStorage.getItem('docInfo'))
- jbscAPI
- .changeSurveyState({
- surveyResultCode: this.resultCode, //问卷code
- surveyStatus: 3, //surveyStatus =1 社区随访--已管理
- doctorCode: docInfo.code //医生code
- })
- .then(function (res) {
- if (res.status == 200) {
- top.layer.msg('操作成功')
- vm.getScreenResultDetail()
- vm.closeMessageDialog()
- }
- })
- },
- openMessageDialog() {
- var vm = this
- jbscAPI.getSurveyMessage({ surveyResultCode: this.userInfo.code }).then(function (res) {
- vm.messageVisible = true
- vm.messInfo = res.data
- })
- // jbscAPI.getSignInfo({ idcard: this.userInfo.idcard }).then(function (res) {
- // vm.messageVisible = true
- // if (res.data) {
- // vm.messInfo.doctName = res.data.doctorName
- // } else {
- // vm.messInfo.doctName = ''
- // }
- // vm.$forceUpdate()
- // })
- },
- closeMessageDialog() {
- this.messageVisible = false
- }
- }
- })
- </script>
- </body>
- </html>
|