diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/appservice/impl/PatientHomeAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/appservice/impl/PatientHomeAppServiceImpl.java index bcce9231..48acbea7 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/appservice/impl/PatientHomeAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/appservice/impl/PatientHomeAppServiceImpl.java @@ -69,7 +69,8 @@ public class PatientHomeAppServiceImpl implements IPatientHomeAppService { // 分页查询,查询患者信息 IPage patientHomeInfoPage = patientHomeAppMapper.getPage(new Page<>(pageNo, pageSize), - patientHomeSearchParam.getStatusEnum(), patientHomeSearchParam.getPatientId(), searchKey, queryWrapper); + patientHomeSearchParam.getStatusEnum(), patientHomeSearchParam.getPatientId(), searchKey, + patientHomeSearchParam.getNursingLevelList(), queryWrapper); patientHomeInfoPage.getRecords().forEach(e -> { // 护理级别 diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/controller/PatientHomeController.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/controller/PatientHomeController.java index 017cb850..8f2351eb 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/controller/PatientHomeController.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/controller/PatientHomeController.java @@ -11,6 +11,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.Date; +import java.util.List; /** * 患者首页 应用实现 @@ -36,7 +37,11 @@ public class PatientHomeController { public R getPatientInfoInit(PatientHomeSearchParam patientHomeSearchParam, @RequestParam(value = "searchKey", defaultValue = "") String searchKey, @RequestParam(value = "pageNo", defaultValue = "1") Integer pageNo, - @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest request) { + @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize, + @RequestParam(value = "nursingLevelList", required = false) List nursingLevelList, + HttpServletRequest request) { + // 将护理级别列表设置到查询参数中 + patientHomeSearchParam.setNursingLevelList(nursingLevelList); return patientHomeAppService.getPatientInfoInit(patientHomeSearchParam, searchKey, pageNo, pageSize, request); } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/dto/PatientHomeSearchParam.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/dto/PatientHomeSearchParam.java index 378871b3..629593a6 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/dto/PatientHomeSearchParam.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/dto/PatientHomeSearchParam.java @@ -3,6 +3,8 @@ package com.openhis.web.inpatientmanage.dto; import lombok.Data; import lombok.experimental.Accessors; +import java.util.List; + /** * 患者首页查询参数 * @@ -19,4 +21,7 @@ public class PatientHomeSearchParam { /** 患者ID */ private Long patientId; + /** 护理级别列表(多选) */ + private List nursingLevelList; + } diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/mapper/PatientHomeAppMapper.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/mapper/PatientHomeAppMapper.java index 71e435cf..cddbc59e 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/mapper/PatientHomeAppMapper.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/inpatientmanage/mapper/PatientHomeAppMapper.java @@ -27,10 +27,13 @@ public interface PatientHomeAppMapper { * @param statusEnum 状态编码 * @param patientId 患者ID * @param searchKey 查询条件 + * @param nursingLevelList 护理级别列表 + * @param queryWrapper 查询wrapper * @return 住院登记信息 */ IPage getPage(@Param("page") Page page, @Param("statusEnum") Integer statusEnum, @Param("patientId") Long patientId, @Param("searchKey") String searchKey, + @Param("nursingLevelList") List nursingLevelList, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); /** diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/inpatientmanage/PatientHomeAppMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/inpatientmanage/PatientHomeAppMapper.xml index e6685204..43a26ecf 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/inpatientmanage/PatientHomeAppMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/inpatientmanage/PatientHomeAppMapper.xml @@ -242,6 +242,14 @@ ) ) + + -- 护理级别筛选(多选) + + AND T2.priority_enum IN + + #{level} + + ) patient_base ) ranked_result WHERE rn = 1 diff --git a/openhis-ui-vue3/src/utils/openhis.js b/openhis-ui-vue3/src/utils/openhis.js index f349a62b..137206bd 100644 --- a/openhis-ui-vue3/src/utils/openhis.js +++ b/openhis-ui-vue3/src/utils/openhis.js @@ -241,11 +241,21 @@ export function tansParams(params) { var part = encodeURIComponent(propName) + "="; if (value !== null && value !== "" && typeof (value) !== "undefined") { if (typeof value === 'object') { - for (const key of Object.keys(value)) { - if (value[key] !== null && value[key] !== "" && typeof (value[key]) !== 'undefined') { - let params = propName + '[' + key + ']'; - var subPart = encodeURIComponent(params) + "="; - result += subPart + encodeURIComponent(value[key]) + "&"; + // 处理数组类型 + if (Array.isArray(value)) { + for (const item of value) { + if (item !== null && item !== "" && typeof (item) !== 'undefined') { + result += part + encodeURIComponent(item) + "&"; + } + } + } else { + // 处理对象类型 + for (const key of Object.keys(value)) { + if (value[key] !== null && value[key] !== "" && typeof (value[key]) !== 'undefined') { + let params = propName + '[' + key + ']'; + var subPart = encodeURIComponent(params) + "="; + result += subPart + encodeURIComponent(value[key]) + "&"; + } } } } else { diff --git a/openhis-ui-vue3/src/views/inpatientNurse/home/index.vue b/openhis-ui-vue3/src/views/inpatientNurse/home/index.vue index 60179331..9019a2b4 100644 --- a/openhis-ui-vue3/src/views/inpatientNurse/home/index.vue +++ b/openhis-ui-vue3/src/views/inpatientNurse/home/index.vue @@ -26,14 +26,12 @@ > - + {{ item.label }} @@ -187,7 +185,7 @@ const data = reactive({ pageNo: 1, pageSize: 10, searchKey: undefined, // 品名/商品名/英文品名/编码/拼音 - checkboxGroup2: [], // 类型(包括 1:中药,2:成药) + nursingLevelList: [], // 护理级别列表(多选) statusEnum: 1, // 状态 }, rules: {},