Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
2026-06-17 14:35:19 +08:00
8 changed files with 64 additions and 11 deletions

View File

@@ -467,8 +467,8 @@ public class InHospitalRegisterAppServiceImpl implements IInHospitalRegisterAppS
iAccountService.save(newCashAccount);
}
// 更新或创建非自费账户
String typeCode = StringUtils.isNotEmpty(inHospitalInfoDto.getTypeCoce())
? inHospitalInfoDto.getTypeCoce()
String typeCode = StringUtils.isNotEmpty(inHospitalInfoDto.getTypeCode())
? inHospitalInfoDto.getTypeCode()
: AccountType.PERSONAL_CASH_ACCOUNT.getCode();
if (contractAccount != null) {
contractAccount.setContractNo(inHospitalInfoDto.getContractNo());
@@ -617,11 +617,12 @@ public class InHospitalRegisterAppServiceImpl implements IInHospitalRegisterAppS
accountPersonalCash.setBalanceAmount(inHospitalInfoDto.getBalanceAmount()); // 账户余额
// 自费
if (selfFundedFlag) {
accountPersonalCash.setContractNo(CommonConstants.BusinessName.DEFAULT_CONTRACT_NO); // 自费合同编码
accountPersonalCash.setEncounterFlag(Whether.YES.getValue());
} else {
// 生成非自费的账号
Account accountNoSelfFunded = new Account();
accountNoSelfFunded.setTypeCode(inHospitalInfoDto.getTypeCoce()); // 账户类型
accountNoSelfFunded.setTypeCode(inHospitalInfoDto.getTypeCode()); // 账户类型
accountNoSelfFunded.setPatientId(
inHospitalInfoDto.getPatientId() != null ? inHospitalInfoDto.getPatientId() : patient.getId()); // 患者id
accountNoSelfFunded.setEncounterId(encounterReg.getId()); // 住院就诊id

View File

@@ -133,7 +133,7 @@ public class InHospitalInfoDto {
/**
* 账户类型编码
*/
private String typeCoce;
private String typeCode;
/** 账户余额 */
private BigDecimal balanceAmount;

View File

@@ -38,7 +38,7 @@
AND aper.delete_flag = '0'
LEFT JOIN adm_account AS aa ON aa.encounter_id = ae.ID
AND aa.delete_flag = '0'
AND aa.type_code = '04'
AND aa.encounter_flag = 1
LEFT JOIN adm_encounter AS ambae ON ae.amb_encounter_id = ambae.ID
LEFT JOIN adm_organization AS ao ON ao.ID = ambae.organization_id
AND ao.delete_flag = '0'
@@ -142,7 +142,7 @@
LEFT JOIN adm_account AS aa
ON aa.encounter_id = ae.ID
AND aa.delete_flag = '0'
AND aa.type_code = #{accountType}
AND aa.encounter_flag = 1
WHERE ae.ID = #{encounterId}
</select>

View File

@@ -707,6 +707,30 @@ async function getListInfo(addNewRow) {
}
prescription.prescriptionList = groupedData[groupId];
// 🔧 BugFix#669: 从分组数据的第一条提取处方头字段回显
const firstItem = groupedData[groupId]?.[0];
if (firstItem) {
if (firstItem.accountId !== undefined && firstItem.accountId !== null) {
prescription.accountId = firstItem.accountId;
}
if (firstItem.methodCode !== undefined && firstItem.methodCode !== null) {
prescription.methodCode = firstItem.methodCode;
}
if (firstItem.rateCode !== undefined && firstItem.rateCode !== null) {
prescription.rateCode = firstItem.rateCode;
}
if (firstItem.dispensePerDuration !== undefined && firstItem.dispensePerDuration !== null) {
prescription.dispensePerDuration = firstItem.dispensePerDuration;
}
if (firstItem.chineseHerbsDoseQuantity !== undefined && firstItem.chineseHerbsDoseQuantity !== null) {
prescription.chineseHerbsDoseQuantity = firstItem.chineseHerbsDoseQuantity;
}
if (firstItem.sufferingFlag !== undefined && firstItem.sufferingFlag !== null) {
prescription.sufferingFlag = firstItem.sufferingFlag;
}
}
return prescription;
});

View File

@@ -32,8 +32,7 @@
<div class="table-container">
<vxe-table
:data="treatHospitalizedData"
style="width: 100%"
height="100%"
min-width="900px"
show-overflow="title"
>
<vxe-column
@@ -44,15 +43,18 @@
/>
<vxe-column
field="patientName"
min-width="100"
align="center"
title="患者姓名"
/>
<vxe-column
field="genderEnum_enumText"
width="70"
title="性别"
align="center"
/>
<vxe-column
width="80"
title="年龄"
align="center"
>
@@ -76,16 +78,19 @@
</vxe-column>
<vxe-column
field="requestTime"
min-width="160"
align="center"
title="申请时间"
/>
<vxe-column
field="sourceName"
min-width="120"
align="center"
title="申请来源"
/>
<vxe-column
field="wardName"
min-width="120"
align="center"
title="入院病区"
/>
@@ -267,6 +272,7 @@ getList();
}
.table-container {
padding: 8px 16px;
overflow-x: auto;
}
}
</style>

View File

@@ -149,7 +149,7 @@ const router = useRouter();
const emits = defineEmits(['okAct', 'cancelAct']);
const props = defineProps({
title: '',
title: { type: String, default: '' },
registrationType: {
type: [String, Boolean, Number], // 根据实际类型调整
default: null, // 或者 false、'' 等
@@ -466,7 +466,7 @@ const handleEditSubmit = () => {
inWayCode: formData.inWayCode,
startTime: formData.startTime,
contractNo: formData.contractNo,
typeCoce: formData.typeCoce,
typeCode: formData.typeCode,
};
updateRegistration(params).then((res) => {
if (res.code == 200) {

View File

@@ -53,4 +53,26 @@ export function cancel(data) {
method: 'put',
data: data
})
}
/**
* 医嘱执行
*/
export function adviceExecute(data) {
return request({
url: '/nurse-station/advice-process/advice-execute',
method: 'post',
data: data
})
}
/**
* 医嘱不执行
*/
export function adviceNoExecute(data) {
return request({
url: '/nurse-station/advice-process/advice-void',
method: 'put',
data: data
})
}

View File

@@ -395,7 +395,7 @@
</template>
<script setup>
import {ref, computed, getCurrentInstance} from 'vue';
import {adviceVerify, cancel, getPrescriptionList} from './api';
import {adviceVerify, cancel, adviceExecute, adviceNoExecute, getPrescriptionList} from './api';
import {patientInfoList} from '../../components/store/patient.js';
import {formatDateStr} from '@/utils/index';
import {RequestStatus} from '@/utils/medicalConstants';