var currentGMT=new Date();//当前时间GMT function showSuccessMessage(msg) { layer.msg(msg, { icon: 1 }) } function showSuccessMessage(msg) { layer.msg(msg, { icon: 1 }) } function showErrorMessage(msg) { layer.msg(msg, { icon: 5 }) } function showWarningMessage(msg) { layer.msg(msg, { icon: 2 }) } function showInfoMessage(msg) { layer.msg(msg, { icon: 6 }) } var previewLayerIndex, followupLayerIndex, KFZDlayerIndex; function closeFollowUpLayer(planDetaiId, relationCode, flag){ if($.isArray(relationCode)) { $.each(relationCode, function(index, item){ _vm.saveRehabilitationOperateRecord(planDetaiId, 6, item, flag) }) } else { _vm.saveRehabilitationOperateRecord(planDetaiId, 6, relationCode, flag) } layer.close(followupLayerIndex) } function closeKFZDlayer(planDetaiId, relationRecordId){ layer.close(KFZDlayerIndex) _vm.saveRehabilitationOperateRecord(planDetaiId, 5) } function closeKFZD(){ layer.close(KFZDlayerIndex) _vm.initData() } var _vm Vue.component('server-items-detail', { template: '
\
\ \ \
\
服务内容-{{service.title}}
\
{{patientname}}患者{{service.title}}计划
\
指导留言
\
\
{{message.content}}
\
\
\
\
\ \ {{currentDay}}\ \
\
\ \ \
\
\
\
\
\
周一
\
周二
\
周三
\
周四
\
周五
\
周六
\
周日
\
\
\
\
\
\ {{item.day}}\
\ \ \
\
\
\
\
\
\
\ {{(item.specialist && item.specialist.finish)}}/{{(item.specialist && item.specialist.all)}}\
\
\
\ {{(item.family && item.family.finish)}}/{{(item.family && item.family.all)}}\
\
\

