1、处方开单接口数据调整,新增接口调用限制和空数据处理。

2、新增药品单位返回
debug
王绍全 6 days ago
parent b5fd7f20c7
commit 0dd31e262d
  1. 2
      src/main/java/com/ynxbd/common/action/pay/AliPayAction.java
  2. 17
      src/main/java/com/ynxbd/common/action/xk/XKAction.java
  3. 8
      src/main/java/com/ynxbd/common/bean/pay/PayCasebook.java
  4. 4
      src/main/java/com/ynxbd/common/bean/xk/HisRxDrug.java
  5. 22
      src/main/java/com/ynxbd/common/dao/his/HisXKDao.java
  6. 13
      src/main/java/com/ynxbd/wx/utils/DesEncryptHelper.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:

@ -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();
}

@ -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;

@ -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 药品剂量

@ -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("Note", ObjectUtils.isEmpty(note) ? "" : note); // 备注
params.put("YBAttrib", ybAttrib); // 医保类别
params.put("BZCode", bzCode); // 病种编码
params.put("BZName", bzName); // 病种名称
params.put("Jarray", HisFactory.jsonArrayToXml(rxJsonArr));
params.put("Jarray", JsonHelper.toJsonString(rxJsonArr));
});
log.info("[开方]返回 resp={}", JsonHelper.toJsonString(jsonResult.getDataMap()));
return null;
return jsonResult;
}
}

@ -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"));
}
}

Loading…
Cancel
Save