| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 | 
							- Vue.component('team-panel', {
 
-     template: '<div class="team-panel ml20 mr20"">\
 
- 					<div class="search-warp">\
 
- 						<input class="inp-search" placeholder="查找模板" v-model="filter" @input="debounceTempList" />\
 
- 					</div>\
 
- 					<div ref="innerPanel" style="overflow-y: auto;">\
 
- 						<div :class="{\'list-arrow-r\': !o.dropdown, \'list-arrow-d\': o.dropdown}" class="temp-item" v-for="(o, i) in items">\
 
- 							<div @click="selectTeam(o)" class="item-header c-nowrap">\
 
- 								<span class="c-nowrap">{{o.teamName}} ({{o.amount}})</span>\
 
- 							</div>\
 
- 							<div v-show="o.dropdown">\
 
- 								<div class="ml30 dropdown-item" v-for="(v, j) in o.items" :class="{\'list-arrow-r\': !v.dropdown, \'list-arrow-d\': v.dropdown}">\
 
- 									<div @click="seletGroup(v)" >{{v.name}}</div>\
 
- 									<div v-show="v.dropdown">\
 
- 										<div @click="showDetail(t,o)" class="ml30 dropdown-item" v-for="(t, j) in v.items">\
 
- 											<span :class="{\'active\': t == activetemplate}" class="c-nowrap item-header">{{t.title}}</span>\
 
- 											<span style="position: absolute;right:24px;">\
 
- 												<img src="../../../images/shiyongren_icon.png" width="14"/>\
 
- 												{{t.useTimes}}\
 
- 											</span>\
 
- 										</div>\
 
- 									</div>\
 
- 								</div>\
 
- 							</div>\
 
- 						</div>\
 
- 					</div>\
 
- 					<div>\
 
- 					</div>\
 
- 				</div>',
 
-     props: ['activetemplate'],
 
-     data: function() {
 
-         return {
 
-         	activeTeam: null,
 
-         	filter: "",
 
-         	pagesize: 20,
 
-         	pageNo: 1,
 
-         	throttled: null,
 
-         	items: [],
 
-         	activeItem: null
 
-         }
 
-     },
 
-     created: function() {
 
-     	var vm = this
 
- 		EventBus.$on('refresh-team-panel',function() {
 
- 			EventBus.$emit('active-nav-tab', 1)
 
- 			vm.debounceTempList()
 
- 		})
 
-     },
 
-     mounted: function() {
 
-     	var vm = this
 
-     	var el = vm.$refs.innerPanel
 
-     	$(el).height($(window).height() - 140)
 
-     	window.addEventListener('resize', _.debounce(function() {
 
-     		$(el).height($(window).height() - 140)
 
-     	}, 300))
 
-     	
 
- 		vm.getDoctorTeams()
 
-     },
 
-     methods: {
 
-     	debounceTempList: _.debounce(function() {
 
- 			var vm = this
 
-     		vm.pageNo = 1
 
-     		this.getTeamGuidanceListByLabelWithFilter()
 
- 		}, 500, false),
 
- 		getTeamGuidanceListByLabelWithFilter: function() {
 
- 			var vm = this
 
- 			guidanceAPI.getTeamGuidanceListByLabelWithFilter({
 
- 				teamId: vm.activeTeam.teamId,
 
- 				filter: vm.filter
 
- 			}).then(function(res) {
 
- 				var data = res.data
 
- 	        	if(data) {
 
- 	        		vm.activeTeam.items = _.map(_.keys(data), function(k) {
 
- 	        			return {
 
- 	        				name: k,
 
- 	        				dropdown: true,
 
- 	        				code: data[k]&&data[k][0].labelCode,
 
- 	        				teamId: vm.activeTeam.teamId,
 
- 	        				items: data[k]
 
- 	        			}
 
- 	        		})
 
- 	        	}
 
- 	        })
 
- 		},
 
-     	getDoctorTeams: function() {
 
-     		var vm = this
 
-     		guidanceAPI.getDoctorTeams({
 
-     			
 
-     		}).then(function(res) {
 
-     			vm.items = res.teamList
 
-     			vm.$nextTick(function() {
 
-     				if(vm.items && vm.items.length) {
 
-     					vm.activeTeam = vm.items[0]
 
-     					$('.team-panel .temp-item').eq(0).find('.item-header').click()
 
-     				}
 
-     			})
 
-     		})
 
-     	},
 
-     	selectTeam: function(o) {
 
-     		var vm = this
 
-     		o.dropdown=!o.dropdown
 
-     		
 
-     		if(o.teamName !== vm.activeTeam.teamName) {
 
-     			vm.filter = ""
 
-     			vm.activeTeam.dropdown = false
 
-     		}
 
-     		
 
-     		vm.activeTeam = o
 
-     		
 
-     		if(!o.items || o.items.length) {
 
-     			guidanceAPI.findAllListByPage({
 
- 	    			teamId: o.teamId,
 
- 	    			pageNo: 1,
 
- 	    			pageSize: 1000
 
- 	    		}).then(function(res) {
 
- 	    			Vue.set(o, 'items', res.data);
 
- 	    		})
 
-     		}
 
-     		
 
-     	},
 
-     	seletGroup: function(v) {
 
-     		var vm = this
 
-     		Vue.set(v, 'dropdown', !v.dropdown);
 
-     		if(!v.items || !v.items.length) {
 
-     			guidanceAPI.getTeamGuidanceLabelList({
 
- 	    			teamId: vm.activeTeam.teamId,
 
- 	    			pageNo: 1,
 
- 	    			pageSize: 1000,
 
- 	    			labelCode: v.code
 
- 	    		}).then(function(res) {
 
- 	    			Vue.set(v, 'items', res.data);
 
- 	    		})
 
-     		}
 
-     	},
 
-         showDetail: function(o,t) {
 
-         	var vm = this
 
-         	EventBus.$emit('active-template', o)
 
-         	
 
-         	var query = {
 
-         		teamId: t.teamId,
 
-         		teamTemplateCode: o.teamTemplateCode,
 
-         		modelCode: vm.modelCode,
 
-         		patient: storage.patient||"",
 
-         		timestemp: $.now()
 
-         	}
 
-         	vm.$router.push({path:'/team-edit-panel',query:query})
 
-         }
 
-     }
 
- })
 
 
  |