From 0dd31e262d5d1463ea7bda539b6686aed3cdf09f Mon Sep 17 00:00:00 2001 From: wangsq Date: Wed, 26 Aug 2026 17:14:30 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=A4=84=E6=96=B9=E5=BC=80=E5=8D=95?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=95=B0=E6=8D=AE=E8=B0=83=E6=95=B4=EF=BC=8C?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=8E=A5=E5=8F=A3=E8=B0=83=E7=94=A8=E9=99=90?= =?UTF-8?q?=E5=88=B6=E5=92=8C=E7=A9=BA=E6=95=B0=E6=8D=AE=E5=A4=84=E7=90=86?= =?UTF-8?q?=E3=80=82=202=E3=80=81=E6=96=B0=E5=A2=9E=E8=8D=AF=E5=93=81?= =?UTF-8?q?=E5=8D=95=E4=BD=8D=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ynxbd/common/action/pay/AliPayAction.java | 2 +- .../com/ynxbd/common/action/xk/XKAction.java | 17 ++++++--- .../ynxbd/common/bean/pay/PayCasebook.java | 8 ---- .../com/ynxbd/common/bean/xk/HisRxDrug.java | 4 +- .../com/ynxbd/common/dao/his/HisXKDao.java | 38 ++++++++++++------- .../com/ynxbd/wx/utils/DesEncryptHelper.java | 13 ++++--- 6 files changed, 47 insertions(+), 35 deletions(-) diff --git a/src/main/java/com/ynxbd/common/action/pay/AliPayAction.java b/src/main/java/com/ynxbd/common/action/pay/AliPayAction.java index 5789437..8414d03 100644 --- a/src/main/java/com/ynxbd/common/action/pay/AliPayAction.java +++ b/src/main/java/com/ynxbd/common/action/pay/AliPayAction.java @@ -73,7 +73,7 @@ public class AliPayAction extends BaseAction { case IN_HOSP: boolean isOK = new InHospService().inHospNotify(MerchantEnum.ALI, openid, totalFee, outTradeNo, bankTransNo, payDate, payTime, payInfo); - log.info("【微信】[住院预交金] 预存{}", (isOK ? "成功" : "失败")); + log.info("【支付宝】[住院预交金] 预存{}", (isOK ? "成功" : "失败")); break; default: diff --git a/src/main/java/com/ynxbd/common/action/xk/XKAction.java b/src/main/java/com/ynxbd/common/action/xk/XKAction.java index bbef57d..cc8341c 100644 --- a/src/main/java/com/ynxbd/common/action/xk/XKAction.java +++ b/src/main/java/com/ynxbd/common/action/xk/XKAction.java @@ -4,9 +4,11 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.ynxbd.common.action.base.BaseAction; import com.ynxbd.common.dao.his.HisXKDao; +import com.ynxbd.common.result.JsonResult; import com.ynxbd.common.result.Result; import com.ynxbd.common.result.ResultEnum; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.ObjectUtils; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Namespace; @@ -17,7 +19,6 @@ import java.util.List; @Namespace("/xk") public class XKAction extends BaseAction { - @Action("getRxDict") public Result getRxDict(String callNo, String type) { if (!"xbd2026".equals(callNo)) { @@ -32,6 +33,7 @@ public class XKAction extends BaseAction { return Result.success(dataList); } + @Action("createHisRx") public Result createHisRx() { JSONObject body = getBody(); @@ -49,17 +51,20 @@ public class XKAction extends BaseAction { String bzName = body.getString("bzName"); JSONArray rxJsonArr = body.getJSONArray("rxJsonArr"); - log.info("[开方] doctCode={}, treatNum={}", doctCode, treatNum); - if (doctCode == null || treatNum == null) { + log.info("[开方]doctCode={}, treatNum={}, rxType={}", doctCode, treatNum, rxType); + if (ObjectUtils.isEmpty(doctCode) || ObjectUtils.isEmpty(treatNum) || ObjectUtils.isEmpty(rxType)) { return Result.error(ResultEnum.PARAM_IS_DEFECT); } System.out.println(rxJsonArr); - - if (rxJsonArr == null) { + if (rxJsonArr.isEmpty()) { return Result.error(ResultEnum.PARAM_IS_DEFECT); } - new HisXKDao().createHisRx(doctCode, treatNum, rxType, diagnose, weight, note, ybAttrib, bzCode, bzName, rxJsonArr); + + JsonResult resp = new HisXKDao().createHisRx(doctCode, treatNum, rxType, diagnose, weight, note, ybAttrib, bzCode, bzName, rxJsonArr); + if (!resp.success()) { + return Result.error(resp.getMessage()); + } return Result.success(); } diff --git a/src/main/java/com/ynxbd/common/bean/pay/PayCasebook.java b/src/main/java/com/ynxbd/common/bean/pay/PayCasebook.java index 76e58e8..75228d6 100644 --- a/src/main/java/com/ynxbd/common/bean/pay/PayCasebook.java +++ b/src/main/java/com/ynxbd/common/bean/pay/PayCasebook.java @@ -14,28 +14,20 @@ import java.util.Date; public class PayCasebook extends Order { // 住院号 private String treatNum; - // 申请人姓名 private String patientName; - // 模板ID private String useToNo; - // 模板名称 private String useToName; - // 获取方式:0自提; 1邮寄 private int getWay; - // 地址 private String address; - // 联系电话 (邮寄时的联系电话) private String phone; - // 病历预约申请id(唯一) private String applyId; - // 申请时间 private Date applyTime; diff --git a/src/main/java/com/ynxbd/common/bean/xk/HisRxDrug.java b/src/main/java/com/ynxbd/common/bean/xk/HisRxDrug.java index 658712c..b62eff8 100644 --- a/src/main/java/com/ynxbd/common/bean/xk/HisRxDrug.java +++ b/src/main/java/com/ynxbd/common/bean/xk/HisRxDrug.java @@ -19,8 +19,8 @@ public class HisRxDrug { private String productPlace; // UnitName 单位名称 private String unitName; - // UnitName 最小单位名称 - private String minUnitName; + // UnitName 最小单位名称(片、粒) + private String unitNameMin; // Persent 批零比 private Double persent; // YPJL 药品剂量 diff --git a/src/main/java/com/ynxbd/common/dao/his/HisXKDao.java b/src/main/java/com/ynxbd/common/dao/his/HisXKDao.java index 44b7329..d25d4e4 100644 --- a/src/main/java/com/ynxbd/common/dao/his/HisXKDao.java +++ b/src/main/java/com/ynxbd/common/dao/his/HisXKDao.java @@ -2,7 +2,6 @@ package com.ynxbd.common.dao.his; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; -import com.google.gson.JsonArray; import com.ynxbd.common.bean.xk.HisRxAdmRoute; import com.ynxbd.common.bean.xk.HisRxDrug; import com.ynxbd.common.bean.xk.HisRxPharmDict; @@ -16,7 +15,6 @@ import org.apache.commons.lang3.ObjectUtils; import java.util.ArrayList; import java.util.List; -import java.util.Set; @Slf4j public class HisXKDao { @@ -41,19 +39,33 @@ public class HisXKDao { } public JsonResult createHisRx(String doctCode, String treatNum, String rxType, String diagnose, String weight, String note, String ybAttrib, String bzCode, String bzName, JSONArray rxJsonArr) { + for (int i = 0; i < rxJsonArr.size(); i++) { + JSONObject item = rxJsonArr.getJSONObject(i); + if (item == null) { + continue; + } + String yblb = item.getString("YBLB"); + if (ObjectUtils.isEmpty(yblb)) { + item.put("YBLB", ""); + } + String yblbName = item.getString("YBLBNAME"); + if (ObjectUtils.isEmpty(yblbName)) { + item.put("YBLBNAME", ""); + } + } JsonResult jsonResult = HisFactory.His().getJsonResult(HisEnum.HIS_XK_RX_CREATE, params -> { - params.put("YSCode", doctCode); // 开单医生编码 - params.put("MZNum", treatNum); // 门诊号 - params.put("CFType", rxType); // 处方类型 [1:西药] - params.put("MZDiagnose", diagnose); // 处方诊断 - params.put("Weight", weight); // 体重 - params.put("Note", note); // 备注 - params.put("YBAttrib", ybAttrib); // 医保类别 - params.put("BZCode", bzCode); // 病种编码 - params.put("BZName", bzName); // 病种名称 - params.put("Jarray", HisFactory.jsonArrayToXml(rxJsonArr)); + params.put("YSCode", doctCode); // 开单医生编码 + params.put("MZNum", treatNum); // 门诊号 + params.put("CFType", rxType); // 处方类型 [1:西药] + params.put("MZDiagnose", diagnose); // 处方诊断 + params.put("Weight", weight); // 体重 + params.put("Note", ObjectUtils.isEmpty(note) ? "" : note); // 备注 + params.put("YBAttrib", ybAttrib); // 医保类别 + params.put("BZCode", bzCode); // 病种编码 + params.put("BZName", bzName); // 病种名称 + params.put("Jarray", JsonHelper.toJsonString(rxJsonArr)); }); log.info("[开方]返回 resp={}", JsonHelper.toJsonString(jsonResult.getDataMap())); - return null; + return jsonResult; } } diff --git a/src/main/java/com/ynxbd/wx/utils/DesEncryptHelper.java b/src/main/java/com/ynxbd/wx/utils/DesEncryptHelper.java index 2fd3b64..81d9664 100644 --- a/src/main/java/com/ynxbd/wx/utils/DesEncryptHelper.java +++ b/src/main/java/com/ynxbd/wx/utils/DesEncryptHelper.java @@ -69,10 +69,13 @@ public class DesEncryptHelper { } -// public static void main(String[] args) throws Exception { -// String s = enCode("oeso-t62kkoRwLVVkSkwmmjPfUXk"); -// String a = deCode("2235AE2E1563DF971CBF4C3F2D4DC06F1D0AA3BF5EA65B865C5DF0E0694DF3FFBA5360D9607A60F80CC71F9C7D7E8F241E00310C63D5C5B414D5FEB43A0B2E7A2AA335CD601DB3727BAF0DFEDB48388CFEA7A8301CDEAA42817F7316E6CBF0B7AC2671148FCA0E2DA337CF664C0C4FD85F7D799D496125D2186D82889E6B81D25107616591DDC46D"); -// System.out.println(a); -// } + public static void main(String[] args) throws Exception { + String a = deCode("6ADACF5B7F310CC25598CCCD233DB1535D6ED4C5C1ED33EB7FB6EA58AAE4762E08E31B22C5B2C3CEE4C71A276C3162255B686984C447887E2053C9C89917CE7C5213744A91F02D8F948A6236562EC17CFDD2A7F66C501229A15D2957CA0E572FC716999C0E41244AB4132CF1504CC2178F6A7B6D60248C97B0AF59BDCFCF9138DB6DA413DBBA92BFA0A759D3930C4920"); + System.out.println(a); + + System.out.println(enCode("oqsq-vyMNxdWrlZFkbigCre0PM8s")); + System.out.println(enCode("oeso-t62kkoRwLVVkSkwmmjPfUXk")); + System.out.println(enCode("oeso-t9o2Wc3wV-CkOqmT6HLkM7c")); + } }