|
@@ -65,6 +65,14 @@
|
|
|
<el-dropdown-item icon="Delete" command="delete">删除已生成处方</el-dropdown-item>
|
|
|
<el-dropdown-item icon="Upload" command="upload">医保处方上传</el-dropdown-item>
|
|
|
<el-dropdown-item icon="RefreshLeft" command="retract">撤销医保上传</el-dropdown-item>
|
|
|
+ <el-dropdown-item
|
|
|
+ v-if="medType === '1301'"
|
|
|
+ icon="Link"
|
|
|
+ divided
|
|
|
+ command="merge"
|
|
|
+ >
|
|
|
+ 合并处方(多次就诊)
|
|
|
+ </el-dropdown-item>
|
|
|
</el-dropdown-menu>
|
|
|
</template>
|
|
|
</el-dropdown>
|
|
@@ -88,6 +96,7 @@
|
|
|
<div class="layout_main layout_container layout-horizontal">
|
|
|
<aside class="layout_el-table">
|
|
|
<el-table
|
|
|
+ ref="asideRef"
|
|
|
:data="historyReceipts"
|
|
|
stripe
|
|
|
highlight-current-row
|
|
@@ -185,6 +194,39 @@
|
|
|
></mz-bl-record>
|
|
|
|
|
|
<EmergencyRescue ref="emergencyRef" :param="emergencyParams" />
|
|
|
+
|
|
|
+ <el-dialog
|
|
|
+ v-model="showMergeReceipts"
|
|
|
+ title="请选择要合并的处方"
|
|
|
+ :close-on-click-modal="false"
|
|
|
+ :close-on-press-escape="false"
|
|
|
+ width="460px"
|
|
|
+ >
|
|
|
+ <el-table
|
|
|
+ ref="mergeRef"
|
|
|
+ :data="historyReceipts"
|
|
|
+ stripe
|
|
|
+ height="100%"
|
|
|
+ >
|
|
|
+ <el-table-column type="selection"></el-table-column>
|
|
|
+ <el-table-column property="patNo" label="ID号_次数" width="120">
|
|
|
+ <template #default="{row}">
|
|
|
+ {{row.patNo}}_{{row.times}}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="诊间" width="60">
|
|
|
+ <template #default="scope">
|
|
|
+ <span v-html="isMztczf(scope.row)"></span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column property="chargeFee" label="金额" width="70"></el-table-column>
|
|
|
+ <el-table-column property="chargeDate" label="时间" width="130"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <div style="margin-top: 20px; width: 100%; text-align: right">
|
|
|
+ <el-button @click="showMergeReceipts = false">取消</el-button>
|
|
|
+ <el-button type="primary" @click="confirmMerge">合并</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
@@ -192,6 +234,7 @@ import {
|
|
|
deleteAllMzReceipts,
|
|
|
getHistoryMzReceipts,
|
|
|
getHistoryReceiptDetail,
|
|
|
+ mergeReceipts,
|
|
|
insertSiMzFeesForSupplement,
|
|
|
outpatientPreSettlement,
|
|
|
outpatientRegistration,
|
|
@@ -235,6 +278,7 @@ const medTypes = ref([])
|
|
|
const historyReceipts = ref([])
|
|
|
const currentRow = ref({})
|
|
|
const mzVisit = ref({})
|
|
|
+const asideRef = ref(null)
|
|
|
const currentReceipts = ref([])
|
|
|
const showInputDiags = ref(false)
|
|
|
const dateRange = ref(shortcuts[2].value)
|
|
@@ -476,7 +520,44 @@ const receiptsOpts = (command) => {
|
|
|
case 'retract':
|
|
|
revokeFees()
|
|
|
break
|
|
|
+ case 'merge':
|
|
|
+ beforeMergeReceipts()
|
|
|
+ break
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+const mergeRef = ref(null)
|
|
|
+const showMergeReceipts = ref(false)
|
|
|
+function beforeMergeReceipts() {
|
|
|
+ if (historyReceipts.value.length === 0) {
|
|
|
+ xcMessage.warning('请先获取历史处方!');
|
|
|
+ return
|
|
|
}
|
|
|
+ showMergeReceipts.value = true
|
|
|
+}
|
|
|
+
|
|
|
+function confirmMerge() {
|
|
|
+ const selections = mergeRef.value.getSelectionRows()
|
|
|
+ if (selections.length === 0) {
|
|
|
+ xcMessage.warning('请勾选至少一条就诊记录!');
|
|
|
+ return
|
|
|
+ }
|
|
|
+ mergeReceipts(selections).then(res => {
|
|
|
+ showMergeReceipts.value = false
|
|
|
+ ElMessageBox.alert(res.message, '提示', {
|
|
|
+ type: 'success',
|
|
|
+ showClose: false,
|
|
|
+ closeOnClickOutside: false,
|
|
|
+ closeOnClickModal: false,
|
|
|
+ closeOnPressEscape: false
|
|
|
+ }).then(() => {
|
|
|
+ fetchHistoryReceiptDetail(res)
|
|
|
+ let index = historyReceipts.value.findIndex(item => {
|
|
|
+ return item.times === res.times
|
|
|
+ })
|
|
|
+ asideRef.value.setCurrentRow(historyReceipts.value[index])
|
|
|
+ })
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
const markMzFees = () => {
|