| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266 | 
							
- // TODO 临时构造plus对象,使得能够在浏览器中进行调试
 
- //var plus = null;
 
- 	// 登录者相关信息(包括userAgent)
 
- var loginerInfo = null,
 
- 	// 基础环境信息(包括当前webview)
 
- 	baseEnv = null;
 
- // 关闭重新登录检查(防止一个ajax error导致所有请求成功无法回调)
 
- var checkReload = false;
 
- // var isInit = true;
 
- var $switchWrap = $('#switch_wrap'),
 
- 	$numSettingWrap = $('#num_setting_wrap'),
 
- 	$timeSettingWrap = $('#time_setting_wrap'),
 
- 	$numSettingSelector = $numSettingWrap.find('.mobi-selector'),
 
- 	$switch = $('#zixunSwitch'),
 
- 	$acceptZiXun = $('#accept_zixun'),
 
- 	$worktimeCell = $("#worktime_cell"),
 
- 	$unsetTip = $('#unset_tip');
 
- // 获取登录相关信息
 
- var getLoginerInfo = function() {
 
- 		// 登录的相关信息
 
- 	var userAgent = JSON.parse(plus.storage.getItem("userAgent")),
 
- 		// 登录的医生类别
 
- 		docType = plus.storage.getItem("docType"),
 
- 		// 登录的医生信息
 
- 		docInfo=  JSON.parse(plus.storage.getItem("docInfo")),
 
- 		// 该医生(登录者)所在社区(机构)编码
 
- 		hospital = plus.storage.getItem("hospital");
 
- 	return {
 
- 		userAgent: userAgent,
 
- 		docInfo: $.extend(docInfo,{docType:docType},{hospital: hospital})
 
- 	}
 
- },
 
- // 获取基础环境信息
 
- getBaseEnvPromise = function () {
 
- 	
 
- 	var env = {
 
- 		webview: plus&&plus.webview.currentWebview()
 
- 	};
 
- 	return Promise.resolve().then(function(res) {
 
- 		return env;
 
- 	});
 
- },
 
- // 初始化“接受新的咨询”开关
 
- initSwitch = function() {
 
- 	mui('#zixunSwitch').switch();
 
- },
 
- // 初始化“居民名医咨询次数”下拉列表
 
- initNumSetting = function() {
 
- 	var keys = _.range(100),
 
- 		values = _.map(keys,function(k) {
 
- 			return k+"次";
 
- 		});
 
- 	$numSettingSelector.mobiscroll({
 
- 			theme: 'ios',
 
- 			lang: 'zh',
 
- 			customWheels: true,
 
- 			wheels: [
 
- 				[{
 
- 					keys: keys,
 
- 					values: values
 
- 				}]
 
- 			],
 
- 			onSelect: function(valueText, inst) {
 
- 				var dd = eval("[" + valueText + "]"),
 
- 					name=dd[0].values,
 
- 					currExpenses = dd[0].keys;
 
- 					
 
- 				$(this).val(name);
 
- 				$numSettingSelector.attr("data-code",currExpenses);
 
- 				
 
- 				//保存咨询次数
 
- 				saveConsultTimesSetting(currExpenses);
 
- 			}
 
- 		});
 
- },
 
- //页面初始化时,检查当前是否接受咨询
 
- isDoctorWorking = function(doctorid){
 
- 	var url = server+"doctor/work_scheduling/is_doctor_working?doctor="+doctorid;	  
 
- 	  getReqPromise(url,null,"GET").then(function(res){	  		
 
- 		   	if(res.status == 200) {
 
- 				var status = res.data.status;
 
- 				if(status && status != 0){
 
- 					mui('#zixunSwitch').switch();
 
- 				} 
 
- 		   	} else {		   		
 
- 		   		console && console.error(res);
 
- 		   	}
 
- 	   }).catch(function(e){
 
- 	   		console && console.error(e);
 
- 	   });
 
- },
 
