|
|
@ -9,13 +9,32 @@ |
|
|
</div> |
|
|
</div> |
|
|
<div :style="'display: block;'"> |
|
|
<div :style="'display: block;'"> |
|
|
<div |
|
|
<div |
|
|
style="background-color: #fff; padding: 15px; border-radius: 8px;display: flex;flex-wrap: wrap; margin-bottom: 10px;height:35px;margin-top: 7px;"> |
|
|
|
|
|
|
|
|
style=" |
|
|
|
|
|
background-color: #fff; |
|
|
|
|
|
padding: 15px; |
|
|
|
|
|
border-radius: 8px; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
flex-wrap: wrap; |
|
|
|
|
|
margin-bottom: 10px; |
|
|
|
|
|
height: 35px; |
|
|
|
|
|
margin-top: 7px; |
|
|
|
|
|
" |
|
|
|
|
|
> |
|
|
<div class="query"> |
|
|
<div class="query"> |
|
|
<span>体检单位:</span> |
|
|
<span>体检单位:</span> |
|
|
<el-input placeholder="请选择体检单位" v-model="patientRegister.query.cusOrgOCX" style="width:240px;" size="small" |
|
|
|
|
|
disabled> |
|
|
|
|
|
<el-button slot="append" icon="el-icon-search" @click="report.dialogCusOrgOCX = true" |
|
|
|
|
|
style="font-size: 20px;"></el-button> |
|
|
|
|
|
|
|
|
<el-input |
|
|
|
|
|
placeholder="请选择体检单位" |
|
|
|
|
|
v-model="patientRegister.query.cusOrgOCX" |
|
|
|
|
|
style="width: 240px" |
|
|
|
|
|
size="small" |
|
|
|
|
|
disabled |
|
|
|
|
|
> |
|
|
|
|
|
<el-button |
|
|
|
|
|
slot="append" |
|
|
|
|
|
icon="el-icon-search" |
|
|
|
|
|
@click="report.dialogCusOrgOCX = true" |
|
|
|
|
|
style="font-size: 20px" |
|
|
|
|
|
></el-button> |
|
|
</el-input> |
|
|
</el-input> |
|
|
</div> |
|
|
</div> |
|
|
<!-- <div class="query"> |
|
|
<!-- <div class="query"> |
|
|
@ -46,22 +65,59 @@ |
|
|
<span>分类统计</span> |
|
|
<span>分类统计</span> |
|
|
</div> --> |
|
|
</div> --> |
|
|
<div class="query"> |
|
|
<div class="query"> |
|
|
<el-button @click="btnQuery" size="small" class="commonbutton">查询</el-button> |
|
|
|
|
|
|
|
|
<el-button @click="btnQuery" size="small" class="commonbutton" |
|
|
|
|
|
>查询</el-button |
|
|
|
|
|
> |
|
|
</div> |
|
|
</div> |
|
|
<div class="query"> |
|
|
<div class="query"> |
|
|
<el-button @click="handleExport" size="small" class="commonbutton">导出excel</el-button> |
|
|
|
|
|
|
|
|
<el-button @click="handleExport" size="small" class="commonbutton" |
|
|
|
|
|
>导出excel</el-button |
|
|
|
|
|
> |
|
|
</div> |
|
|
</div> |
|
|
<div class="query"> |
|
|
<div class="query"> |
|
|
<el-button @click="onPrint" size="small" class="commonbutton">打印</el-button> |
|
|
|
|
|
|
|
|
<el-button @click="onPrint" size="small" class="commonbutton" |
|
|
|
|
|
>打印</el-button |
|
|
|
|
|
> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div ref="imageDom" style="background-color: #fff; padding: 15px; border-radius: 8px;"> |
|
|
|
|
|
<el-table :data="dataList" border width="45%" :height="flag |
|
|
|
|
|
? window.pageHeight < 600 ? 415 : window.pageHeight - 185 - 20 : ''" row-key="id" highlight-current-row |
|
|
|
|
|
ref="dataList" :row-class-name="tableRowClassName" id="table" show-summary :summary-method="getSummaries"> |
|
|
|
|
|
|
|
|
<div |
|
|
|
|
|
ref="imageDom" |
|
|
|
|
|
style="background-color: #fff; padding: 15px; border-radius: 8px" |
|
|
|
|
|
> |
|
|
|
|
|
<el-table |
|
|
|
|
|
:data="dataList" |
|
|
|
|
|
border |
|
|
|
|
|
width="45%" |
|
|
|
|
|
:height=" |
|
|
|
|
|
flag |
|
|
|
|
|
? window.pageHeight < 600 |
|
|
|
|
|
? 415 |
|
|
|
|
|
: window.pageHeight - 185 - 20 |
|
|
|
|
|
: '' |
|
|
|
|
|
" |
|
|
|
|
|
row-key="id" |
|
|
|
|
|
highlight-current-row |
|
|
|
|
|
ref="dataList" |
|
|
|
|
|
:row-class-name="tableRowClassName" |
|
|
|
|
|
id="table" |
|
|
|
|
|
show-summary |
|
|
|
|
|
:summary-method="getSummaries" |
|
|
|
|
|
> |
|
|
|
|
|
<el-table-column :label="summary.customerOrgName"> |
|
|
|
|
|
<el-table-column |
|
|
|
|
|
:label="`开始时间: ${summary.startDate || ''} 结束时间:${ |
|
|
|
|
|
summary.endDate || '' |
|
|
|
|
|
} 体检人员共计: ${ |
|
|
|
|
|
summary.maleCount + summary.femaleCount |
|
|
|
|
|
} 男性: ${summary.maleCount} 女性: ${summary.femaleCount}`" |
|
|
|
|
|
align="left" |
|
|
|
|
|
> |
|
|
<el-table-column |
|
|
<el-table-column |
|
|
:label="`开始时间: ${summary.startDate || ''} 结束时间:${summary.endDate || ''} 男性: ${summary.maleCount} 女性: ${summary.femaleCount}`" align="left"> |
|
|
|
|
|
<el-table-column type="index" label="序号" width="60" align="center" /> |
|
|
|
|
|
|
|
|
type="index" |
|
|
|
|
|
label="序号" |
|
|
|
|
|
width="60" |
|
|
|
|
|
align="center" |
|
|
|
|
|
/> |
|
|
<el-table-column prop="customerOrgParentName" label="单位" /> |
|
|
<el-table-column prop="customerOrgParentName" label="单位" /> |
|
|
<el-table-column prop="customerOrgName" label="部门" /> |
|
|
<el-table-column prop="customerOrgName" label="部门" /> |
|
|
<el-table-column prop="patientNo" label="档案号" width="120" /> |
|
|
<el-table-column prop="patientNo" label="档案号" width="120" /> |
|
|
@ -69,16 +125,26 @@ |
|
|
<el-table-column prop="sexName" label="性别" width="50" /> |
|
|
<el-table-column prop="sexName" label="性别" width="50" /> |
|
|
<el-table-column prop="age" label="年龄" width="80" /> |
|
|
<el-table-column prop="age" label="年龄" width="80" /> |
|
|
<el-table-column prop="medicalTimes" label="次数" width="50" /> |
|
|
<el-table-column prop="medicalTimes" label="次数" width="50" /> |
|
|
<el-table-column prop="mobileTelephone" label="手机号码" width="120" /> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
|
|
|
prop="mobileTelephone" |
|
|
|
|
|
label="手机号码" |
|
|
|
|
|
width="120" |
|
|
|
|
|
/> |
|
|
<el-table-column prop="diagnosisNames" label="检查结果" /> |
|
|
<el-table-column prop="diagnosisNames" label="检查结果" /> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
</el-table-column> |
|
|
</el-table> |
|
|
</el-table> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<!--通用选单位、体检次数、分组的控件--> |
|
|
<!--通用选单位、体检次数、分组的控件--> |
|
|
<el-dialog title="体检单位选择" :visible.sync="report.dialogCusOrgOCX" :close-on-click-modal="false" width="880px" |
|
|
|
|
|
height="600px"> |
|
|
|
|
|
|
|
|
<el-dialog |
|
|
|
|
|
title="体检单位选择" |
|
|
|
|
|
:visible.sync="report.dialogCusOrgOCX" |
|
|
|
|
|
:close-on-click-modal="false" |
|
|
|
|
|
width="880px" |
|
|
|
|
|
height="600px" |
|
|
|
|
|
> |
|
|
<CusOrgOCX :initDateType="'creationTime'" :useCustomerOrg="true" /> |
|
|
<CusOrgOCX :initDateType="'creationTime'" :useCustomerOrg="true" /> |
|
|
</el-dialog> |
|
|
</el-dialog> |
|
|
</div> |
|
|
</div> |
|
|
@ -87,7 +153,13 @@ |
|
|
import moment from "moment"; |
|
|
import moment from "moment"; |
|
|
import { mapState, mapActions } from "vuex"; |
|
|
import { mapState, mapActions } from "vuex"; |
|
|
import { getapi, postapi, putapi, deletapi } from "@/api/api"; |
|
|
import { getapi, postapi, putapi, deletapi } from "@/api/api"; |
|
|
import { dddw, objCopy, arrayReduce, arrayExistObj, tcdate } from "@/utlis/proFunc"; |
|
|
|
|
|
|
|
|
import { |
|
|
|
|
|
dddw, |
|
|
|
|
|
objCopy, |
|
|
|
|
|
arrayReduce, |
|
|
|
|
|
arrayExistObj, |
|
|
|
|
|
tcdate, |
|
|
|
|
|
} from "@/utlis/proFunc"; |
|
|
import CusOrgOCX from "../../components/report/CusOrgOCX.vue"; |
|
|
import CusOrgOCX from "../../components/report/CusOrgOCX.vue"; |
|
|
import { exportToExcel } from "../../utlis/Export2Excel"; |
|
|
import { exportToExcel } from "../../utlis/Export2Excel"; |
|
|
import html2canvas from "html2canvas"; |
|
|
import html2canvas from "html2canvas"; |
|
|
@ -95,7 +167,7 @@ import printJs from "print-js"; |
|
|
|
|
|
|
|
|
export default { |
|
|
export default { |
|
|
components: { |
|
|
components: { |
|
|
CusOrgOCX |
|
|
|
|
|
|
|
|
CusOrgOCX, |
|
|
}, |
|
|
}, |
|
|
data() { |
|
|
data() { |
|
|
return { |
|
|
return { |
|
|
@ -107,8 +179,9 @@ export default { |
|
|
startDate: "", |
|
|
startDate: "", |
|
|
endDate: "", |
|
|
endDate: "", |
|
|
femaleCount: "", |
|
|
femaleCount: "", |
|
|
maleCount:"" |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
maleCount: "", |
|
|
|
|
|
customerOrgName:"" |
|
|
|
|
|
}, |
|
|
}; |
|
|
}; |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
@ -126,7 +199,8 @@ export default { |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
methods: { |
|
|
methods: { |
|
|
moment, dddw, |
|
|
|
|
|
|
|
|
moment, |
|
|
|
|
|
dddw, |
|
|
//数据初始化 |
|
|
//数据初始化 |
|
|
dictInit() { |
|
|
dictInit() { |
|
|
//体检中心 |
|
|
//体检中心 |
|
|
@ -172,10 +246,10 @@ export default { |
|
|
|
|
|
|
|
|
tableRowClassName({ row, rowIndex }) { |
|
|
tableRowClassName({ row, rowIndex }) { |
|
|
switch (row.isCharge) { |
|
|
switch (row.isCharge) { |
|
|
case 'N': |
|
|
|
|
|
return 'danger'; |
|
|
|
|
|
|
|
|
case "N": |
|
|
|
|
|
return "danger"; |
|
|
default: |
|
|
default: |
|
|
return ''; |
|
|
|
|
|
|
|
|
return ""; |
|
|
} |
|
|
} |
|
|
}, |
|
|
}, |
|
|
getSummaries(param) { |
|
|
getSummaries(param) { |
|
|
@ -195,44 +269,46 @@ export default { |
|
|
}, |
|
|
}, |
|
|
//查询 |
|
|
//查询 |
|
|
btnQuery() { |
|
|
btnQuery() { |
|
|
let body = {}, customerOrgs = [], diagnosisIds = []; |
|
|
|
|
|
|
|
|
let body = {}, |
|
|
|
|
|
customerOrgs = [], |
|
|
|
|
|
diagnosisIds = []; |
|
|
if (this.report.dataCusOrgOCX.length > 0) { |
|
|
if (this.report.dataCusOrgOCX.length > 0) { |
|
|
this.report.dataCusOrgOCX.forEach(e => { |
|
|
|
|
|
let dateType = '1' |
|
|
|
|
|
|
|
|
this.report.dataCusOrgOCX.forEach((e) => { |
|
|
|
|
|
let dateType = "1"; |
|
|
switch (e.dateType) { |
|
|
switch (e.dateType) { |
|
|
case 'medicalStartDate': |
|
|
|
|
|
dateType = '2' |
|
|
|
|
|
|
|
|
case "medicalStartDate": |
|
|
|
|
|
dateType = "2"; |
|
|
break; |
|
|
break; |
|
|
case 'checkDate': |
|
|
|
|
|
dateType = '4' |
|
|
|
|
|
|
|
|
case "checkDate": |
|
|
|
|
|
dateType = "4"; |
|
|
break; |
|
|
break; |
|
|
case 'summaryDate': |
|
|
|
|
|
dateType = '3' |
|
|
|
|
|
|
|
|
case "summaryDate": |
|
|
|
|
|
dateType = "3"; |
|
|
break; |
|
|
break; |
|
|
case 'sumCheckDate': |
|
|
|
|
|
dateType = '5' |
|
|
|
|
|
|
|
|
case "sumCheckDate": |
|
|
|
|
|
dateType = "5"; |
|
|
break; |
|
|
break; |
|
|
default: |
|
|
default: |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
let rd = { |
|
|
let rd = { |
|
|
startDate: moment(e.startDate).format('yyyy-MM-DD'), |
|
|
|
|
|
endDate: moment(e.endDate).format('yyyy-MM-DD'), |
|
|
|
|
|
dateType |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
startDate: moment(e.startDate).format("yyyy-MM-DD"), |
|
|
|
|
|
endDate: moment(e.endDate).format("yyyy-MM-DD"), |
|
|
|
|
|
dateType, |
|
|
|
|
|
}; |
|
|
|
|
|
console.log(e); |
|
|
if (e.customerOrgId) { |
|
|
if (e.customerOrgId) { |
|
|
rd.customerOrgId = e.customerOrgId |
|
|
|
|
|
|
|
|
rd.customerOrgId = e.customerOrgId; |
|
|
if (e.customerOrgId == this.dict.personOrgId) { |
|
|
if (e.customerOrgId == this.dict.personOrgId) { |
|
|
rd.customerOrgRegisterId = null |
|
|
|
|
|
rd.customerOrgGroupId = [] |
|
|
|
|
|
|
|
|
rd.customerOrgRegisterId = null; |
|
|
|
|
|
rd.customerOrgGroupId = []; |
|
|
} else { |
|
|
} else { |
|
|
rd.customerOrgRegisterId = e.customerOrgRegister.id |
|
|
|
|
|
rd.customerOrgGroupId = e.customerOrgGroupIds |
|
|
|
|
|
|
|
|
rd.customerOrgRegisterId = e.customerOrgRegister.id; |
|
|
|
|
|
rd.customerOrgGroupId = e.customerOrgGroupIds; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
customerOrgs.push(rd) |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
customerOrgs.push(rd); |
|
|
|
|
|
}); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// if (this.report.dataAsbitemOCX.length > 0) { |
|
|
// if (this.report.dataAsbitemOCX.length > 0) { |
|
|
@ -241,28 +317,35 @@ export default { |
|
|
// }) |
|
|
// }) |
|
|
// } |
|
|
// } |
|
|
|
|
|
|
|
|
body.customerOrgs = customerOrgs |
|
|
|
|
|
|
|
|
body.customerOrgs = customerOrgs; |
|
|
// body.diagnosisIds = diagnosisIds |
|
|
// body.diagnosisIds = diagnosisIds |
|
|
// if(this.completeFlag) body.completeFlag = this.completeFlag |
|
|
// if(this.completeFlag) body.completeFlag = this.completeFlag |
|
|
// body.isAudit=this.classification |
|
|
// body.isAudit=this.classification |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// if (this.patientRegister.query.isCharge) body.isCharge = this.patientRegister.query.isCharge |
|
|
// if (this.patientRegister.query.isCharge) body.isCharge = this.patientRegister.query.isCharge |
|
|
|
|
|
|
|
|
//console.log('/api/app/peisreport/getregisterasbitemchargestatus',body) |
|
|
//console.log('/api/app/peisreport/getregisterasbitemchargestatus',body) |
|
|
|
|
|
|
|
|
postapi('/api/customerreport/getpatientregisterpositivereport', body).then(res => { |
|
|
|
|
|
|
|
|
postapi( |
|
|
|
|
|
"/api/customerreport/getpatientregisterpositivereport", |
|
|
|
|
|
body |
|
|
|
|
|
).then((res) => { |
|
|
if (res.code != -1) { |
|
|
if (res.code != -1) { |
|
|
this.dataList = res.data.details; |
|
|
this.dataList = res.data.details; |
|
|
this.summary.startDate = res.data.startDate; |
|
|
this.summary.startDate = res.data.startDate; |
|
|
this.summary.endDate = res.data.endDate; |
|
|
this.summary.endDate = res.data.endDate; |
|
|
this.summary.femaleCount = res.data.femaleCount; |
|
|
this.summary.femaleCount = res.data.femaleCount; |
|
|
this.summary.maleCount = res.data.maleCount; |
|
|
this.summary.maleCount = res.data.maleCount; |
|
|
|
|
|
if(this.report.dataCusOrgOCX.length>1){ |
|
|
|
|
|
this.summary.customerOrgName="" |
|
|
|
|
|
}else{ |
|
|
|
|
|
this.summary.customerOrgName=this.report.dataCusOrgOCX[0].customerOrgName |
|
|
|
|
|
} |
|
|
this.$nextTick(() => { |
|
|
this.$nextTick(() => { |
|
|
this.$refs.dataList.doLayout(); |
|
|
this.$refs.dataList.doLayout(); |
|
|
}); |
|
|
}); |
|
|
} |
|
|
} |
|
|
}) |
|
|
|
|
|
|
|
|
}); |
|
|
}, |
|
|
}, |
|
|
onPrint() { |
|
|
onPrint() { |
|
|
this.flag = false; |
|
|
this.flag = false; |
|
|
@ -292,7 +375,7 @@ export default { |
|
|
}, |
|
|
}, |
|
|
handleExport() { |
|
|
handleExport() { |
|
|
exportToExcel("#table", "人员阳性结果清单", false); |
|
|
exportToExcel("#table", "人员阳性结果清单", false); |
|
|
} |
|
|
|
|
|
|
|
|
}, |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
//监听事件 |
|
|
//监听事件 |
|
|
@ -304,7 +387,6 @@ export default { |
|
|
// this.query(); |
|
|
// this.query(); |
|
|
// } |
|
|
// } |
|
|
// }, |
|
|
// }, |
|
|
|
|
|
|
|
|
}, |
|
|
}, |
|
|
}; |
|
|
}; |
|
|
</script> |
|
|
</script> |
|
|
@ -349,7 +431,7 @@ export default { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
::v-deep .el-icon-search:before { |
|
|
::v-deep .el-icon-search:before { |
|
|
color: #00F; |
|
|
|
|
|
|
|
|
color: #00f; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.query:last-child { |
|
|
.query:last-child { |
|
|
|