瀏覽代碼

新增康复计划、个人康复管理

linehang 6 年之前
父節點
當前提交
45a08d3e76
共有 32 個文件被更改,包括 1817 次插入0 次删除
  1. 65 0
      api/recover_api.js
  2. 136 0
      app/recover/css/new_recover.css
  3. 45 0
      app/recover/css/personal-manage.css
  4. 41 0
      app/recover/css/project-detail.css
  5. 61 0
      app/recover/css/select-patient.css
  6. 590 0
      app/recover/html/new_recover.html
  7. 314 0
      app/recover/html/personal-manage.html
  8. 141 0
      app/recover/html/project-detail.html
  9. 98 0
      app/recover/html/select-disease.html
  10. 203 0
      app/recover/html/select-patient.html
  11. 108 0
      app/recover/html/select-project.html
  12. 二進制
      app/recover/images/dianxian.png
  13. 二進制
      app/recover/images/dianxuan_btn.png
  14. 二進制
      app/recover/images/dianxuan_pre.png
  15. 二進制
      app/recover/images/gouxuan_lanse_icon.png
  16. 二進制
      app/recover/images/jiaobiao_xuanzhe_img.png
  17. 二進制
      app/recover/images/qiehuan_ben_pre.png
  18. 二進制
      app/recover/images/qiehuan_btn.png
  19. 二進制
      app/recover/images/qingchu_icon.png
  20. 二進制
      app/recover/images/shouqi_btn.png
  21. 二進制
      app/recover/images/shouqi_jiantou_icon.png
  22. 二進制
      app/recover/images/tiaozhuan_icon.png
  23. 二進制
      app/recover/images/tiaozhuan_xia_icon.png
  24. 二進制
      app/recover/images/wushuju01_img.png
  25. 二進制
      app/recover/images/wushuju_img.png
  26. 二進制
      app/recover/images/xinzeng_icon.png
  27. 二進制
      app/recover/images/yiyuan_icon.png
  28. 二進制
      app/recover/images/zhankai_btn.png
  29. 二進制
      app/recover/images/zhankai_jiantou_icon.png
  30. 二進制
      images/tiaozhuan_shang_icon.png
  31. 13 0
      js/flatpickr/flatpickr.min.css
  32. 2 0
      js/flatpickr/flatpickr.min.js

+ 65 - 0
api/recover_api.js

@ -0,0 +1,65 @@
(function(exports) {
    var recoverAPI = {
		// 居民康复详情
		patientRehabilitationDetail: function(data) {
			return httpRequest.get("doctor/specialist/rehabilitation/patientRehabilitationDetail", {data: data})
		},
		// 近期康复记录
		recentPlanDetailRecord: function(data) {
			return httpRequest.get("doctor/specialist/rehabilitation/recentPlanDetailRecord", {data: data})
		},
		// 就诊记录
		archivesEvent: function(data) {
			return httpRequest.get("doctor/archives/event", {data: data})
		},
		// 完成项目详情
		serviceItem: function(data) {
			return httpRequest.get("doctor/specialist/rehabilitation/serviceItem", {data: data})
		},
		// 获取专病居民类别
		findLabelAndPatientCountByDoctor: function(data) {
			return httpRequest.get("doctor/specialist/findLabelAndPatientCountByDoctor", {data: data})
		},
		// 获取居民列表by医生
		getPatientInfoByDoctor: function(data) {
			return httpRequest.get("doctor/specialist/getPatientInfoByDoctor", {data: data})
		},
		// 获取居民信息
		getPatientInfo: function(data) {
			return httpRequest.get("doctor/patient_label_info/patient", {data: data})
		},
		// 获取模板列表
		findTemplateList: function(data) {
			return httpRequest.get("/doctor/specialist/rehabilitationPlan/findTemplateList", {data: data})
		},
		// 获取模板详细
		findTemplateDetail: function(data) {
			return httpRequest.get("/doctor/specialist/rehabilitationPlan/findTemplateDetail", {data: data})
		},
		// 删除模板
		deleteTemplate: function(data) {
			return httpRequest.get("/doctor/specialist/rehabilitationPlan/deleteTemplate", {data: data})
		},
		// 获取机构服务项目列表
		findServiceItemsByHospital: function(data) {
			return httpRequest.get("/doctor/specialist/hospitalServiceItem/findServiceItemsByHospital", {data: data})
		},
		// 获取医生团队疾病
		findTeamDiseaseRelation: function(data) {
			return httpRequest.get("third/specialist/findTeamDiseaseRelation", {data: data})
		},
		// 根据机构服务id获取详细信息
		selectByIds: function(data) {
			return httpRequest.get("doctor/specialist/hospitalServiceItem/selectByIds", {data: data})
		},
		// 创建康复计划
		createRehabilitationPlan: function(data) {
			return httpRequest.post("doctor/specialist/rehabilitationPlan/createRehabilitationPlan", {data: data})
		},
		// 根据患者获取专科医生跟技管师
		findPatientSignSpecialistInfo: function(data) {
			return httpRequest.get("doctor/specialist/findPatientSignSpecialistInfo", {data: data})
		}
	}
    exports.recoverAPI = recoverAPI;
})(window)

+ 136 - 0
app/recover/css/new_recover.css

