新增版纳精神病院问卷系统对接

debug
李进才 2 years ago
parent dfb91f9fe4
commit d806206d4d
  1. 26
      src/main/java/com/ynxbd/common/action/PatientAction.java
  2. 35
      src/main/java/com/ynxbd/common/action/PushAction.java
  3. 2
      src/main/java/com/ynxbd/common/bean/Patient.java
  4. 36
      src/main/java/com/ynxbd/common/bean/PatientLink.java
  5. 14
      src/main/java/com/ynxbd/common/dao/PatientDao.java
  6. 5
      src/main/java/com/ynxbd/common/helper/xbd/XBDHttpHelper.java
  7. 7
      src/main/java/com/ynxbd/wx/config/MessagePushConfig.java
  8. 2
      src/main/java/com/ynxbd/wx/wxfactory/ReqParamHelper.java
  9. 1
      src/main/resources/message-push.properties

@ -2,13 +2,11 @@ package com.ynxbd.common.action;
import com.ynxbd.common.action.base.BaseAction;
import com.ynxbd.common.bean.Patient;
import com.ynxbd.common.bean.PatientLink;
import com.ynxbd.common.bean.enums.HCardTypeEnum;
import com.ynxbd.common.dao.PatientDao;
import com.ynxbd.common.dao.his.HisPatientDao;
import com.ynxbd.common.helper.common.Base64Helper;
import com.ynxbd.common.helper.common.DateHelper;
import com.ynxbd.common.helper.common.SmsHelper;
import com.ynxbd.common.helper.common.ValidHelper;
import com.ynxbd.common.helper.common.*;
import com.ynxbd.common.result.JsonResult;
import com.ynxbd.common.result.Result;
import com.ynxbd.common.result.ResultEnum;
@ -112,6 +110,26 @@ public class PatientAction extends BaseAction {
return Result.success(patients);
}
/**
* [患者] 外部对接-根据openId查询患者信息
* @param openid openId
* @param organizeName 组织机构代码
* @return 返回患者信息
*/
@Action("getPatientsByOpenid")
public Result getPatientsByOpenid(String openid,String organizeName) {
log.info("[患者]根据openid查询信息 openid={}", openid);
organizeName = AesHelper.deCode(organizeName);
if(organizeName==null){
return Result.error(ResultEnum.PERMISSION_NO_ACCESS);
}
if (openid == null) {
return Result.error(ResultEnum.PARAM_IS_BLANK);
}
List<PatientLink> patients = new PatientDao().selectPatientsByOpenid(openid);
return Result.success(patients);
}
/**
* [患者]获取关联的openid

@ -0,0 +1,35 @@
package com.ynxbd.common.action;
import com.ynxbd.common.action.base.BaseAction;
import com.ynxbd.common.helper.common.JsonHelper;
import com.ynxbd.common.helper.http.OkHttpHelper;
import com.ynxbd.common.result.Result;
import com.ynxbd.wx.config.MessagePushConfig;
import lombok.extern.slf4j.Slf4j;
import okhttp3.FormBody;
import okhttp3.RequestBody;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
/**
* @author 李进才
* @ClassName PushAction
* @Description 消息推送交互接口
* @date 2023/05/08 15:51:00
*/
@Slf4j
@Namespace("/push")
public class PushAction extends BaseAction {
@Action("getRedis")
public Result getRedis(String name) {
RequestBody requestBody = new FormBody.Builder()
.add("name",name)
.build();
String url = MessagePushConfig.HOST_URL+"api/getRedis";
String requestResult = OkHttpHelper.post(url,requestBody);
log.info("[获取推送缓存]requestResult-{},url-{}",requestResult,url);
return Result.success(JsonHelper.parseObject(requestResult));
}
}

@ -19,8 +19,8 @@ import java.io.Serializable;
public class Patient implements Serializable {
private static final long serialVersionUID = 9966666612123151L;
private Long id;
private String openid;
private String unionId;
private String openid;
private String patientId;
private String name;
private String sex;

@ -0,0 +1,36 @@
package com.ynxbd.common.bean;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import java.io.Serializable;
/**
* @author 李进才
* @ClassName PatientLink
* @Description TODO
* @date 2023/05/09 15:13:00
*/
@Setter
@Getter
@ToString
@NoArgsConstructor
public class PatientLink implements Serializable {
private static final long serialVersionUID = 202305091516L;
private String openid;
private String patientId;
private String name;
private String sex;
private String age;
private String idCardNo;
private String birthday;
/**
* 民族
*/
private String nation;
private String address;
}

@ -1,6 +1,7 @@
package com.ynxbd.common.dao;
import com.ynxbd.common.bean.Patient;
import com.ynxbd.common.bean.PatientLink;
import com.ynxbd.common.bean.enums.HCardTypeEnum;
import com.ynxbd.common.config.db.DataBase;
@ -58,6 +59,19 @@ public class PatientDao {
});
}
/**
* 根据openid查询患者 部分信息 用作外部对接
*
* @param openid openid
* @return 患者列表
*/
public List<PatientLink> selectPatientsByOpenid(String openid) {
String sql = "select OpenID,PatientID,Name,Sex,IDCardNo,Age,Birthday,Address,Nation from patientBase where openid = ? and deletedState = 0 order by isDefault desc";
return DataBase.select(sql, PatientLink.class, ps -> {
ps.setString(1, openid);
});
}
/**
* 根据身份证查询患者
*

@ -1,15 +1,10 @@
package com.ynxbd.common.helper.xbd;
import cn.hutool.core.compress.Gzip;
import com.alibaba.fastjson.JSONObject;
import com.ynxbd.common.helper.common.JsonHelper;
import com.ynxbd.common.helper.http.OkHttpHelper;
import com.ynxbd.common.result.JsonResult;
import lombok.extern.slf4j.Slf4j;
import okhttp3.*;
import org.apache.commons.compress.compressors.gzip.GzipUtils;
import org.apache.commons.io.IOUtils;
import org.apache.poi.ss.formula.functions.T;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;

@ -35,6 +35,12 @@ public class MessagePushConfig {
// 是否开启功能============================================
public static final boolean RECIPE_IS_ENABLE;
/**
* 消息推送主链接
*/
public static final String HOST_URL;
// 消息推送链接
public static final String RECIPE_URL;
@ -49,6 +55,7 @@ public class MessagePushConfig {
//
REG_CANCEL_IS_ENABLE = config.getBoolean("msg.reg.cancel.is_enable", false);
REG_CANCEL_URL = config.getString("msg.reg.cancel.url");
HOST_URL = config.getString("msg.host.url");
//
RECIPE_IS_ENABLE = config.getBoolean("msg.recipe.is_enable", false);
RECIPE_URL = config.getString("msg.recipe.url");

@ -19,7 +19,7 @@ public class ReqParamHelper {
}
public static void main(String[] args) {
System.out.println(encode("10088998"));
System.out.println(encode("10038657"));
System.out.println(decode("3333A9AD522EA5766F257C044883EAE4"));
}
}

@ -1,5 +1,6 @@
# 消息推送
# 挂号-导航推送
msg.host.url = http://127.0.0.1:8123/messageplatform/
msg.reg.navigate.is_enable=false
msg.reg.navigate.url=http://127.0.0.1:8123/messageplatform/daoyixun
# 挂号-文字提示推送

Loading…
Cancel
Save