(function() {
Vue.component('doctor-list', {
template: '
\
医生列表
\
\
\
![]()
\
\
\
\
{{doc.doctorName}}\
{{doc.lczcName}}\
{{doc.standardDeptName}}\
\
{{currentHosName}}
\
\
擅长:\
{{doc.skill}}\
\
\
\
\
\
- \
\
{{arrg.date}}
\
{{arrg.timeName}}
\
预约
\
已满
\
放号提醒
\
停诊
\
\
\
\
\
\
\
\
\
',
props: ["info"],
data: function() {
return {
isInit: true,
currentHospitalId: "",
currentHosName: "",
pageIndex: 1,
pageSize: 5,
totalPage: 0,
hosDeptId: "",
doctorList: [],
arrangeList:[],
leftBtn:false,
rightBtn:false,
isDoctorList:true
}
},
mounted: function() {
var vm = this;
setTimeout(function() {
vm.currentHospitalId = JSON.parse(vm.info).hospitalId;
vm.currentHosName = JSON.parse(vm.info).hosName;
vm.getDoctorList();
}, 50);
//更新医生列表信息
EventBus.$on('update-doctor-list', function(arg) {
vm.isInit = true;
vm.currentHospitalId = arg.hospitalId;
vm.hosDeptId = arg.hosDeptId;
vm.getDoctorList();
})
},
methods: {
getColorClass:function(numberStatus,arrangeStatus){
var classZ="";
if(numberStatus==1){
classZ = "border-0ad8c8 c-0ad8c8";
}else if(numberStatus==2){
classZ = "border-d1d1d1 c-d1d1d1";
}else if(arrangeStatus==2){
classZ = "border-ff8787 c-ff8787";
}else if(arrangeStatus==4){
classZ = "border-f0a65f c-f0a65f";
}
return classZ;
},
//获取医生列表
getDoctorList: function() {
var vm = this;
var params = {
pageIndex: vm.pageIndex,
pageSize: vm.pageSize,
hospitalId: vm.currentHospitalId,
hosDeptId: vm.hosDeptId
}
appointmentAPI.querySimpleDoctorList(params).then(function(res) {
if(res.successFlg && res.obj.Code == "10000") {
vm.doctorList = res.obj.Result || [];
vm.isDoctorList = vm.doctorList.length>0?true:false;
vm.getArrangeWater(vm.doctorList);//获取医生排班数据
if(vm.isInit) {
vm.totalPage = Math.ceil(res.obj.Total / vm.pageSize) || 0;
var totalSize = res.obj.Total || 0;
//分页初始化
$("#page").paging({
pageNo: 1,
totalPage: vm.totalPage,
totalSize: totalSize,
callback: function(num) {
vm.pageIndex = num; //回调的页数
getDoctorList(vm);
}
})
vm.isInit = false;
}
}
})
},
//获取医生排班数据
getArrangeWater: function(doctorData) {
var vm = this,
reqPromise = [];
_.map(doctorData, function(data) {
var params = {
pageIndex: vm.pageIndex,
pageSize: vm.pageSize,
hospitalId: vm.currentHospitalId,
hosDeptId: vm.hosDeptId,
doctorSn: data.doctorSn, //医生编号
registerDate: "" //就诊日期
}
reqPromise.push(appointmentAPI.queryGhtArrangeWater(params));
})
Promise.all(reqPromise).then(function(datas) {
_.map(datas, function(data) {
if(data.successFlg && data.obj.Code == "10000") {
vm.arrangeList.push(data.obj.Result);
}
})
vm.arrangeList = _.map(vm.arrangeList, function(data) {
_.map(data, function(item,index) {
item.date = item.registerDate.substring(5,10).replace("-","/");
item.timeName = item.timeId==1?"上午":item.timeId==2?"下午":"晚上";
})
return data;
})
// $(".doctor-ul li:lt(4)").hide()
});
},
preClick:function(){
},
nextClick:function(){
$(event.target).prev().find("li:lt(4)").hide();
},
//跳转去医生号源页面
goToDoctorPage: function(doctorSn, arrangeID){
window.location.href = "select-time.html?doctorSn="+Base64.encode(doctorSn)+"&arrangeID="+arrangeID;
}
}
});
})()