- getWorkScheduling = function(){
 
- 	var url = server+"doctor/work_scheduling/all";	  
 
- 	  getReqPromise(url,null,"GET").then(function(res){
 
- 		   	if(res.status == 200) {
 
- 				var Time=res.data.workTime//时间
 
- 				var Weeks=res.data.workWeeks//周安排 
 
- 				//名医咨询次数 默认为0
 
- 				var famousConsultTimes = Time.famousConsultTimes;
 
- 				//是否接受咨询,1为接受 0不接受
 
- 				var receiveConsult = Time.receiveConsult;
 
- 				if(receiveConsult != 0){
 
- 					$switch.addClass('mui-active')
 
- 					mui('#zixunSwitch').switch();
 
- 					$acceptZiXun.show();
 
- //					$numSettingWrap.show();
 
- 				} else {
 
- 					$acceptZiXun.hide();
 
- //					$numSettingWrap.hide();
 
- 				}
 
- 				if(!famousConsultTimes)famousConsultTimes = 0;
 
- 				if(res.data.doctor.isFamous=="1") {
 
- 					// 是名医才显示
 
- //					$switchWrap.show();
 
- 					$numSettingWrap.show();
 
- 					initNumSetting();
 
- 					var scroll = $numSettingSelector.mobiscroll('getInst');
 
- 					var valueText = "{keys:'"+famousConsultTimes+"',values:'"+famousConsultTimes + "次"+"'}";
 
- 					scroll.setVal([valueText]);			
 
- 					$numSettingSelector.val(famousConsultTimes + "次");
 
- 					$numSettingSelector.attr("data-code",famousConsultTimes);
 
- 				} else {
 
- 					$acceptZiXun.show();
 
- 					$numSettingWrap.hide();
 
- 					//非名医,只有专科可以这是是否接受咨询
 
- 					if(res.data.doctor.level == 1){
 
- //					    $switchWrap.show();
 
- 					}
 
- 				}
 
- 			
 
- 				// 没设置工作时间,则隐藏工作计划表
 
- 				if(!Time || !(Time.morningBegin || Time.morningEnd || Time.afternoonBegin || Time.afternoonEnd || Time.nightBegin || Time.nightEnd )) {
 
- //					$timeSettingWrap.find('.cycworktime').hide();
 
-                     $unsetTip.show()
 
-                     $worktimeCell.hide();
 
- 				} else {
 
- //					$timeSettingWrap.find('.cycworktime').show();
 
- 					$unsetTip.hide()
 
-                     $worktimeCell.show();
 
- 				}
 
- 				
 
- 				if(Time.length!=0){//查询成功有数据
 
- //						$($(".work .c-list-value i")[0]).html(Time.morningBegin);
 
- //						$($(".work .c-list-value i")[1]).html(Time.morningEnd);
 
- //						$($(".work .c-list-value i")[2]).html(Time.afternoonBegin);
 
- //						$($(".work .c-list-value i")[3]).html(Time.afternoonEnd);
 
- //						$($(".work .c-list-value i")[4]).html(Time.nightBegin);
 
- //						$($(".work .c-list-value i")[5]).html(Time.nightEnd);
 
- 						
 
- 						$.each(Weeks,function(i,v){
 
- 							var obj=$(".cycworktime tr[data-fl="+v.week+"]");
 
- 							if(v.morning=="1"){
 
- 								// obj.find("td[data-type='1']").addClass("on");
 
- 								obj.find("td[data-type='1']").html(Time.morningBegin+"~"+Time.morningEnd);
 
- 							}
 
- 							if(v.afternoon=="1"){
 
- 								// obj.find("td[data-type='2']").addClass("on");
 
- 								obj.find("td[data-type='2']").html(Time.afternoonBegin+"~"+Time.afternoonEnd);
 
- 							}
 
- 							if(v.night=="1"){
 
- 								// obj.find("td[data-type='3']").addClass("on");
 
- 								obj.find("td[data-type='3']").html(Time.nightBegin+"~"+Time.nightEnd);
 
- 							}
 
- 							
 
- 						});
 
- 						
 
- 					}
 
- 				
 
- 				
 
- 		   	} else {		   		
 
- 		   		console && console.error(res);
 
- 		   	}
 
- 	   }).catch(function(e){
 
- 	   		console && console.error(e);
 
- 	   });
 
- }
 
- ,
 
- saveConsultTimesSetting = function(consultTimes){
 
- 	var url = server+"/doctor/work_scheduling/consult_times_setting?consultTimes="+consultTimes;	  
 
- 	  getReqPromise(url,null,"GET").then(function(res){	  		
 
- 		   	if(res.status == 200) {
 
- 				mui.toast("设置成功");
 
- 		   	} else {		   		
 
- 		   		mui.toast(""+res.msg);
 
- 		   		
 
- 		   	}
 
- 	   }).catch(function(e){
 
- 	   		console && console.error(e);
 
- 	   });
 
- },
 
- // 绑定页面事件
 
- bindEvents = function () {
 
- 	
 
- 	$switch[0].addEventListener("toggle",function(event){
 
- 		var url = server+"/doctor/work_scheduling/receive_consult_setting";
 
- 	    var params = {
 
- 	        receiveConsult: event.detail.isActive ? 1 : 0
 
- 	    };
 
- 	  
 
- 	  //页面初始化时,不提交到后台。
 
- //	  if(isInit){
 
- //	  		isInit = false;
 
- //	  		return;
 
- //	  }  
 
- 	  getReqPromise(url,params).then(function(res){
 
- 	  		
 
- 		   	if(res.status == 200) {
 
- 		   	    $acceptZiXun.toggle(event.detail.isActive);
 
- 				mui.toast("设置成功");
 
- 		   	} else {
 
- 		   		mui.toast("设置失败");
 
- 		   		console && console.error(res);
 
- 		   	}
 
- 	   }).catch(function(e){
 
- 	   		console && console.error(e);
 
- 	   });
 
- 	})
 
- };
 
- // 页面业务处理流程开始
 
- new Promise(function(resolve, reject) {
 
- 	// TODO 临时放开
 
- 	//resolve(true);
 
- 	mui.plusReady(function() {
 
- 		// plus已经准备好,可以往下执行
 
- 		resolve(true);
 
- 	});
 
- }).then(function() {
 
- 	
 
- 	// 获取基础环境信息
 
- 	return getBaseEnvPromise().then(function(env) {
 
- 		baseEnv = env;
 
- 	}).then(function() {
 
- 		// TODO 防止因为其它ajax error导致存在isLoginOut标识,所有请求回调无法执行的问题
 
- 		window.localStorage.removeItem("isLoginOut");
 
- 		
 
- 		
 
- 		// 获取登录医生信息
 
- 		loginerInfo = getLoginerInfo();
 
- 		// TODO Switch需等到plusReady触发之后才能初始化,为了测试所以使用setTimeout延迟执行
 
- 		//setTimeout(function() {
 
- 		//	initSwitch();
 
- 		//},0);
 
- 		
 
- 		// 绑定页面事件
 
- 		bindEvents();
 
- 	})
 
- 	.then(function(){
 
- 		//读取医生的当前是否接受咨询的设置状态
 
- 		//var doctorid = loginerInfo.docInfo.code;
 
- 		//isDoctorWorking(doctorid);
 
- 		getWorkScheduling();
 
- 	})
 
- }).catch(function(e) {
 
- 	plus.nativeUI.closeWaiting();
 
- 	console && console.error(e);
 
- });
 
 
  |