@ -0,0 +1,136 @@
#app {
	min-width: 1024px;
	height: 100%;
}
p {margin-bottom: 0; margin-top: 0;}
.re-title .name{font-size: 18px;font-weight: bold;color: #333;height: 40px;line-height: 40px;display: inline-block;padding: 0px 20px;}
.re-title .team{font-size: 14px;color: #333;display: inline-block;}
.no-select{-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select:none}
.re-title{border-bottom:solid 1px #ededed;}
.lh28 {line-height: 28px;}
.plr5 {padding-left: 5px; padding-right: 5px;}
.c-12b7f5 {color: #12b7f5;)}
.bgc-12b7f5 {background-color: #12b7f5;}
.bgc-e1e1e1 {background-color: #e1e1e1;}
.w40 {width: 32px; height: 24px; text-indent: 0.5em;}
.w60 {width: 60px;}
.w80 {width: 80px;}
.lh18 {height: 18px; line-height: 18px;}
.lh24 {height: 24px; line-height: 24px;}
.h30 {height: 30px; line-height: 30px}
.lh40 {line-height: 40px}
.cur-pit {cursor: pointer;}
.content {
	height: calc(100% - 41px);
}
.set-photo, .set-photo img {
	height: 45px;
	width: 45px;
	border-radius: 50%;
	margin: 0 auto;
}
.w300 {width: 300px;}
.c-h100 {height: 100%;}
.c-h100-41 {height: calc(100% - 41px);}
.c-h100-99 {height: calc(100% - 99px);}
.c-h100-80 {height: calc(100% - 79px);}
.w-100-66 {width: calc(100% - 66px);}
.w-100-78 {width: calc(100% - 78px);}
.w-100-300 {width: calc(100% - 301px);}
.muban_con {
	width: 400px;
	margin: 0 auto;
}
.muban_con li {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	border-radius: 5px;
	border: 1px solid #12b7f5;
	cursor: pointer;
}
.addmuban-btn {
	background: #12b7f5 url(../images/xinzeng_icon.png) no-repeat no-repeat 40% 9px;
}
ul {
	list-style: none;
}
.set-label span {
	background: url(../images/dianxuan_btn.png) no-repeat no-repeat 0px center;
	background-size: 15px 15px;
}
.set-label span:hover, .set-label span.active {
	background: url(../images/dianxuan_pre.png) no-repeat no-repeat 0px center;
	background-size: 15px 15px;
}
.search-input {
	border: 0;
	outline: none;
	height: 34px;
	width: calc(100% - 50px);
}
.search-btn {
	width: 30px;
	height: 34px;
	background: url(../../../images/sousuo_icon.png) no-repeat no-repeat center center;
	cursor: pointer;
}
.set-arrow {
	background: url(../images/shouqi_jiantou_icon.png) no-repeat no-repeat 0px center;
	background-size: 9px 9px;
}
.set-arrow.active {
	background: url(../images/zhankai_jiantou_icon.png) no-repeat no-repeat 0px center;
	background-size: 9px 9px;
}
.border-c12b7f5 {
	border-color: #12b7f5;
}
.bgc-green {background-color: green;}
.b-r-3 {border-radius: 3px;}
.txt-ells {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.project:hover {background-color: deepskyblue;}
.c-red {color: red;}
.sub-tap {
	width: 18px;
	height: 18px;
	background: url(../images/qingchu_icon.png) no-repeat no-repeat right top;
	background-size: 18px 18px;
}
.w-50 {width: 50%;}
.set-qiehuan {
	right: 10px;
	top: 15px;
	width: 25px;
	height: 25px;
	background: url(../images/qiehuan_btn.png) no-repeat no-repeat scroll 0px 0px;
	background-size: 25px 25px;
}
.set-qiehuan:hover {
	background: url(../images/qiehuan_ben_pre.png) no-repeat no-repeat scroll 0px 0px;
	background-size: 25px 25px;
}
.bgc-999 {background-color: #999;}
.w100 {width: 100px;}
.set-xia {
	background: url(../../../images/tiaozhuan_xia_icon.png) no-repeat no-repeat 85px center;
	background-size: 8px 4px;
}
.set-shang {
	background: url(../../../images/tiaozhuan_shang_icon.png) no-repeat no-repeat 85px center;
	background-size: 8px 4px;
}
.doc_list {
	left: 0;
	top: 18px;
	width: 98px;
	z-index: 999;
	background-color: #ffffff;
}
.doc_list li:hover {
	background-color: #e1e1e1;
}

+ 45 - 0
app/recover/css/personal-manage.css

@ -0,0 +1,45 @@
.bgc-f2fcfe {background-color: #f2fcfe;}
.w350 {width: 350px;}
.w-100-350 {width: calc(100% - 351px);}
.c-orange {color: orange;}
.bgc-orange {background-color: orange;}
.bgc-c1c1c1 {background-color: #c1c1c1;}
.lh22 {height: 22px; line-height: 22px;}
.b-r-11 {border-radius: 11px;}
.w30 {width: 30px;}
.set-dianxian {
	width: 20px;
	height: 36px;
	background: url(../images/dianxian.png) no-repeat repeat center center;
}
.mt13 {margin-top: 13px;}
.mt8 {margin-top: 8px;}
.set-taday {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: #12b7f5;
	line-height: 20px;
}
.set-row {
	width: 10px;
	height: 10px;
	border-radius: 50%;
}
.w-100-220 {width: calc(100% - 220px);}
.record-li:hover {
	background-color: #f1f6f5;
	color: #12B7F5;
}
.doc-li:hover, .plan-li:hover {
	background-color: #e1e1e1;
}
.bgc-red {
	background-color: lightcoral;
}
.w-100-60 {width: calc(100% - 60px);}
.set-hospital {
	background: url(../images/yiyuan_icon.png) no-repeat no-repeat 5px 5px;
	background-size: 12px 12px;
}
.h73 {height: 73px;}

+ 41 - 0
app/recover/css/project-detail.css

@ -0,0 +1,41 @@
.lh28 {line-height: 28px;}
.plr5 {padding-left: 5px; padding-right: 5px;}
.c-12b7f5 {color: #12b7f5;)}
.bgc-12b7f5 {background-color: #12b7f5;}
.bgc-e1e1e1 {background-color: #e1e1e1;}
.bgc-f2fcfe {background-color: #f2fcfe;}
.w40 {width: 32px; height: 24px; text-indent: 0.5em;}
.w60 {width: 60px;}
.w80 {width: 80px;}
.lh18 {height: 18px; line-height: 18px;}
.lh24 {height: 24px; line-height: 24px;}
.h30 {height: 30px; line-height: 30px}
.lh40 {line-height: 40px}
.cur-pit {cursor: pointer;}
.set-photo, .set-photo img {
	height: 45px;
	width: 45px;
	margin: 0 auto;
}
ul {
	list-style: none;
}
.border-c12b7f5 {
	border-color: #12b7f5;
}
.bgc-green {background-color: green;}
.b-r-3 {border-radius: 3px;}
.c-red {color: red;}
.w-50 {width: 50%;}
.set-finish {
	background: url(../images/gouxuan_lanse_icon.png) no-repeat no-repeat 0px center;
	background-size: 14px 14px;
}
.set-show {
	background: url(../images/zhankai_btn.png)  no-repeat no-repeat 0px center;
	background-size: 12px 12px;
}
.set-show.active {
	background: url(../images/shouqi_btn.png)  no-repeat no-repeat 0px center;
	background-size: 12px 12px;
}

+ 61 - 0
app/recover/css/select-patient.css

@ -0,0 +1,61 @@
.c-h100 {
	height: 100%;
}
.w40 {
	width: 40px;
}
.w-100-70 {
	width: calc(100% - 70px);
}
.search-input {
	border: 0;
	outline: none;
	height: 34px;
	width: calc(100% - 50px);
}
.search-btn {
	width: 30px;
	height: 34px;
	background: url(../../../images/sousuo_icon.png) no-repeat no-repeat center center;
	cursor: pointer;
}
.lh34 {
	height: 34px;
	line-height: 34px;
}
.label-list h4 {
	background: url(../../../images/tiaozhuan_icon.png) no-repeat no-repeat calc(100% - 10px) center;
	background-size: 5px 9px;
}
.label-list h4.active {
	background: url(../../../images/tiaozhuan_xia_icon.png) no-repeat no-repeat calc(100% - 10px) center;
	background-size: 9px 5px;
}
.set-img, .set-img img {
	width: 40px;
	height: 40px;
	border-radius: 50%;
}
.lh40 {
	height: 40px;
	line-height: 40px;
}
.lh22 {
	line-height: 22px;
}
.pat-list li:hover {
	background-color: #e1e1e1;
}
.set-txt {width: calc(100% - 50px);}
.bgc-12b7f5 {background-color: #12b7f5;}
.c-12b7f5 {color: #12b7f5;}
.txt-underline {
	text-decoration: underline;
}
.cur-pit {cursor: pointer;}
.b-r-3 {border-radius: 3px;}
.disease-list li.active {
	border: 1px solid #12b7f5;
	background: url(../images/jiaobiao_xuanzhe_img.png) no-repeat no-repeat bottom right;
}
.bgc-f2fcfe {background-color: #f2fcfe;}

+ 590 - 0
app/recover/html/new_recover.html

@ -0,0 +1,590 @@
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>新增康复安排</title>
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.ui.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../css/new_recover.css" />
	</head>
	<body class="m0">
	<div id="app" v-cloak>
		<div class="c-position-a" style="top: -999px; left: -999px;" v-show="isTest"></div>
		<div class="re-title no-select">
			<div class="name">新增康复安排</div>
		</div>
		<div class="content clearfix">
	        <div class="fl c-h100 w300 person_info c-border-r" style="overflow: hidden;">
	        	<div v-if="!patiInfo" class="c-h100" style="overflow: auto;">
		        	<div  class="c-border-b c-t-center pt20">
		        		<div class="set-photo">
		        			<img src="../../../images/p-female.png" alt="居民头像" />
		        		</div>
		        		<p class="ptb10">患者名</p>
		        	</div>
		        	<div>
		        		<div class="no-result c-t-center pt20">
		        			<img src="../images/wushuju01_img.png" alt="无数据" />
		        			<p class="c-999">暂无相关信息</p>
		        			<div class="pt30">
		        				<span class="c-fff btn cur-pit plr10 ptb5 bgc-12b7f5 b-r-3" @click="selectPatient()">同步信息</span>
		        			</div>
		        		</div>
		        	</div>
	        	</div>
	        	<div v-else class="c-h100 plr10" style="overflow: auto;">
	        		<div  class="c-t-center pt20 c-position-r">
		        		<div class="set-photo">
		        			<img :src="setPatImg(patiInfo.photo)" alt="居民头像" />
		        		</div>
		        		<h3 class="ptb10 m0 c-f16">{{patiInfo.name}}</h3>
		        		<span class="c-position-a set-qiehuan cur-pit" @click="selectPatient()"></span>
		        	</div>
		        	<h4 class="h30 m0 c-f14 c-border-b">基本信息</h4>
		        	<ul class="c-333 m0 p0 pb20">
		        		<li class="pt10"><span class="c-999">性&emsp;&emsp;别:</span>{{patiInfo.sex == 1 ? "男" : "女"}}</li>
		        		<li class="pt10"><span class="c-999">年&emsp;&emsp;龄:</span>{{patiInfo.age}}岁</li>
		        		<li class="pt10"><span class="c-999">身份证号:</span>{{patiInfo.idcard}}</li>
		        		<li class="pt10"><span class="c-999">地&emsp;&emsp;址:</span>{{patiInfo.address}}</li>
		        	</ul>
		        	<h4 class="h30 m0 c-f14 c-border-b">家庭医生</h4>
		        	<ul class="c-333 m0 p0 pb20">
		        		<li class="pt10"><span class="c-999">签约社区:</span>{{patiInfo.ssHospitalName}}</li>
		        		<li class="pt10"><span class="c-999">全科医生:</span>{{patiInfo.ssDoctorName}}</li>
		        		<li class="pt10"><span class="c-999">健&ensp;管&ensp;师:</span>{{patiInfo.ssDoctorHealthName}}</li>
		        	</ul>
		        	<!--<h4 class="h30 m0 c-f14 c-border-b">诊疗信息</h4>
		        	<ul class="c-333 m0 p0 pb20">
		        		<li class="pt10"><span class="c-999">诊疗医院:</span>男</li>
		        		<li class="pt10"><span class="c-999">入院科室:</span>男</li>
		        		<li class="pt10"><span class="c-999">主治医师:</span>男</li>
		        		<li class="pt10"><span class="c-999">入院诊断:</span>男</li>
		        		<li class="pt10"><span class="c-999">出院诊断:</span>男</li>
		        	</ul>
		        	<h4 class="h30 m0 c-f14 c-border-b">出院小结</h4>
		        	<p class="m0 pt10 c-333">依旧本次判断,对新消息进行出院诊断做出以下结论:忧郁啥啥事等等等问题</p>-->
	        	</div>
	        </div>
	        <div class="fl c-h100 w-100-300">
	        	<div class="c-h100 plr5" v-if="!isPlan">
		        	<h4 class="m0 pl10 lh40 c-border-b">配置康复计划</h4>
		        	<div style="overflow: hidden; height: calc(100% - 41px);">
		        		<div style="overflow: auto; height: 100%;">
				        	<div class="un-select c-t-center pt45" v-if="!patiInfo">
				        		<img src="../images/wushuju_img.png" alt="" />
				        		<p class="c-999">您还没有选择居民</p>
				        	</div>
				        	<ul class="muban_con lh40 c-t-center pt30" v-else>
				        		<li class="mb20" v-for="(muban, index) in mubanList" :key="index" @click="addMuban(muban.id)">{{muban.title}}</li>
				        		<li class="addmuban-btn c-fff" @click="addMuban()">新增模板</li>
				        	</ul>
			        	</div>
			        </div>
		        </div>
		        <div class="clearfix c-h100" v-else>
		        	<div class="fl w-100-300 c-h100">
		        		<div class="plr5 c-h100-80">
		        			<h4 class="m0 pl10 lh40 c-border-b set-label">配置康复计划
		        				<span v-for="(label, index) in spanLabel" :key="index" class="fr ml20 pl20 c-f14 c-999 cur-pit" :class="{'active': index == labelIndex}" @click="setLabelIndex(index, label)">{{label.labelName}}</span>
		        			</h4>
		        			<div class="c-h100-41" style="overflow: hidden;">
		        				<ul class="c-h100 p0 m0" style="overflow: auto;">
		        					<li class="mt10 plr10 ptb5 c-border b-r-3 clearfix" v-for="(detail, index) in templateDetail" :key="index">
		        						<div class="fl w-100-78 c-333">
		        							<p class="m0 p0 mb10 txt-ells cur-pit" @click="lookProject(detail)">{{detail.specialistServiceItemDO.title}}</p>
	        								<div class="clearfix">
	        									<p class="m0 mb5 mr20 p0 fl"><span class="c-999">医&emsp;&emsp;院:</span>{{detail.hospitalName}}</p>
	        									<div class="m0 mb5 mr20 p0 fl clearfix">
	        										<span class="fl c-999">执行人员:</span>
	        										<div class="fl c-position-r w100">
	        											<p class="m0 p0 plr10 c-border cur-pit set-xia" :class="{'set-shang':detail.selectDoc}" @click="changeSelectDoc(index, detail.selectDoc)">{{detail.executeDoctorName}}</p>
	        											<ul class="m0 p0 c-border-b c-border-l c-border-r c-position-a doc_list" v-if="detail.selectDoc">
	        												<li class="plr10 c-border-t cur-pit" v-for="(list, indDoc) in detail.docList" :key="indDoc" @click="selectLi(index, list)">{{list.name}}</li>
	        											</ul>
	        										</div>
	        									</div>
	        									<p class="m0 mb5 p0 fl"><span class="c-999">费&emsp;&emsp;用:</span>{{detail.specialistServiceItemDO.unit}}</p>
	        								</div>
		        							<div class="m0 p0 lh18 clearfix">
        										<span class="fl c-999">计划时间:</span>
        										<p class="fl lh18 mb5 mr20 clearfix" v-for="(time, ind) in detail.specialistServiceItemDO.executeTime" :key="ind" v-if="detail.specialistServiceItemDO.executeTime.length">
        											<span class="fl">{{time}}</span><span class="fl ml5 sub-tap cur-pit" @click="spliceTimeArr(index, ind)"></span>
        										</p>
        										<span class="fl c-12b7f5 cur-pit calendar" contenteditable="true" readonly="true" @mousedown="selectTime(index)" class=flatpickr data-enable-time=true data-time_24hr=true>添加</span>
        									</div>
		        						</div>
		        						<div class='fr w60 c-t-right clearfix'>
		        							<p class="m0 p0 mb10">×{{detail.specialistServiceItemDO.executeTime.length}}</p>
		        							<div class="fr sub-tap cur-pit" @click="subTemplate(index, detail)"></div>
		        						</div>
		        					</li>
		        					<li class="pt100 c-t-center" v-if="!templateDetail.length">
		        						请在右侧“服务项”列表中选择
		        					</li>
		        				</ul>
		        			</div>
		        		</div>
		        		<div>
	        				<p class="m0 p0 pl20 ptb10 c-border-b set-label">支付方式:<span class="ml10 pl20 active">按服务支付</span><em class="c-red ml20">(按选择支付方式完成收费)</em></p>
	        				<div class="pl20 lh40">总费用:
	        					<span class="c-red c-f16">¥{{allFee}}</span>
	        					<span class="fr lh30 cur-pit w80 c-t-center c-fff" :class="allFee ? 'bgc-12b7f5' : 'bgc-999'" @click="createRehabilitationPlan()">生成计划</span>
	        					<span class="fr lh30 cur-pit w80 c-t-center bgc-green c-fff" @click="canclePlan()">取消</span>
	        				</div>
	        			</div>
		        	</div>
		        	<div class="fr w300 c-h100 c-border-l">
		        		<div class="plr5 c-h100">
		        			<h4 class="m0 pl10 lh40 c-border-b">添加其他项目</h4>
		        			<div class="clearfix mtb10 c-border">
								<input class="fl search-input plr10" type="text" placeholder="输入项目名称" />
								<span class="fr search-btn"></span>
							</div>
							<div class="c-h100-99" style="overflow: hidden;">
								<ul class="c-h100 p0 m0" style="overflow: auto;">
									<li v-for="(project1, index) in projectList" :key="index">
										<h4 class="set-arrow c-f14 h30 p0 m0 pl20 cur-pit" :class="{'active': index == proIndex1}" @click="selectPro(1, index)">{{project1.itemType == 1 ? '康复服务' : '健康服务'}}</h4>
										<ul class="c-h100 p0 m0 pl10" v-if="index == proIndex1">
											<li v-for="(project2, index2) in project1.item" :key="index2">
												<p class="set-arrow h30 c-f14 pl20 m0 c-333 cur-pit" :class="{'active': index2 == proIndex2}" @click="selectPro(2, index2)">{{project2.itemName}}</p>
												<ul class="p0 m0 pr10" v-if="index2 == proIndex2">
													<li v-for="(project3, index3) in project2.hospitalServiceItems" :key="index3" class="clearfix ptb5">
														<div class="fl project c-border w-100-66 cur-pit border-c12b7f5 ptb5 plr5 b-r-3 clearfix" @click="selectProject(index, index2, index3, project3)">
															<p class="fl w-100-78 txt-ells lh18">{{project3.specialistServiceItemDO.title}}</p>
															<span class="fr lh18 b-r-3 c-f12 ml5 bgc-green plr5 c-fff" v-if="project3.flag == 1 || project3.flag == 3">社区</span>
															<span class="fr lh18 b-r-3 c-f12 ml5 bgc-12b7f5 plr5 c-fff" v-if="project3.flag == 2 || project3.flag == 3">医院</span>
														</div>
														<span class="fr h30 btn cur-pit plr10 bgc-12b7f5 c-fff b-r-3" v-if="!project3.isSelect" @click="addProject(index, index2, index3, project3)">添加</span>
														<span class="fr h30 btn plr10 bgc-e1e1e1 c-fff b-r-3" v-else>添加</span>
													</li>
												</ul>
											</li>
										</ul>
									</li>
								</ul>
							</div>
		        		</div>
		        	</div>
		        </div>
	        </div>
	    </div>
	</div>
		<script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
        <script src="../../../js/jquery-2.2.4.js"></script>
        <script src="../../../plugins/layer/layer.min.js"></script>
        <script src="../../../js/bootstrap.min.js"></script>
        <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></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>
		<link rel="stylesheet" href="../../../js/flatpickr/flatpickr.min.css">
		<script src="../../../js/flatpickr/flatpickr.min.js"></script>
		<script src="../../../api/http-request.js" type="text/javascript"></script>
		<script src="../../../api/recover_api.js" type="text/javascript"></script>
		<script type="text/javascript">
			var doctorType = (JSON.parse(window.localStorage.getItem('wlyyAgent'))||{}).doctorType,
				docInfo = JSON.parse(window.localStorage.getItem('wlyyAgent'))
			var httpData=GetRequest()
			function showSuccessMessage(msg) {
				layer.msg(msg, {
					icon: 1
				})
			}
			
			function showErrorMessage(msg) {
				layer.msg(msg, {
					icon: 5
				})
			}
			
			function showWarningMessage(msg) {
				layer.msg(msg, {
					icon: 2
				})
			}
			
			function showInfoMessage(msg) {
				layer.msg(msg, {
					icon: 6
				})
			}
			// 初始化加载flatpickr插件
			$(".calendar").flatpickr();
			
			recoverVue = new Vue({
                el: "#app",
                data: {
                	isTest: false,
                	pati: null,
                	isPlan: false,
                	proIndex1: null,
                	proIndex2: null,
                	patiInfo: null,
                	diseaseObj: null,
                	mubanList: [],
                	templateDetail: [],
                	templateResult: [],
                	allFee: 0,
                	projectList: null,
                	labelIndex: 2,
                	labelCode: null,
                	spanLabel: [{
                		labelName: "(转)家庭病床",
                		code: 3
                	}, {
                		labelName: "(转)社区医院",
                		code: 2
                	}, {
                		labelName: "康复计划",
                		code: 1
                	}],
                	jDlist: null,
                	zDlist: null,
                	selectProjectDetail: null
                },
                mounted: function() {
                	
                },
                methods: {
                	// 获取居民信息
                	getPatientInfo: function() {
                		this.findPatientSignSpecialistInfo()
                		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				patient: this.pati.patient
			    			}
						recoverAPI.getPatientInfo(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.patiInfo = res.data
								vm.jDlist = [{
									name: vm.patiInfo.ssDoctorName,
									code: vm.patiInfo.ssDoctor
								}, {
									name: vm.patiInfo.ssDoctorHealthName,
									code: vm.patiInfo.ssDoctorHealth
								}]
							} else {
								showErrorMessage(res.msg);
							}
						})
                	},
                	findPatientSignSpecialistInfo: function() {
                		var vm = this,
			    			params = {
			    				patient: this.pati.patient,
			    				doctor: docInfo.uid
			    			}
						recoverAPI.findPatientSignSpecialistInfo(params).then(function(res) {
							if(res.status == 200) {
								vm.zDlist = [{
									name: res.data.doctorName,
									code: res.data.doctor
								}, {
									name: res.data.healthAssistantName,
									code: res.data.healthAssistant
								}]
							} else {
								showErrorMessage(res.msg);
							}
						})
                	},
                	// 模板列表
                	findTemplateList: function() {
                		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				patient: this.pati.patient,
			    				doctor: docInfo.uid
			    			}
						recoverAPI.findTemplateList(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.mubanList = res.data
							} else {
								showErrorMessage(res.msg);
							}
						})
                	},
                	// 模板详细
                	findTemplateDetail: function(templateId) {
                		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				templateId: templateId
			    			}
						recoverAPI.findTemplateDetail(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.templateDetail = []
								vm.templateResult = res.data
								vm.findServiceItemsByHospital()
							} else {
								showErrorMessage(res.msg);
							}
						})
                	},
                	// 服务项目列表
                	findServiceItemsByHospital: function() {
                		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				doctor: docInfo.uid,
								patient: this.pati.patient
			    			}
						recoverAPI.findServiceItemsByHospital(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.projectList = $.each(res.data[0], function(index, o) {
									$.each(vm.templateResult, function(index1, o1) {
										if(o1.specialistServiceItemDO.itemType == o.itemType) {
											$.each(o.item, function(index2, o2) {
												if(o1.specialistServiceItemDO.diseaseItem == o2.itemName) {
													$.each(o2.hospitalServiceItems, function(index3, o3) {
														if(o3.serviceItemId == o1.serviceItemId) {
															o3.isSelect = true
															o3.selectDoc = false
															o3.specialistServiceItemDO.executeTime = []
															if(o3.flag == 2) {
																o3.executeDoctor = vm.zDlist[0].code
																o3.executeDoctorName = vm.zDlist[0].name
																o3.docList = vm.zDlist
															} else {
																o3.executeDoctor = vm.jDlist[0].code
																o3.executeDoctorName = vm.jDlist[0].name
																o3.docList = vm.jDlist
															}
															vm.templateDetail.push(o3)
														}
													});
												}
											});
										}
									});
									return o;
								});
							} else {
								showErrorMessage(res.msg);
							}
						})
                	},
                	setPatImg: function(src) {
			    		if(!src) {
			    			return "../../../images/p-female.png"
			    		} else {
			    			var str = httpRequest.getImgUrl(src);
			    			return str
			    		}
			    	},
			    	changeSelectDoc: function(index, bool) {
			    		this.templateDetail[index].selectDoc = !bool
			    		this.isTest = !this.isTest
			    	},
			    	selectLi: function(index, list) {
			    		this.templateDetail[index].selectDoc = false
			    		this.templateDetail[index].executeDoctor = list.code
			    		this.templateDetail[index].executeDoctorName = list.name
			    		this.templateDetail[index] = this.templateDetail[index]
			    		this.isTest = !this.isTest
			    	},
			    	subTemplate: function(index, detail) {
			    		var vm = this
			    		this.templateDetail.splice(index, 1)
			    		var len = detail.specialistServiceItemDO.executeTime.length
			    		if(len) {
			    			this.allFee -= (len * detail.specialistServiceItemDO.unit)
			    		}
			    		$.each(vm.projectList, function(index, o) {
							if(detail.specialistServiceItemDO.itemType == o.itemType) {
								$.each(o.item, function(index2, o2) {
									if(detail.specialistServiceItemDO.diseaseItem == o2.itemName) {
										$.each(o2.hospitalServiceItems, function(index3, o3) {
											if(o3.serviceItemId == detail.serviceItemId) {
												o3.isSelect = false
												o3.specialistServiceItemDO.executeTime = []
											}
										});
									}
								});
							}
						});
			    	},
			    	// 选择项目
			    	selectProject: function(index, index2, index3, o) {
			    		this.selectProjectDetail = o
                		selectPatientIndex = layer.open({
							type: 2,
							area: ['400px', '500px'],
							shade: 0.5,
							title: '选择项目',
							closeBtn: 1,
							shift: 5,
							shadeClose: false, //点击遮罩关闭层
							content: "select-project.html?isLook=true&projectId=" + o.id + "&index=" + index + "&index3=" + index3 + "&index2=" + index2
						});
                	},
                	// 添加项目
                	addProject: function(index, index2, index3, obj) {
                		if(obj) {
                			this.selectProjectDetail = obj
                		}
                		if(this.selectProjectDetail.isSelect) {
                			showWarningMessage("已添加!")
                			return false;
                		}
                		this.selectProjectDetail.isSelect = true
                		this.selectProjectDetail.selectDoc = false
                		this.selectProjectDetail.specialistServiceItemDO.executeTime = []
						if(this.selectProjectDetail.flag == 2) {
							this.selectProjectDetail.executeDoctor = this.zDlist[0].code
							this.selectProjectDetail.executeDoctorName = this.zDlist[0].name
							this.selectProjectDetail.docList = this.zDlist
						} else {
							this.selectProjectDetail.executeDoctor = this.jDlist[0].code
							this.selectProjectDetail.executeDoctorName = this.jDlist[0].name
							this.selectProjectDetail.docList = this.jDlist
						}
                		this.templateDetail.push(this.selectProjectDetail)
                		this.projectList[index].item[index2].hospitalServiceItems[index3] = this.selectProjectDetail
                	},
                	// 查看项目
                	lookProject: function(o) {
                		selectPatientIndex = layer.open({
							type: 2,
							area: ['400px', '500px'],
							shade: 0.5,
							title: '查看项目',
							closeBtn: 1,
							shift: 5,
							shadeClose: false, //点击遮罩关闭层
							content: "select-project.html?projectId=" + o.id
						});
                	},
                	selectPatient: function() {
                		selectPatientIndex = layer.open({
							type: 2,
							area: ['400px', '500px'],
							shade: 0.5,
							title: '同步出院小结',
							closeBtn: 1,
							shift: 5,
							shadeClose: false, //点击遮罩关闭层
							content: "select-patient.html"
						});
                	},
                	selectPatientOk: function(pati) {
                		this.isPlan = false
                		this.pati = pati
                		this.getPatientInfo()
                		this.findTemplateList()
                	},
                	addMuban: function(oId) {
                		var vm = this
                		selectDiseaseIndex = layer.open({
							type: 2,
							area: ['400px', '500px'],
							shade: 0.5,
							title: '选择疾病',
							closeBtn: 1,
							shift: 5,
							shadeClose: false, //点击遮罩关闭层
							content: "select-disease.html?teamCode=" + vm.pati.teamCode +"&templateId=" + oId || ''
						});
                	},
                	canclePlan: function(obj) {
                		this.isPlan = false
                	},
                	newPlan: function(disease, templateId) {
                		this.diseaseObj = disease
                		this.isPlan = true
                		if(templateId) {
                			this.findTemplateDetail(templateId)
                		} else {
	                		this.templateDetail = []
	                		this.findServiceItemsByHospital()
	                	}
                	},
                	selectPro: function(pro, index) {
                		if(pro == 1) {
                			this.proIndex2 = null;
                			this.proIndex1 == index ? this.proIndex1 = null : this.proIndex1 = index
                		} else {
                			this.proIndex2 == index ? this.proIndex2 = null : this.proIndex2 = index
                		}
                	},
                	setLabelIndex: function(index, label) {
                		this.labelIndex = index
                		this.labelCode = label.code
                	},
                	selectTime: function(index) {
                		var currentEle = $(event.target),
                			vm = this;
                		currentEle.flatpickr({
                			defaultDate: currentEle.val(),
                			minDate: "today",
                			enableTime: true,
                			onOpen: function(obj, str) {
                				currentEle.val(str)
                			},
                			onClose: function(obj, str) {
                				if(!str) {
                					return false;
                				}
                				vm.templateDetail[index].specialistServiceItemDO.executeTime.push(str)
                				vm.allFee += vm.templateDetail[index].specialistServiceItemDO.unit
                			}
                		})
                	},
                	spliceTimeArr: function(index, ind) {
                		this.templateDetail[index].specialistServiceItemDO.executeTime.splice(ind, 1)
                		this.allFee -= this.templateDetail[index].specialistServiceItemDO.unit
                	},
                	createRehabilitationPlan: function() {
                		if(!this.allFee) {
                			showWarningMessage("请选择计划时间!")
                			return false;
                		}
                		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			data = {
			    				patient: this.pati.patient,
			    				name: this.pati.patientName,
			    				title: this.pati.patientName + this.diseaseObj.diseaseName + "康复计划",
			    				disease: this.diseaseObj.diseaseCode,
			    				diseaseName: this.diseaseObj.diseaseName,
			    				planType: this.labelCode,
			    				payment: 2,
			    				totalExpense: this.allFee,
			    				detail: []
			    			},
			    			params = {};
			    		$.each(vm.templateDetail, function(index, o) {
			    			if(o.specialistServiceItemDO.executeTime.length) {
			    				var obj = {
			    					hospitalServiceItemId: o.id,
			    					type: o.flag == 2 ? 2 : 1,
			    					doctor: o.executeDoctor,
			    					doctorName: o.executeDoctorName,
			    					executeTime: o.specialistServiceItemDO.executeTime.join(",")
			    				}
			    				data.detail.push(obj)
			    			}
			    		});
			    		params = {
			    			json: JSON.stringify(data)
			    		}
						recoverAPI.createRehabilitationPlan(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								showSuccessMessage(this.pati.patientName + this.diseaseObj.diseaseName + "康复计划配置成功!")
							} else {
								showErrorMessage(res.msg);
							}
						})
                	}
                }
            })
		</script>
	</body>
</html>

+ 314 - 0
app/recover/html/personal-manage.html

@ -0,0 +1,314 @@
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>个人康复管理</title>
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.ui.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../css/new_recover.css" />
		<link rel="stylesheet" type="text/css" href="../css/personal-manage.css" />
	</head>
	<body class="m0">
	<div id="app" class="c-333" v-cloak>
		<div class="re-title no-select">
			<div class="name">康复管理</div>
		</div>
		<div class="content clearfix">
	        <div class="fl c-h100 w350 person_info c-border-r">
	        	<div class="plr5 c-h100">
		        	<h4 class="m0 pl10 lh40 c-border-b">个人基础信息</h4>
	    			<div class="bgc-f2fcfe mt10 ptb10 plr10">
	    				<div class="clearfix">
		    				<div class="fl w-100-66">
		    					<p class="m0 p0 mb10">
		    						<span class="c-999">姓名:</span>{{recoverPatInfo.patientInfo.patientName}}
		    						<span class="c-999 ml20">性别:</span>{{recoverPatInfo.patientInfo.sex == 1 ? "男" : "女"}}
		    						<span class="c-999 ml20">年龄:</span>{{recoverPatInfo.patientInfo.age}}岁
		    					</p>
		    					<p class="m0 p0 mb10">
		    						<span class="c-999">健康情况:</span>{{recoverPatInfo.patientInfo.healthyCondition}}
		    						<span class="c-999 ml20">联系电话:</span><span class="c-12b7f5 cur-pit">点击查看</span>
		    					</p>
		    				</div>
		    				<div class="fr set-photo">
		    					<img :src="recoverPatInfo.patientInfo.photo" alt="居民头像" />
		    				</div>
	    				</div>
	    				<p class="m0 p0 mb10">
    						<span class="c-999">签约社区:</span>{{recoverPatInfo.patientInfo.signHospitalName}}
    					</p>
    					<p class="m0 p0">
    						<span class="c-999">康复机构:</span>{{recoverPatInfo.patientInfo.rehabilitationOrg}}
    					</p>
	    			</div>
	    			<h4 class="m0 pl10 lh40 c-border-b">服务医生</h4>
	    			<!--<div class="pt10 pb10" style="overflow: hidden; height: 190px;">-->
	    			<div class="pt10 pb10" style="overflow: hidden; height: calc(100% - 231px);">
		    			<ul class="p0 m0 c-h100" style="overflow: auto;">
		    				<li class="clearfix plr20 ptb10 doc-li" v-for="(docInfo, index) in recoverPatInfo.serviceDoctorList" :key="index">
		    					<div class="fl set-photo">
		    						<img :src="setPatImg(docInfo.doctorPhoto, 1)" alt="医生头像" />
		    					</div>
		    					<div class="fl ml10 lh18">
		    						<p class="m0 p0 c-f16">{{docInfo.doctorName}}</p>
		    						<p class="m0 p0 mt10 c-999">{{docInfo.type}}</p>
		    					</div>
		    					<div class="fl ml40 lh18">
		    						<p class="m0 p0">完成项目:<span class="c-orange">{{docInfo.finishedItem}}</span></p>
		    						<p class="m0 p0 mt10">服务次数:<span class="c-orange">{{docInfo.serviceCount}}</span></p>
		    					</div>
		    				</li>
		    			</ul>
	    			</div>
	    			<!--<h4 class="m0 pl10 lh40 c-border-b">出院小结</h4>
	    			<div class="ptb10" style="overflow: hidden; height: calc(100% - 481px);">
	    				<ul class="m0 p0 c-border b-r-3 c-h100" style="overflow: auto;">
	    					<li class="pt5 plr10">
	    						<p class="c-999 lh40 clearfix">
	    							<span class="fl">冠心病诊断</span>
	    							<span class="fr">2018-08-01</span>
	    						</p>
	    						<div class="bgc-f2fcfe plr5 ptb10" style="line-height: 20px;">
	    							&emsp;&emsp;这是诊断内容这是诊断内容这是诊断内容这是诊断内容这是诊断内容这是诊断内容这是诊断内容这是诊断内容这是诊断内容这是诊断内容这是诊断内容这是诊断内容
	    						</div>
	    					</li>
	    				</ul>
	    			</div>-->
    			</div>
	        </div>
	        <div class="fl c-h100 w-100-350">
	        	<div class="fl w-100-300 c-h100">
	        		<div class="plr5">
		        		<h4 class="m0 pl10 lh40 c-border-b clearfix">康复计划<span class="fr w80 c-333 c-f12 c-t-center">进行中:{{recoverPatInfo.planUnderway}}</span><span class="fr w80 c-333 c-f12 c-t-center">已完成:{{recoverPatInfo.planFinish}}</span></h4>
		        		<div class="pb10" style="overflow: hidden; height: 230px;">
			    			<ul class="p0 m0 c-h100" style="overflow: auto;">
			    				<li class="clearfix plr5 ptb10 mt10 plan-li cur-pit c-border b-r-3" v-for="(plan, index) in recoverPatInfo.planList" :key="index" @click="jumpPlan(plan)">
			    					<div class="fl w300">
			    						<p class="p0 m0 lh22 clearfix">
			    							<span class="fl">{{plan.planTypeName}}</span>
			    							<span class="fr c-999">{{plan.time}}</span>
			    						</p>
			    						<div class="clearfix">
			    							<p class="fl w-100-78 bgc-c1c1c1 lh22 b-r-11 c-position-r c-t-center">{{setPercent(plan)}}
			    								<span class="c-position-a bgc-orange lh22 b-r-11 c-t-center c-fff" :style="{width: setPercent(plan), left: 0}"></span>
			    							</p>
			    							<span class="fr w60 c-999 lh22">{{plan.allFinishCount}}/{{plan.allCount}}</span>
			    						</div>
			    					</div>
			    					<div class="fr c-007cd9 lh40">{{plan.statusName}}</div>
			    				</li>
			    				<li class="ptb10 c-t-center" v-if="!recoverPatInfo.planList.length">暂无相关计划</li>
			    			</ul>
		    			</div>
	    			</div>
	    			<h4 class="m0 pl10 pr5 lh40 c-border-tb clearfix">康复相关记录<span class="fr w80 c-333 c-f12 c-t-center">已完成:{{finishData.planDetailFinish}}</span></h4>
	    			<div class="plr10" style="overflow: hidden; height: calc(100% - 323px);">
	    				<ul class="p0 m0 c-h100 c-999" style="overflow: auto;">
	    					<li class="clearfix cur-pit record-li" v-for="(plan, index) in planDetailList" @click="lookProject(plan)">
	    						<div class="fl w80 ptb10 c-t-right">
	    							<p class="p0 m0 lh18">{{plan.executeTime}}</p>
	    						</div>
	    						<div class="fl set-dianxian plr20 ptb10 clerfix">
	    							<span class="fl set-taday mt8 c-t-center c-fff" v-if="plan.istaDay">今</span>
	    							<span class="fl mlr5 mt13 set-row bgc-e1e1e1" v-else></span>
	    						</div>
	    						<div class="fl ptb10 w-100-220">
	    							<p class="p0 m0 lh18">{{plan.title}}</p>
	    							<p class="p0 m0 lh18 txt-ells">{{plan.content}}</p>
	    						</div>
	    						<div class="fr ptb10 w60 c-t-center">
	    							<p class="p0 m0 lh18">已完成</p>
	    							<p class="p0 m0 lh18">查看</p>
	    						</div>
	    					</li>
	    					<li class="plr20">
	    						<div class="c-border lh40 b-r-3 c-t-center cur-pit" v-if="isFinishMore" @click="addPage()">点击查看更早时间</div>
	    						<div class="c-border lh40 b-r-3 c-t-center" v-else>没有更多了</div>
	    					</li>
	    				</ul>
	    			</div>
	        	</div>
	        	<div class="fr w300 c-h100 c-border-l">
	        		<div class="plr5 c-h100">
	        			<h4 class="m0 pl10 pr5 lh40 c-border-b clearfix">就诊记录</h4>
	        			<div style="overflow: hidden; height: calc(100% - 41px);">
	        				<ul class="c-h100 p0 m0" style="overflow: auto;">
	        					<li class="clearfix" v-for="(record, index) in seeRecord" :key="index">
	        						<div class="fl set-dianxian h73 plr10 pt20 clerfix">
	    								<span class="fl mlr5 set-row bgc-red" v-if="record.eventType == 2"></span>
	    								<span class="fl mlr5 set-row bgc-green" v-if="record.eventType == 3"></span>
	    								<span class="fl mlr5 set-row bgc-orange" v-if="record.eventType == 1"></span>
	    							</div>
	    							<div class="fl w-100-60 pt15">
		    							<div class=" c-border b-r-3">
		    								<p class="m0 p0 plr5 c-fff bgc-red lh22 clearfix" v-if="record.eventType == 2">住院<span class="fr">{{record.eventDate}}</span></p>
		    								<p class="m0 p0 plr5 c-fff bgc-green lh22 clearfix" v-if="record.eventType == 3">体检<span class="fr">{{record.eventDate}}</span></p>
		    								<p class="m0 p0 plr5 c-fff bgc-orange lh22 clearfix" v-if="record.eventType == 1">门诊<span class="fr">{{record.eventDate}}</span></p>
		    								<p class="m0 p0 plr5 pt5 lh22">{{record.dianosis}}</p>
		    								<p class="m0 p0 pr5 pb5 pl20 lh22 set-hospital">{{record.orgName}}</p>
		    							</div>
	    							</div>
	        					</li>
	        					<li class="c-t-center ptb10" v-if="!seeRecord.length">无就诊记录</li>
	        				</ul>
	        			</div>
	        		</div>
	        	</div>
		        </div>
	        </div>
	    </div>
	</div>
		<script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
        <script src="../../../js/jquery-2.2.4.js"></script>
        <script src="../../../plugins/layer/layer.min.js"></script>
        <script src="../../../js/bootstrap.min.js"></script>
        <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></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="../../../api/http-request.js" type="text/javascript"></script>
		<script src="../../../api/recover_api.js" type="text/javascript"></script>
		<script type="text/javascript">
			var doctorType = (JSON.parse(window.localStorage.getItem('wlyyAgent'))||{}).doctorType
			var httpData=GetRequest()
			
			function showSuccessMessage(msg) {
				layer.msg(msg, {
					icon: 1
				})
			}
			
			function showErrorMessage(msg) {
				layer.msg(msg, {
					icon: 5
				})
			}
			
			function showWarningMessage(msg) {
				layer.msg(msg, {
					icon: 2
				})
			}
			
			function showInfoMessage(msg) {
				layer.msg(msg, {
					icon: 6
				})
			}
			var nowDate = new Date().format("yyyy/MM/dd")
			
			recoverVue = new Vue({
                el: "#app",
                data: {
                	recoverPatInfo: null,
                	finishData: null,
                	seeRecord: [],
                	planDetailList: [],
                	isFinishMore: false,
                	page: 1,
                	eventPage: 1
                },
                mounted: function() {
                	this.patientRehabilitationDetail()
                	this.recentPlanDetailRecord()
                	this.archivesEvent()
                },
                methods: {
                	jumpPlan: function(plan) {
                		location.href = "../../rehabilitation/html/rehabilitation_management.html?planId=" + plan.id
                	},
					lookProject: function(obj) {
						layer.open({
							type: 2,
							area: ['600px', '500px'],
							shade: 0.5,
							title: '服务项目内容',
							closeBtn: 1,
							shift: 5,
							shadeClose: false, //点击遮罩关闭层
							content: "project-detail.html?planId=" + obj.id
						});
					},
					patientRehabilitationDetail: function() {
			    		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				patientCode: httpData.patientCode || "915ccc97-5b1d-11e6-8344-fa163e8aee56"
			    			}
						recoverAPI.patientRehabilitationDetail(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.recoverPatInfo = res.data
							} else {
								showErrorMessage(res.msg);
							}
						})
			    	},
			    	recentPlanDetailRecord: function() {
			    		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				patientCode: httpData.patientCode || "915ccc97-5b1d-11e6-8344-fa163e8aee56",
			    				page: vm.eventPage,
			    				pageSize: 10
			    			}
						recoverAPI.recentPlanDetailRecord(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.finishData = res.data
								vm.planDetailList = vm.planDetailList.concat(res.data.planDetailList)
								vm.planDetailList = $.each(vm.planDetailList, function(index, o) {
									if(nowDate == o.executeTime.split(" ")[0]) {
										o.istaDay = true
									}
									return o
								});
								if(vm.finishData.planDetailList >= 10) {
									vm.isFinishMore = true
								}
							} else {
								showErrorMessage(res.msg);
							}
						})
			    	},
			    	archivesEvent: function() {
			    		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				patient: httpData.patientCode || "915ccc97-5b1d-11e6-8344-fa163e8aee56",
			    				page: vm.page,
			    				pageSize: 20
			    			}
						recoverAPI.archivesEvent(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.seeRecord = vm.seeRecord.concat(res.data)
							} else {
								showErrorMessage(res.msg);
							}
						})
			    	},
			    	setPatImg: function(src, doc) {
			    		if(!src) {
			    			if(doc) {
			    				return "../../../images/d-default.png"
			    			} else {
			    				return "../../../images/p-female.png"
			    			}
			    		} else {
			    			var str = httpRequest.getImgUrl(src);
			    			return str
			    		}
			    	},
			    	addPage: function() {
			    		this.page++;
			    		this.recentPlanDetailRecord()
			    	},
			    	setPercent: function(plan) {
			    		return Math.floor(plan.allFinishCount / plan.allCount * 100) + "%"
			    	}
                }
            })
		</script>
	</body>