{{curTaskName || \' \'}}

\
\

无服务项

\
\
\
\
\
\
\
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
时间项目执行人员执行地点相关记录状态
\

{{item.date}}

\

{{item.time}}

\ {{item.html}}\
\

{{item.name}}

\

{{item.content}}

\
{{item.doctorName}}{{item.hospitalName}}查看{{item.status==0?\'未完成\':(item.status==1?\'已完成\':\'已预约\')}}
\ \

暂无数据

\
\
\
\
\
\ \
\
\ \ \ \ \ \ \ \ \
\ \
', props: ['patientname','patientcode', 'planid', 'plandetailid'], data: function() { return { ynow: currentGMT.getFullYear(),//年份 mnow: currentGMT.getMonth(),//月份(比实际少一个月---0开始至11) dnow: currentGMT.getDate(),//当前日 currentDay:null,//带中文格式的当前年月 calendarData:[],//日历数据 timeAxisData: [], //时间轴数据 tabStatus: 1, title: '', docInfo: JSON.parse(window.localStorage.getItem('wlyyAgent')), upImgs: [], upImgArr: [], imgData: { accept: 'image/gif, image/jpeg, image/png, image/jpg', }, node: '', layerIndex: undefined, planDetaiId:'', service:{ relationRecordImg:{}, messageList:{}, }, message:{isImg:false,content:""}, islimit: false, relationRecordId: null } }, watch:{ tabStatus:function(){ if(this.islimit){ this.goToLoadData(true); } } }, mounted: function() { _vm = this this.initData() }, methods: { initData: function(){ var vm = this this.planDetaiId = this.plandetailid this.getServiceItem() }, getServiceItem: function() { var vm = this; var loadding = top.layer.load(0, { shade: false }); //0代表加载的风格,支持0-2 rehaAPI.serviceItem({ planDetailId: vm.planDetaiId }).then(function(res) { top.layer.close(loadding); if(res.status == 200) { vm.service = res.data; var isZK=vm.docInfo.doctorType==1?true:false; vm.service.isZK=isZK; if(vm.service.isMyTask==1){//执行者 vm.service.isCK=true;//无法显示按钮 if(vm.docInfo.uid==vm.service.specialistDoctorCode){//说明我自己是创建者 vm.service.isCK=false; vm.service.isCreate=true; } }else{ if(vm.docInfo.uid==vm.service.specialistDoctorCode){//说明我自己是创建者 vm.service.isCreate=true; } } if(vm.service.frequencyCode){ vm.islimit = true vm.goToLoadData(true) vm.monDetail() } else { vm.islimit = false vm.tabStatus = 2 vm.selectByPlanDetaiId() } vm.selectByGuidance() vm.$forceUpdate() } else { showErrorMessage(res.msg) } }) }, // 获取康复计划服务项的指导留言 selectByGuidance: function(){ var vm = this var params = { planId: vm.planid, itemCode: vm.service.type } rehaAPI.selectByGuidance(params).then(function(res){ if(res.status==200){ var messageIndex = _.findIndex(res.data, {doctor_type: 1}); if(messageIndex>-1){ var message = res.data[messageIndex] var contentType = message.content_type if(contentType==2||contentType==9){ vm.message.isImg = true } vm.message.content = vm.getContent(message.content,message.content_type) }else{ vm.message.content = "无" } } else { showErrorMessage(res.msg) } }) }, goToEditConfig: function(){ var vm = this location.href = "../../recover/html/new_recover.html?patient=" + vm.patientcode + '&isEditConfig=true&planId='+vm.planid+'&planDetailId='+vm.planDetaiId }, closeAllLayer: function(name, planDetaiId, type, relationCode, flag){ if(name=='预览康复指导'){ layer.close() } }, // 提醒患者 num 1康复指导2康复下转3复诊提醒4上门服务提醒5家签提醒 sendSpecialistWeixinMessage: function(planDetaiId, type){ var vm = this var text = '' var patientName = vm.patientname var patientCode = vm.patientcode if(type==4){ // 上门服务 text = '请问您是否确认提醒'+patientName+'居民预约上门护理服务?' } else if(type==7){ // 康复复诊 text = '请问您是否确认提醒'+patientName+'居民进行复诊?' } var current=layer.confirm(text, { btn: ['确定', '取消'], title: "提示" }, function (index) { var _type = type == 4? 4:type==7?3:'' var loading = layer.load(0, {shade: false}) var params = { patient: patientCode, doctor: vm.docInfo.uid, type: _type, relationCode: planDetaiId, planId: vm.planid } rehaAPI.sendSpecialistWeixinMessage(params).then(function(res){ layer.close(loading) if(res.status == 200){ showSuccessMessage('提交成功!') if(_type==3 || _type==4){ // 提醒患者后,即认为是已完成 vm.saveRehabilitationOperateRecord(planDetaiId, type) } } else { showErrorMessage(res.msg) } }) layer.close(current); //再执行关闭 }) }, // 添加完成记录 addCompleteRecord: function(){ var vm = this var detailId = this.planDetaiId var type = vm.service.type $("#completeRecord").css('display','block') this.layerIndex = layer.open({ type: 1, area: ['500px', '450px'], shade: 0.5, title: '添加完成记录', btn: ['确定', '关闭'], //只是为了演示 shadeClose: false, //点击遮罩关闭层 content: $("#completeRecord"), yes: function(){ vm.saveRehabilitationOperateRecord(detailId, 1) layer.close(vm.layerIndex) }, }); }, monDetail:function(){ this.currentDay = this.ynow + '年'+ (this.mnow + 1) +'月'; }, is_leap:function(year) { //判断是否为闰年 return (year%100==0?res=(year%400==0?1:0):res=(year%4==0?1:0)); }, preMonth:function(){ //上一个月 if(this.mnow<=0){ this.mnow=11; this.ynow=this.ynow-1; }else{ this.mnow--; } this.monDetail(); this.goToLoadData(true); }, getPreMouth:function(){ var pMnow,pYnow; if(this.mnow<=0){ pMnow=11; pYnow=this.ynow-1; }else{ pMnow=this.mnow-1; pYnow=this.ynow; } var m_days=new Array(31,(28+this.is_leap(pYnow)),31,30,31,30,31,31,30,31,30,31); //每个月的天数 return { days:m_days[pMnow], date:pYnow+'-'+(++pMnow>=10?pMnow:"0"+pMnow) } }, nextMonth:function(){ //下一个月 if(this.mnow>=11){ this.mnow=0; this.ynow=this.ynow+1; }else{ this.mnow++; } this.monDetail(); this.goToLoadData(true); }, getNextMouth:function(){ var nMnow,nYnow; if(this.mnow>=11){ nMnow=0; nYnow=this.ynow+1; }else{ nMnow=this.mnow+1; nYnow=this.ynow; } var m_days=new Array(31,(28+this.is_leap(nYnow)),31,30,31,01,31,31,30,31,30,31); //每个月的天数 return { days:m_days[nMnow], date:nYnow+'-'+(++nMnow>=10?nMnow:"0"+nMnow) } }, goToLoadData:function(flag){//flag是否更新数据 this.tabStatus==1 && (!this.calendarData.length || flag) && this.calendar(); this.tabStatus==2 && (!this.timeAxisData.length || flag) && this.timeAxis(); }, calendar:function(){ var nlstr = new Date(this.ynow,this.mnow,1); //当月第一天 var firstday = nlstr.getDay()-1;//第一天星期几,默认是周日 我们改成周一 firstday=firstday==-1?6:firstday;//如果是-1,说明当月的第一天是周日 var m_days=new Array(31,(28+this.is_leap(this.ynow)),31,30,31,30,31,31,30,31,30,31); //每个月的天数 var tr_str=Math.ceil((m_days[this.mnow] + firstday)/7); //当前月天数+第一天是星期几的数值 获得 表格行数 var c_days=m_days[this.mnow];//当前月份的天数 var p_arr=this.getPreMouth(); var n_arr=this.getNextMouth(); var i,k,idx,date_str; var dataArr=[];//天数/年月 for(i=0;ic_days){ date_str=date_str-c_days;//下个月的日期就是这个月的天数-当月的天数 __ym=n_arr['date']; }else{ __ym=this.ynow+'-'+(this.mnow>=9?"":"0")+(this.mnow+1); } dataArr.push({ day:date_str, date:__ym }); } } this.__Data=dataArr; this.calenderPlanDetail(); }, // 日历有计划数据处理 planHandleData: function(data, day, mounth) { var item = data; item.day = day; if(mounth) {item.mounth = mounth} var finishFlag=false var sFlag=false; var fFlag=false; if(item.specialist){ if(item.specialist.all==item.specialist.finish){ sFlag=true; } }else{ sFlag = true; } if(item.family){ if(item.family.all==item.family.finish){ fFlag = true; } }else{ fFlag = true; } finishFlag = sFlag && fFlag; item.finishFlag=finishFlag; return item }, calenderPlanDetail:function(){ var vm=this; var __days=vm.__Data; var lastDay=(__days.concat()).pop().day; lastDay=lastDay>9?lastDay:'0'+lastDay; if(vm.searchTask || vm.status || vm.status == 0) { vm.isFastSearch = true } else { vm.isFastSearch = false } var params={ executeStartTime: vm.isFastSearch ? '' : __days[0].date+'-'+__days[0].day+' 00:00:00',//日历开始时间(格式:yyyy-MM-dd HH:mm:ss) executeEndTime: vm.isFastSearch ? '' : (__days.concat()).pop().date+'-'+lastDay+' 23:59:59',//日历结束时间(格式:yyyy-MM-dd HH:mm:ss) planId:vm.planid,//计划id searchTask: vm.service.type,//快速查找任务:(1、我的任务,2、健康教育,3、健康指导,4、随访) status: null,//任务状态(0未完成,1已完成,2已预约) } rehaAPI.calendarPlanDetail(params).then(function(res){ vm.curTask=vm.searchTask; vm.curTaskName=vm.searchTaskName; vm.calendarData=[]; var list = []; if(res.status==200){ var data=res.data // 快速查找 if(vm.isFastSearch) { vm.searchData = [] var searchData0 = [], searchData1 = [], searchData2 = []; for(var setM = 1; setM <= 12; setM++) { var _setM = setM > 9 ? setM : '0' + setM, _setY = new Date().getFullYear(); var data0 = [], data1 = [], data2 = []; for(var i in data) { var getY = i.split("-")[0], getM = i.split("-")[1], getD = i.split("-")[2]; // 去年 if(_setY - 1 == getY && _setM == getM) { var item = vm.planHandleData(data[i], getD, getM) data0.push(item) data.length && data.splice(i,1); } else if(_setY == getY && _setM == getM) { // 今年 var item = vm.planHandleData(data[i], getD, getM) data1.push(item) data.length && data.splice(i,1); } else if(_setY + 1 == getY && _setM == getM) { // 明年 var item = vm.planHandleData(data[i], getD, getM) data2.push(item) data.length && data.splice(i,1); } } if(data0.length) { var dataSort = vm.daysSort(data0) var addlen = (dataSort.length + 1) % 7 ? (dataSort.length + 1) % 7 : 7 for(var i = 0; i < 7 - addlen; i++) { dataSort.push({ noService:true }) } searchData0.push(dataSort) } if(data1.length) { var dataSort = vm.daysSort(data1) var addlen = (dataSort.length + 1) % 7 ? (dataSort.length + 1) % 7 : 7 for(var i = 0; i < 7 - addlen; i++) { dataSort.push({ noService:true }) } searchData1.push(dataSort) } if(data2.length) { var dataSort = vm.daysSort(data2) var addlen = (dataSort.length + 1) % 7 ? (dataSort.length + 1) % 7 : 7 for(var i = 0; i < 7 - addlen; i++) { dataSort.push({ noService:true }) } searchData2.push(dataSort) } } if(searchData0.length) {vm.searchData.push(searchData0)} if(searchData1.length) {vm.searchData.push(searchData1)} if(searchData2.length) {vm.searchData.push(searchData2)} return false; } // 正常日历 var _currentTimeStamp=+new Date(new Date().setHours(0, 0, 0, 0)); for(var i in __days){ var _key=__days[i].date+'-'+(__days[i].day>9?__days[i].day:'0'+__days[i].day); var item={ noService:true, day:__days[i].day }; for(var j in data){ if(_key==j){ item = vm.planHandleData(data[j], __days[i].day) data.length && data.splice(j,1); break; } } var thatTime=+new Date(_key)-8*60*60*1000; var future=_currentTimeStamp>thatTime?0:(_currentTimeStamp==thatTime?1:2); item.future=future; list.push(item); // vm.calendarData.push(item); } vm.calendarData = vm.chunkFunction(list, 7) } }) }, chunkFunction:function(arr, size) { let changeIndex = 0; let secondArr = []; while (changeIndex < arr.length) { secondArr.push(arr.slice(changeIndex, changeIndex += size)) } return secondArr; }, //时间轴请求 timeAxis:function(){ var m_days=new Array(31,(28+this.is_leap(this.ynow)),31,30,31,30,31,31,30,31,30,31); //每个月的天数 var c_days=m_days[this.mnow];//当前月份的天数 var __ym=this.ynow+'-'+(this.mnow>=9?"":"0")+(this.mnow+1); var dataArr=[];//天数/年月 for(;c_days>0;c_days--){ dataArr.push({ day:c_days, date:__ym }); } this.__xData=dataArr; this.calendarPlanDetailList(); }, //限频次 时间轴请求 calendarPlanDetailList:function(){ var vm=this; var __days=vm.__xData; var lastDay=(__days.concat()).pop().day; lastDay=lastDay>9?lastDay:'0'+lastDay; var params={ executeEndTime:__days[0].date+'-'+__days[0].day+' 23:59:59',//日历开始时间(格式:yyyy-MM-dd HH:mm:ss) executeStartTime:(__days.concat()).pop().date+'-'+lastDay+' 00:00:00',//日历结束时间(格式:yyyy-MM-dd HH:mm:ss) planId:vm.planid,//计划id searchTask:vm.service.type, // 服务项 status: null, //任务状态(0未完成,1已完成,2已预约) } rehaAPI.calendarPlanDetailList(params).then(function(res){ if(res.status==200){ // var _currentTimeStamp=+new Date(new Date().setHours(0, 0, 0, 0)) var list=_.map(res.data||{},function(o){ // var _time=o.executeTime.split(' '); // var thatTime=+new Date(_time[0]); // var future=_currentTimeStamp>thatTime?0:(_currentTimeStamp==thatTime?1:2); // (o.status==0 && _currentTimeStamp>thatTime) && (future=-1) // var _html=o.status==2?'预':(future==-1?'逾':''); // _html=future==1?'今':_html; // if(_html=='预') future=3; var _time=o.executeTime.split(' '); var _html = '' var d = new Date(o.execute_time); if(d.format("yyyy-MM-dd") == new Date().format("yyyy-MM-dd")) { o.firstSort = '1' future = 1 _html = '今' if(o.status) { o.secondSort = '2' } else { o.secondSort = '1' } } else if(d > new Date()) { o.firstSort = '3' future = 2 if(o.status) { o.secondSort = '2' } else { o.secondSort = '1' } } else { o.firstSort = '2' future = 0 if(o.status == 0) { future = -1 _html = '逾' o.secondSort = '1' } else { o.secondSort = '2' } } o.html=_html o.date=_time[0]; o.time=_time[1]; o.future=future; o.doctorName = o.doctor_name o.hospitalName = o.hospital_name return o; })||[]; var nowTime = new Date().getTime() vm.timeAxisData = _.sortBy(list, function(o) { return o.firstSort + o.secondSort + (nowTime/o.execute_time) }); } else { showErrorMessage(res.msg) } }) }, //不限频次 时间轴请求 selectByPlanDetaiId: function(){ var vm = this var params = { planId: this.planid, code: vm.service.type, page: 1, pagesize: 10000 } rehaAPI.selectByPlanDetaiId(params).then(function(res){ if(res.status==200){ var list=_.map(res.data.list||{},function(o){ var _time=o.completeTime.split(' '); var _html = '' var d = new Date(o.completeTime); if(d.format("yyyy-MM-dd") == new Date().format("yyyy-MM-dd")) { o.firstSort = '1' future = 1 _html = '今' if(o.status) { o.secondSort = '2' } else { o.secondSort = '1' } } else if(d > new Date()) { o.firstSort = '3' future = 2 if(o.status) { o.secondSort = '2' } else { o.secondSort = '1' } } else { o.firstSort = '2' future = 0 if(o.status == 0) { future = -1 _html = '逾' o.secondSort = '1' } else { o.secondSort = '2' } } o.html=_html o.date=_time[0]; o.time=_time[1]; o.future=future; o.hospitalName = o.hosiptalName return o; })||[]; var nowTime = new Date().getTime() vm.timeAxisData = _.sortBy(list, function(o) { return o.firstSort + o.secondSort + (nowTime/o.execute_time) }); } else { showErrorMessage(res.msg) } }) }, zdly: function(data) { var vm = this var otherCode, otherName; var planDetailId = vm.plandetailid; if(vm.docInfo.doctorType == 1) { if(docInfo.uid == data.specialistDoctorCode) { //当前医生为创建计划的专科医生,与全科医生聊天 otherCode = data.familyDoctorCode; otherName = data.familyDoctorName; }else { //当前医生为专科,当前医生不是创建计划的专科医生,没反应 return false } } else { otherCode = data.specialistDoctorCode; otherName = data.specialistDoctorName; } top.layer.open({ type: 2, area: ['660px', '600px'], shade: 0.5, title: '指导留言', fixed: true, //不固定 maxmin: true, closeBtn: 1, shift: 5, shadeClose: false, //点击遮罩关闭层 content: '../../consulting/html/consulting.html?otherCode=' + otherCode + '&otherName=' + encodeURI(otherName) + '&planDetailId=' + planDetailId, end: function() { // 未点击确定按钮,点击关闭按钮       vm.initData()    } }); }, //康复指导 kfzd:function(){ var vm=this KFZDlayerIndex = layer.open({ type: 2, // offset: ['100px'], //右下角弹出 area: ['660px', '650px'], shade: 0.5, title: '康复指导', fixed: true, //不固定 maxmin: true, closeBtn: 1, shift: 5, shadeClose: false, //点击遮罩关闭层 content:'../../rehabilitation/html/rehabilitation_guidance.html?patient='+vm.patientcode+'&planDetaiId='+vm.planDetaiId+'&planId='+vm.planid + '&isRecordId=true', end: function() { // 未点击确定按钮,点击关闭按钮 vm.initData()    } }); }, // 康复随访计划 sfjh: function(){ var vm=this followupLayerIndex = layer.open({ type: 2, // offset: ['100px'], //右下角弹出 area: ['660px', '650px'], shade: 0.5, title: '随访计划', fixed: true, //不固定 maxmin: true, closeBtn: 1, shift: 5, shadeClose: false, //点击遮罩关闭层 content:'../../followup/html/followup_newplan.html?patient='+vm.patientcode+'&planDetaiId='+vm.planDetaiId+'&planId='+vm.planid, end: function() { // 未点击确定按钮,点击关闭按钮 vm.initData()     } }); }, upLoadImgToBase64: function() { var vm = this; var img1 = event.target.files[0]; var reader = new FileReader(); var type = img1.type; //文件的类型,判断是否是图片 var size = img1.size; //文件的大小,判断图片的大小 if(this.imgData.accept.indexOf(type) == -1) { alert('请选择我们支持的图片格式!'); return false; } if(size > 3145728) { alert('请选择3M以内的图片!'); return false; } reader.readAsDataURL(img1); reader.onload = function(e) { vm.upImgs.push({ baseUrl: e.target.result }); vm.upImgArr.push(img1); vm.uploadImg(vm.upImgArr); } }, //上传图片 uploadImg: function(data) { var vm = this; var len = data.length; if(len==0) { return } else { var file = data[len - 1]; var formData = new FormData(); formData.append('file', file); rehaAPI.upload(formData).then(function(res) { if(res.status == 200) { vm.upImgs[len - 1].img = res.data; data.pop(); vm.$forceUpdate() vm.uploadImg(data); } else { layer.msg(res.msg, { icon: 5 }); } }) } }, saveRehabilitationOperateRecord:function(planDetailId, type, relationCode, flag){ var vm=this var patientName = vm.patientname var patientCode = vm.patientcode var _image = []; for(var i in vm.upImgs) { _image.push(vm.upImgs[i].img); } var params={ rehabilitationDetailId: planDetailId, node: vm.node||'', patientCode: patientCode, doctorCode: vm.docInfo.uid, relationRecordType: type, relationRecordCode: '', relationRecordImg: '', status: flag&&flag==2?1:0, // 改记录的状态 relationCode: relationCode, //业务id flag: flag,//标记(1随访2临时随访) } rehaAPI.saveRehabilitationOperateRecord({dataJson:JSON.stringify(params)}).then(function(res){ if(res.status==200){ if(type==1){ vm.updateNoteAndImageRehabilitationOperate(planDetailId) }else if(type==6){ vm.updateRelationCodeByDetailId(planDetailId, relationCode) } else { vm.updateNoteAndImageRehabilitationOperate(planDetailId) } }else { showErrorMessage(res.msg) } }) }, updateNoteAndImageRehabilitationOperate: function(planDetailId, relationCode) { var vm = this; var _image = []; for(var i in vm.upImgs) { _image.push(vm.upImgs[i].img); } var params = { planDetailId: planDetailId, node: vm.node||'', image: JSON.stringify(_image)||'' } if(relationCode){ params['relationCode'] = relationCode } var loadding = top.layer.load(0, { shade: false }); //0代表加载的风格,支持0-2 rehaAPI.updateNoteAndImageRehabilitationOperate(params).then(function(res) { top.layer.close(loadding); if(res.status == 200) { vm.initData() }else { showErrorMessage(res.msg) } }) }, onViewDetail: function(item, type){ var planids, recordId; if(this.islimit){ planids = item.id } else { planids = item.id recordId = item.recordId } this.viewDetail(planids,type, recordId) }, viewDetail:function(planids,type, recordId){ var vm=this; if(!planids){ layer.msg('无服务项',{icon:5}) return ; } if(type==1){ // 单个服务项 var s = '../../rehabilitation/html/guide_the_message.html?planid='+planids+'&pId='+vm.planid+'&patient='+vm.patientcode+'&patientName='+vm.patientname if(recordId){ s += '&recordId='+ recordId } layer.open({ type: 2, area: ['800px', '700px'], shade: 0.5, title: '服务项目内容', fixed: true, //不固定 maxmin: true, closeBtn:1, shift: 5, shadeClose: false, //点击遮罩关闭层 content: s, end:function(){ // 未点击确定按钮,点击关闭按钮     vm.initData(); // 刷新   } }); return ; } layer.open({ // 康复计划的所有服务项 type: 2, area: ['800px', '700px'], shade: 0.5, title: '服务项目内容', fixed: true, //不固定 maxmin: true, closeBtn:1, shift: 5, shadeClose: false, //点击遮罩关闭层 content: '../../rehabilitation/html/service_item_content.html?planids='+planids+'&planId='+vm.planid+'&patient='+vm.patientcode+'&patientName='+vm.patientname, end:function(){ vm.initData(); } }); }, onClose: function(){ this.$emit('onclose') }, qwapp:function(){ layer.msg('请前往app处理',{icon:5}); }, getContent: function(value,type) { var res=value; if(type==2 || type==9){ res = ""; }else if(type==3){ res = '【语音】'; }else if(type==19){ res = '【聊天记录】'; }else if(type==12){ res = '【视频】'; } return res; }, previewImg: function(url){ imgShow("#outerdiv", "#innerdiv", "#bigimg", url); }, toDoorDialog(){ // console.log("server"); top.layer.open({ type: 2, area: ['850px', '700px'], shade: 0.5, title: '代预约', fixed: true, //不固定 maxmin: true, closeBtn: 1, // shift: 5, shadeClose: false, //点击遮罩关闭层 content: `/app/rehabilitation/html/toDoorService.html?patient=${this.patientcode}&detailId=${this.plandetailid}` }) }, } }) function imgShow(outerdiv, innerdiv, bigimg, _this){ var src = _this.attr("src");//获取当前点击的pimg元素中的src属性 $(bigimg).attr("src", src);//设置#bigimg元素的src属性 /*获取当前点击图片的真实大小,并显示弹出层及大图*/ $("").attr("src", src).load(function(){ var windowW = $(window).width();//获取当前窗口宽度 var windowH = $(window).height();//获取当前窗口高度 var realWidth = this.width;//获取图片真实宽度 var realHeight = this.height;//获取图片真实高度 var imgWidth, imgHeight; var scale = 0.8;//缩放尺寸,当图片真实宽度和高度大于窗口宽度和高度时进行缩放 if(realHeight>windowH*scale) {//判断图片高度 imgHeight = windowH*scale;//如大于窗口高度,图片高度进行缩放 imgWidth = imgHeight/realHeight*realWidth;//等比例缩放宽度 if(imgWidth>windowW*scale) {//如宽度扔大于窗口宽度 imgWidth = windowW*scale;//再对宽度进行缩放 } } else if(realWidth>windowW*scale) {//如图片高度合适,判断图片宽度 imgWidth = windowW*scale;//如大于窗口宽度,图片宽度进行缩放 imgHeight = imgWidth/realWidth*realHeight;//等比例缩放高度 } else {//如果图片真实高度和宽度都符合要求,高宽不变 imgWidth = realWidth; imgHeight = realHeight; } $(bigimg).css("width",imgWidth);//以最终的宽度对图片缩放 var w = (windowW-imgWidth)/2;//计算图片与窗口左边距 var h = (windowH-imgHeight)/2;//计算图片与窗口上边距 $(innerdiv).css({"top":h, "left":w});//设置#innerdiv的top和left属性 $(outerdiv).fadeIn("fast");//淡入显示#outerdiv及.pimg }); $(outerdiv).click(function(){//再次点击淡出消失弹出层 $(this).fadeOut("fast"); }); }