| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 | 
							- mui.plusReady(function() {
 
- 	var page = 1,
 
- 		pagesize = 10;
 
- 		
 
- 	var self = plus.webview.currentWebview();
 
- 	var teamCode = self.teamCode;
 
- 	var type = self.type;
 
- 	var docInfo = JSON.parse(plus.storage.getItem("docInfo"));
 
- 	
 
- 	var $searchbarInput = $('#searchPut'),
 
- 		$searchSuggest = $('#search_suggest_text'),// 搜索框下面悬浮的搜索提示
 
- 		search_keyword = "",//记录搜索框的内容
 
- 		$noResultWrap = $('#no_result_wrap'),
 
- 		$searchResult = $('#search_result');
 
- 	$searchbarInput.focus();
 
- 	
 
- 	mui.init({
 
- 		pullRefresh : {
 
- 		    container:'.mui-scroll-wrapper',
 
- 		    up : {
 
- 			    height:50,
 
- 			    contentdown:"",
 
- 			    contentrefresh : "正在加载...",
 
- 			    contentnomore:'没有更多数据了',
 
- 			    callback: function() {
 
- 			    	var self = this;
 
- 			    	page++;
 
- 			    	queryListData(function(value){
 
- 			    		setTimeout(function(){
 
- 			    			self.endPullupToRefresh(value);
 
- 			    		},500)
 
- 			    	},'up')
 
- 				}
 
- 		    }
 
- 		}
 
- 	})
 
- 	
 
- 	//监视输入
 
- 	$searchbarInput.on('input', function() {
 
- 		var text = $(this).val().trim();
 
- 		$searchResult.hide();
 
- 		$noResultWrap.hide();
 
- 		showSearchSuggest(text);
 
- 	}).on('keydown',function(e) {
 
- 		if (e.which === 13) {
 
- 		    searchByPaging()
 
- 		}
 
- 	})
 
- 	
 
- 	//查询
 
- 	function searchByPaging(){
 
- 		$searchbarInput.blur();
 
- 		search_keyword = $searchbarInput.val();
 
- 		if(!$.trim(search_keyword)) {
 
- 			return ;
 
- 		}
 
- 		page = 1;
 
- 		$('#dest_list').empty();
 
- 		mui('.mui-scroll-wrapper').pullRefresh().refresh(true);
 
- 		plus.nativeUI.showWaiting();
 
- 		queryListData();
 
- 		$searchSuggest.hide();
 
- 		$noResultWrap.hide();
 
- 	}
 
- 	
 
- 	$searchSuggest.on('click',function() {
 
- 		searchByPaging()
 
- 	})
 
- 	
 
- 	// 控制搜索关键字悬浮提示的显示
 
- 	function showSearchSuggest(text) {
 
- 		var suggestText = '搜索“'+text+'”';
 
- 		// 如果text不为空,则显示;否则隐藏
 
- 		if(text&&text.trim().length) {
 
- 			$searchSuggest.text(suggestText);
 
- 			$searchSuggest.show();
 
- 		} else {
 
- 			$searchSuggest.text('');
 
- 			$searchSuggest.hide();
 
- 		}
 
- 	}
 
- 	
 
- 	//关键字变色
 
- 	function ellipsisText($elements, searchText) {
 
- 		_.each($elements,function(el) {
 
- 		    var $textEl = $(el).find(".j-text-ellipsis");
 
- 		    _.each($textEl, function(t){
 
- 		        highlineKeyword($(t),searchText)
 
- 		    })
 
- 		})
 
- 	}
 
- 	function highlineKeyword($el,searchText) {
 
- 		var props = getRowProps($el),
 
- 			chartWidth = props.chartWidth,
 
- 			rowHeight = props.rowHeight,
 
- 			rowWidth = props.rowWidth,
 
- 			// 每行显示字符数(以中文字符为标准计算)
 
- 			chartNum = Math.floor(rowWidth / chartWidth.zh),
 
- 			// 排除指定数量字符所占宽度
 
- 			exceptNum = 0,
 
- 			// 行数
 
- 			rowNum = 1,
 
- 			// 预计显示总字符数
 
- 			expectedNum = chartNum * rowNum - exceptNum,
 
- 			$target = $el,
 
- 			// 目标文本
 
- 			text = $.trim($target.attr('data-text')),
 
- 			length = text.length,
 
- 			// 关键字数组
 
- 			kws = $.trim(searchText).replace(/\s+/g," ").split(" ");
 
- 		var fidx = 0,preFidx,diff = 0;
 
- 		$target.html(replaceAll(text, kws));
 
- 		if(Math.floor($target.height() / rowHeight) <= rowNum) {
 
- 			return ;
 
- 		}
 
- 	}
 
- 	function getRowProps($el) {
 
- 		var $textEllipsis = $el,
 
- 			$text = $textEllipsis.eq(0),
 
- 			$chart = $text.text('a'),
 
- 			enWidth = $chart.width(),
 
- 			$chart = $text.text('中'),
 
- 			zhWidth = $chart.width(),
 
- 			lineHeight = parseFloat($chart.css("lineHeight"), 10),
 
- 			rowHeight = $chart.height();
 
- 		$chart.text('');
 
- 		return {
 
- 			chartWidth: {
 
- 				zh: zhWidth,
 
- 				en: enWidth
 
- 			},
 
- 			rowHeight: Math.max(rowHeight, lineHeight),
 
- 			rowWidth: $el.width()
 
- 		};
 
- 	}
 
- 	function replaceAll(text, arr) {
 
- 		var html = text;
 
- 		_.each(arr,function(kw) {
 
- 			var reg = new RegExp(kw+"(?!>)","gi");
 
- 			html = html.replace(reg,'<em>'+kw+'</em>');
 
- 		});
 
- 		return html;
 
- 	}
 
- 	
 
- 	//取消
 
- 	$('.searchbar-cancel').on('click',function() {
 
- 		mui.back();
 
- 	})
 
- 	
 
- 	template.helper('setSex',function(item){
 
- 		if(item == 1){
 
- 			return '男'
 
- 		}else{
 
- 			return '女'
 
- 		}
 
- 	})
 
- 	
 
- 	template.helper('dispensaryTypeName',function(type){
 
- 		if(type == 1){
 
- 			return '自取'
 
- 		} else if(type == 2){
 
- 			return '快递配送'
 
- 		} else if(type == 3){
 
- 			return '健管师配送'
 
- 		}
 
- 		return ''
 
- 	})
 
- 	
 
- 	//点击展开
 
- 	$('#medi_list').on('click','.patient-type',function(){
 
- 		var $this = $(this),
 
- 			$parent = $this.parent(),
 
- 			$sibling = $this.siblings('.n-list');
 
- 		if($parent.hasClass('current')){
 
- 			$parent.removeClass('current');
 
- 			$sibling.hide()
 
- 		}else{
 
- 			$parent.addClass('current');
 
- 			$sibling.show()
 
- 		}
 
- 	})
 
- 	
 
- 	//点击跳转
 
- 	$('#dest_list').on('tap','li',function(){
 
- 		var data = JSON.parse($(this).attr('data-json')),
 
- 			prescriptionCode = data.code;
 
- 			
 
- 		mui.openWindow({
 
- 			id: "dingdangenzong",
 
- 			url: "dingdangenzong.html",
 
- 			extras: {
 
- 				teamCode: teamCode?teamCode:$(this).attr('data-team'),
 
- 				prescriptionCode: prescriptionCode
 
- 			}
 
- 		})
 
- 	})
 
- 	
 
- 	function queryListData(fun){
 
- 		var params ={}
 
- 		var url = "";
 
- 		if(docInfo.level == 2) {
 
- 			url = "/doctor/prescriptionInfo/getDoctorPrescriptionExpressage";
 
- 			var params ={
 
- 				page:page,
 
- 				size:pagesize,
 
- 				nameKey:search_keyword,
 
- 				teamCode:teamCode
 
- 			}
 
- 		} else if(docInfo.level == 3) {
 
- 			url = "/doctor/prescriptionInfo/getHDoctorPrescriptionExpressage";
 
- 			var params ={
 
- 				page:page,
 
- 				size:pagesize,
 
- 				nameKey:search_keyword,
 
- 				type:type,
 
- 				teamCode:teamCode
 
- 			}
 
- 		}
 
- 		
 
- 		sendPost(url,params, function(){
 
- 			plus.nativeUI.closeWaiting();
 
- 			fun&&fun.call(this,false)
 
- 			mui.toast("获取数据失败!");
 
- 		}, function(res){
 
- 			plus.nativeUI.closeWaiting();
 
- 			if(res.status == 200){
 
- 				var html = template('li_tmpl',{list:_.map(res.data,function(o){
 
- 						o.jsonStr = JSON.stringify(o);
 
- 						return o;})
 
- 				})
 
- 				if(page == 1 && res.data.length==0){
 
- 					$noResultWrap.show();
 
- 					$searchResult.hide();
 
- 				}else{
 
- 					$noResultWrap.hide();
 
- 					$searchResult.show();
 
- 					if(res.data.length < pagesize){
 
- 						fun&&fun.call(this,true)
 
- 					}else{
 
- 						fun&&fun.call(this,false)
 
- 					}
 
- 					$('#dest_list').append(html);
 
- 					ellipsisText($searchResult.find('.j-li'),search_keyword)//变色
 
- 				}
 
- 			}else{
 
- 				fun&&fun.call(this,false)
 
- 				mui.toast("获取数据失败!");
 
- 			}
 
- 		},'get')
 
- 	}
 
- })
 
- template.helper("setPhoto", function(p) {		
 
- 		return getImgUrl(p);
 
- });
 
 
  |