</html>

+ 141 - 0
app/recover/html/project-detail.html

@ -0,0 +1,141 @@
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>服务项目内容</title>
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.ui.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../css/project-detail.css" />
	</head>
	<body class="m0">
	<div id="app" style="height: 100%;" v-cloak>
		<h4 class="p0 pt10 pb5 m0 plr30">{{planDetail.title}}</h4>
		<p class="p0 m0 plr30 pb5 c-border-b c-333 clearfix">
			<span class="fl plr10 lh18 c-border border-c12b7f5 c-12b7f5 mr10 b-r-3">{{planDetail.shortExecuteTime}}</span>
			<span class="fl plr10 lh18 c-border border-c12b7f5 c-12b7f5 mr10 b-r-3" v-for="(name, index) in planDetail.executeDoctorList" :key="index">{{name}}</span>
			<span class="fr pl20 c-12b7f5 set-finish">{{planDetail.statusName}}</span>
		</p>
		<div style="overflow: hidden; height: calc(100% - 60px);">
			<div class="plr15 c-999" style="overflow: auto; height: 100%;">
				<p class="p0 m0 ptb10 c-border-b">项目内涵:{{planDetail.content}}</p>
				<div class="ptb10 c-border-b clearfix">
					<span class="fl w-50 mb5">地点:{{planDetail.hospitalName}}</span>
					<span class="fl w-50 mb5">执行:{{handleArr(planDetail.executeDoctorList)}}</span>
					<span class="fl w-50">时间:{{handleTime(planDetail.executeTime)}}</span>
					<span class="fl w-50">收费:{{planDetail.expense}}元</span>
				</div>
				<p class="p0 m0 ptb10 c-333 clearfix">指导与回报记录<span class="fr pl15 set-show c-12b7f5" :class="{'active':isShowMore}" @click="changeShow()">{{isShowMore ? "收起详情" : "查看详情"}}</span></p>
				<ul class="p0 m0" v-show="isShowMore">
					<li class="bgc-f2fcfe plr10 ptb10 mb10" v-for="(record, index) in planDetail.messageList" :key="index">
						<p class="m0 p0 mb10 clearfix">
							<span class="fl w-50">{{record.doctorName}}&emsp;{{record.adminTeamName}}</span>
							<span class="fl w-50">{{record.createTime}}</span>
						</p>
						<p class="m0 p0 c-333">{{record.content}}</p>
					</li>
					<li class="c-t-center" v-if="!planDetail.messageList.length">暂无记录</li>
				</ul>
				<p class="m0 p0 ptb10 c-333 c-border-b">完成信息</p>
				<div class="ptb10">
					<p class="m0 p0 mb5">完成时间:<span class="c-333">{{planDetail.completeTime}}</span></p>
					<p class="m0 p0">执行医生:<span class="c-333">{{planDetail.operatorDoctorName}}</span></p>
				</div>
				<p class="m0 p0 ptb10 c-333 c-border-b">服务完成笔记</p>
				<div class="ptb10">
					{{planDetail.node}}
				</div>
				<p class="m0 p0 ptb10 c-333">相关记录</p>
				<ul class="p0 m0 ptb10 plr10 mb20 c-border b-r-3 clearfix">
					<li class="fl set-photo c-border mr10 clearfix" v-for="(record, index) in planDetail.relationRecordImg" :key="index">
						<img class="fl" :src="handleImg(record)" alt="记录图" />
					</li>
					<li class="c-t-center" v-if="!planDetail.relationRecordImg.length">暂无相关记录</li>
				</ul>
			</div>
		</div>
	</div>
		<script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
        <script src="../../../js/jquery-2.2.4.js"></script>
        <script src="../../../plugins/layer/layer.min.js"></script>
        <script src="../../../js/bootstrap.min.js"></script>
        <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></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="../../../api/http-request.js" type="text/javascript"></script>
		<script src="../../../api/recover_api.js" type="text/javascript"></script>
		<script type="text/javascript">
			var doctorType = (JSON.parse(window.localStorage.getItem('wlyyAgent'))||{}).doctorType
			var httpData=GetRequest()
			function showSuccessMessage(msg) {
				layer.msg(msg, {
					icon: 1
				})
			}
			
			function showErrorMessage(msg) {
				layer.msg(msg, {
					icon: 5
				})
			}
			
			function showWarningMessage(msg) {
				layer.msg(msg, {
					icon: 2
				})
			}
			
			function showInfoMessage(msg) {
				layer.msg(msg, {
					icon: 6
				})
			}
			
			selectVue = new Vue({
                el: "#app",
                data: {
                	isShowMore: false,
                	planDetail: null
                },
                mounted: function() {
                	this.serviceItem()
                },
                methods: {
                	changeShow: function() {
                		this.isShowMore = !this.isShowMore
                	},
                	serviceItem: function() {
			    		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				planDetailId: httpData.planId
			    			}
						recoverAPI.serviceItem(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.planDetail = res.data
							} else {
								showErrorMessage(res.msg);
							}
						})
			    	},
			    	handleArr: function(arr) {
			    		return arr.join()
			    	},
			    	handleTime: function(time) {
			    		var getTime = new Date(time),
			    			morth = getTime.getMonth() + 1
			    		return getTime.getFullYear() + '-' + this.addZero(morth) + '-' + this.addZero(getTime.getDay()) + " " + this.addZero(getTime.getHours()) + ":" + this.addZero(getTime.getMinutes())
			    	},
			    	addZero: function(num) {
			    		return num >= 10 ? num : '0' + num
			    	},
			    	handleImg: function(src) {
			    		var str = httpRequest.getImgUrl(src);
			    		return str
			    	}
                }
            })
		</script>
	</body>
