解决门诊挂号退号费用性质不一致的bug
This commit is contained in:
@@ -81,5 +81,11 @@ public class RefundItemDto {
|
||||
|
||||
/** 项目名 */
|
||||
private String itemName;
|
||||
|
||||
/** 费用支付方式编码 */
|
||||
private String medfeePaymtdCode;
|
||||
|
||||
/** 费用类型 */
|
||||
private String feeType;
|
||||
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
<el-text size="large" style="display: block; margin-bottom: 15px">
|
||||
退费日期:{{ currentDate }}
|
||||
</el-text>
|
||||
<el-text size="large">费用性质:{{ '自费' }}</el-text>
|
||||
<el-text size="large">费用性质:{{ getFeeTypeText }}</el-text>
|
||||
<div class="amount-row">
|
||||
<el-text size="large">应退金额:</el-text>
|
||||
<el-text size="large" type="primary" class="amount">
|
||||
@@ -160,6 +160,14 @@ const props = defineProps({
|
||||
type: Object,
|
||||
default: undefined,
|
||||
},
|
||||
medfee_paymtd_code: {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
},
|
||||
feeType: {
|
||||
type: String,
|
||||
default: '',
|
||||
},
|
||||
});
|
||||
|
||||
const { proxy } = getCurrentInstance();
|
||||
@@ -324,6 +332,23 @@ const returnedAmount = computed(() => {
|
||||
function close() {
|
||||
emit('close');
|
||||
}
|
||||
|
||||
// 获取费用性质文本
|
||||
const getFeeTypeText = computed(() => {
|
||||
if (!props.medfee_paymtd_code || !Array.isArray(props.medfee_paymtd_code)) {
|
||||
return '自费';
|
||||
}
|
||||
// 如果有feeType,根据feeType查找对应的文本
|
||||
if (props.feeType) {
|
||||
const dict = props.medfee_paymtd_code.find(item => item.value === props.feeType);
|
||||
return dict ? dict.label : '自费';
|
||||
}
|
||||
// 如果只有一个选项,直接返回第一个选项的文本
|
||||
if (props.medfee_paymtd_code.length === 1) {
|
||||
return props.medfee_paymtd_code[0].label || '自费';
|
||||
}
|
||||
return '自费';
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@@ -178,6 +178,8 @@
|
||||
:paymentId="paymentId"
|
||||
:chargeItemIds="chargeItemIdList"
|
||||
:details="details"
|
||||
:medfee_paymtd_code="medfee_paymtd_code"
|
||||
:feeType="patientInfo.medfeePaymtdCode"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
@@ -197,6 +199,8 @@ import RefundDialog from './components/refundDialog.vue';
|
||||
import Decimal from 'decimal.js';
|
||||
|
||||
const { proxy } = getCurrentInstance();
|
||||
// 获取费用性质字典
|
||||
const { medfee_paymtd_code } = proxy.useDict('medfee_paymtd_code');
|
||||
const queryParams = ref({
|
||||
pageNum: 1,
|
||||
pageSize: 50,
|
||||
|
||||
@@ -114,19 +114,18 @@ import { Delete } from '@element-plus/icons-vue';
|
||||
|
||||
// 获取费用性质文本
|
||||
const getFeeTypeText = computed(() => {
|
||||
if (!props.medfee_paymtd_code || !Array.isArray(props.medfee_paymtd_code)) {
|
||||
return '自费';
|
||||
// 优先使用从挂号记录传递过来的费用性质名称
|
||||
if (props.contractName) {
|
||||
return props.contractName;
|
||||
}
|
||||
// 如果有feeType,根据feeType查找对应的文本
|
||||
if (props.feeType) {
|
||||
const dict = props.medfee_paymtd_code.find(item => item.value === props.feeType);
|
||||
return dict ? dict.label : '自费';
|
||||
|
||||
// 如果没有传递名称,则根据费用性质代码查找
|
||||
if (props.feeType && props.medfee_paymtd_code && Array.isArray(props.medfee_paymtd_code)) {
|
||||
const dictItem = props.medfee_paymtd_code.find(item => item.value === props.feeType);
|
||||
return dictItem ? dictItem.label : '自费';
|
||||
}
|
||||
// 如果只有一个选项,直接返回第一个选项的文本
|
||||
if (props.medfee_paymtd_code.length === 1) {
|
||||
return props.medfee_paymtd_code[0].label || '自费';
|
||||
}
|
||||
return '自费';
|
||||
|
||||
return '自费'; // 默认值
|
||||
});
|
||||
|
||||
const props = defineProps({
|
||||
@@ -159,6 +158,10 @@ const props = defineProps({
|
||||
feeType: {
|
||||
type: String,
|
||||
default: '',
|
||||
},
|
||||
contractName: {
|
||||
type: String,
|
||||
default: '', // 新增:接收费用性质名称
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -572,7 +572,8 @@
|
||||
:patientInfo="patientInfo"
|
||||
:paymentId="paymentId"
|
||||
:chargeItemIds="chargeItemIdList"
|
||||
:feeType="(patientInfo && patientInfo.medfeePaymtdCode) || (form && form.value && form.value.contractNo) || ''"
|
||||
:feeType="patientInfo.medfeePaymtdCode || ''"
|
||||
:contractName="patientInfo.contractName || ''"
|
||||
:medfee_paymtd_code="medfee_paymtd_code"
|
||||
/>
|
||||
<ReprintDialog
|
||||
@@ -1208,7 +1209,11 @@ function handleReturn(row) {
|
||||
totalAmount.value = row.totalPrice;
|
||||
chargeItemIdList.value = row.chargeItemIds.split(',');
|
||||
paymentId.value = row.paymentId;
|
||||
console.log(paymentId.value);
|
||||
// 从挂号记录中获取正确的费用性质
|
||||
patientInfo.value.medfeePaymtdCode = row.contractNo; // 使用挂号记录中的费用性质代码
|
||||
patientInfo.value.contractName = row.contractName; // 保存费用性质名称用于显示
|
||||
|
||||
console.log('退号费用性质:', row.contractNo, row.contractName);
|
||||
}
|
||||
|
||||
function handleReturnRegister() {
|
||||
|
||||
Reference in New Issue
Block a user