diff --git a/src/main/java/com/docus/server/AppRunBootstrap.java b/src/main/java/com/docus/server/AppRunBootstrap.java index b1e2b1b..322013c 100644 --- a/src/main/java/com/docus/server/AppRunBootstrap.java +++ b/src/main/java/com/docus/server/AppRunBootstrap.java @@ -1,6 +1,8 @@ package com.docus.server; +import com.docus.core.util.SpringUtils; +import com.docus.server.rpc.SdRyHospitalRpc; import lombok.extern.slf4j.Slf4j; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; @@ -21,5 +23,6 @@ public class AppRunBootstrap { props.setProperty("UseSunHttpHandler", "true"); System.setProperty("javax.xml.parsers.DocumentBuilderFactory", "com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl"); SpringApplication.run(AppRunBootstrap.class, args); + SpringUtils.getBean(SdRyHospitalRpc.class).confirmAndUpdIcuRecordState("100860",11); } } diff --git a/src/main/java/com/docus/server/rpc/SdRyHospitalRpc.java b/src/main/java/com/docus/server/rpc/SdRyHospitalRpc.java new file mode 100644 index 0000000..90d13f2 --- /dev/null +++ b/src/main/java/com/docus/server/rpc/SdRyHospitalRpc.java @@ -0,0 +1,13 @@ +package com.docus.server.rpc; + +import com.docus.infrastructure.web.api.CommonResult; + +public interface SdRyHospitalRpc { + /** + * 确认患者是否重症病人,并标识重症病人状态, + * @param inpatientNo 住院号 + * @param admissTimes 住院次数 + */ + CommonResult confirmAndUpdIcuRecordState(String inpatientNo,Integer admissTimes); + +} diff --git a/src/main/java/com/docus/server/rpc/impl/SdRyHospitalRpcImpl.java b/src/main/java/com/docus/server/rpc/impl/SdRyHospitalRpcImpl.java new file mode 100644 index 0000000..219531e --- /dev/null +++ b/src/main/java/com/docus/server/rpc/impl/SdRyHospitalRpcImpl.java @@ -0,0 +1,38 @@ +package com.docus.server.rpc.impl; + +import cn.hutool.http.HttpUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.TypeReference; +import com.docus.infrastructure.web.api.CommonResult; +import com.docus.server.rpc.SdRyHospitalRpc; +import com.docus.server.rpc.util.HttpUrlUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.Map; + +@Service +@Slf4j +public class SdRyHospitalRpcImpl implements SdRyHospitalRpc { + @Value("${docus.basic.confirmAndUpdIcuRecordStateUrl:}") + private String confirmAndUpdIcuRecordStateUrl; + + @Override + public CommonResult confirmAndUpdIcuRecordState(String inpatientNo, Integer admissTimes) { + Map param = new HashMap<>(2); + param.put("inpatientNo",inpatientNo); + param.put("admissTimes",admissTimes.toString()); + try { + String url = HttpUrlUtil.addUrlParam(confirmAndUpdIcuRecordStateUrl, param); + log.info("确认重症患者并修改标识,接口{}",url); + String resp = HttpUtil.get(url); + log.info("确认重症患者并修改标识,接口返回:{}",resp); + return JSON.parseObject(resp,new TypeReference>(){}); + }catch (Exception ex){ + log.error(ex.getMessage(),ex); + return null; + } + } +} diff --git a/src/main/java/com/docus/server/rpc/util/HttpUrlUtil.java b/src/main/java/com/docus/server/rpc/util/HttpUrlUtil.java new file mode 100644 index 0000000..009581e --- /dev/null +++ b/src/main/java/com/docus/server/rpc/util/HttpUrlUtil.java @@ -0,0 +1,49 @@ +package com.docus.server.rpc.util; + +import com.docus.core.util.Func; + +import java.util.HashMap; +import java.util.Map; + +public class HttpUrlUtil { + /** + * 添加url参数 + * + * @param url url + * @param param 参数 + * @return 处理过后的url + */ + public static String addUrlParam(String url, Map param) { + if (Func.isEmpty(param)) { + return url; + } + StringBuilder urlBuilder = new StringBuilder(url); + // url已经添加过参数的标记 + String addFlag = "?"; + // url 参数连接符号,如果没有添加过,连接符号置为空 + String connect = "&"; + if (!url.contains(addFlag)) { + urlBuilder.append("?"); + connect = ""; + } + + for (Map.Entry entry : param.entrySet()) { + String key = entry.getKey(); + String value = entry.getValue(); + urlBuilder.append(connect).append(key).append("=").append(value); + // 添加过参数,连接符置为& + connect = "&"; + + } + return urlBuilder.toString(); + } + + public static void main(String[] args) { + System.out.println(addUrlParam("http://www.baidu.com", null)); + System.out.println(addUrlParam("http://www.baidu.com?word=1", null)); + HashMap stringStringHashMap = new HashMap<>(); + stringStringHashMap.put("en","some"); + System.out.println(addUrlParam("http://www.baidu.com", stringStringHashMap)); + System.out.println(addUrlParam("http://www.baidu.com?word=1", stringStringHashMap)); + } +} diff --git a/src/main/resources/bootstrap.yml b/src/main/resources/bootstrap.yml index b455271..7f5e6f3 100644 --- a/src/main/resources/bootstrap.yml +++ b/src/main/resources/bootstrap.yml @@ -98,6 +98,8 @@ docus: basic: # 护理审批 nisApproveUrl: http://192.168.16.85:9102/qc/tBasicCqc/cqcAudit?hp=token1 + # 确认重症状态并更新 + confirmAndUpdIcuRecordStateUrl: http://127.0.0.1:9314/hospital/sdRy/confirmAndupdIcuRecordState mybatis-plus: configuration: map-underscore-to-camel-case: true