</html>

+ 98 - 0
app/recover/html/select-disease.html

@ -0,0 +1,98 @@
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>选择疾病</title>
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.ui.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../css/select-patient.css" />
	</head>
	<body class="m0">
	<div id="app" class="c-t-center" style="height: 100%;" v-cloak>
		<div style="overflow: hidden; height: calc(100% - 60px);">
			<ul class="disease-list c-h100 p0 m0 pl20 pr10 clearfix" style="overflow: auto;">
				<li class="fl mr10 plr20 ptb5 c-border b-r-3 mt20" :class="{'active':index == selectIndex}" v-for="(disease, index) in diseaseArr" :key="index" @click="selectFn(index)">{{disease.diseaseName}}</li>
			</ul>
		</div>
		<div class="ptb20">
			<span class="c-fff btn cur-pit plr30 ptb5 bgc-12b7f5 b-r-3" @click="sure()">确 认</span>
		</div>
	</div>
		<script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/jquery-2.2.4.js"></script>
        <script src="../../../plugins/layer/layer.min.js"></script>
        <script src="../../../js/bootstrap.min.js"></script>
        <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></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="../../../api/http-request.js" type="text/javascript"></script>
		<script src="../../../api/recover_api.js" type="text/javascript"></script>
		<script type="text/javascript">
			var doctorType = (JSON.parse(window.localStorage.getItem('wlyyAgent'))||{}).doctorType
			var httpData=GetRequest()
			function showSuccessMessage(msg) {
				layer.msg(msg, {
					icon: 1
				})
			}
			
			function showErrorMessage(msg) {
				layer.msg(msg, {
					icon: 5
				})
			}
			
			function showWarningMessage(msg) {
				layer.msg(msg, {
					icon: 2
				})
			}
			
			function showInfoMessage(msg) {
				layer.msg(msg, {
					icon: 6
				})
			}
			
			selectVue = new Vue({
                el: "#app",
                data: {
                	selectIndex: null,
                	diseaseArr: null
                },
                mounted: function() {
                	this.findTeamDiseaseRelation()
                },
                methods: {
                	selectFn: function(index) {
                		this.selectIndex = index + ''
                	},
                	sure: function() {
                		if(!this.selectIndex) {
                			showWarningMessage("请选择疾病!")
                			return false;
                		}
                		top.recoverVue.newPlan(this.diseaseArr[this.selectIndex], httpData.templateId)
                		top.layer.close(top.selectDiseaseIndex)
                	},
                	findTeamDiseaseRelation: function() {
                		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				teamCode: httpData.teamCode
			    			}
						recoverAPI.findTeamDiseaseRelation(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.diseaseArr = res.data
							} else {
								showErrorMessage(res.msg);
							}
						})
                	}
                }
            })
		</script>
	</body>
