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
})
},
}
})