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

This commit is contained in:
2026-02-02 16:28:39 +08:00
3 changed files with 37 additions and 5 deletions

View File

@@ -192,3 +192,17 @@ export function getProvincesAndCities(encounterId) {
method: 'get', method: 'get',
}); });
} }
// 获取所有病区
export function getAllWards(params = {}) {
return request({
url: '/base-data-manage/location/location-page',
method: 'get',
params: {
pageNum: params.pageNum ?? 1,
pageSize: params.pageSize ?? 1000,
formEnum: params.formEnum ?? 4,
...params,
},
});
}

View File

@@ -202,6 +202,7 @@
<script setup> <script setup>
import { import {
diagnosisInit, diagnosisInit,
getAllWards,
getBedInfo, getBedInfo,
getContractList, getContractList,
getDiagnosisDefinitionList, getDiagnosisDefinitionList,
@@ -423,12 +424,29 @@ function handleWardClick(item) {
} }
function getInitOptions() { function getInitOptions() {
getOrgList().then((res) => { // 获取所有科室
// 直接从records中过滤而不是从records[0].children const orgPromise = getOrgList();
organization.value = res.data.records.filter( // 获取所有病区
const wardPromise = getAllWards();
Promise.all([orgPromise, wardPromise]).then(([orgRes, wardRes]) => {
const allOrgs = orgRes.data.records.filter(
(record) => record.typeEnum === 2 && checkClassEnumValue(record.classEnum, 2) (record) => record.typeEnum === 2 && checkClassEnumValue(record.classEnum, 2)
); );
const allWards = wardRes.data.records || [];
// 提取所有病区关联的科室ID
const linkedOrgIds = new Set();
allWards.forEach((ward) => {
if (ward.organizationId) {
linkedOrgIds.add(ward.organizationId);
}
}); });
// 过滤出与病区关联过的科室
organization.value = allOrgs.filter((org) => linkedOrgIds.has(org.id));
});
// if (!props.noFile) { // if (!props.noFile) {
// wardList().then((res) => { // wardList().then((res) => {
// wardListOptions.value = res.data; // wardListOptions.value = res.data;

View File

@@ -811,7 +811,7 @@ onMounted(async () => {
code: item.code, code: item.code,
name: item.name, name: item.name,
type: item.type, type: item.type,
selected: true, selected: item.selected ?? true,
department: item.department || '', department: item.department || '',
number: item.number || '999999', number: item.number || '999999',
remark: item.remark || '', remark: item.remark || '',
@@ -930,7 +930,7 @@ async function loadMenuData(menu) {
code: item.code, code: item.code,
name: item.name, name: item.name,
type: item.type, type: item.type,
selected: true, selected: item.selected ?? true,
department: item.department || '', department: item.department || '',
number: item.number || '999999', number: item.number || '999999',
remark: item.remark || '', remark: item.remark || '',