Browse Source

ASBCHARGE

master
pengjun 2 years ago
parent
commit
a0f4b6ca3b
  1. 164
      src/components/patientRegister/AsbChargeRequest.vue
  2. 93
      src/components/patientRegister/PatientRegisterEdit.vue
  3. 17
      src/components/patientRegister/PatientRegisterItem.vue
  4. 1
      src/components/report/BtnReport.vue
  5. 1
      src/store/index.js
  6. 528
      src/views/doctorCheck/unitphysicalexamination.vue

164
src/components/patientRegister/AsbChargeRequest.vue

@ -0,0 +1,164 @@
<template>
<div>
<div>
<el-tabs v-model="tabChoosed" style="margin-top: 0px;">
<el-tab-pane label="待收费项目" name="1">
<el-table :data="dataTransOpts.tableM.register_check_asbitem" border style="width: 100%" row-key="id"
height="500" highlight-current-row size="small" @selection-change="handleSelectionChange"
:row-style="{ height: '25px' }">
<el-table-column type="selection" align="center" width="40" />
<el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column>
<el-table-column label="标准价格" prop="standardPrice" min-width="70" align="center" />
<el-table-column label="数量" prop="amount" min-width="50" align="center"></el-table-column>
<el-table-column label="实收价格" prop="chargePrice" min-width="70" align="center"></el-table-column>
<el-table-column prop="total" label="金额" min-width="70" align="center" />
<el-table-column prop="standardPrice" label="标准金额" min-width="70" align="center" />
</el-table>
</el-tab-pane>
<el-tab-pane label="已收费项目" name="2">
<el-table :data="dataTransOpts.tableM.register_check_asbitem" border style="width: 100%" row-key="id"
height="180" highlight-current-row size="small" @selection-change="handleSelectionChange"
:row-style="{ height: '25px' }">
<el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="申请单号" min-width="150" prop="asbitemName"></el-table-column>
<el-table-column prop="total" label="金额" min-width="60" align="center" />
<el-table-column prop="ch" label="收费人员" min-width="80" align="center" />
<el-table-column prop="ch" label="收费时间" min-width="150" align="center" />
<el-table-column label="操作" width="150" align="center">
<template slot-scope="scope">
<div style="display: flex;justify-content: space-between;">
<div>
<el-button class="commonbutton" @click="dialogWin.AsbChargeRequest = false"
style="width:80px;">撤消申请</el-button>
</div>
<div>
<el-button class="commonbutton" @click="dialogWin.AsbChargeRequest = false"
style="width:50px;">退费</el-button>
</div>
</div>
</template>
</el-table-column>
</el-table>
<div style="padding: 10px 0 5px 0;">申请单包含项目</div>
<el-table :data="dataTransOpts.tableM.register_check_asbitem" border style="width: 100%" row-key="id"
height="286" highlight-current-row size="small" @selection-change="handleSelectionChange"
:row-style="{ height: '25px' }">
<el-table-column type="index" label="序号" align="center" width="40" />
<el-table-column label="组合项目" min-width="150" prop="asbitemName"></el-table-column>
<el-table-column label="标准价格" prop="standardPrice" min-width="70" align="center" />
<el-table-column label="数量" prop="amount" min-width="50" align="center"></el-table-column>
<el-table-column label="实收价格" prop="chargePrice" min-width="70" align="center"></el-table-column>
<el-table-column prop="total" label="金额" min-width="70" align="center" />
<el-table-column prop="standardPrice" label="标准金额" min-width="70" align="center" />
</el-table>
</el-tab-pane>
</el-tabs>
</div>
<!-- 按钮区域 -->
<div style="display: flex; margin-top: 10px; justify-content: space-between;">
<div></div>
<div style="display: flex;">
<div style="margin-left: 10px" v-show="tabChoosed == '1'">
<el-button class="commonbutton" @click="dialogWin.AsbChargeRequest = false">收费申请</el-button>
</div>
<div style="margin-left: 10px">
<el-button class="commonbutton" @click="dialogWin.AsbChargeRequest = false">关闭</el-button>
</div>
</div>
</div>
</div>
</template>
<script>
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { dddw, arrayExistObj, deepCopy } from "../../utlis/proFunc";
// import
export default {
props: ["patientRegister"],
data() {
return {
tabChoosed: '1',
tableData: [], //
spanRow: [], //{ startRow: 0, endRow: 0 }
tableDataAll: [], //
selectedData: [], //
finalSelected: [], //selectedData
};
},
created() { },
mounted() {
this.initData(this.patientRegister.id);
},
computed: {
...mapState(["dict", "dataTransOpts", "dialogWin"]),
},
methods: {
initData() {
//
},
handleSelectionChange(v) {
this.selectedData = v;
},
btnSubmit(mergeType) {
let registerCheckIds = [];
let count = (mergeType == '+') ? 2 : 1
if (this.selectedData.length < count) {
this.$message.warning({ showClose: true, message: `请至少勾选 ${count} 个以上要${mergeType == '+' ? '合并' : '取消合并'}的检查项目!` });
return;
}
this.selectedData.forEach(e => {
registerCheckIds.push(e.registerCheckId)
});
if (mergeType == '+') {
postapi("/api/app/registerasbitem/MergeRegisterAsbitem", { registerCheckIds }).then(
(res) => {
if (res.code != -1) {
console.log("操作成功!");
this.getAsbItemList(this.id);
}
}
);
} else {
postapi("/api/app/registerasbitem/cancelmergeregisterasbitem", { registerCheckIds }).then(
(res) => {
if (res.code != -1) {
console.log("操作成功!");
this.getAsbItemList(this.id);
}
}
);
}
},
},
//
watch: {
//
"dataTransOpts.refresh.charge.S": {
// immediate: true, //
// // deep: true, //
handler(newVal, oldVal) {
console.log(`watch: 收费 newVal: ${newVal}, oldVal: ${oldVal}, 人员条码号: `, this.patientRegister.id)
if (newVal != oldVal) this.initData(this.patientRegister.id)
}
},
},
};
</script>
<style scoped>
@import "../../assets/css/global_input.css";
@import "../../assets/css/global_table.css";
@import "../../assets/css/global.css";
</style>