</html>

+ 203 - 0
app/recover/html/select-patient.html

@ -0,0 +1,203 @@
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>同步出院小结</title>
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.ui.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../css/select-patient.css" />
	</head>
	<body class="m0">
	<div id="app" style="height: 100%;" v-cloak>
		<div class="plr20 ptb10 c-border-b">
			<div class="clearfix c-border">
				<input class="fl search-input plr10" type="text" placeholder="输入居民姓名或身份证号码" :value="keyword" />
				<span class="fr search-btn"></span>
			</div>
		</div>
		<div style="overflow: hidden; height: calc(100% - 59px);">
			<ul class="pat-list p0 m0" style="overflow: auto; height: 100%;" v-if="isSearch">
				<li class="clearfix lh40 plr20 ptb10" v-for="(pati, index) in patiList" :key="index" @click="getPatientInfo(pati)">
					<div class="fl set-img">
						<img :src="setPatImg(pati.photo)" alt="居民头像" />
					</div>
					<span class="fl ml20 mr10 c-333 c-f16">{{pati.patientName}}</span>
					<span class="fl c-999">({{pati.sex}}&emsp;{{pati.age}}岁)</span>
				</li>
			</ul>
			<ul class="label-list p0 m0" style="overflow: auto; height: 100%;" v-if="isLabel">
				<li v-for="(label, index) in labelList" :key="index">
					<h4 class="c-border-b m0 lh40 pl10 pr50 clearfix" @click="selectIndexFn(index, label)" :class="{'active':selectIndex == index}">{{label.labelName}}<span class="fr">{{label.count}}</span></h4>
					<ul class="pat-list p0 m0" v-if="selectIndex == index">
						<li class="clearfix lh40 plr20 ptb10" v-for="(pati, ind) in patiList" @click="getPatientInfo(pati)">
							<div class="fl set-img">
								<img :src="setPatImg(pati.photo)" alt="居民头像" />
							</div>
							<span class="fl ml20 mr10 c-333 c-f16">{{pati.patientName}}</span>
							<span class="fl c-999">({{pati.sex}}&emsp;{{pati.age == 0 ? "<1" : pati.age}}岁)</span>
						</li>
					</ul>
				</li>
			</ul>
			<div class="selected-patient c-h100" v-if="!isSearch && !isLabel">
				<div class="clearfix plr20 ptb10">
					<div class="fl set-img">
						<img :src="setPatImg(patiInfo.photo)" alt="居民头像" />
					</div>
					<div class="fl ml10 set-txt c-999 clearfix">
						<p class="m0 lh22 clearfix"><span class="c-333 c-f16">{{patiInfo.patientName}}</span>&emsp;{{patiInfo.sex}}&emsp;{{patiInfo.age}}岁<strong class="fr mr20 c-333">出院医嘱:<span>0</span></strong></p>
						<p class="m0">身份证号: <span class="c-333">{{patiInfo.idcard}}</span></p>
					</div>
				</div>
				<div class="result plr20" style="overflow: hidden; height: calc(100% - 60px);">
					<div class="no-result c-t-center c-border-t ptb20" v-if="true">
						<img src="../images/wushuju01_img.png" alt="" />
						<p class="c-999 mt10 mb20">暂无相关信息</p>
						<span class="c-fff btn cur-pit plr10 ptb5 bgc-12b7f5 b-r-3" @click="selectPatient()">同步居民</span>
					</div>
					<ul class="p0 m0 c-333 c-border-t" style="overflow: auto; height: 100%;" v-if="false">
						<li class="ptb10 c-border-b">
							<div class="clearfix">
								<p class="fl p0 m0 w-100-70"><span class="c-999">出院医嘱:</span>这是出院医学征服世界爱的色放卡大V阿大V撒<span class="ml10 c-12b7f5 txt-underline cur-pit" @click="showLayer()">查看</span></p>
								<span class="fr w40 c-t-center c-fff btn cur-pit plr10 ptb5 bgc-12b7f5 b-r-3" @click="selectPatient()">提取</span>
							</div>
							<div class="clearfix mt5">
								<p class="fl m0"><span class="c-999">主治医生:</span>名字</p>
								<p class="fr m0"><span class="c-999">出院时间:</span>2018-08-28</p>
							</div>
						</li>
					</ul>
				</div>
			</div>
		</div>
	</div>
		<script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
        <script src="../../../js/jquery-2.2.4.js"></script>
        <script src="../../../plugins/layer/layer.min.js"></script>
        <script src="../../../js/bootstrap.min.js"></script>
        <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></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="../../../api/http-request.js" type="text/javascript"></script>
		<script src="../../../api/recover_api.js" type="text/javascript"></script>
		<script type="text/javascript">
			var doctorType = (JSON.parse(window.localStorage.getItem('wlyyAgent'))||{}).doctorType,
				doctorCode = (JSON.parse(window.localStorage.getItem('wlyyAgent'))||{}).uid
			var httpData=GetRequest()
			function showSuccessMessage(msg) {
				layer.msg(msg, {
					icon: 1
				})
			}
			
			function showErrorMessage(msg) {
				layer.msg(msg, {
					icon: 5
				})
			}
			
			function showWarningMessage(msg) {
				layer.msg(msg, {
					icon: 2
				})
			}
			
			function showInfoMessage(msg) {
				layer.msg(msg, {
					icon: 6
				})
			}
			
			selectVue = new Vue({
                el: "#app",
                data: {
                	page: 1,
                	keyword: null,
                	selectIndex: null,
                	labelList: [],
                	isLabel: true,
                	isSearch: false,
                	patiList: [],
                	patiInfo: null
                },
                mounted: function() {
                	this.findLabelAndPatientCountByDoctor()
                },
                methods: {
                	showLayer: function() {
                		top.layer.open({
                			type: 1,
							area: ['400px', '500px'],
							shade: 0.5,
							title: "出院医嘱",
							closeBtn: 1,
							shift: 5,
							shadeClose: true, //点击遮罩关闭层
							content: "<div class='plr10 ptb10'>&emsp;&emsp;" + "这是医嘱大的大爱大" + "</div>"
                		})
                	},
                	findLabelAndPatientCountByDoctor: function() {
                		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				doctor: doctorCode
			    			}
						recoverAPI.findLabelAndPatientCountByDoctor(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.labelList = res.data
							} else {
								showErrorMessage(res.msg);
							}
						})
                	},
                	getPatientInfoByDoctor: function(label) {
			    		var vm = this,
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				doctor: doctorCode,
								patientInfo: this.keyword, // 居民身份证或者姓名
								disease: label.label,
								page: vm.page,
								size: 50
			    			}
						recoverAPI.getPatientInfoByDoctor(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.patiList = res.data
							} else {
								showErrorMessage(res.msg);
							}
						})
			    	},
                	getPatientInfo: function(pati) {
                		this.isSearch = false
                		this.isLabel = false
                		this.patiInfo = pati
                	},
                	selectIndexFn: function(index, label) {
                		if(this.selectIndex == index) {
                			this.selectIndex = null
                		} else {
                			this.selectIndex = index
                			this.getPatientInfoByDoctor(label)
                		}
                	},
                	selectPatient: function() {
                		top.recoverVue.selectPatientOk(this.patiInfo)
                		top.layer.close(top.selectPatientIndex)
                	},
                	setPatImg: function(src) {
			    		if(!src) {
			    			return "../../../images/p-female.png"
			    		} else {
			    			var str = httpRequest.getImgUrl(src);
			    			return str
			    		}
			    	}
                }
            })
		</script>
	</body>
