فهرست منبع

改变alert为toastr,满意度调查完成,取消预约未完成

chenyue 7 سال پیش
والد
کامیت
00339eb840

+ 2 - 1
api/http-request.js

@ -28,8 +28,9 @@
        imserver = "http://172.19.103.88:3000/api/v2";
        socketUrl = "http://172.19.103.88:3000";
//      server = "http://192.168.131.133:8080/";
		
//		server = "http://192.168.131.215:10001/"; //冬梅
//		server = "http://192.168.131.154:10001/"; //张丹
//      server = "http://192.168.131.127:8060/"; //逸祥
//      server = "http://192.168.131.24:8080/"; //仕杰
//      imserver = "http://192.168.131.24:3000/api/v2"

+ 18 - 0
api/patient/jiuzhen-api.js

@ -13,11 +13,29 @@
		}, //查询挂号单详情
		getRegOrderInfo: function(data) {
			return httpRequest.get("basic/api/v1.0/appointment/registration/" + data);
		},		
		getRegisterWarn: function(data) {
			return httpRequest.get("basic/api/v1.0/dictionaries/170/entries/RegisterWarn?token=e8b01d2e-6dc8-4ba2-8422-462ae7535651");
		},
		cancelOrder: function(data) {
			return httpRequest.get("basic/api/v1.0/appointment/registration/updateState", {
				data: data
			});
		},//我的消息列表
		messageList: function(data) {
			return httpRequest.get("basic/api/v1.0/messageTemplate/MyMessageList", {
				data: data
			})
		},
		getSatisfactionQuestionws:function(data) {
			return httpRequest.post("basic/api/v1.0/questionnaire/getAllQuestionsByTemplateCode", {
				data: data
			})
		},
		postSatisfactionAnswers:function(data) {
			return httpRequest.post("basic/api/v1.0/questionnaire/saveAnswer", {
				data: data
			})
		},
	}

+ 6 - 6
component/login-register/login.js

@ -138,7 +138,7 @@
					}
					var isMobile = isCardNo(vm.mobile,2);
					if(!isMobile) {
						alert('请输入正确的手机号码!');
						toastr.error('请输入正确的手机号码!');
						return false;
					}
					if(!vm.captcha) {
@ -152,7 +152,7 @@
				var vm=this;
				var isMobile = isCardNo(vm.mobile,2);
				if(!isMobile) {
					alert('请输入正确的手机号码!');
					toastr.error('请输入正确的手机号码!');
					return false;
				}
				if(vm.codeMsg==="获取验证码"){
@ -176,7 +176,7 @@
					}
					if(num===2){
						if(res.expiresIn<=0){
							alert("验证码已失效,请重新获取验证码!");
							toastr.error("验证码已失效,请重新获取验证码!");
						}else{
							var data = {
//								grant_type: httpRequest.grant_type,
@ -211,7 +211,7 @@
					}
				}).catch(function(err){
					console.log(err)
					alert("获取短信验证码失败")
					toastr.error("获取短信验证码失败")
					vm.codeMsg="获取验证码";
					verifyCodeFlag=false;
				})
@ -296,14 +296,14 @@
		if(codeType == 1) { // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X 
			var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
			if(!reg.test(card)) {
				alert("身份证号输入不合法");
				toastr.error("身份证号输入不合法");
			} else {
				isidcard = true
			}
		} else {
			var reg = /0?(13|14|15|18|17)[0-9]{9}/;
			if(!reg.test(card)) {
				alert("手机号码输入不合法");
				toastr.error("手机号码输入不合法");
			} else {
				isidcard = true
			}

+ 1 - 1
component/login-register/register.js

@ -148,7 +148,7 @@
				var vm=this;
				var isMobile = isMobilePhone(this.mobile);
				if(!isMobile) {
					alert('请输入正确的手机号码!');
					toastr.error('请输入正确的手机号码!');
					return false;
				}
				if(vm.codeMsg!=="获取验证码"){

+ 4 - 4
component/mine/change-password.js

@ -60,16 +60,16 @@
						password: vm.confirmPassword
					}).then(function(res) {
						if(res) {
							alert("密码修改成功,请重新登录系统");							
							toastr.success("密码修改成功,请重新登录系统");							
							vm.existUser();
						} else {
							alert("密码修改失败");
							toastr.error("密码修改失败");
						}
					}).catch(function(err){
						alert("密码修改失败");
						toastr.error("密码修改失败");
					})
				}).catch(function(err){
					alert("原密码错误!");
					toastr.error("原密码错误!");
				})			
			},
			existUser: function() {

+ 2 - 2
component/mine/left-menu.js

@ -9,7 +9,7 @@
								<div class="c-f20">我的账户</div>
								<div class="mine-menu">
									<div id="info" class="pt20" @click="goinfo()">个人设置</div>
									<div id="notices" class="pt20"  @click="gonotices()">消息通知</div>
									<div id="xiaoxi" class="pt20"  @click="gonotices()">消息通知</div>
									<div id="securitySetting" class="pt20"  @click="gosecuritySetting()">安全设置</div>
								</div>
							</div>
@ -50,7 +50,7 @@
				location.href = "../../mine/html/doctor.html"
			},
			gonotices:function(){
				location.href = "../../mine/html/notices.html"
				location.href = "../../mine/html/xiaoxi.html"
			}
		},
	})

+ 0 - 31
component/mine/personal-dialog-form.js

@ -11,37 +11,6 @@
				content: "../../mine/html/select-industry.html?industryid=" + industryid + "&directionid=" + directionid, //iframe的url
			});
		},
		// 取消预约
		cancelAppointment: function(id) {
			return new Promise(function(resolve, reject) {
				var layerid = top.layer.confirm('<div><h3 class="c-t-center mt10">是否确认取消预约?</h3><div class="quxiaobox">取消须知:<div class="c-909090">过多的退号可能导致您在一段时间内无法预约,我们对预约和退号频次达到一定数量的帐户将采取限制措施:每个帐号每个月下单满10笔时且退号满5笔时限制该帐户当月预约权限.</div></div></div>', {
					title: '取消预约',
					area: ['500px', '370px'],
					btn: ['确定', '取消'] //按钮
				}, function() {
					var oauthInfo = JSON.parse(sessionStorage.getItem("oauthInfo"));
					appointmentAPI.cancelOrder({
						orderId: id,
						thirdPartyUserId: oauthInfo.id
					}).then(function(res) {
						if(res.Code == "10000") {
							jiuzhenAPI.cancelOrder({
								id: id,
								state: 99
							}).then(function(res) {
								alert("取消成功!")
							})
						} else {
							alert("取消失败!")
						}
						resolve(layerid)
					})
					resolve(layerid)
				}, function() {
				});
			})
		},
	}
	window.personalDialogForm = personalDialogForm

+ 4 - 4
component/mine/personal-info.js

@ -125,7 +125,7 @@
					vm = this
				file = e.target.files[0]
				if(file.size > 5 * 1024 * 1024) {
					alert("图片大小格式超出5M范围不可用")
					toastr.error("图片大小格式超出5M范围不可用")
					return false
				}
				var formData = new FormData()