93
src/components/patientRegister/PatientRegisterEdit.vue

@ -371,7 +371,7 @@
<el-button type="primary" class="commonbutton" @click="lisRequest">检验单申请</el-button> <el-button type="primary" class="commonbutton" @click="lisRequest">检验单申请</el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs, '条码打印')" class="btn"> <div v-show="checkPagePriv(pagePriv.privs, '条码打印')" class="btn">
<el-button type="primary" class="commonbutton" @click="lisPrint('0002', false)">条码打印</el-button>
<el-button type="primary" class="commonbutton" @click="lisPrint('0003', false)">条码打印</el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs, '条码补打')" class="btn"> <div v-show="checkPagePriv(pagePriv.privs, '条码补打')" class="btn">
<el-button type="danger" class="commonbutton" @click="reLisRequest">条码补打</el-button> <el-button type="danger" class="commonbutton" @click="reLisRequest">条码补打</el-button>
@ -389,16 +389,19 @@
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs, '全个人支付')" style="margin-top: 30px;"> <div v-show="checkPagePriv(pagePriv.privs, '全个人支付')" style="margin-top: 30px;">
<el-button type="primary" class="commonbutton" @click="prAsbOpraOpts.payTypeFlag = '0'">全个人支付</el-button>
<el-button type="primary" class="commonbutton" @click="btnPayTypeFlag('0')">全个人支付</el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs, '全单位支付')" class="btn"> <div v-show="checkPagePriv(pagePriv.privs, '全单位支付')" class="btn">
<el-button type="primary" class="commonbutton" @click="prAsbOpraOpts.payTypeFlag = '1'">全单位支付</el-button>
<el-button type="primary" class="commonbutton" @click="btnPayTypeFlag('1')">全单位支付</el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs, '全免费')" class="btn"> <div v-show="checkPagePriv(pagePriv.privs, '全免费')" class="btn">
<el-button type="primary" class="commonbutton" @click="prAsbOpraOpts.payTypeFlag = '2'">全免费</el-button>
<el-button type="primary" class="commonbutton" @click="btnPayTypeFlag('2')">全免费</el-button>
</div> </div>
<div v-show="checkPagePriv(pagePriv.privs, '收费')" class="btn"> <div v-show="checkPagePriv(pagePriv.privs, '收费')" class="btn">
<el-button type="success" class="commonbutton" @click="toCharge(form.patientRegisterNo)">收费</el-button>
<el-button type="success" class="commonbutton" @click="toCharge(form)" :disabled="!form.id">收费</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs, '收费申请')" class="btn">
<el-button type="success" class="commonbutton" @click="chargeRequest(form.id)" :disabled="!form.id">收费申请</el-button>
</div> </div>
<!-- <!--
<div class="btn"> <div class="btn">
@ -490,6 +493,12 @@
<Charge :patientRegisterNo="chargePatientRegisterNo" /> <Charge :patientRegisterNo="chargePatientRegisterNo" />
</div> </div>
</el-dialog> </el-dialog>
<!-- 收费申请 -->
<el-dialog title="收费申请" :visible.sync="dialogWin.AsbChargeRequest" width="800px"
:show-close="false" :close-on-click-modal="false" :append-to-body="true" @close="closeDialogCharge">
<AsbChargeRequest :patientRegister="form" />
</el-dialog>
</div> </div>
</div> </div>
</template> </template>
@ -510,6 +519,7 @@ import Camera from "./Camera.vue";
import PatientRegisterItem from "./PatientRegisterItem.vue"; import PatientRegisterItem from "./PatientRegisterItem.vue";
import LisRequest from "./LisRequest.vue"; import LisRequest from "./LisRequest.vue";
import MergeAsbitem from "./MergeAsbitem.vue"; import MergeAsbitem from "./MergeAsbitem.vue";
import AsbChargeRequest from "./AsbChargeRequest.vue";
import Charge from "../../views/charge/charge.vue"; import Charge from "../../views/charge/charge.vue";
import PatientRegisterEditQuery from "../../components/patientRegister/PatientRegisterEditQuery.vue"; import PatientRegisterEditQuery from "../../components/patientRegister/PatientRegisterEditQuery.vue";
@ -521,6 +531,7 @@ export default {
MergeAsbitem, MergeAsbitem,
PatientRegisterItem, PatientRegisterItem,
Charge, Charge,
AsbChargeRequest,
PatientRegisterEditQuery PatientRegisterEditQuery
}, },
// isDoctor: '0:/1:()' // isDoctor: '0:/1:()'
@ -1638,7 +1649,7 @@ export default {
// //
lisPrint(ReportCode, isPreview) { lisPrint(ReportCode, isPreview) {
if (this.form.id.length < 1) {
if (!this.form.id) {
this.$message.info({ showClose: true, message: "人员信息尚未保存,不可执行此操作!"}); this.$message.info({ showClose: true, message: "人员信息尚未保存,不可执行此操作!"});
return; return;
} }
@ -1659,8 +1670,6 @@ export default {
{ Name: 'hisLog', Value: 'pic/hisLog.jpg' }, { Name: 'hisLog', Value: 'pic/hisLog.jpg' },
], ],
}; };
if (isPreview) { if (isPreview) {
this.$peisAPI.printPre(JSON.stringify(toOutShell)) this.$peisAPI.printPre(JSON.stringify(toOutShell))
.then(res => { .then(res => {
@ -1676,10 +1685,10 @@ export default {
this.$message.warning({ showClose: true, message: `${err}` }); this.$message.warning({ showClose: true, message: `${err}` });
}); });
} else { } else {
this.$peisAPI.print(JSON.stringify(toOutShell)) this.$peisAPI.print(JSON.stringify(toOutShell))
.then(res => { .then(res => {
let lres = JSON.parse(res) let lres = JSON.parse(res)
console.log('打印检验条码', lres)
if (res && lres.code > -1) { if (res && lres.code > -1) {
return postapi('/api/app/lisrequest/updatelisrequestisprint', { operateType: 1, patientRegisterId: this.form.id }) return postapi('/api/app/lisrequest/updatelisrequestisprint', { operateType: 1, patientRegisterId: this.form.id })
}else{ }else{
@ -1717,12 +1726,39 @@ export default {
this.patientRegister.mergeAsbitemVisble = true; this.patientRegister.mergeAsbitemVisble = true;
}, },
async toCharge(patientRegisterNo) {
btnPayTypeFlag(payTypeFlag){
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
if(e.isCharge == 'N') e.payTypeFlag = payTypeFlag
});
},
if (!patientRegisterNo) {
async getAsb(id){
let err = ''
try {
let res = await getapi(`/api/app/registerasbitem/getlistinpatientregisterid?PatientRegisterId=${id}`)
if(res.code > -1){
this.dataTransOpts.tableM.register_check_asbitem = res.data
}else{
err = res.message
}
} catch (error) {
err = `${error}`
}
return err
},
async toCharge(form) {
if (!form.patientRegisterNo) {
this.$message.warning({ showClose: true, message: "请先保存人员信息!"}) this.$message.warning({ showClose: true, message: "请先保存人员信息!"})
return return
} }
let err = await this.getAsb(form.id)
if(err){
this.$message.error(err)
return
}
let chargeMoney = Number(0) let chargeMoney = Number(0)
//,021 //,021
@ -1735,14 +1771,41 @@ export default {
} }
// //
this.chargePatientRegisterNo = patientRegisterNo
setTimeout(() => {
this.dataTransOpts.refresh.charge.S++
}, 10)
this.chargePatientRegisterNo = form.patientRegisterNo
this.dataTransOpts.refresh.charge.S++
this.dialogWin.charge = true this.dialogWin.charge = true
}, },
//
async chargeRequest(patientRegisterId){
if (!patientRegisterId) {
this.$message.warning({ showClose: true, message: "请先保存人员信息!"})
return
}
let err = await this.getAsb(patientRegisterId)
if(err){
this.$message.error(err)
return
}
let chargeMoney = Number(0)
//,021
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
if (e.payTypeFlag == '0' && e.isCharge == 'N') chargeMoney += Number(e.total)
});
if (chargeMoney == 0) {
this.$message.warning({ showClose: true, message: '没有可收费的记录!' })
return
}
//
this.dataTransOpts.refresh.charge.S++
this.dialogWin.AsbChargeRequest = true
},
// //
closeDialogCharge() { closeDialogCharge() {
// this.prAsbOpraOpts.prAsbQuery++ // this.prAsbOpraOpts.prAsbQuery++

17
src/components/patientRegister/PatientRegisterItem.vue

@ -1128,22 +1128,7 @@ export default {
} }
}, },
//
"prAsbOpraOpts.payTypeFlag": {
// immediate: true, //
// deep: true, //
handler(newVal, oldVal) {
if (newVal != oldVal && newVal != '') {
this.dataTransOpts.tableM.register_check_asbitem.forEach(e => {
e.payTypeFlag = newVal;
return e;
});
// this.onSubmit('');
}
}
},
//
//
"prAsbOpraOpts.prAsbGroup": { "prAsbOpraOpts.prAsbGroup": {
// immediate: true, // // immediate: true, //
// deep: true, // // deep: true, //

1
src/components/report/BtnReport.vue

@ -80,6 +80,7 @@ export default {
let toOutShell = { let toOutShell = {
ReportCode, token, ReportCode, token,
isBuildImage: 'N', isBuildImage: 'N',
IsUploadPdf: 'N',
preViewCanPrint: this.dataTransOpts.tableS.patient_register.isAudit, preViewCanPrint: this.dataTransOpts.tableS.patient_register.isAudit,
BusinessCode: this.dataTransOpts.tableS.patient_register.id, BusinessCode: this.dataTransOpts.tableS.patient_register.id,
Parameters: [ Parameters: [

1
src/store/index.js

@ -379,6 +379,7 @@ export default new Vuex.Store({
PatientRegisterEditGroupBatch: false, //批量调整分组 PatientRegisterEditGroupBatch: false, //批量调整分组
MenuPageSet: false, // 设置角色菜单权限 MenuPageSet: false, // 设置角色菜单权限
LocalConfig: false, // 设置窗口 LocalConfig: false, // 设置窗口
AsbChargeRequest: false, // 收费申请
} }
}, },

528
src/views/doctorCheck/unitphysicalexamination.vue

@ -8,8 +8,7 @@
</div> </div>
</div> </div>
<div :style="'display: block;'"> <div :style="'display: block;'">
<div
style="
<div style="
background-color: #fff; background-color: #fff;
padding: 15px; padding: 15px;
border-radius: 8px; border-radius: 8px;
@ -18,220 +17,104 @@
margin-bottom: 10px; margin-bottom: 10px;
height: 35px; height: 35px;
margin-top: 7px; margin-top: 7px;
"
>
">
<div class="query"> <div class="query">
<span>体检单位</span> <span>体检单位</span>
<el-input
placeholder="请选择体检单位"
v-model="patientRegister.query.cusOrgOCX"
style="width: 300px"
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: 300px" 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">
<span>报表格式</span> <span>报表格式</span>
<el-select
v-model="format"
placeholder="请选择"
style="width: 80px"
@change="changeValue"
size="small"
>
<el-select v-model="format" placeholder="请选择" style="width: 80px" @change="changeValue" size="small">
<el-option label="标准格式" value="0" /> <el-option label="标准格式" value="0" />
<el-option label="精简格式" value="1" /> <el-option label="精简格式" value="1" />
<el-option label="Word格式" value="2" /> <el-option label="Word格式" value="2" />
</el-select> </el-select>
</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
size="small"
class="commonbutton"
:disabled="format == 2"
@click="handleExport"
>导出excel</el-button
>
<el-button size="small" class="commonbutton" :disabled="format == 2" @click="handleExport">导出excel</el-button>
</div> </div>
<div class="query"> <div class="query">
<el-button
size="small"
class="commonbutton"
:disabled="format == 2"
@click="onPrint"
>打印</el-button
>
<el-button size="small" class="commonbutton" :disabled="format == 2" @click="onPrint">打印</el-button>
</div> </div>
</div> </div>
<div v-show="format == 0" ref="imageDom0"> <div v-show="format == 0" ref="imageDom0">
<div
style="background-color: #fff; padding: 15px; border-radius: 8px"
>
<el-table
border
:height="
flag
? window.pageHeight < 600
? 415
: window.pageHeight - 185 - 20
: ''
"
:data="tableData"
id="standardTableData"
ref="standardTableData"
style="width: 100%"
:header-cell-class-name="headerStyle"
>
<div style="background-color: #fff; padding: 15px; border-radius: 8px">
<el-table border :height="flag
? window.pageHeight < 600
? 415
: window.pageHeight - 185 - 20
: ''
" :data="tableData" id="standardTableData" ref="standardTableData" style="width: 100%"
:header-cell-class-name="headerStyle">
<el-table-column :label="reportTitle"> <el-table-column :label="reportTitle">
<el-table-column
:label="
'单位:' +
customerOrgName +
'体检次数' +
medicalTimes +
'开始月份:' +
startMonth +
'结束月份:' +
endMonth
"
>
<el-table-column :label="`单位: ${customerOrgName||''} 体检次数 ${medicalTimes||''} 开始月份: ${startMonth||''} 结束月份: ${endMonth||''}`">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table
:data="scope.row.patientRegisterPositiveReports"
border
show-summary
:summary-method="summarizeRegisterCounts"
:header-cell-class-name="headerStyle"
>
<el-table :data="scope.row.patientRegisterPositiveReports" border show-summary
:summary-method="summarizeRegisterCounts" :header-cell-class-name="headerStyle">
<el-table-column label="人员阳性结果清单"> <el-table-column label="人员阳性结果清单">
<el-table-column
:label="
startDate +
'至' +
endDate +
'体检人员共计:' +
sumMedicalNumber +
'其中男:' +
maleMedicalNumber +
'女:' +
femaleMedicalNumber +
'其他:' +
otherMedicalNumber
"
>
<el-table-column
prop="patientNo"
label="档案号"
width="120"
/>
<el-table-column
prop="patientName"
label="姓名"
width="120"
/>
<el-table-column
prop="sexName"
label="性别"
width="50"
/>
<el-table-column :label="startDate +
'至' +
endDate +
'体检人员共计:' +
sumMedicalNumber +
'其中男:' +
maleMedicalNumber +
'女:' +
femaleMedicalNumber +
'其他:' +
otherMedicalNumber
">
<el-table-column prop="patientNo" label="档案号" width="120" />
<el-table-column prop="patientName" label="姓名" width="120" />
<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="mobileTelephone"
label="手机号码"
width="120"
/>
<el-table-column
prop="diagnosisNames"
label="诊断名称"
/>
<el-table-column prop="medicalTimes" label="次数" width="50" />
<el-table-column prop="mobileTelephone" label="手机号码" width="120" />
<el-table-column prop="diagnosisNames" label="诊断名称" />
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-table
:data="scope.row.positivePatientRegisterReportStandards"
border
:header-cell-class-name="headerStyle"
style="margin-top: 15px"
>
<el-table :data="scope.row.positivePatientRegisterReportStandards" border
:header-cell-class-name="headerStyle" style="margin-top: 15px">
<el-table-column label="阳性结果人员清单"> <el-table-column label="阳性结果人员清单">
<el-table-column
:label="
startDate +
'至' +
endDate +
'体检人员共计:' +
sumMedicalNumber +
'其中男:' +
maleMedicalNumber +
'女:' +
femaleMedicalNumber +
'其他:' +
otherMedicalNumber
"
>
<el-table-column :label="startDate +
'至' +
endDate +
'体检人员共计:' +
sumMedicalNumber +
'其中男:' +
maleMedicalNumber +
'女:' +
femaleMedicalNumber +
'其他:' +
otherMedicalNumber
">
<template slot-scope="scopes"> <template slot-scope="scopes">
<el-table
:data="scopes.row.patientRegisters"
border
show-summary
:summary-method="summarizeRegisterCounts"
>
<el-table-column
:label="scopes.row.diagnosisName"
>
<el-table-column
label="部门名称"
prop="departmentName"
></el-table-column>
<el-table-column
label="姓名"
prop="patientName"
></el-table-column>
<el-table-column
label="性别"
prop="sexName"
></el-table-column>
<el-table :data="scopes.row.patientRegisters" border show-summary
:summary-method="summarizeRegisterCounts">
<el-table-column :label="scopes.row.diagnosisName">
<el-table-column label="部门名称" prop="departmentName"></el-table-column>
<el-table-column label="姓名" prop="patientName"></el-table-column>
<el-table-column label="性别" prop="sexName"></el-table-column>
<el-table-column prop="age" label="年龄"> <el-table-column prop="age" label="年龄">
</el-table-column> </el-table-column>
<el-table-column
prop="patientRegisterNo"
label="条码号"
>
<el-table-column prop="patientRegisterNo" label="条码号">
</el-table-column> </el-table-column>
<el-table-column
prop="patientNo"
label="档案号"
>
<el-table-column prop="patientNo" label="档案号">
</el-table-column> </el-table-column>
<el-table-column
prop="medicalTimes"
label="体检次数"
>
<el-table-column prop="medicalTimes" label="体检次数">
</el-table-column> </el-table-column>
<el-table-column prop="telephone" label="电话"> <el-table-column prop="telephone" label="电话">
</el-table-column> </el-table-column>
<el-table-column
prop="mobileTelephone"
label="手机号"
>
<el-table-column prop="mobileTelephone" label="手机号">
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -240,38 +123,26 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-table
:data="scope.row.diseaseCountStatisticsReports"
border
:header-cell-class-name="headerStyle"
show-summary
:summary-method="summarizeRegisterCount"
style="margin-top: 15px"
>
<el-table :data="scope.row.diseaseCountStatisticsReports" border :header-cell-class-name="headerStyle"
show-summary :summary-method="summarizeRegisterCount" style="margin-top: 15px">
<el-table-column label="疾病人数统计"> <el-table-column label="疾病人数统计">
<el-table-column
:label="
startDate +
'至' +
endDate +
'体检人员共计:' +
sumMedicalNumber +
'其中男:' +
maleMedicalNumber +
'女:' +
femaleMedicalNumber +
'其他:' +
otherMedicalNumber
"
>
<el-table-column :label="startDate +
'至' +
endDate +
'体检人员共计:' +
sumMedicalNumber +
'其中男:' +
maleMedicalNumber +
'女:' +
femaleMedicalNumber +
'其他:' +
otherMedicalNumber
">
<el-table-column label="序号" type="index"> <el-table-column label="序号" type="index">
</el-table-column> </el-table-column>
<el-table-column prop="diagnosisName" label="疾病" /> <el-table-column prop="diagnosisName" label="疾病" />
<el-table-column prop="patientCount" label="人数" /> <el-table-column prop="patientCount" label="人数" />
<el-table-column
prop="percentage"
label="占总检人员百分比"
/>
<el-table-column prop="percentage" label="占总检人员百分比" />
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -282,163 +153,96 @@
</div> </div>
</div> </div>
<div v-show="format == 1" ref="imageDom1"> <div v-show="format == 1" ref="imageDom1">
<div
style="background-color: #fff; padding: 15px; border-radius: 8px"
>
<el-table
border
:height="
flag
? window.pageHeight < 600
? 415
: window.pageHeight - 185 - 20
: ''
"
:data="reducetableData"
id="reducetableData"
ref="reducetableData"
style="width: 100%"
:header-cell-class-name="headerStyle"
>
<div style="background-color: #fff; padding: 15px; border-radius: 8px">
<el-table border :height="flag
? window.pageHeight < 600
? 415
: window.pageHeight - 185 - 20
: ''
" :data="reducetableData" id="reducetableData" ref="reducetableData" style="width: 100%"
:header-cell-class-name="headerStyle">
<el-table-column :label="reducereportTitle"> <el-table-column :label="reducereportTitle">
<el-table-column
:label="
'单位:' +
reducecustomerOrgName +
'体检次数' +
reducemedicalTimes +
'开始月份:' +
reducestartMonth +
'结束月份:' +
reduceendMonth
"
>
<el-table-column :label="'单位' +
reducecustomerOrgName +
'体检次数' +
reducemedicalTimes +
'开始月份:' +
reducestartMonth +
'结束月份:' +
reduceendMonth
">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table
:data="scope.row.patientRegisterPositiveReports"
border
show-summary
:summary-method="summarizeRegisterCounts"
:header-cell-class-name="headerStyle"
>
<el-table :data="scope.row.patientRegisterPositiveReports" border show-summary
:summary-method="summarizeRegisterCounts" :header-cell-class-name="headerStyle">
<el-table-column label="人员阳性结果清单"> <el-table-column label="人员阳性结果清单">
<el-table-column
:label="
reducestartDate +
'至' +
reduceendDate +
'体检人员共计:' +
reducesumMedicalNumber +
'其中男:' +
reducemaleMedicalNumber +
'女:' +
reducefemaleMedicalNumber +
'其他:' +
reduceotherMedicalNumber
"
>
<el-table-column
prop="patientNo"
label="档案号"
width="120"
/>
<el-table-column
prop="patientName"
label="姓名"
width="120"
/>
<el-table-column
prop="sexName"
label="性别"
width="50"
/>
<el-table-column :label="reducestartDate +
'至' +
reduceendDate +
'体检人员共计:' +
reducesumMedicalNumber +
'其中男:' +
reducemaleMedicalNumber +
'女:' +
reducefemaleMedicalNumber +
'其他:' +
reduceotherMedicalNumber
">
<el-table-column prop="patientNo" label="档案号" width="120" />
<el-table-column prop="patientName" label="姓名" width="120" />
<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="mobileTelephone"
label="手机号码"
width="120"
/>
<el-table-column
prop="diagnosisNames"
label="诊断名称"
/>
<el-table-column prop="medicalTimes" label="次数" width="50" />
<el-table-column prop="mobileTelephone" label="手机号码" width="120" />
<el-table-column prop="diagnosisNames" label="诊断名称" />
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-table
:data="scope.row.positivePatientRegisterReportReduces"
border
:header-cell-class-name="headerStyle"
show-summary
:summary-method="summarizeRegisterCount"
style="margin-top: 15px"
>
<el-table :data="scope.row.positivePatientRegisterReportReduces" border
:header-cell-class-name="headerStyle" show-summary :summary-method="summarizeRegisterCount"
style="margin-top: 15px">
<el-table-column label="阳性结果人员清单"> <el-table-column label="阳性结果人员清单">
<el-table-column
:label="
reducestartDate +
'至' +
reduceendDate +
'体检人员共计:' +
reducesumMedicalNumber +
'其中男:' +
reducemaleMedicalNumber +
'女:' +
reducefemaleMedicalNumber +
'其他:' +
reduceotherMedicalNumber
"
>
<el-table-column :label="reducestartDate +
'至' +
reduceendDate +
'体检人员共计:' +
reducesumMedicalNumber +
'其中男:' +
reducemaleMedicalNumber +
'女:' +
reducefemaleMedicalNumber +
'其他:' +
reduceotherMedicalNumber
">
<el-table-column label="序号" type="index"> <el-table-column label="序号" type="index">
</el-table-column> </el-table-column>
<el-table-column prop="diagnosisName" label="诊断" /> <el-table-column prop="diagnosisName" label="诊断" />
<el-table-column prop="patientCount" label="人数" /> <el-table-column prop="patientCount" label="人数" />
<el-table-column
prop="percentage"
label="占总检人员百分比"
/>
<el-table-column prop="percentage" label="占总检人员百分比" />
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-table
:data="scope.row.diseaseCountStatisticsReports"
border
:header-cell-class-name="headerStyle"
show-summary
:summary-method="summarizeRegisterCount"
style="margin-top: 15px"
>
<el-table :data="scope.row.diseaseCountStatisticsReports" border :header-cell-class-name="headerStyle"
show-summary :summary-method="summarizeRegisterCount" style="margin-top: 15px">
<el-table-column label="疾病人数统计"> <el-table-column label="疾病人数统计">
<el-table-column
:label="
reducestartDate +
'至' +
reduceendDate +
'体检人员共计:' +
reducesumMedicalNumber +
'其中男:' +
reducemaleMedicalNumber +
'女:' +
reducefemaleMedicalNumber +
'其他:' +
reduceotherMedicalNumber
"
>
<el-table-column :label="reducestartDate +
'至' +
reduceendDate +
'体检人员共计:' +
reducesumMedicalNumber +
'其中男:' +
reducemaleMedicalNumber +
'女:' +
reducefemaleMedicalNumber +
'其他:' +
reduceotherMedicalNumber
">
<el-table-column label="序号" type="index"> <el-table-column label="序号" type="index">
</el-table-column> </el-table-column>
<el-table-column prop="diagnosisName" label="疾病" /> <el-table-column prop="diagnosisName" label="疾病" />
<el-table-column prop="patientCount" label="人数" /> <el-table-column prop="patientCount" label="人数" />
<el-table-column
prop="percentage"
label="占总检人员百分比"
/>
<el-table-column prop="percentage" label="占总检人员百分比" />
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -449,16 +253,11 @@
</div> </div>
</div> </div>
<div v-show="format == 2" ref="imageDom2"> <div v-show="format == 2" ref="imageDom2">
<div
style="background-color: #fff; padding: 15px; border-radius: 8px"
>
<div
:style="
'display: flex;justify-content: center;align-items: center;height:' +
(window.pageHeight < 600 ? 415 : window.pageHeight - 185 - 20) +
'px;'
"
>
<div style="background-color: #fff; padding: 15px; border-radius: 8px">
<div :style="'display: flex;justify-content: center;align-items: center;height:' +
(window.pageHeight < 600 ? 415 : window.pageHeight - 185 - 20) +
'px;'
">
<div v-show="reportUrl == ''">无数据</div> <div v-show="reportUrl == ''">无数据</div>
<a :href="reportUrl" v-show="reportUrl != ''"> <a :href="reportUrl" v-show="reportUrl != ''">
<el-button>下载Word报表</el-button> <el-button>下载Word报表</el-button>
@ -469,18 +268,9 @@
</div> </div>
</div> </div>
<!--通用选单位体检次数分组的控件--> <!--通用选单位体检次数分组的控件-->
<el-dialog
title="体检单位选择"
:visible.sync="report.dialogCusOrgOCX"
:close-on-click-modal="false"
width="840px"
height="600px"
>
<CusOrgOCX
:useCustomerOrg="true"
:initDateType="'creationTime'"
:isUnit="true"
/>
<el-dialog title="体检单位选择" :visible.sync="report.dialogCusOrgOCX" :close-on-click-modal="false" width="840px"
height="600px">
<CusOrgOCX :useCustomerOrg="true" :initDateType="'creationTime'" :isUnit="true" />
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
@ -560,8 +350,8 @@ export default {
e.dateType == "summaryDate" e.dateType == "summaryDate"
? "3" ? "3"
: e.dateType == "medicalStartDate" : e.dateType == "medicalStartDate"
? "2"
: "1",
? "2"
: "1",
}; };
if (e.customerOrgId) { if (e.customerOrgId) {
@ -631,7 +421,7 @@ export default {
).then((res) => { ).then((res) => {
if (res.code != -1) { if (res.code != -1) {
const sysConfig = JSON.parse(window.sessionStorage.getItem('sysConfig')) const sysConfig = JSON.parse(window.sessionStorage.getItem('sysConfig'))
this.reportUrl = sysConfig.apiurl+ res.data.reportUrl;
this.reportUrl = sysConfig.apiurl + res.data.reportUrl;
} }
}); });
} }
@ -772,6 +562,7 @@ page-break-before: avoid;}}`, // 去除页眉页脚
@import "../../assets/css/global_form.css"; @import "../../assets/css/global_form.css";
@import "../../assets/css/global_input.css"; @import "../../assets/css/global_input.css";
@import "../../assets/css/global.css"; @import "../../assets/css/global.css";
.query { .query {
margin-right: 15px; margin-right: 15px;
display: flex; display: flex;
@ -782,13 +573,16 @@ page-break-before: avoid;}}`, // 去除页眉页脚
font-size: 400; font-size: 400;
font-family: "NotoSansSC-Regular"; font-family: "NotoSansSC-Regular";
} }
.box { .box {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
} }
::v-deep .el-table__header-wrapper th.backcolor { ::v-deep .el-table__header-wrapper th.backcolor {
background-color: #f5f7fa; background-color: #f5f7fa;
} }
:deep .left-align .cell { :deep .left-align .cell {
text-align: left !important; text-align: left !important;
} }
Loading…
Cancel
Save