</html>

+ 108 - 0
app/recover/html/select-project.html

@ -0,0 +1,108 @@
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>选择项目</title>
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.ui.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../css/select-patient.css" />
	</head>
	<body class="m0">
	<div id="app" class="p10 c-333" v-cloak>
		<div class="c-border mb20">
			<h4 class="p0 m0 plr10 ptb5 lh22 c-999 c-border-b bgc-f2fcfe">项目名称</h4>
			<p class="p0 m0 plr10 ptb5 lh22">{{proDetail.specialistServiceItemDO.title}}</p>
		</div>
		<div class="c-border mb20">
			<h4 class="p0 m0 plr10 ptb5 lh22 c-999 c-border-b bgc-f2fcfe">项目内涵</h4>
			<p class="p0 m0 plr10 ptb5 lh22">{{proDetail.specialistServiceItemDO.content}}</p>
		</div>
		<div class="c-border mb20">
			<h4 class="p0 m0 plr10 ptb5 lh22 c-999 c-border-b bgc-f2fcfe">项目类型</h4>
			<p class="p0 m0 plr10 ptb5 lh22">{{proDetail.specialistServiceItemDO.itemType == 1 ? '康复服务' : '健康服务'}}</p>
		</div>
		<div class="c-border mb20">
			<h4 class="p0 m0 plr10 ptb5 lh22 c-999 c-border-b bgc-f2fcfe">服务机构</h4>
			<p class="p0 m0 plr10 ptb5 lh22">{{proDetail.hospitalName}}</p>
		</div>
		<div class="c-border">
			<h4 class="p0 m0 plr10 ptb5 lh22 c-999 c-border-b bgc-f2fcfe">服务地点</h4>
			<p class="p0 m0 plr10 ptb5 lh22">{{proDetail.hospitalDo.address}}</p>
		</div>
		<div class="c-t-center mb20 mt30" v-if="isLook">
			<span class="btn bgc-12b7f5 lh22 c-fff ptb5 plr10 b-r-3 cur-pit" @click="addProject()">添加至计划</span>
		</div>
	</div>
		<script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/jquery-2.2.4.js"></script>
        <script src="../../../plugins/layer/layer.min.js"></script>
        <script src="../../../js/bootstrap.min.js"></script>
        <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></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="../../../api/http-request.js" type="text/javascript"></script>
		<script src="../../../api/recover_api.js" type="text/javascript"></script>
		<script type="text/javascript">
			var doctorType = (JSON.parse(window.localStorage.getItem('wlyyAgent'))||{}).doctorType
			var httpData=GetRequest()
			console.log(httpData)
			function showSuccessMessage(msg) {
				layer.msg(msg, {
					icon: 1
				})
			}
			
			function showErrorMessage(msg) {
				layer.msg(msg, {
					icon: 5
				})
			}
			
			function showWarningMessage(msg) {
				layer.msg(msg, {
					icon: 2
				})
			}
			
			function showInfoMessage(msg) {
				layer.msg(msg, {
					icon: 6
				})
			}
			
			selectVue = new Vue({
                el: "#app",
                data: {
                	isLook: httpData.isLook || false,
                	proDetail: null
                },
                mounted: function() {
                	this.selectByIds()
                },
                methods: {
                	selectByIds: function() {
                		var vm = this,
                			arr = [httpData.projectId],
			    			loadding = layer.load(0, {shade: false}),
			    			params = {
			    				ids: JSON.stringify(arr)
			    			}
						recoverAPI.selectByIds(params).then(function(res) {
							layer.close(loadding)
							if(res.status == 200) {
								vm.proDetail = res.data[0]
							} else {
								showErrorMessage(res.msg);
							}
						})
	                },
	                addProject: function() {
	                	top.recoverVue.addProject(httpData.index, httpData.index2, httpData.index3)
	                	top.layer.close(top.selectPatientIndex)
	                }
                }
            })
		</script>
	</body>