@ -138,7 +138,7 @@
				fileAPI.uploadImg(param).then(function(reslove) {
					vm.userinfo.imgRemotePath = reslove.obj.httpUrl //上传到图片服务器成功则修改个人资料					
				}, function(err) {
					alert("选择图片失败");
					toastr.error("选择图片失败");
				})
			},
			update: function() {
@ -150,9 +150,9 @@
				}
				vm.getNewAddress()
				mineAPI.userInforUpdate(vm.userinfo).then(function (res) {
                    alert("修改成功!")
                    toastr.success("修改成功!")
                }).catch(function(){
                    alert("修改失败!")
                    toastr.error("修改失败!")
                })
			},
			

+ 7 - 7
component/mine/record.js

@ -41,7 +41,7 @@
														</div>\
														<div class="table-cell c-f16 mt25">{{record.patientName}}</div>\
														<div class="table-cell">\
															<div class="cancelbtn" @click="cancelbtn(record.orderId)">取消预约</div>\
															<div class="cancelbtn" @click="cancelbtn(record.orderId,record.orderId)">取消预约</div>\
															<div class="mt10" style="color:#0AD8C8"  @click="getinfo(record.id)">查看详情</span>\
														</div>\
													</div>\
@ -49,8 +49,9 @@
											</div>\
										</div>\
									</template>\
									<div v-else class="c-t-center mtb100">\
									<div v-else class="c-t-center  wushuju">\
										<img src="../../../images/queshengye-.png" />\
									<div class="mt40">暂无预约就诊记录</div>\
									</div>\
									<div id="homepage" class="page_div" v-if="!ishomeNull"></div>\
								</div>\
@ -89,8 +90,9 @@
											</div>\
										</div>\
									</template>\
									<div v-else class="c-t-center mtb100">\
									<div v-else class="c-t-center  wushuju">\
										<img src="../../../images/queshengye-.png" />\
									<div class="mt40">暂无预约就诊记录</div>\
									</div>\
									<div id="historypage" class="page_div" v-if="!ishistoryNull"></div>\
								</div>\
