|
|
|
@ -1,21 +1,25 @@ |
|
|
|
<template> |
|
|
|
<div> |
|
|
|
<el-card> |
|
|
|
<el-card> |
|
|
|
<div class="publiccss">组合项目检查状态</div> |
|
|
|
<div :style="'display: block; width:' + (window.pageWidth - 82) + 'px;margin-top:20px'"> |
|
|
|
<div style="display: flex; flex-wrap: wrap; height:35px;"> |
|
|
|
<div class="query"> |
|
|
|
<span>体检单位:</span> |
|
|
|
<el-input placeholder="请选择体检单位" v-model="patientRegister.query.cusOrgOCX" style="width:342px;" 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:342px;" size="small" |
|
|
|
disabled> |
|
|
|
<el-button slot="append" icon="el-icon-search" @click="report.dialogCusOrgOCX = true" |
|
|
|
style="font-size: 20px;"></el-button> |
|
|
|
</el-input> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="query"> |
|
|
|
<span>组合项目:</span> |
|
|
|
<el-input placeholder="请选择组合项目" v-model="patientRegister.query.asbitemOCX" style="width:240px;" size="small" disabled > |
|
|
|
<el-button slot="append" icon="el-icon-search" @click="report.dialogAsbitemOCX = true" style="font-size: 20px;"></el-button> |
|
|
|
<el-input placeholder="请选择组合项目" v-model="patientRegister.query.asbitemOCX" style="width:240px;" size="small" |
|
|
|
disabled> |
|
|
|
<el-button slot="append" icon="el-icon-search" @click="report.dialogAsbitemOCX = true" |
|
|
|
style="font-size: 20px;"></el-button> |
|
|
|
</el-input> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="query"> |
|
|
|
<span>检查状态:</span> |
|
|
|
<el-select v-model="patientRegister.query.checkCompleteFlag" placeholder="请选择" clearable style="width: 80px" |
|
|
|
@ -29,74 +33,91 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div> |
|
|
|
<el-table :data="dataList" border :height="window.pageHeight < 600 ? 360 : window.pageHeight - 240" |
|
|
|
row-key="id" size="small" highlight-current-row ref="dataList" > |
|
|
|
<el-table-column prop="asbitemName" label="组合项目名称" width="120"/> |
|
|
|
<el-table-column prop="checkCompleteFlag" label="检查状态" width="70" > |
|
|
|
<el-table :data="dataList" border :height="window.pageHeight < 600 ? 360 : window.pageHeight - 240" row-key="id" |
|
|
|
size="small" highlight-current-row ref="dataList"> |
|
|
|
<el-table-column prop="asbitemName" label="组合项目名称" width="120" /> |
|
|
|
<el-table-column prop="completeFlag" label="检查状态" width="70" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ dddw(dict.checkCompleteFlag, 'id', scope.row.checkCompleteFlag, 'displayName') }}</div> |
|
|
|
<div>{{ dddw(dict.checkCompleteFlag, 'id', scope.row.completeFlag, 'displayName') }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="isCharge" label="收费状态" width="70" > |
|
|
|
<el-table-column prop="isCharge" label="收费状态" width="70" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ scope.row.checkCompleteFlag == 'Y' ? '已收费':'未收费' }}</div> |
|
|
|
<div>{{ scope.row.checkCompleteFlag == 'Y' ? '已收费' : '未收费' }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="standardPrice" label="标准价格" width="70"/> |
|
|
|
<el-table-column prop="chargePrice" label="应收价格" width="70"/> |
|
|
|
<el-table-column prop="patientRegisterNo" label="人员条码号" width="130"/> |
|
|
|
<el-table-column prop="patientNo" label="档案号" width="130"/> |
|
|
|
<el-table-column prop="medicalTimes" label="体检次数" width="70"/> |
|
|
|
<el-table-column prop="standardPrice" label="标准价格" width="70" align="center"/> |
|
|
|
<el-table-column prop="chargePrice" label="应收价格" width="70" align="center"/> |
|
|
|
<el-table-column prop="patientRegisterNo" label="人员条码号" width="130" /> |
|
|
|
<el-table-column prop="patientNo" label="档案号" width="130" /> |
|
|
|
<el-table-column prop="medicalTimes" label="体检次数" width="70" align="center"/> |
|
|
|
<el-table-column prop="customerOrgName" label="单位" width="180" /> |
|
|
|
<!-- |
|
|
|
<el-table-column prop="customerOrgParentName" label="单位" width="180"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ scope.row.customerOrgParentName ? scope.row.customerOrgParentName : scope.row.customerOrgName }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
--> |
|
|
|
<el-table-column prop="departmentName" label="部门" width="180" /> |
|
|
|
<!-- |
|
|
|
<el-table-column prop="customerOrgName" label="部门" width="180"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ scope.row.customerOrgParentName ? scope.row.customerOrgName : "" }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
--> |
|
|
|
<el-table-column label="分组/套餐" width="150"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId === dict.personOrgId"> |
|
|
|
<!-- |
|
|
|
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId === dict.personOrgId"> |
|
|
|
{{ dddw(dict.medicalPackage, "id", scope.row.medicalPackageId, "displayName") }} |
|
|
|
</div> |
|
|
|
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId !== dict.personOrgId"> |
|
|
|
{{ dddw(dict.customerOrgGroupAll, "id", scope.row.customerOrgGroupId, "displayName") }} |
|
|
|
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId !== dict.personOrgId"> |
|
|
|
{{ dddw(dict.customerOrgGroupAll, "id", scope.row.customerOrgGroupId, "displayName") }} |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
--> |
|
|
|
<div v-if="scope.row.medicalPackageName"> |
|
|
|
{{ scope.row.medicalPackageName }} |
|
|
|
</div> |
|
|
|
<div v-if="scope.row.customerOrgGroupName"> |
|
|
|
{{ scope.row.customerOrgGroupName }} |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="patientName" label="姓名" width="80"/> |
|
|
|
<el-table-column prop="sexId" label="性别"> |
|
|
|
<el-table-column prop="patientName" label="姓名" width="80" /> |
|
|
|
<el-table-column prop="sexName" label="性别" /> |
|
|
|
<!-- |
|
|
|
<el-table-column prop="sexId" label="性别" > |
|
|
|
<template slot-scope="scope"> |
|
|
|
<div>{{ dddw(dict.sex, "id", scope.row.sexId, "displayName") }}</div> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
--> |
|
|
|
<el-table-column prop="age" label="年龄" /> |
|
|
|
<el-table-column prop="mobileTelephone" label="手机" width="100" /> |
|
|
|
<el-table-column prop="telephone" label="电话" width="100" /> |
|
|
|
<el-table-column prop="telephone" label="电话" width="100" /> |
|
|
|
</el-table> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</el-card> |
|
|
|
</el-card> |
|
|
|
<!--通用选单位、体检次数、分组的控件--> |
|
|
|
<el-dialog title="体检单位选择" :visible.sync="report.dialogCusOrgOCX" |
|
|
|
:close-on-click-modal="false" width="840px" height="600px"> |
|
|
|
<CusOrgOCX/> |
|
|
|
<el-dialog title="体检单位选择" :visible.sync="report.dialogCusOrgOCX" :close-on-click-modal="false" width="840px" |
|
|
|
height="600px"> |
|
|
|
<CusOrgOCX /> |
|
|
|
</el-dialog> |
|
|
|
<!--通用选组合项目的控件--> |
|
|
|
<el-dialog title="组合项目选择" :visible.sync="report.dialogAsbitemOCX" |
|
|
|
:close-on-click-modal="false" width="700px" height="600px"> |
|
|
|
<AsbitemOCX/> |
|
|
|
</el-dialog> |
|
|
|
<el-dialog title="组合项目选择" :visible.sync="report.dialogAsbitemOCX" :close-on-click-modal="false" width="700px" |
|
|
|
height="600px"> |
|
|
|
<AsbitemOCX /> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<script> |
|
|
|
import moment from "moment"; |
|
|
|
import { mapState, mapActions } from "vuex"; |
|
|
|
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 AsbitemOCX from "../../components/report/AsbitemOCX.vue" |
|
|
|
export default { |
|
|
|
@ -105,7 +126,7 @@ export default { |
|
|
|
AsbitemOCX, |
|
|
|
}, |
|
|
|
data() { |
|
|
|
return { |
|
|
|
return { |
|
|
|
dataList: [], //列表数据 |
|
|
|
}; |
|
|
|
}, |
|
|
|
@ -118,13 +139,13 @@ export default { |
|
|
|
mounted() { |
|
|
|
this.btnQuery(); |
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
computed: { |
|
|
|
...mapState(["window", "dict","patientRegister","report"]), |
|
|
|
...mapState(["window", "dict", "patientRegister", "report"]), |
|
|
|
}, |
|
|
|
|
|
|
|
methods: { |
|
|
|
moment,dddw, |
|
|
|
moment, dddw, |
|
|
|
//数据初始化 |
|
|
|
dictInit() { |
|
|
|
//性别 |
|
|
|
@ -232,12 +253,65 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
//查询 |
|
|
|
btnQuery(){ |
|
|
|
console.log('query'); |
|
|
|
let body = {}; |
|
|
|
btnQuery() { |
|
|
|
let body = {}, customerOrgs = [], asbitemIds = []; |
|
|
|
// { |
|
|
|
// "customerOrgs": [ |
|
|
|
// { |
|
|
|
// "customerOrgId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", |
|
|
|
// "customerOrgRegisterId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", |
|
|
|
// "customerOrgGroupId": [ |
|
|
|
// "3fa85f64-5717-4562-b3fc-2c963f66afa6" |
|
|
|
// ], |
|
|
|
// "dateType": "string", |
|
|
|
// "startDate": "string", |
|
|
|
// "endDate": "string" |
|
|
|
// } |
|
|
|
// ], |
|
|
|
// "asbitemIds": [ |
|
|
|
// "3fa85f64-5717-4562-b3fc-2c963f66afa6" |
|
|
|
// ], |
|
|
|
// "completeFlag": "string" |
|
|
|
// } |
|
|
|
|
|
|
|
if (this.report.dataCusOrgOCX.length > 0) { |
|
|
|
this.report.dataCusOrgOCX.forEach(e => { |
|
|
|
let rd = { |
|
|
|
startDate: moment(e.startDate).format('yyyy-MM-DD'), |
|
|
|
endDate: moment(e.endDate).format('yyyy-MM-DD'), |
|
|
|
dateType: e.dateType == 'summaryDate' ? '3' : (e.dateType == 'medicalStartDate' ? '2' : '1') |
|
|
|
} |
|
|
|
|
|
|
|
postapi('/api',body).then(res =>{ |
|
|
|
if(res.code != -1 ){ |
|
|
|
if (e.customerOrgId) { |
|
|
|
rd.customerOrgId = e.customerOrgId |
|
|
|
if (e.customerOrgId == this.dict.personOrgId) { |
|
|
|
rd.customerOrgRegisterId = null |
|
|
|
rd.customerOrgGroupId = [] |
|
|
|
} else { |
|
|
|
rd.customerOrgRegisterId = e.customerOrgRegister.id |
|
|
|
rd.customerOrgGroupId = e.customerOrgGroupIds |
|
|
|
} |
|
|
|
} |
|
|
|
customerOrgs.push(rd) |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
if (this.report.dataAsbitemOCX.length > 0) { |
|
|
|
this.report.dataAsbitemOCX.forEach(e => { |
|
|
|
asbitemIds.push(e.id) |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
body.customerOrgs = customerOrgs |
|
|
|
body.asbitemIds = asbitemIds |
|
|
|
|
|
|
|
if (this.patientRegister.query.checkCompleteFlag) body.completeFlag = this.patientRegister.query.checkCompleteFlag |
|
|
|
|
|
|
|
//console.log('/api/app/peisreport/getpatientregisterreport',body) |
|
|
|
|
|
|
|
|
|
|
|
postapi('/api/app/peisreport/getregisterasbitemregistercheckstatus', body).then(res => { |
|
|
|
if (res.code != -1) { |
|
|
|
this.dataList = res.data; |
|
|
|
} |
|
|
|
}) |
|
|
|
@ -261,11 +335,14 @@ export default { |
|
|
|
::v-deep .el-input__inner { |
|
|
|
/*text-align: center;*/ |
|
|
|
padding-left: 5px; |
|
|
|
padding-right: 25px; |
|
|
|
padding-right: 15px; |
|
|
|
} |
|
|
|
::v-deep .el-input-group__append{ |
|
|
|
padding: 0 5px; /* 控件默认 0 20px;*/ |
|
|
|
|
|
|
|
::v-deep .el-input-group__append { |
|
|
|
padding: 0 5px; |
|
|
|
/* 控件默认 0 20px;*/ |
|
|
|
} |
|
|
|
|
|
|
|
.query { |
|
|
|
margin-left: 10px; |
|
|
|
} |
|
|
|
@ -281,5 +358,4 @@ export default { |
|
|
|
|
|
|
|
.btnClass { |
|
|
|
width: 110px; |
|
|
|
} |
|
|
|
</style> |
|
|
|
}</style> |