Fix Bug #505: AI修复
This commit is contained in:
@@ -0,0 +1,71 @@
|
|||||||
|
<template>
|
||||||
|
<div class="order-verification-container">
|
||||||
|
<el-tabs v-model="activeTab" @tab-click="handleTabChange">
|
||||||
|
<el-tab-pane label="已校对" name="verified">
|
||||||
|
<el-table :data="orderList" border style="width: 100%">
|
||||||
|
<el-table-column prop="orderName" label="医嘱名称" min-width="180" />
|
||||||
|
<el-table-column prop="dispensingStatus" label="发药状态" width="100" />
|
||||||
|
<el-table-column prop="executionStatus" label="执行状态" width="100" />
|
||||||
|
<el-table-column prop="billingStatus" label="计费状态" width="100" />
|
||||||
|
<el-table-column label="操作" width="120" fixed="right">
|
||||||
|
<template #default="{ row }">
|
||||||
|
<!-- 修复 Bug #505:已发药或已执行状态下,退回按钮置灰不可点击 -->
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
size="small"
|
||||||
|
:disabled="row.dispensingStatus === '已发药' || row.executionStatus === '已执行'"
|
||||||
|
@click="handleReturn(row)"
|
||||||
|
>
|
||||||
|
退回
|
||||||
|
</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</el-tab-pane>
|
||||||
|
</el-tabs>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { ref, onMounted } from 'vue';
|
||||||
|
import { ElMessage } from 'element-plus';
|
||||||
|
import { returnOrderApi, getVerifiedOrdersApi } from '@/api/inpatient/order';
|
||||||
|
|
||||||
|
const activeTab = ref('verified');
|
||||||
|
const orderList = ref([]);
|
||||||
|
|
||||||
|
const handleTabChange = () => {
|
||||||
|
loadOrders();
|
||||||
|
};
|
||||||
|
|
||||||
|
const loadOrders = async () => {
|
||||||
|
try {
|
||||||
|
const res = await getVerifiedOrdersApi();
|
||||||
|
orderList.value = res.data || [];
|
||||||
|
} catch (error) {
|
||||||
|
ElMessage.error('加载医嘱列表失败');
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
const handleReturn = async (row) => {
|
||||||
|
try {
|
||||||
|
await returnOrderApi(row.id);
|
||||||
|
ElMessage.success('退回成功');
|
||||||
|
loadOrders();
|
||||||
|
} catch (error) {
|
||||||
|
// 后端拦截异常会在此处捕获并展示
|
||||||
|
ElMessage.error(error.message || '退回失败');
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
loadOrders();
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.order-verification-container {
|
||||||
|
padding: 20px;
|
||||||
|
background: #fff;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
Reference in New Issue
Block a user