var template = '' $.ajax('../html/mzfv1rzReport.html',{ data: {}, dataType: 'html', cache: false, timeout: 60000, async: false, error: function(res) { }, success: function(res) { template = res } }) var date = new Date(); var today = date.toISOString().split('T')[0]; var oneWeekBeforeDate = new Date(date.getTime() - (7 * 24 * 60 * 60 * 1000)); Vue.component('mzf-v1rzreport', { props: [], template: template, data: function() { return { mzfWorksheetData:[], list:[], // 已选列表 startTime: oneWeekBeforeDate, //new Date('2023','05','26'), endTime: new Date(), regionList:[], // 地区 regionData:[], threeHospitalList:[], // 三级医院 tertiaryHospitalsData:[], communityHospitalsList:[], //社区医院 communityHospitalsData:[], groupingList:[], // 分组 groupingData:[], administrationStatusList:[], // 管理状态 administrationStatusData:[ {label:'全部',id:'8',type:'5', disabled: true, checked: false}, {label:'已管理',id:'7',type:'5', disabled: true, checked: false}, {label:'在管',id:'1',type:'5', disabled: true, checked: false}, {label:'未管理',id:'0',type:'5', disabled: true, checked: false}, {label:'不纳入管理',id:'4',type:'5', disabled: true, checked: false}, {label:'入组',id:'5',type:'5', disabled: false , checked: false}, {label:'出组',id:'3',type:'5', disabled: true, checked: false}, {label:'失访',id:'2',type:'5', disabled: true, checked: false}, {label:'死亡',id:'6',type:'5', disabled: true, checked: false}, ], show:false, showTwo:false, showThree:false, currentPage:1, currentSize:10, datatotal:10, //总数 loadingTwo:false, setDisabled:{ disabledDate:function(time) { return time.getTime() < new Date('2023','05','26') || time.getTime() > Date.now(); } }, s:'', e:'', findType: 1, groupState: '', copdState: false } }, created: function(){ // 初始化时间条件 this.s = this.startTime.format('yyyy-MM-dd') this.e = this.endTime.format('yyyy-MM-dd') this.list.unshift({type:'0',id:'time',label:this.s +"~"+ this.e}) // this.cascadingFindHosptail() // 地区 // this.threeHospital() // 三级医院 // this.communityHospital() // 社区医院 // this.group() // 分组 this.findHospitalEntryCount() // 表单 }, watch:{ 'startTime':{ handler:function(o) { if(!o) { this.list.splice(0,1) } }, deep: true, immediate: true }, 'endTime':{ handler:function(o) { if(!o) { this.list.splice(0,1) } }, deep: true, immediate: true }, }, methods: { // 级联查询医院 // cascadingFindHosptail: function(type, areaCode, hospitalCode) { // var vm = this // var data = { // findType: type ? type : 1, // findType 1查地区 2查三级医院 3社区医院 4 分组【对照组、康复组】 // areaCode: areaCode || '', // hosptialCode: hospitalCode || '', // } // var jsonStr = JSON.stringify(data) // statisticAPI.cascadingFindHosptail({ // jsonStr // }).then(res => { // if(res.status == 200) { // console.log(res); // if(vm.findType == 1) { // res.data.forEach(v => { // v.checked = false // }) // this.regionData = [{areaCode:'', areaName:'全市', checked: true}].concat(res.data) // }else if(vm.findType == 2) { // this.tertiaryHospitalsData = [{areaCode:'', areaName:'', hospitalCode: '', hospitalName: '全部'}].concat(res.data) // }else if(vm.findType == 3) { // this.communityHospitalsData = [{areaCode:'', areaName:'', hospitalCode: '', hospitalName: '全部'}].concat(res.data) // } // else if (vm.findType == 4) { // var data = _.map(res.data, function(v) { // var temp = {} // for(var k in v) { // temp.code = k // temp.label = v[k] // } // return temp // }) // console.log(data, 'fenzu'); // this.groupingData = [{label:'全部',id:'1',type:'4'}].concat(data) // } // } // }).catch(function(err){ // console.log(err); // }) // }, // // 获取全部三级医院 // threeHospital: function() { // var vm = this // var data = { // findType: 2, // findType 1查地区 2查三级医院 3社区医院 4 分组【对照组、康复组】 // areaCode: '', // hosptialCode: '', // } // var jsonStr = JSON.stringify(data) // statisticAPI.cascadingFindHosptail({ // jsonStr // }).then(res => { // if(res.status == 200) { // // this.tertiaryHospitalsData = [{areaCode:'', areaName:'', hospitalCode: '', hospitalName: '全部'}].concat(res.data) // this.tertiaryHospitalsData = res.data // } // }) // }, // // 获取全部社区医院 // communityHospital: function() { // var vm = this // var data = { // findType: 3, // findType 1查地区 2查三级医院 3社区医院 4 分组【对照组、康复组】 // areaCode: '', // hosptialCode: '', // } // var jsonStr = JSON.stringify(data) // statisticAPI.cascadingFindHosptail({ // jsonStr // }).then(res => { // if(res.status == 200) { // // this.communityHospitalsData = [{areaCode:'', areaName:'', hospitalCode: '', hospitalName: '全部'}].concat(res.data) // this.communityHospitalsData = res.data // } // }) // }, // // 获取分组 // group: function() { // var vm = this // var data = { // findType: 4, // findType 1查地区 2查三级医院 3社区医院 4 分组【对照组、康复组】 // areaCode: '', // hosptialCode: '', // } // var jsonStr = JSON.stringify(data) // statisticAPI.cascadingFindHosptail({ // jsonStr // }).then(res => { // if(res.status == 200) { // var data = _.map(res.data, function(v) { // var temp = {} // for(var k in v) { // temp.code = k // temp.label = v[k] // } // return temp // }) // console.log(data, 'fenzu'); // // this.groupingData = [{label:'全部',id:'1',type:'4'}].concat(data) // this.groupingData = data // } // }) // }, // 查询数据接口 1默认时间,和 三级医院 findHospitalEntryCount: function(code, hospitalCode, communityHospitalCode,groupingCode) { var vm = this vm.loadingTwo = true var data = { startTime:this.startTime.format('yyyy-MM-dd'), endTime:this.endTime.format('yyyy-MM-dd'), areaCode: code || '', // 地区code hosptialCode: hospitalCode || '', // 医院code communityHospitalCode: communityHospitalCode || '', // 社区医院code groupState: groupingCode || '', // 3 康复组 4 对照组 copdState: 5 } statisticAPI.findHospitalEntryCount({ jsonStr:JSON.stringify(data) }).then(function(res){ if(res.status == 200) { console.log(res); vm.loadingTwo = false vm.mzfWorksheetData = res.data vm.datatotal = res.total } }).catch(function(err){ console.log(err); }) }, // 开始时间 startTimeChange:function(o) { if(!this.list[0] || this.list[0].type!=0) { this.list.unshift({type:'0',id:'time',label:o.format('yyyy-MM-dd') +"~"+ this.endTime.format('yyyy-MM-dd')}) }else{ this.list[0].label = o.format('yyyy-MM-dd') +"~"+ this.endTime.format('yyyy-MM-dd') } }, // 结束时间 endTimeChange:function(o) { if(!this.list[0] || this.list[0].type!=0) { this.list.unshift({type:'0',id:'time',label:this.startTime.format('yyyy-MM-dd') +"~"+ o.format('yyyy-MM-dd')}) }else{ this.list[0].label = this.startTime.format('yyyy-MM-dd') +"~"+ o.format('yyyy-MM-dd') } }, // 删除所选的条件 deleteClick:function(item) { // 如果id==time 删除时间选择 if(item.id == "time") { this.startTime = '' this.endTime = '' this.list.splice(0,1) } // 找对应当前点击的index 进行移除 var index = this.list.findIndex(function(v){ return item.id == v.id }) this.list.splice(index,1) }, // 下一页 上一页 handleCurrentChange:function(val) { var vm = this vm.currentPage = val }, // // 选择地区 // change:function(val) { // console.log(val, '选择的数据'); // var code = [] // 地区code // val.forEach(v => { // v.type = 1 // v.label = v.areaName // code.push(v.areaCode) // }) // this.findType = 2 // this.cascadingFindHosptail(this.findType, code.join(',') , '',) // this.list = Array.from(new Set(this.list.concat(val))) // }, // // 选择三级医院 // changeHospital(val) { // var hospitalCode = [] // 三级医院code // val.forEach(v => { // v.type = 2 // v.label = v.hospitalName // hospitalCode.push(v.hospitalCode) // }) // this.findType = 3 // this.cascadingFindHosptail(this.findType, '', hospitalCode.join(',')) // this.list = Array.from(new Set(this.list.concat(val))) // }, // // 选择社区 // changeCommunityHospitals(val) { // console.log(val) // var communityHospitalCode = [] // val.forEach(v => { // v.type = 3 // v.label = v.hospitalName // communityHospitalCode.push(v.hospitalCode) // }) // this.findType = 4 // this.cascadingFindHosptail(this.findType, '', '') // this.list = Array.from(new Set(this.list.concat(val))) // }, // // 分组 // changeGroup(val) { // val.forEach(v => { // v.type = 4 // }) // this.list = Array.from(new Set(this.list.concat(val))) // }, // // 管理状态 // changeStatus(val) { // console.log(val); // this.list = Array.from(new Set(this.list.concat(val))) // }, // 确定 confirm:function() { // // 地区 // var regionCode = [] // this.regionList.forEach(v => { // regionCode.push(v.areaCode) // }) // // 三级医院 // var threeHospitaCode = [] // this.threeHospitalList.forEach(v => { // threeHospitaCode.push(v.hospitalCode) // }) // // 社区医院 // var communityHospitalCode = [] // this.communityHospitalsList.forEach(v => { // communityHospitalCode.push(v.hospitalCode) // }) // var groupingCode = [] // this.groupingList.forEach(v => { // groupingCode.push(v.code) // }) // this.findHospitalEntryCount(regionCode.join(','), threeHospitaCode.join(','), communityHospitalCode.join(','), groupingCode.join(',')) this.findHospitalEntryCount() }, // 取消 cancel:function() { this.startTime = oneWeekBeforeDate this.endTime = new Date() if(!this.list[0] || this.list[0].type!=0) { this.list.unshift({type:'0',id:'time',label:this.startTime.format('yyyy-MM-dd') +"~"+ this.endTime.format('yyyy-MM-dd')}) }else{ this.list[0].label = this.startTime.format('yyyy-MM-dd') +"~"+ this.endTime.format('yyyy-MM-dd') } // this.list = [] // this.regionList = [] // this.threeHospitalList = [] // this.communityHospitalsList = [] // this.groupingList = [] // this.administrationStatusList = [] // this.list.unshift({type:'0',id:'time',label:this.s +"~"+ this.e},{type:'2', id:'1', label:'全部'}) // this.findHospitalEntryCount() }, // 导出 exportHandle:function() { // // 地区 // var regionCode = [] // // 三级医院 // var threeHospitaCode = [] // // 社区医院 // var communityHospitalCode = [] // // 分组 // var groupingCode = [] // this.list.forEach(v => { // regionCode.push(v.areaCode) // threeHospitaCode.push(v.hospitalCode) // communityHospitalCode.push(v.hospitalCode) // groupingCode.push(v.code) // }) var vm = this vm.loadingTwo = true var data = { startTime: vm.startTime.format('yyyy-MM-dd'), endTime: vm.endTime.format('yyyy-MM-dd'), areaCode: '', // 地区code hosptialCode: '', // 医院code communityHospitalCode: '', // 社区医院code groupState: '', // 3 康复组 4 对照组 } var jsonStr = JSON.stringify(data) statisticAPI.exportHospitalEntryCount({ jsonStr: encodeURIComponent(jsonStr) },'v1\入组情况报表.xls').then(function(res){ vm.loadingTwo = false }) }, } })