From adae04f01f27d11403ffb7567b2a76ce49684433 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=8E=E4=BD=97?= Date: Sat, 13 Jun 2026 19:57:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=8E=92=E9=99=A4fastjson=E4=BC=A0?= =?UTF-8?q?=E9=80=92=E4=BE=9D=E8=B5=96=20+=20=E6=81=A2=E5=A4=8DBug#741?= =?UTF-8?q?=E8=A2=AB=E9=94=99=E8=AF=AF=E4=BF=AE=E6=94=B9=E7=9A=84=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...WesternMedicineDispenseAppServiceImpl.java | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/pharmacymanage/appservice/impl/WesternMedicineDispenseAppServiceImpl.java b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/pharmacymanage/appservice/impl/WesternMedicineDispenseAppServiceImpl.java index 4ba299945..bbad3414f 100755 --- a/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/pharmacymanage/appservice/impl/WesternMedicineDispenseAppServiceImpl.java +++ b/healthlink-his-server/healthlink-his-application/src/main/java/com/healthlink/his/web/pharmacymanage/appservice/impl/WesternMedicineDispenseAppServiceImpl.java @@ -1,6 +1,8 @@ package com.healthlink.his.web.pharmacymanage.appservice.impl; -import com.alibaba.fastjson.JSONArray; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ArrayNode; +import com.fasterxml.jackson.databind.node.ObjectNode; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -155,8 +157,6 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi // 发药状态 List dispenseStatusOptions = new ArrayList<>(); - dispenseStatusOptions.add(new DispenseStatusOption(DispenseStatus.DRAFT.getValue(), - DispenseStatus.DRAFT.getInfo())); dispenseStatusOptions.add(new DispenseStatusOption(DispenseStatus.SUBMITTED.getValue(), DispenseStatus.SUBMITTED.getInfo())); dispenseStatusOptions.add(new DispenseStatusOption(DispenseStatus.IN_PROGRESS.getValue(), @@ -197,8 +197,7 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi = westernMedicineDispenseMapper.selectEncounterInfoListPage(new Page<>(pageNo, pageSize), queryWrapper, statusEnum, DispenseStatus.IN_PROGRESS.getValue(), DispenseStatus.COMPLETED.getValue(), DispenseStatus.PREPARATION.getValue(), DispenseStatus.PREPARED.getValue(), - DispenseStatus.SUMMARIZED.getValue(), DispenseStatus.SUBMITTED.getValue(), - DispenseStatus.DRAFT.getValue()); + DispenseStatus.SUMMARIZED.getValue(), DispenseStatus.SUBMITTED.getValue()); encounterInfoPage.getRecords().forEach(encounterInfo -> { // 性别 encounterInfo.setGenderEnum_enumText( @@ -237,7 +236,7 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi DispenseStatus.IN_PROGRESS.getValue(), DispenseStatus.COMPLETED.getValue(), DispenseStatus.PREPARATION.getValue(), DispenseStatus.PREPARED.getValue(), dispenseStatus, PublicationStatus.ACTIVE.getValue(), DispenseStatus.SUMMARIZED.getValue(), - DispenseStatus.SUBMITTED.getValue(), DispenseStatus.DRAFT.getValue()); + DispenseStatus.SUBMITTED.getValue()); medicineDispenseOrderPage.getRecords().forEach(medicineDispenseOrder -> { // 发药状态 medicineDispenseOrder.setStatusEnum_enumText( @@ -496,7 +495,7 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi String returnMsg = null; List uploadFailedNoList; // 调用医保商品销售接口 - String ybSwitch = SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.YB_SWITCH); // 医保开关 + String ybSwitch = SecurityUtils.getLoginUser().getOptionJsonValue(CommonConstants.Option.YB_SWITCH); // 医保开关 if (Whether.YES.getCode().equals(ybSwitch)) { // 设置进销存参数 List medicationDefinitions = medicationDefinitionService.listByIds( @@ -677,14 +676,14 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi // throw new ServiceException("未查找到就诊发票信息"); // } // 转换为JSON - JSONArray medicalTraceNo = new JSONArray(); + ArrayNode medicalTraceNo = new com.fasterxml.jackson.databind.ObjectMapper().createArrayNode(); // 获取追溯码信息 if (dispenseInventoryDto.getTraceNo() != null) { List traceNoList = Arrays.stream(dispenseInventoryDto.getTraceNo().split(CommonConstants.Common.COMMA)).map(String::trim) .filter(s -> !s.isEmpty()).toList(); for (String traceNo : traceNoList) { - Map traceNoMap = new HashMap<>(); + ObjectNode traceNoMap = new com.fasterxml.jackson.databind.ObjectMapper().createObjectNode(); traceNoMap.put("drug_trac_codg", traceNo); medicalTraceNo.add(traceNoMap); } @@ -708,7 +707,7 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi } // 查看所属医院 String fixmedinsCode - = SecurityUtils.getLoginUser().getOptionJson().getString(CommonConstants.Option.FIXMEDINS_CODE); + = SecurityUtils.getLoginUser().getOptionJsonValue(CommonConstants.Option.FIXMEDINS_CODE); if (dispenseInventoryDto.getPreparerName() == null && HospitalCodeEnum.CCU.getCode().equals(fixmedinsCode)) { medical3505Param.setSelRetnOpterName(CommonConstants.CCU.DisDeviceDoctorName); } else {