</html>

二進制
app/recover/images/dianxian.png


二進制
app/recover/images/dianxuan_btn.png


二進制
app/recover/images/dianxuan_pre.png


二進制
app/recover/images/gouxuan_lanse_icon.png


二進制
app/recover/images/jiaobiao_xuanzhe_img.png


二進制
app/recover/images/qiehuan_ben_pre.png


二進制
app/recover/images/qiehuan_btn.png


二進制
app/recover/images/qingchu_icon.png


二進制
app/recover/images/shouqi_btn.png


二進制
app/recover/images/shouqi_jiantou_icon.png


二進制
app/recover/images/tiaozhuan_icon.png


二進制
app/recover/images/tiaozhuan_xia_icon.png


二進制
app/recover/images/wushuju01_img.png


二進制
app/recover/images/wushuju_img.png


二進制
app/recover/images/xinzeng_icon.png


二進制
app/recover/images/yiyuan_icon.png


二進制
app/recover/images/zhankai_btn.png


二進制
app/recover/images/zhankai_jiantou_icon.png


二進制
images/tiaozhuan_shang_icon.png


文件差異過大導致無法顯示
+ 13 - 0
js/flatpickr/flatpickr.min.css


文件差異過大導致無法顯示
+ 2 - 0
js/flatpickr/flatpickr.min.js