|
|
@ -1,21 +1,25 @@ |
|
|
<template> |
|
|
<template> |
|
|
|
|
|
<div style="font-size: 14px;"> |
|
|
<div> |
|
|
<div> |
|
|
<el-card> |
|
|
|
|
|
<div slot="header">体检收费</div> |
|
|
|
|
|
|
|
|
<div class="contenttitle"> |
|
|
|
|
|
体检登记 /<span class="contenttitleBold">收费</span> |
|
|
|
|
|
</div> |
|
|
<div style="display: flex; width: 100%;"> |
|
|
<div style="display: flex; width: 100%;"> |
|
|
<!-- 查询条件 与列表 --> |
|
|
<!-- 查询条件 与列表 --> |
|
|
<div class="queryDivClass"> |
|
|
|
|
|
|
|
|
<div :style="`display: block;width: ${Math.floor(bodyWidth * 3 / 5)}px;`"> |
|
|
<!-- 查询条件 --> |
|
|
<!-- 查询条件 --> |
|
|
<div style="height: 80px;"> |
|
|
<div style="height: 80px;"> |
|
|
<div style="display:flex;"> |
|
|
<div style="display:flex;"> |
|
|
<div> |
|
|
<div> |
|
|
<span>登记日期:</span> |
|
|
<span>登记日期:</span> |
|
|
<el-date-picker v-model="query.startDate" type="date" placeholder="起始日期" size="small" style="width:90px;"/> |
|
|
|
|
|
<span>至</span> |
|
|
|
|
|
|
|
|
<el-date-picker v-model="query.startDate" type="date" placeholder="起始日期" size="small" |
|
|
|
|
|
style="width:90px;" /> |
|
|
|
|
|
<span style="margin: 0 3px;">至</span> |
|
|
<el-date-picker v-model="query.endDate" type="date" placeholder="截止日期" size="small" style="width:90px;" /> |
|
|
<el-date-picker v-model="query.endDate" type="date" placeholder="截止日期" size="small" style="width:90px;" /> |
|
|
</div> |
|
|
</div> |
|
|
<div style="margin-left:10px;"> |
|
|
<div style="margin-left:10px;"> |
|
|
<el-button type="primary" class="btnClass" @click="Query" size="small" style="width:95px;">查询</el-button> |
|
|
|
|
|
|
|
|
<el-button type="primary" class="commonbutton" @click="Query" size="small" |
|
|
|
|
|
style="width:95px;">查询</el-button> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div style="display:flex;margin-top:10px;"> |
|
|
<div style="display:flex;margin-top:10px;"> |
|
|
@ -26,15 +30,15 @@ |
|
|
</el-radio-group> |
|
|
</el-radio-group> |
|
|
<div v-if="query.chargeFlag != 'N'" style="margin-left:20px;"> |
|
|
<div v-if="query.chargeFlag != 'N'" style="margin-left:20px;"> |
|
|
<span>发票号</span> |
|
|
<span>发票号</span> |
|
|
<el-input placeholder="发票/收据号" v-model="query.invoiceNo" size="small" style="width: 100px;" clearable |
|
|
|
|
|
|
|
|
<el-input placeholder="发票/收据号" v-model="query.invoiceNo" size="small" style="margin-left: 3px; width: 100px;" clearable |
|
|
@change="Query('invoiceNo')" /> |
|
|
@change="Query('invoiceNo')" /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<!-- 列表 --> |
|
|
<!-- 列表 --> |
|
|
<div class="prListDivClass"> |
|
|
|
|
|
<el-table :data="patientList" border highlight-current-row ref="patientList" |
|
|
|
|
|
:height="(window.pageHeight > 600 ? (window.pageHeight - 230) : 370)" @row-click="rowClick" size="small"> |
|
|
|
|
|
|
|
|
<div> |
|
|
|
|
|
<el-table :data="patientList" border highlight-current-row ref="patientList" :height="tableListHeight" |
|
|
|
|
|
@row-click="rowClick" size="small"> |
|
|
<!-- |
|
|
<!-- |
|
|
<el-table-column prop="patientRegisterId" label="体检记录ID" /> |
|
|
<el-table-column prop="patientRegisterId" label="体检记录ID" /> |
|
|
--> |
|
|
--> |
|
|
@ -72,66 +76,66 @@ |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<!-- 收费操作 --> |
|
|
<!-- 收费操作 --> |
|
|
<div class="queryDivClass" style="margin-left:5px;"> |
|
|
|
|
|
|
|
|
<div :style="`display: block;margin-left:5px;width: ${Math.floor(bodyWidth * 2 / 5)}px;`"> |
|
|
<!-- 查询信息 --> |
|
|
<!-- 查询信息 --> |
|
|
<div style="height: 40px;"> |
|
|
<div style="height: 40px;"> |
|
|
<div style="display: flex; flex-wrap: wrap;margin-top:40px; height:40px; width: 100%;"> |
|
|
<div style="display: flex; flex-wrap: wrap;margin-top:40px; height:40px; width: 100%;"> |
|
|
<div class="query"> |
|
|
<div class="query"> |
|
|
<span>条码号</span> |
|
|
<span>条码号</span> |
|
|
<el-input placeholder="条码号" v-model="query.patientRegisterNo" size="small" style="width: 140px;" clearable |
|
|
|
|
|
|
|
|
<el-input placeholder="条码号" v-model="query.patientRegisterNo" size="small" style="margin-left: 3px; width: 120px;" clearable |
|
|
@change="Query('patientRegisterNo')" /> |
|
|
@change="Query('patientRegisterNo')" /> |
|
|
</div> |
|
|
</div> |
|
|
<div class="query"> |
|
|
<div class="query"> |
|
|
<span>档案号</span> |
|
|
<span>档案号</span> |
|
|
<el-input placeholder="档案号" v-model="query.patientNo" size="small" style="width: 100px;" clearable |
|
|
|
|
|
|
|
|
<el-input placeholder="档案号" v-model="query.patientNo" size="small" style="margin-left: 3px; width: 80px;" clearable |
|
|
@change="Query('patientNo')" /> |
|
|
@change="Query('patientNo')" /> |
|
|
</div> |
|
|
</div> |
|
|
<div class="query"> |
|
|
<div class="query"> |
|
|
<span>姓名</span> |
|
|
<span>姓名</span> |
|
|
<el-input placeholder="姓名" v-model="query.patientName" size="small" style="width: 100px;" disabled |
|
|
|
|
|
|
|
|
<el-input placeholder="姓名" v-model="query.patientName" size="small" style="margin-left: 3px; width: 70px;" disabled |
|
|
@change="Query" /> |
|
|
@change="Query" /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<!-- 收费信息 --> |
|
|
<!-- 收费信息 --> |
|
|
<div class="prListDivClass"> |
|
|
|
|
|
|
|
|
<div> |
|
|
<!-- charge --> |
|
|
<!-- charge --> |
|
|
<div style="height:148px;"> |
|
|
|
|
|
<el-form ref="form" :model="form" label-width="80px" :rules="rules" size="small" |
|
|
|
|
|
|
|
|
<div style="height:108px;"> |
|
|
|
|
|
<el-form ref="form" :model="form" label-width="80px" :rules="rules" size="medium" |
|
|
:disabled="query.chargeFlag != 'N'" > |
|
|
:disabled="query.chargeFlag != 'N'" > |
|
|
<el-row> |
|
|
<el-row> |
|
|
<el-col :span="12"> |
|
|
<el-col :span="12"> |
|
|
<el-form-item label="发票号" prop="invoiceNo"> |
|
|
<el-form-item label="发票号" prop="invoiceNo"> |
|
|
<el-input v-model="form.invoiceNo" /> |
|
|
|
|
|
|
|
|
<el-input v-model="form.invoiceNo" size="small"/> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
<el-col :span="12"> |
|
|
<el-form-item label="开票抬头" prop="invoiceOrgName"> |
|
|
<el-form-item label="开票抬头" prop="invoiceOrgName"> |
|
|
<el-input v-model="form.invoiceOrgName" /> |
|
|
|
|
|
|
|
|
<el-input v-model="form.invoiceOrgName" size="small"/> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
</el-row> |
|
|
</el-row> |
|
|
<el-row> |
|
|
<el-row> |
|
|
<el-col :span="12"> |
|
|
<el-col :span="12"> |
|
|
<el-form-item label="折扣" prop="discount"> |
|
|
<el-form-item label="折扣" prop="discount"> |
|
|
<el-input v-model="form.discount" @input="discountToDetails" /> |
|
|
|
|
|
|
|
|
<el-input v-model="form.discount" @input="discountToDetails" size="small"/> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
<el-col :span="12"> |
|
|
<el-form-item label="应收金额" prop="total"> |
|
|
<el-form-item label="应收金额" prop="total"> |
|
|
<el-input v-model="form.total" @input="totalToDetails" /> |
|
|
|
|
|
|
|
|
<el-input v-model="form.total" @input="totalToDetails" size="small"/> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
</el-row> |
|
|
</el-row> |
|
|
<el-row v-if="query.chargeFlag == 'N'"> |
|
|
<el-row v-if="query.chargeFlag == 'N'"> |
|
|
<el-col :span="12"> |
|
|
<el-col :span="12"> |
|
|
<el-form-item label="预收金额" prop="preTotal"> |
|
|
<el-form-item label="预收金额" prop="preTotal"> |
|
|
<el-input v-model="form.preTotal" disabled/> |
|
|
|
|
|
|
|
|
<el-input v-model="form.preTotal" disabled size="small"/> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="12"> |
|
|
<el-col :span="12"> |
|
|
<el-form-item label="找零" prop="balance"> |
|
|
<el-form-item label="找零" prop="balance"> |
|
|
<el-input v-model="form.balance" disabled /> |
|
|
|
|
|
|
|
|
<el-input v-model="form.balance" disabled size="small"/> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
</el-row> |
|
|
</el-row> |
|
|
@ -141,7 +145,7 @@ |
|
|
<div> |
|
|
<div> |
|
|
<div style="margin-top:5px;font-size:10px;">{{ query.chargeFlag == 'B' ? '退' : '收' }}费方式:</div> |
|
|
<div style="margin-top:5px;font-size:10px;">{{ query.chargeFlag == 'B' ? '退' : '收' }}费方式:</div> |
|
|
<el-table :data="chargePays" border highlight-current-row size="small" |
|
|
<el-table :data="chargePays" border highlight-current-row size="small" |
|
|
:height="window.pageHeight > 600 ? (window.pageHeight - 270 - 146) / 2 : 92"> |
|
|
|
|
|
|
|
|
:height="Math.floor((tableListHeight - 146)/2)"> |
|
|
<el-table-column prop="payModeId" :label="(query.chargeFlag == 'B' ? '退' : '收') + '费方式'" width="180"> |
|
|
<el-table-column prop="payModeId" :label="(query.chargeFlag == 'B' ? '退' : '收') + '费方式'" width="180"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<div>{{ dddw(dict.payMode, "id", scope.row.payModeId, "displayName") }}</div> |
|
|
<div>{{ dddw(dict.payMode, "id", scope.row.payModeId, "displayName") }}</div> |
|
|
@ -168,7 +172,7 @@ |
|
|
<div style="margin-top:5px; font-size:10px;">{{ query.chargeFlag == 'N' ? '待收' : (query.chargeFlag == 'Y' ? |
|
|
<div style="margin-top:5px; font-size:10px;">{{ query.chargeFlag == 'N' ? '待收' : (query.chargeFlag == 'Y' ? |
|
|
'已收' : '已退') }}费项目:</div> |
|
|
'已收' : '已退') }}费项目:</div> |
|
|
<el-table :data="asbItemsForFee" border highlight-current-row |
|
|
<el-table :data="asbItemsForFee" border highlight-current-row |
|
|
:height="window.pageHeight > 600 ? (window.pageHeight - 270 - 146) / 2 : 92" size="small" |
|
|
|
|
|
|
|
|
:height="Math.floor((tableListHeight - 146)/2)" size="small" |
|
|
@selection-change="handleSelectionChange" ref="asbItemsForFeeTable"> |
|
|
@selection-change="handleSelectionChange" ref="asbItemsForFeeTable"> |
|
|
<el-table-column type="selection" align="center" v-if="query.chargeFlag == 'N'" /> |
|
|
<el-table-column type="selection" align="center" v-if="query.chargeFlag == 'N'" /> |
|
|
<el-table-column label="组合项目" width="120" prop="asbitemName" /> |
|
|
<el-table-column label="组合项目" width="120" prop="asbitemName" /> |
|
|
@ -213,24 +217,24 @@ |
|
|
</div> |
|
|
</div> |
|
|
<div class="btnDivClass"> |
|
|
<div class="btnDivClass"> |
|
|
<div class="btnListClass"> |
|
|
<div class="btnListClass"> |
|
|
<el-button type="primary" class="btnClass" @click="btnCharge" |
|
|
|
|
|
|
|
|
<el-button type="primary" class="commonbutton" @click="btnCharge" |
|
|
:disabled="query.chargeFlag == 'N' ? false : true">收费</el-button> |
|
|
:disabled="query.chargeFlag == 'N' ? false : true">收费</el-button> |
|
|
</div> |
|
|
</div> |
|
|
<div class="btnListClass"> |
|
|
<div class="btnListClass"> |
|
|
<el-button type="danger" class="btnClass" @click="btnChargeBack" |
|
|
|
|
|
|
|
|
<el-button type="danger" class="commonbutton" @click="btnChargeBack" |
|
|
:disabled="query.chargeFlag == 'Y' ? false : true">退费</el-button> |
|
|
:disabled="query.chargeFlag == 'Y' ? false : true">退费</el-button> |
|
|
</div> |
|
|
</div> |
|
|
<div class="btnListClass"> |
|
|
<div class="btnListClass"> |
|
|
<el-button type="success" class="btnClass" @click="chargePrint('0007', false, form.id)" |
|
|
|
|
|
|
|
|
<el-button type="success" class="commonbutton" @click="chargePrint('0007', false, form.id)" |
|
|
:disabled="query.chargeFlag == 'B' ? true : false">打印</el-button> |
|
|
:disabled="query.chargeFlag == 'B' ? true : false">打印</el-button> |
|
|
</div> |
|
|
</div> |
|
|
<div class="btnListClass"> |
|
|
<div class="btnListClass"> |
|
|
<el-button type="success" class="btnClass" @click="chargePrint('0007', true, form.id)" |
|
|
|
|
|
|
|
|
<el-button type="success" class="commonbutton" @click="chargePrint('0007', true, form.id)" |
|
|
:disabled="query.chargeFlag == 'B' ? true : false">打印预览</el-button> |
|
|
:disabled="query.chargeFlag == 'B' ? true : false">打印预览</el-button> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</el-card> |
|
|
|
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</template> |
|
|
</template> |
|
|
<script> |
|
|
<script> |
|
|
@ -338,6 +342,16 @@ export default { |
|
|
|
|
|
|
|
|
computed: { |
|
|
computed: { |
|
|
...mapState(["window", "dict", "dataTransOpts", "patientRegister", "customerOrg"]), |
|
|
...mapState(["window", "dict", "dataTransOpts", "patientRegister", "customerOrg"]), |
|
|
|
|
|
|
|
|
|
|
|
tableListHeight() { |
|
|
|
|
|
let tempH = this.window.pageHeight < 600 ? 600 : this.window.pageHeight |
|
|
|
|
|
return tempH - 175 |
|
|
|
|
|
}, |
|
|
|
|
|
|
|
|
|
|
|
bodyWidth() { |
|
|
|
|
|
let tempW = this.window.pageWidth < 600 ? 600 : this.window.pageWidth |
|
|
|
|
|
return tempW - 110 - 20 |
|
|
|
|
|
} |
|
|
}, |
|
|
}, |
|
|
|
|
|
|
|
|
methods: { |
|
|
methods: { |
|
|
@ -1191,18 +1205,8 @@ export default { |
|
|
@import '../../assets/css/global.css'; |
|
|
@import '../../assets/css/global.css'; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.queryDivClass { |
|
|
|
|
|
display: block; |
|
|
|
|
|
width: v-bind("(window.pageWidth > 600 ? (window.pageWidth - 110 - 50) / 2 : 200) + 'px'"); |
|
|
|
|
|
height: v-bind("(window.pageHeight > 600 ? (window.pageHeight - 150) : 450) + 'px'"); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.query { |
|
|
.query { |
|
|
margin-left: 10px; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
.prListDivClass { |
|
|
|
|
|
height: v-bind("(window.pageHeight > 600 ? (window.pageHeight - 250) : 350) + 'px'"); |
|
|
|
|
|
|
|
|
margin-left: 5px; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.btnDivClass { |
|
|
.btnDivClass { |
|
|
|