@ -215,10 +217,8 @@
				})
			},
			cancelbtn: function(id) {
				personalDialogForm.cancelAppointment(id).then(function(layerid) {
					top.layer.close(layerid)
				})
			cancelbtn: function(orderid, thirdorderid) {
				mineJiuZhenDialogForm.cancelAppointment(orderid, thirdorderid)
			},
			inithomePage: function(pageNo, total, size) {
				var vm = this

+ 32 - 32
component/mine/security-setting.js

@ -1,37 +1,37 @@
(function() {
	Vue.component('security-setting', {
		template: `<div class="container ptb20 ">
				<div class="row w3-row">
					<left-menu :code="code"></left-menu>
					<div class="pl251" >
						<div class="bgc-fff c-border ptb30" style="height: 706px;">
							<div id="security">
								<div class="w3-row pl30">
									<div class="w3-col" style="width:60px;"><img src="../../../images/icon_wodezhanghu.png" width="43" height="50" /></div>
									<div class="w3-rest pl10 pb35 c-border-b pr30">
										<div class="w3-col mt15" style="width:117px;float: right;"><button class="btn btn-default btn-block" type="button" @click="changePassword()">修 改</button></div>
										<div class="w3-rest">
											<div class="c-f20 ">登陆密码</div>
											<div class="c-f14 c-909090 mt15 ">建议您定期更改密码,设置安全性高的密码可以使账号更安全</div>
										</div>
									</div>
								</div>
								<div class="w3-row pl30 pt30">
									<div class="w3-col" style="width:60px; "><img src="../../../images/icon_wodezhanghu.png " width="43 " height="50 " /></div>
									<div class="w3-rest pl10 pb35 c-border-b pr30">
										<div class="w3-col mt15 " style="width:117px;float: right; "><button class="btn btn-default btn-block  " type="button" @click="changePhone()" disabled="disabled">更 改</button></div>
										<div class="w3-rest">
											<div class="c-f20 ">安全手机 180****1111</div>
											<div class="c-f14 c-909090 mt15 ">安全手机可以用于登录账号,重置密码或者其他安全验证</div>
										</div>
									</div>
								</div>
							</div>							
							<change-password></change-password>
							<change-phone></change-phone>
						</div>
					</div>
				</div>`,
		template: '<div class="container ptb20 ">\
				<div class="row w3-row">\
					<left-menu :code="code"></left-menu>\
					<div class="pl251" >\
						<div class="bgc-fff c-border ptb30" style="min-height: 706px;">\
							<div id="security">\
								<div class="w3-row pl30">\
									<div class="w3-col" style="width:60px;"><img src="../../../images/icon_wodezhanghu.png" width="43" height="50" /></div>\
									<div class="w3-rest pl10 pb35 c-border-b pr30">\
										<div class="w3-col mt15" style="width:117px;float: right;"><button class="btn btn-default btn-block" type="button" @click="changePassword()">修 改</button></div>\
										<div class="w3-rest">\
											<div class="c-f20 ">登陆密码</div>\
											<div class="c-f14 c-909090 mt15 ">建议您定期更改密码,设置安全性高的密码可以使账号更安全</div>\
										</div>\
									</div>\
								</div>\
								<div class="w3-row pl30 pt30">\
									<div class="w3-col" style="width:60px; "><img src="../../../images/icon_wodezhanghu.png " width="43 " height="50 " /></div>\
									<div class="w3-rest pl10 pb35 c-border-b pr30">\
										<div class="w3-col mt15 " style="width:117px;float: right; "><button class="btn btn-default btn-block  " type="button" @click="changePhone()" disabled="disabled">更 改</button></div>\
										<div class="w3-rest">\
											<div class="c-f20 ">安全手机 180****1111</div>\
											<div class="c-f14 c-909090 mt15 ">安全手机可以用于登录账号,重置密码或者其他安全验证</div>\
										</div>\
									</div>\
								</div>\
							</div>\
							<change-password></change-password>\
							<change-phone></change-phone>\
						</div>\
					</div>\
				</div>',
		props: [],
		data: function() {
			return {

+ 14 - 31
component/mineJiuZhen/mineJiuZhen-dialog-form.js

@ -1,49 +1,32 @@
(function() {
	var mineJiuZhenDialogForm = {
		// 新增接口权限
		satisfaction: function(id) {
		satisfaction: function(messageId) {
			top.layer.open({
				type: 2,
				title: '满意度调查',
				shadeClose: false,
				closeBtn: true, //显示关闭按钮
				area: ['500px', '714px'],
				btn: [], //按钮
				content: '../../../page/mineJiuZhen/html/satisfaction.html', //iframe的url
				content: '../../../page/mineJiuZhen/html/satisfaction.html?messageId='+messageId, //iframe的url
				end: function() {
					
				}
			});
		},
		// 取消预约
		cancelAppointment: function(id,orderid) {
			return new Promise(function(resolve, reject) {
				var layerid = top.layer.confirm('<div><h3 class="c-t-center mt10">是否确认取消预约?</h3><div class="quxiaobox">取消须知:<div class="c-909090">过多的退号可能导致您在一段时间内无法预约,我们对预约和退号频次达到一定数量的帐户将采取限制措施:每个帐号每个月下单满10笔时且退号满5笔时限制该帐户当月预约权限。</div></div></div>', {
					title: '取消预约',
					area: ['500px', '370px'],
					btn: ['确定', '取消'] //按钮
				}, function() {
					var oauthInfo = JSON.parse(sessionStorage.getItem("oauthInfo"));
					appointmentAPI.cancelOrder({
						orderId: orderid,
						thirdPartyUserId: oauthInfo.id
					}).then(function(res) {
						if(res.Code == "10000") {
							jiuzhenAPI.cancelOrder({
								id: id,
								state: 99
							}).then(function(res) {alert("取消成功!")})
						} else {
							alert("取消失败!")
						}
						resolve(layerid)
					})
					resolve(layerid)
				}, function() {
				});
			})
		cancelAppointment: function(orderid,thirdorderid) {
			top.layer.open({
				type: 2,
				title: '取消预约',
				shadeClose: false,
				closeBtn: true, //显示关闭按钮
				area: ['500px', '370px'],
				content: '../../../page/mineJiuZhen/html/cancelAppointment.html?orderid='+orderid+'&thirdorderid='+thirdorderid, //iframe的url
				end: function() {
					
				}
			});
		},
	}

+ 151 - 150
page/home/html/index.html

@ -1,156 +1,157 @@
<!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/font-awesome.min.css" />
    <link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
    <link rel="stylesheet" type="text/css" href="../../../plugins/artDialog/6.0.5/api/css/ui-dialog.css" />
    <link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
    <link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
    <link rel="stylesheet" type="text/css" href="../css/index.css" />
</head>
	<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/font-awesome.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/artDialog/6.0.5/api/css/ui-dialog.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/toastr/toastr.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../css/index.css" />
	</head>
<body>
    <div id="main">
        <page-header></page-header>
        <div id="myCarousel" class="carousel slide">
            <!-- 轮播(Carousel)指标 -->
            <ol class="carousel-indicators">
                <li data-target="#myCarousel" data-slide-to="0" class="active"></li>
                <li data-target="#myCarousel" data-slide-to="1"></li>
                <li data-target="#myCarousel" data-slide-to="2"></li>
            </ol>
            <!-- 轮播(Carousel)项目 -->
            <div class="carousel-inner">
                <div class="item active  fc">
                    <img src="../image/queshengye-.png" alt="First slide">
                </div>
                <div class="item fc">
                    <img src="../image/queshengye-.png" alt="Second slide">
                </div>
                <div class="item fc">
                    <img src="../image/queshengye-.png" alt="Third slide">
                </div>
            </div>
        </div>
        <div class="fc mb60">
            <div class="index_wrap">
                <div class="box_container fc fwrap">
                    <div class="box">
                        <div class="box_head">
                            <span class="box_title">我的就诊</span>
                            <span class="box_title_remark">就诊全程提醒</span>
                        </div>
                        <div class="box_content">下载APP已便获取提醒消息,我们诚邀您对每一次就诊进行评价,帮助我们提供更好的服务</div>
                        <div class="box_bottom">
                            <button class="box_button" @click="goMyJiuZhen">查看详情</button>
                            <img src="../image/p1.png">
                        </div>
                    </div>
                    <div class="box">
                        <div class="box_head">
                            <span class="box_title">全息健康档案</span>
                            <span class="box_title_remark">360度了解您的健康情况</span>
                        </div>
                        <div class="box_content">基于医疗服务、公共卫生、医学影像体征设备以及个人日常健康保健信息大数据,提供全景式、全生命周期的居民健康档案信息调阅与查询</div>
                        <div class="box_bottom mt20">
                            <button class="box_button">查看详情</button>
                            <img src="../image/p2.png">
                        </div>
                    </div>
                    <div class="box lastBox" >
                        <div class="box_head">
                            <span class="frendBox_head">快速预约</span>
                            <span class="box_title_remark">节省80%就医时间</span>
                        </div>
                        <div class="fcolumn">
                            <div class="dropdown" style="margin-top:30px">
                                <a type="button" class="btn dropdown-toggle box_select" id="dropdownMenu1" data-toggle="dropdown">{{YiYuan.hosName || '请选择医院'}}
                                    <span class="caret"></span>
                                </a>
                                <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1">
                                    <li role="presentation"  v-for="(item,i) in YiYuanArr">
                                        <a role="menuitem" tabindex="-1"  @click="setYiYuan(item)">{{item.hosName}}</a>
                                    </li>
                                    
                                </ul>
                            </div>
                            <div class="dropdown">
                                <a type="button" class="btn dropdown-toggle box_select" id="dropdownMenu2" data-toggle="dropdown">{{KeShi.deptName   ||  '请选择科室'}}
                                    <span class="caret"></span>
                                </a>
                                <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu2">
                                    <li role="presentation"  v-for="(item,i) in KeShiArr">
                                        <a role="menuitem" tabindex="-1"  @click="setKeShi(item)">{{item.deptName}}</a>
                                    </li>
                                    
                                </ul>
                            </div>
                            <div class="dropdown">
                                <a type="button" class="btn dropdown-toggle box_select" id="dropdownMenu3" data-toggle="dropdown">{{YiSheng.doctorName  ||  '请选择医生'}}
                                    <span class="caret"></span>
                                </a>
                                <ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu3">
                                    <li role="presentation"  v-for="(item,i) in YiShengArr">
                                        <a role="menuitem" tabindex="-1"  @click="setYiSheng(item)">{{item.doctorName}}</a>
                                    </li>
                                    
                                </ul>
                            </div>
                            <button class="box_largeBtn" @click="save">立即挂号</button>
                        </div>
        
                    </div>
                </div>
                <div class="frendBox">
                    <div class="frendBox_head ml20">友情链接</div>
                    <div class="frendBox_content fc fwrap">
                        <div class="frendBox_content_box fc">
                            <img src="../image/frend_logo.png">
                            <span>国家卫生与计划生育委员会</span>
                        </div>
                        <div class="frendBox_content_box fc">
                            <img src="../image/frend_logo.png">
                            <span>江西省卫生与计划生育委员会</span>
                        </div>
                        <div class="frendBox_content_box fc">
                            <img src="../image/frend_logo.png">
                            <span>上饶市卫生与计划生育委员会</span>
                        </div>
                        <div class="frendBox_content_box fc">
                            <img src="../image/icon_logo.png">
                            <span>健康上饶医生工作管理平台</span>
                        </div>
                    </div>       
                </div>
            </div>
        </div>
        
       
        <page-footer></page-footer>
    </div>
    <script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
    <script src="../../../js/jquery-2.2.4.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" charset="utf-8"></script>
    <script src="../../../js/base64.min.js" type="text/javascript" charset="utf-8"></script>
    <script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js" type="text/javascript" charset="utf-8"></script>
    <script src="../../../api/patient/appointment-api.js"></script>
    <script src="../../../component/common/header.js" type="text/javascript" charset="utf-8"></script>
    <script src="../../../component/common/footer.js" type="text/javascript" charset="utf-8"></script>
    <script src="../../../component/common/event-bus.js" type="text/javascript" charset="utf-8"></script>
    <script src="../js/index.js" type="text/javascript" charset="utf-8"></script>
</body>
	<body>
		<div id="main">
			<page-header></page-header>
			<div id="myCarousel" class="carousel slide">
				<!-- 轮播(Carousel)指标 -->
				<ol class="carousel-indicators">
					<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
					<li data-target="#myCarousel" data-slide-to="1"></li>
					<li data-target="#myCarousel" data-slide-to="2"></li>
				</ol>
				<!-- 轮播(Carousel)项目 -->
				<div class="carousel-inner">
					<div class="item active  fc">
						<img src="../image/queshengye-.png" alt="First slide">
					</div>
					<div class="item fc">
						<img src="../image/queshengye-.png" alt="Second slide">
					</div>
					<div class="item fc">
						<img src="../image/queshengye-.png" alt="Third slide">
					</div>
				</div>
			</div>
			<div class="fc mb60">
				<div class="index_wrap">
					<div class="box_container fc fwrap">
						<div class="box">
							<div class="box_head">
								<span class="box_title">我的就诊</span>
								<span class="box_title_remark">就诊全程提醒</span>
							</div>
							<div class="box_content">下载APP已便获取提醒消息,我们诚邀您对每一次就诊进行评价,帮助我们提供更好的服务</div>
							<div class="box_bottom">
								<button class="box_button" @click="goMyJiuZhen">查看详情</button>
								<img src="../image/p1.png">
							</div>
						</div>
						<div class="box">
							<div class="box_head">
								<span class="box_title">全息健康档案</span>
								<span class="box_title_remark">360度了解您的健康情况</span>
							</div>
							<div class="box_content">基于医疗服务、公共卫生、医学影像体征设备以及个人日常健康保健信息大数据,提供全景式、全生命周期的居民健康档案信息调阅与查询</div>
							<div class="box_bottom mt20">
								<button class="box_button">查看详情</button>
								<img src="../image/p2.png">
							</div>
						</div>
						<div class="box lastBox">
							<div class="box_head">
								<span class="frendBox_head">快速预约</span>
								<span class="box_title_remark">节省80%就医时间</span>
							</div>
							<div class="fcolumn">
								<div class="dropdown" style="margin-top:30px">
									<a type="button" class="btn dropdown-toggle box_select" id="dropdownMenu1" data-toggle="dropdown">{{YiYuan.hosName || '请选择医院'}}
										<span class="caret"></span>
									</a>
									<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1">
										<li role="presentation" v-for="(item,i) in YiYuanArr">
											<a role="menuitem" tabindex="-1" @click="setYiYuan(item)">{{item.hosName}}</a>
										</li>
									</ul>
								</div>
								<div class="dropdown">
									<a type="button" class="btn dropdown-toggle box_select" id="dropdownMenu2" data-toggle="dropdown">{{KeShi.deptName || '请选择科室'}}
										<span class="caret"></span>
									</a>
									<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu2">
										<li role="presentation" v-for="(item,i) in KeShiArr">
											<a role="menuitem" tabindex="-1" @click="setKeShi(item)">{{item.deptName}}</a>
										</li>
									</ul>
								</div>
								<div class="dropdown">
									<a type="button" class="btn dropdown-toggle box_select" id="dropdownMenu3" data-toggle="dropdown">{{YiSheng.doctorName || '请选择医生'}}
										<span class="caret"></span>
									</a>
									<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu3">
										<li role="presentation" v-for="(item,i) in YiShengArr">
											<a role="menuitem" tabindex="-1" @click="setYiSheng(item)">{{item.doctorName}}</a>
										</li>
									</ul>
								</div>
								<button class="box_largeBtn" @click="save">立即挂号</button>
							</div>
						</div>
					</div>
					<div class="frendBox">
						<div class="frendBox_head ml20">友情链接</div>
						<div class="frendBox_content fc fwrap">
							<div class="frendBox_content_box fc">
								<img src="../image/frend_logo.png">
								<span>国家卫生与计划生育委员会</span>
							</div>
							<div class="frendBox_content_box fc">
								<img src="../image/frend_logo.png">
								<span>江西省卫生与计划生育委员会</span>
							</div>
							<div class="frendBox_content_box fc">
								<img src="../image/frend_logo.png">
								<span>上饶市卫生与计划生育委员会</span>
							</div>
							<div class="frendBox_content_box fc">
								<img src="../image/icon_logo.png">
								<span>健康上饶医生工作管理平台</span>
							</div>
						</div>
					</div>
				</div>
			</div>
			<page-footer></page-footer>
		</div>
		<script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/jquery-2.2.4.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" charset="utf-8"></script>
		<script src="../../../js/base64.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/toastr/toastr.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../api/patient/appointment-api.js"></script>
		<script src="../../../component/common/header.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../component/common/footer.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../component/common/event-bus.js" type="text/javascript" charset="utf-8"></script>
		<script src="../js/index.js" type="text/javascript" charset="utf-8"></script>
	</body>
</html>

+ 6 - 6
page/home/js/index.js

@ -65,7 +65,7 @@ $(function () {
            setKeShi(value) {
                console.log(value);
                if (!this.YiYuan.hospitalId) {
                    alert('请先选择医院')
                    toastr.warning('请先选择医院')
                    return
                }
                this.KeShi.deptName = value.deptName;
@ -82,7 +82,7 @@ $(function () {
                    console.log(res);
                    if (res.successFlg && res.obj.Code == "10000") {
                        if (!res.obj.Result) {
                            res.obj.Message && alert(res.obj.Message)
                            res.obj.Message && toastr.warning(res.obj.Message)
                        } else {
                            vm.YiShengArr = res.obj.Result;
                            vm.YiSheng.doctorName = '';
@ -97,7 +97,7 @@ $(function () {
            setYiSheng(value) {
                console.log(value);
                if (!this.KeShi.hosDeptId) {
                    alert('请先选择科室')
                    toastr.warning('请先选择科室')
                    return
                }
                this.YiSheng.doctorName = value.doctorName;
@ -125,13 +125,13 @@ $(function () {
            },
            save() {
                if (!this.YiYuan.hospitalId) {
                    alert('请选择医院')
                    toastr.warning('请选择医院')
                    return
                } else if (!this.KeShi.hosDeptId) {
                    alert('请选择科室')
                    toastr.warning('请选择科室')
                    return
                } else if (!this.YiSheng.doctorSn) {
                    alert('请选择医生')
                    toastr.warning('请选择医生')
                    return
                }
                window.location.href = "../../appointment/html/select-time.html?doctorSn="+Base64.encode(this.YiSheng.doctorSn);

+ 3 - 1
page/login/html/login.html

@ -13,6 +13,7 @@
		<!--<link rel="stylesheet" type="text/css" href="../../css/font-awesome.min.css" />-->
		<link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/artDialog/6.0.5/api/css/ui-dialog.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/toastr/toastr.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../login.css" />
@ -34,7 +35,8 @@
		<script src="../../../js/util.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../api/http-request.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../api/patient/login-api.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js" type="text/javascript" charset="utf-8"></script>		
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/toastr/toastr.min.js" type="text/javascript" charset="utf-8"></script>		
		<script src="../../../component/login-register/login.js"></script>	
		<script src="../../../component/common/footer.js"></script>
		<script src="../login.js"></script>

+ 8 - 1
page/mine/css/record.css

@ -165,7 +165,7 @@ cancelbtnbody {
.modal-list {
	line-height: 44px;
	font-size: 14;
	font-size: 14px;
	color: #909090;
	border-bottom: 1px solid #E3EDE8;
	padding: 0 20px;
@ -201,4 +201,11 @@ cancelbtnbody {
.layui-layer-btn .layui-layer-btn0 {
    border-color: #0AD8C8 !important;
    background-color: #0AD8C8 !important;
}
.wushuju{
	margin:150px auto 290px;
	color:#909090;
	font-size: 14px;
}

+ 145 - 0
page/mine/css/xiaoxi.css

@ -0,0 +1,145 @@
body {
	background: rgba(245, 249, 249, 1);
	color: #323232;
}
.w3-row:after {
	content: "";
	display: table;
	clear: both
}
.w3-col {
	float: left;
	width: 100%
}
.w3-rest {
	overflow: hidden
}
.mine-menu {}
.mine-menu {
	font-size: 16px;
	color: #909090;
}
.mine-menu .active {
	color: #0AD8C8;
}
.all-center {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: 0 auto;
}
.mainbox {
	width: 420px;
	margin: 0 auto;
}
.btn-theme {
	color: #fff;
	background: #0AD8C8;
	border-color: #0AD8C8;
}
.btn-theme:hover,
.btn-theme:active {
	color: #fff;
	background: #0aD9ff;
	border-color: #0AD8C8;
}
.pl105 {
	padding-left: 105px;
}
.pl251 {
	padding-left: 251px;
}
.m8 {
	margin-top: 8px;
}
.btn-default {
	background: #fff;
	color: #909090;
	font-size: 16px;
	border: 1px solid #D1D7D4;
}
.btn-default:hover,
.btn-default:active {
	color: #333;
	background: #F4F6FA;
}
.remark {
	color: #a8a8a8;
	font-size: 12px;
}
.xiaoxi-title {
	margin-left: -80px;
	color: #fff;
	line-height: 54px;
}
.xiaoxi-time {
	float: right;
	line-height: 54px;
	font-size: 14px;
	color: #909090;
	padding-right: 10px;
}
.xiao-content {
	height: 70px;
	font-size: 14px;
	color: #323232;
	vertical-align: middle;
}
.xiaoxi-rest {
	line-height: 70px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.satisfactionbtn {
	padding: 5px 13px 5px;
	border: 1px solid #0AD8C8;
	color: #0AD8C8;
	font-size: 14px;
	width: 130px;
	margin: 0 auto;
}
#appointmentinfo {
	border-radius: 0;
	/*max-width: 500px;*/
}
.modal-header {
	padding: 10px 20px;
}
.modal-body {
	padding: 0px 20px;
}
.modal-list {
	line-height: 44px;
	font-size: 14px;
	color: #909090;
	border-bottom: 1px solid #E3EDE8;
	padding: 0 20px;
}

+ 4 - 1
page/mine/html/personal-info.html

@ -12,6 +12,7 @@
		<link rel="stylesheet" type="text/css" href="../../../css/font-awesome.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/artDialog/6.0.5/api/css/ui-dialog.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/toastr/toastr.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../css/personal-info.css" />
@ -38,7 +39,9 @@
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js " type="text/javascript " charset="utf-8 "></script>
		<script src="../../../api/patient/mine-api.js" type="text/javascript " charset="utf-8 "></script>
		<script src="../../../api/patient/login-api.js" type="text/javascript " charset="utf-8 "></script>
		<script src="../../../api/patient/file-api.js" type="text/javascript " charset="utf-8 "></script>
		<script src="../../../api/patient/file-api.js" type="text/javascript " charset="utf-8 ">			
		</script><script src="../../../plugins/toastr/toastr.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../component/mine/personal-dialog-form.js "></script>
		<script src="../../../component/common/footer.js "></script>
		<script src="../../../component/common/header.js "></script>

+ 1 - 1
page/mine/html/record.html

@ -43,7 +43,7 @@
		<script src="../../../component/common/header.js"></script>
		<script src="../../../component/common/pagination.js"></script>
		<script src="../../../component/mine/left-menu.js"></script>
		<script src="../../../component/mine/personal-dialog-form.js"></script>
		<script src="../../../component/mineJiuZhen/mineJiuZhen-dialog-form.js"></script>
		<script src="../../../component/mine/record.js"></script>
		<script src="../js/record.js"></script>
	</body>

+ 2 - 0
page/mine/html/security-setting.html

@ -11,6 +11,7 @@
		<link rel="stylesheet" type="text/css" href="../../../css/font-awesome.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/artDialog/6.0.5/api/css/ui-dialog.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/toastr/toastr.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../css/security-setting.css" />
@ -34,6 +35,7 @@
		<script src="../../../js/util.js " type="text/javascript " charset="utf-8 "></script>
		<script src="../../../api/http-request.js " type="text/javascript " charset="utf-8 "></script>
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js " type="text/javascript " charset="utf-8 "></script>
		<script src="../../../plugins/toastr/toastr.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/selector.js " type="text/javascript " charset="utf-8 "></script>
		<script src="../../../api/patient/mine-api.js" type="text/javascript " charset="utf-8 "></script>
		<script src="../../../component/common/footer.js "></script>

+ 109 - 6
page/mine/html/xiaoxi.html

@ -3,7 +3,7 @@
	<head>
		<meta charset="UTF-8">
		<title>预约记录</title>
		<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" />
@ -14,13 +14,115 @@
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/common.css" />
		<link rel="stylesheet" type="text/css" href="../css/record.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/toastr/toastr.min.css" />
		<link rel="stylesheet" type="text/css" href="../css/xiaoxi.css" />
	</head>
	<body>
		<div id="app">
			<page-header></page-header>
			<record></record>
			<div class="container ptb20 ">
				<div class="row w3-row">
					<left-menu :code="code"></left-menu>
					<div class="pl251">
						<div class="bgc-fff c-border ptb30" style="min-height: 706px;">
							<div class="plr20">
								<div class="pb10 c-border-b c-f20">
									消息通知
								</div>
								<div class="width-100 c-border mt20" v-for="data in xiaoxis">
									<div class="c-border-b plr10 ptb12" @click="getinfo(data.orderId)">
										<img src="../image/icon_biaoqian.png" />
										<span class="xiaoxi-title">{{data.title}}</span>
										<span class="xiaoxi-time">{{data.createDate}}</span>
									</div>
									<div class="w3-row xiao-content">
										<div class="w3-col" style="width:150px;float: right;padding-top:20px;" v-if="data.issatisfaction">
											<div class="satisfactionbtn" @click="satisfactionbtn(data.id)">参与满意度调查</div>
										</div>
										<div class="w3-rest xiaoxi-rest" @click="getinfo(data.orderId)">
											<span class="pl35">{{data.classification}}</span>
											<template v-if="data.islong">
												<template v-for="item in data.contentJsons">
													<span v-if="item.value!=''" class="pl10">													
													{{item.name}}:{{item.value}}
													</span>
												</template>
											</template>
											<template v-else><span class="pl10">{{data.contentJsons[0].value}}</span></template>
											<span class="pl10">{{data.afterContent}}</span>
										</div>
									</div>
								</div>
								<div id="page" class="page_div"></div>
							</div>
						</div>
					</div>
				</div>
				<div class="modal fade" id="appointmentinfo" tabindex="-1" role="dialog" aria-labelledby="appointmentinfoLabel">
					<div class="modal-dialog" role="document">
						<div class="modal-content">
							<div class="modal-header bgc-f9f9f9">
								<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
								<h4 class="modal-title" id="appointmentinfoLabel">挂号明细</h4>
							</div>
							<div class="modal-body">
								<div class="bgc-fff">
									<div class="w3-row modal-list">
										<div class="w3-col" style="width:120px;">订单号</div>
										<div class="w3-rest">{{recordinfo.orderId}}</div>
									</div>
									<div class="w3-row modal-list" style="border:none;">
										<div class="w3-col" style="width:120px;">订单状态</div>
										<div class="w3-rest">{{recordinfo.stateDesc}}</div>
									</div>
									<div class="w3-row modal-list bgc-f9f9f9" style="color:#323232;border:none;">预约信息</div>
									<div class="w3-row c-border-b modal-list">
										<div class="w3-col" style="width:120px;">预约医院</div>
										<div class="w3-rest">{{recordinfo.hospitalName}}</div>
									</div>
									<div class="w3-row modal-list">
										<div class="w3-col" style="width:120px;">预约科室</div>
										<div class="w3-rest">{{recordinfo.deptName}}</div>
									</div>
									<div class="w3-row modal-list">
										<div class="w3-col" style="width:120px;">就诊日期</div>
										<div class="w3-rest">{{recordinfo.registerDate}} {{recordinfo.timeId}}</div>
									</div>
									<div class="w3-row modal-list">
										<div class="w3-col" style="width:120px;">就诊时间</div>
										<div class="w3-rest">{{recordinfo.commendTime}}</div>
									</div>
									<div class="w3-row modal-list">
										<div class="w3-col" style="width:120px;">就诊序号</div>
										<div class="w3-rest">{{recordinfo.serialNo}}</div>
									</div>
									<div class="w3-row modal-list" style="border:none;">
										<div class="w3-col" style="width:120px;">退号截止时间</div>
										<div class="w3-rest">{{recordinfo.invalidDate}}</div>
									</div>
									<div class="w3-row modal-list bgc-f9f9f9" style="color:#323232;border:none;">就诊人信息</div>
									<div class="w3-row modal-list">
										<div class="w3-col" style="width:120px;">姓名</div>
										<div class="w3-rest">{{recordinfo.patientName}}</div>
									</div>
									<div class="w3-row  modal-list">
										<div class="w3-col" style="width:120px;">证件号</div>
										<div class="w3-rest">{{recordinfo.cardNo}}</div>
									</div>
									<div class="w3-row  modal-list">
										<div class="w3-col" style="width:120px;">手机号</div>
										<div class="w3-rest">{{recordinfo.phoneNo}}</div>
									</div>
									<div class="c-t-center">
										<button type="button" class="btn btn-default c-f16 mt30 mb20" style="width:144px;" @click="hideModel()">关 闭</button>
									</div>
								</div>
							</div>
						</div>
					</div>
				</div>
			</div>
			<page-footer></page-footer>
		</div>
		<script src="../../../js/vue.js" type="text/javascript" charset="utf-8"></script>
@ -35,15 +137,16 @@
		<script src="../../../api/http-request.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/layer/layer.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/toastr/toastr.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/paging.js"></script>
		<script src="../../../api/patient/jiuzhen-api.js"></script>
		<script src="../../../component/common/event-bus.js"></script>
		<script src="../../../component/common/footer.js"></script>
		<script src="../../../component/common/header.js"></script>
		<script src="../../../component/common/pagination.js"></script>
		<script src="../../../component/mine/left-menu.js"></script>
		<script src="../../../component/mine/personal-dialog-form.js"></script>
		<script src="../../../component/mine/record.js"></script>
		<script src="../js/record.js"></script>
		<script src="../../../component/mineJiuZhen/mineJiuZhen-dialog-form.js"></script>
		<script src="../js/xiaoxi.js"></script>
	</body>
</html>

BIN
page/mine/image/icon_biaoqian.png


+ 69 - 0
page/mine/js/xiaoxi.js

@ -0,0 +1,69 @@
new Vue({
	el: "#app",
	data: {
		code: "xiaoxi",
		xiaoxis: [],
		recordinfo: '',
	},
	mounted: function() {
		var vm = this
		var oauthInfo = JSON.parse(sessionStorage.getItem("oauthInfo"));
		vm.toUserId = oauthInfo.id
		vm.appId = httpRequest.client_id
		vm.getxiaoxi(1)
	},
	methods: {
		getxiaoxi: function(pageNo) {
			var vm = this
			var filters = "typeId?7;appId?" + vm.appId + ";toUserId?" + vm.toUserId
			jiuzhenAPI.messageList({
				filters: filters,
				size: 10,
				page: pageNo,
				sorts: "",
				fields: ""
			}).then(function(res) {
				vm.xiaoxis = res.detailModelList.map(function(v) {
					if(v.contentJsons.length == 1) {
						v.islong = false //短内容
					} else {
						v.islong = true
						v.issatisfaction = false
						if(v.portalMessagerTemplateType == "100" && v.notifieFlag == "0") {
							v.issatisfaction = true //长内容
						}
					}
					return v
				})
				vm.initPage(pageNo, res.totalPage, res.totalCount)
			})
		},
		initPage: function(pageNo, total, size) {
			var vm = this
			//分页初始化
			$("#page").paging({
				pageNo: pageNo,
				totalPage: total,
				totalSize: size,
				callback: function(num) {
					//回调的页数
					vm.getxiaoxi(num)
				}
			})
		},
		getinfo: function(orderid) {
			var vm = this
			if(orderid == null || orderid == undefined || orderid == "") {
				toastr.warning("该订单无法查看!");
			} else {
				jiuzhenAPI.getRegOrderInfo(orderid).then(function(res) {
					vm.recordinfo = res.obj
					$('#appointmentinfo').modal('show')
				})
			}
		},
		satisfactionbtn: function(id) {
			mineJiuZhenDialogForm.satisfaction(id)
		},
	}
});

+ 34 - 0
page/mineJiuZhen/css/mineJiuZhen.css

@ -124,6 +124,7 @@ body {
	padding: 16px;
	background: #F5FAFA;
	line-height: 30px;
	margin-top: 20px;
}
.layui-layer-btn {
@ -135,4 +136,37 @@ body {
.layui-layer-btn .layui-layer-btn0 {
    border-color: #0AD8C8 !important;
    background-color: #0AD8C8 !important;
}
.wushuju{
	margin:150px auto 290px;
	color:#909090;
	font-size: 14px;
}
.btn-theme {
	color: #fff;
	background: #0AD8C8;
	border-color: #0AD8C8;
}
.btn-theme:hover,
.btn-theme:active {
	color: #fff;
	background: #0aD9ff;
	border-color: #0AD8C8;
}
.btn-default{
	background: #fff;
	color:#909090;
	font-size: 16px;
	border: 1px solid #D1D7D4;
}
.btn-default:hover,.btn-default:active{
	color:#333;
	background: #F4F6FA;
}

+ 56 - 0
page/mineJiuZhen/html/cancelAppointment.html

@ -0,0 +1,56 @@
<!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/font-awesome.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/artDialog/6.0.5/api/css/ui-dialog.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/toastr/toastr.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/common.css" />
		<link rel="stylesheet" type="text/css" href="../css/mineJiuZhen.css" />
	</head>
	<body class="bgc-fff" style="height: 295px;">
		<div id="app" class="plr20">
			<h3 class="c-t-center mt30">是否确认取消预约?</h3>
			<div class="quxiaobox">取消须知:
				<div class="c-909090">{{Warntxt}}</div>
			</div>
			<div class="c-t-center mt40">
				<button type="button" class="btn btn-theme c-f16" style="width:144px;" @click="cancelAppointment()">确 认</button>
				<button type="button" class="btn btn-default c-f16 ml20" style="width:144px;" @click="back()">取 消</button>
			</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="../../../js/bootstrap.min.js"></script>
		<script src="../../../js/security.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" charset="utf-8"></script>
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/toastr/toastr.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/layer/layer.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/paging.js"></script>
		<script src="../../../api/patient/jiuzhen-api.js"></script>
		<script src="../../../api/patient/appointment-api.js"></script>
		<script src="../../../component/common/event-bus.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../component/mineJiuZhen/mineJiuZhen-dialog-form.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../component/common/header.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../component/common/footer.js" type="text/javascript" charset="utf-8"></script>
		<script src="../js/cancelAppointment.js"></script>
	</body>
</html>

+ 13 - 11
page/mineJiuZhen/html/mineJiuZhen.html

@ -37,29 +37,29 @@
						<div role="tabpanel" class="tab-pane active" id="home">
							<template v-if="records.length>0">
								<div class="list-body" v-for="record in records">
									<div class="list-header"><span>就诊时间</span><span class="pl20">{{record.mRegistration.register_date}} {{record.mRegistration.time_id_desc}} {{record.mRegistration.commend_time}}</span></div>
									<div class="list-header"><span>就诊时间</span><span class="pl20">{{record.mRegistration.registerDate}} {{record.mRegistration.timeIdDesc}} {{record.mRegistration.commendTime}}</span></div>
									<div class="w3-row">
										<div class="w3-col" style="width:150px;float: right;padding-top: 30px;">
											<div class="cancelbtn" @click="cancelbtn(record.id,record.mRegistration.order_id)">取消预约</div>
											<div class="cancelbtn" @click="cancelbtn(record.orderId,record.mRegistration.orderId)">取消预约</div>
										</div>
										<div class="w3-rest">
											<div class="div-table">
												<div class="table-row">
													<div class="table-cell">
														<div class="c-909090">医院</div>
														<div>{{record.mRegistration.hospital_name}}</div>
														<div>{{record.mRegistration.hospitalName}}</div>
													</div>
													<div class="table-cell">
														<div class="c-909090">科室</div>
														<div>{{record.mRegistration.dept_name}}</div>
														<div>{{record.mRegistration.deptName}}</div>
													</div>
													<div class="table-cell">
														<div class="c-909090">医师</div>
														<div>{{record.mRegistration.doctor_name}}</div>
														<div>{{record.mRegistration.doctorName}}</div>
													</div>
													<div class="table-cell">
														<div class="c-909090">挂号方式</div>
														<div>预约挂号</div>
														<div>{{record.mRegistration.registerTypeDesc}}</div>
													</div>
												</div>
											</div>
@ -67,8 +67,9 @@
									</div>
								</div>
							</template>
							<div v-else class="c-t-center mtb100">
							<div v-else class="c-t-center wushuju">
								<img src="../../../images/queshengye-.png" />
								<div class="mt40">暂无就诊记录</div>
							</div>
							<div id="homepage" class="page_div"></div>
						</div>
@ -104,11 +105,12 @@
										</div>
									</div>
								</div>
								<div v-else class="c-t-center mtb100">
									<img src="../../../images/queshengye-.png" />
								</div>
								<div id="historypage" class="page_div"></div>
							</template>
							<div v-else class="c-t-center wushuju">
								<img src="../../../images/queshengye-.png" />
								<div class="mt40">暂无待评论记录</div>
							</div>
							<div id="historypage" class="page_div"></div>
						</div>
					</div>
				</div>

+ 9 - 6
page/mineJiuZhen/html/satisfaction.html

@ -13,22 +13,23 @@
		<link rel="stylesheet" type="text/css" href="../../../plugins/artDialog/6.0.5/api/css/ui-dialog.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/toastr/toastr.min.css" />
		<link rel="stylesheet" type="text/css" href="../../mine/css/security-setting.css" />
	</head>
	<body>
		<div id="app" class="plr20">
		<div id="app" class="plr20 bgc-fff" style="margin-top: -10px;padding-top: 10px;">
			<div v-for="question in questions" class="mt10" style="line-height: 30px;">
				<div>{{question.sort}}、{{question.qstTitle}}</div>
				<div>{{question.sort}}、{{question.title}}</div>
				<div class="ui-grid">
					<div class="ui-col-4 c-t-center" v-for="option in question.options">
						<input type="radio" :value="option.code" :name="question.qstCode" :sort="question.sort" :itemsort="option.sort" /><label>&emsp;{{option.content}}</label>
						<input type="radio" :value="option.code" :name="question.qstCode" @click="checkRadio(question.sort,option.sort)"/><label>&emsp;{{option.content}}</label>
					</div>
				</div>
			</div>
			<div class="c-t-center mt50">
				<button type="submit" class="btn btn-theme c-f16" style="width:144px;" @click="changePassword()">确 定</button>
				<button type="button" class="btn btn-default c-f16 ml20" style="width:144px;" @click="gotosetting()">取 消</button>
			<div class="c-t-center mtb50">
				<button type="submit" class="btn btn-theme c-f16" style="width:144px;" @click="sumbit()">提 交</button>
				<button type="button" class="btn btn-default c-f16 ml20" style="width:144px;" @click="close()">取 消</button>
			</div>
		</div>
		<script src="../../../js/vue.js " type="text/javascript " charset="utf-8 "></script>
@ -43,6 +44,8 @@
		<script src="../../../js/util.js " type="text/javascript " charset="utf-8 "></script>
		<script src="../../../api/http-request.js " type="text/javascript " charset="utf-8 "></script>
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js " type="text/javascript " charset="utf-8 "></script>
		<script src="../../../plugins/toastr/toastr.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../api/patient/jiuzhen-api.js"></script>
		<script src="../js/satisfaction.js "></script>
	</body>

+ 42 - 0
page/mineJiuZhen/js/cancelAppointment.js

@ -0,0 +1,42 @@
new Vue({
	el: "#app",
	data: {
		orderid: "",
		thirdorderid: "",
		Warntxt: "",
	},
	mounted: function() {
		var vm = this
		var query = GetRequest();
		vm.orderid = query.orderid;
		vm.thirdorderid = query.thirdorderid;
		jiuzhenAPI.getRegisterWarn().then(function(res) {
			vm.Warntxt = res.value.replace("预约须知:","")
		})
	},
	methods: {
		cancelAppointment: function() {
			var vm = this
			var oauthInfo = JSON.parse(sessionStorage.getItem("oauthInfo"));
			appointmentAPI.cancelOrder({
				orderId: orderid,
				thirdPartyUserId: oauthInfo.id
			}).then(function(res) {
				if(res.Code == "10000") {
					jiuzhenAPI.cancelOrder({
						id: thirdorderid,
						state: 99
					}).then(function(res) {
						toastr.success("取消成功!")
					})
				} else {
					toastr.error("取消失败!")
				}
				resolve(layerid)
			})
		},
		back: function() {
		},
	}
});

+ 6 - 8
page/mineJiuZhen/js/mineJiuZhen.js

@ -31,7 +31,7 @@ new Vue({
					if(res.totalCount == 0) {
						vm.ishomeNull = true
					} else {
						vm.inithomePage(pageNo, Math.ceil(res.obj.total / 5), res.obj.total)
						vm.inithomePage(pageNo, res.totalPage, res.totalCount)
					}
				} else if(types == '100') {
					vm.historyrecords = res.detailModelList
@ -54,7 +54,7 @@ new Vue({
					if(res.totalCount == 0) {
						vm.ishomeNull = true
					} else {
						vm.inithistoryPage(pageNo, Math.ceil(res.obj.total / 5), res.obj.total)
						vm.inithistoryPage(pageNo, res.totalPage, res.totalCount)
					}
				}
			})
@ -68,7 +68,7 @@ new Vue({
				totalSize: size,
				callback: function(num) {
					//回调的页数
					vm.getrecords(num)
					vm.getlist(1, vm.recodestype)
				}
			})
		},
@ -81,14 +81,12 @@ new Vue({
				totalSize: size,
				callback: function(num) {
					//回调的页数
					vm.gethistory(num, vm.monthtimes)
					vm.getlist(1, vm.historytype)
				}
			})
		},
		cancelbtn: function(id, orderid) {
			mineJiuZhenDialogForm.cancelAppointment(id, orderid).then(function(layerid) {
				top.layer.close(layerid)
			})
		cancelbtn: function(orderid, thirdorderid) {
			mineJiuZhenDialogForm.cancelAppointment(orderid, thirdorderid)
		},
		satisfactionbtn: function(id) {
			mineJiuZhenDialogForm.satisfaction(id)

+ 79 - 213
page/mineJiuZhen/js/satisfaction.js

@ -1,222 +1,88 @@
new Vue({
	el: "#app",
	data: {
		questions: [{
			qstCode: "question_1",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 1,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_2",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 2,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_3",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 3,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_4",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 4,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_5",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 5,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_6",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 6,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_7",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 7,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_8",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 8,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_9",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 9,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}, {
			qstCode: "question_10",
			qstTitle: "您对就诊过程中我院的总体满意程度?",
			type: 0,
			sort: 10,
			options: [{
				id: 0,
				sort: 1,
				code: "0001",
				content: "满意"
			}, {
				id: 1,
				sort: 2,
				code: "0002",
				content: "基本满意"
			}, {
				id: 2,
				sort: 3,
				code: "0003",
				content: "不满意"
			}, ]
		}],
		questions: [],
		questioncode: "03deb476eb634436b4d72b9965539065",
		answers: [],
		count: 0,
		toUserId: "",
		messageId:"",
	},
	mounted: function() {
		var vm = this
		var query = GetRequest();
		vm.messageId = query.messageId;
		var oauthInfo = JSON.parse(sessionStorage.getItem("oauthInfo"));
		vm.toUserId = oauthInfo.id
		vm.getQuestions()
	},
	methods: {
		getQuestions: function() {
			var vm = this
			jiuzhenAPI.getSatisfactionQuestionws({
				surveyTemplateCode: vm.questioncode
			}).then(function(res) {
				vm.questions = res.obj.questions
			})
		},
		checkRadio: function(q_sort, a_sort) {
			var vm = this
			q_sort = q_sort - 1
			var answer = $.extend(true, {}, vm.questions[q_sort])
			a_sort = a_sort - 1
			vm.pushAnswers(answer, q_sort, a_sort)
		},
		pushAnswers: function(answer, q_sort, a_sort) {
			var vm = this
			var options = answer.options[a_sort]
			answer.options = options
			//未答题
			if(answer.isAnswer == undefined) {
				vm.questions[q_sort].isAnswer = true
				vm.questions[q_sort].aid = vm.count
				vm.answers.push(answer)
				vm.count++
			} else {
				//已答题
				var count = vm.questions[q_sort].aid
				vm.answers[count] = answer
			}
		},
		sumbit: function() {
			var vm = this
			var all = vm.questions.length
			if(vm.answers.length < all) {
				var answer = vm.answers.concat()
				var answer1 = _.sortBy(answer, function(item) {
					return item.sort;
				})
				for(var i = 0; i < all; i++) {
					var j = i + 1
					if(answer1[i].sort != j) {
						toastr.warning("第" + j + "题未作答!")
						break;
					}
				}
			} else {
				var jsonData = {
					"userId": vm.toUserId,
					"surveyCode": vm.questioncode,
					"questions": vm.answers,
					"messageId": vm.messageId,
				}
				jiuzhenAPI.postSatisfactionAnswers({
					jsonData: JSON.stringify(jsonData)
				}).then(function(res) {
					toastr.success("提交答案成功。谢谢配合!")
				    setTimeout(function(){vm.close()},3000)
				}).catch(function(err) {
					console.log(err)
				})
			}
		},
		close: function() {
			var index = top.layer.getFrameIndex(window.name);
			top.layer.close(index);
		}
	}
});

+ 2 - 1
page/register/html/register.html

@ -13,6 +13,7 @@
		<link rel="stylesheet" type="text/css" href="../../../css/font-awesome.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/artDialog/6.0.5/api/css/ui-dialog.css" />
		<link rel="stylesheet" type="text/css" href="../../../plugins/toastr/toastr.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css" />
		<link rel="stylesheet" type="text/css" href="../register.css" />
@ -28,13 +29,13 @@
		<script src="../../../js/bootstrap.min.js"></script>
		<script src="../../../js/validate/jquery.validate.min.js"></script>
		<script src="../../../js/validate/messages_zh.min.js"></script>
		<script src="../../../js/toastr/toastr.min.js"></script>
		<script src="../../../js/security.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" charset="utf-8"></script>
		<script src="../../../plugins/artDialog/6.0.5/api/js/dialog-plus.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../plugins/toastr/toastr.min.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../component/login-register/register.js"></script>
		<script src="../../../api/patient/login-api.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../component/common/footer.js"></script>