1、调整:医共体数据同步从缓存取值时会直接修改缓存的值的问题修复。新增同步数据错误的标识。

2、新增:新增医共体子医院的患者信息缓存,减少对数据库的请求。并在清除缓存接口加入清除子医院本地缓存。
3、调整:智能导诊新增2个参数返回,医生简介为空时默认返回暂无简介。
4、修复:同步数据时部分数据为空时会报错的问题修复加入默认值。
debug
王绍全 15 hours ago
parent e8631a70a6
commit 1147b5fe9b
  1. 6
      src/main/java/com/ynxbd/common/TestA.java
  2. 8
      src/main/java/com/ynxbd/common/action/AIGuidanceAction.java
  3. 2
      src/main/java/com/ynxbd/common/action/ApiAction.java
  4. 31
      src/main/java/com/ynxbd/common/action/PatientAction.java
  5. 2
      src/main/java/com/ynxbd/common/bean/Patient.java
  6. 2
      src/main/java/com/ynxbd/common/bean/ai/AIDept.java
  7. 5
      src/main/java/com/ynxbd/common/bean/ai/AIDoctor.java
  8. 71
      src/main/java/com/ynxbd/common/cache/GmcCacheManager.java
  9. 4
      src/main/java/com/ynxbd/common/dao/PatientDao.java
  10. 12
      src/main/java/com/ynxbd/common/helper/common/JsonHelper.java
  11. 21
      src/main/java/com/ynxbd/common/service/AIGuidanceService.java
  12. 51
      src/main/java/com/ynxbd/common/service/GMCService.java
  13. 52
      src/main/java/com/ynxbd/common/service/PatientService.java
  14. 14
      src/main/java/com/ynxbd/wx/config/AIGuidanceConfig.java
  15. 5
      src/main/resources/ai-guidance.properties
  16. 4
      src/main/resources/copy/ai-guidance/德宏州中医院.properties
  17. 4
      src/main/resources/copy/ai-guidance/石林县人民医院.properties

@ -76,4 +76,10 @@ public class TestA {
// }
// public static void main(String[] args) {
// System.out.println(AesWxHelper.encode("oqsq-vyMNxdWrlZFkbigCre0PM8s"));
// System.out.println(AesWxHelper.encode("wxe53f0f528bb16d9f"));
//
// System.out.println(AesWxHelper.decode("A25BF2DD5820B151B8AB2E333E05565E"));
// }
}

@ -32,7 +32,7 @@ public class AIGuidanceAction extends BaseAction {
*/
@Action("getAllHospInfo")
public Result getAllHospInfo() {
if (!AIGuidanceConfig.IS_DEV && !AIGuidanceConfig.isVerifySign(request)) {
if (!AIGuidanceConfig.IS_DEBUG && !AIGuidanceConfig.isVerifySign(request)) {
return Result.error(ResultEnum.SIGN_ERROR); // 签名异常
}
@ -50,7 +50,7 @@ public class AIGuidanceAction extends BaseAction {
*/
@Action("getHospDetail")
public Result getHospDetail(String hosId) {
if (!AIGuidanceConfig.IS_DEV && !AIGuidanceConfig.isVerifySign(request)) {
if (!AIGuidanceConfig.IS_DEBUG && !AIGuidanceConfig.isVerifySign(request)) {
return Result.error(ResultEnum.SIGN_ERROR); // 签名异常
}
return new AIGuidanceService().getHospDetail(hosId);
@ -61,7 +61,7 @@ public class AIGuidanceAction extends BaseAction {
*/
@Action("getDeptList")
public Result getDeptList(String hosId, String branchId) {
if (!AIGuidanceConfig.IS_DEV && !AIGuidanceConfig.isVerifySign(request)) {
if (!AIGuidanceConfig.IS_DEBUG && !AIGuidanceConfig.isVerifySign(request)) {
return Result.error(ResultEnum.SIGN_ERROR); // 签名异常
}
return new AIGuidanceService().getDeptList(hosId, branchId);
@ -72,7 +72,7 @@ public class AIGuidanceAction extends BaseAction {
*/
@Action("getDoctorList")
public Result getDoctorList(String hosId, String branchId, String deptId) {
if (!AIGuidanceConfig.IS_DEV && !AIGuidanceConfig.isVerifySign(request)) {
if (!AIGuidanceConfig.IS_DEBUG && !AIGuidanceConfig.isVerifySign(request)) {
return Result.error(ResultEnum.SIGN_ERROR); // 签名异常
}
return new AIGuidanceService().getDoctorList(hosId, branchId, deptId);

@ -5,6 +5,7 @@ import com.ynxbd.common.bean.Patient;
import com.ynxbd.common.bean.User;
import com.ynxbd.common.bean.sms.SmsTempEnum;
import com.ynxbd.common.bean.sms.SmsTemplate;
import com.ynxbd.common.cache.GmcCacheManager;
import com.ynxbd.common.config.interceptor.AesDecode;
import com.ynxbd.common.helper.common.*;
import com.ynxbd.common.result.Result;
@ -288,6 +289,7 @@ public class ApiAction extends BaseAction {
if (ObjectUtils.isEmpty(openid)) {
return Result.error();
}
GmcCacheManager.removeCacheGmcUser(openid);
User cacheUser = WxCacheHelper.getCacheUser(openid);
if (cacheUser == null) {
return Result.error("没有缓存");

@ -387,25 +387,42 @@ public class PatientAction extends BaseAction {
/**
* [患者]查询列表
*/
@Action("queryPatientList")
public Result queryPatientList(@AesDecode String openId, @AesDecode String hospAppId) {
log.info("[患者]查询列表 hospAppId={}, openId={}", hospAppId, openId);
if (openId == null || hospAppId == null) {
@Action("getGmcPatientList")
public Result getGmcPatientList(@AesDecode String gmcOpenId, @AesDecode String hospAppId) {
log.info("[患者]查询列表 hospAppId={}, gmcOpenId={}", hospAppId, gmcOpenId);
if (gmcOpenId == null || hospAppId == null) {
return Result.error(ResultEnum.PARAM_IS_DEFECT);
}
if (!hospAppId.equals(WeChatConfig.APP_ID)) {
return Result.error(ResultEnum.PARAM_IS_INVALID);
}
User user = WxCacheHelper.getCacheUser(openId);
User user = WxCacheHelper.getCacheUser(gmcOpenId);
List<Patient> patients;
if (user == null) {
try {
patients = new PatientService().queryPatientList(request, openId, null, true);
patients = new PatientService().queryPatientList(request, gmcOpenId, null, true);
} catch (Exception e) {
return Result.error(e);
}
} else {
patients = user.getPatientList();
patients = JsonHelper.copyArray(user.getPatientList(), Patient.class);
}
for (Patient item : patients) {
item.setAddress(AesWxHelper.encode(item.getAddress(), true));
item.setBirthday(AesWxHelper.encode(item.getBirthday(), true));
item.setHealthCardId(AesWxHelper.encode(item.getHealthCardId(), true));
// 清空多余id和本院id
item.setPatientId(null);
item.setEnPatientId(null);
item.setHisPatientId(null);
item.setEnHisPatientId(null);
item.setId(null);
item.setOpenid(null);
item.setTel(null);
item.setIdCardNo(null);
}
return Result.success(patients);
}

@ -113,6 +113,8 @@ public class Patient implements Serializable {
private String bindingFlag;
private HCardTypeEnum cardTypeEnum;
// 同步数据错误
private Boolean isSyncFail;
// HIS绑定
public boolean hasHisBind() {

@ -26,6 +26,8 @@ public class AIDept {
private String parentDeptId;
// 排班url
private String deptUrl;
private String deptMiniWxUrl;
private String deptMiniAlipayUrl;
private String deptLifeAlipayUrl;
private String deptEmbedAlipayUrl;

@ -14,7 +14,7 @@ public class AIDoctor {
private String doctorId;
// 医生名称
private String doctorName;
// 医生性别
// 医生性别{ 1:男; 2:女 }
private Integer doctorSex;
// 科室地址
private String doctorJobTitle;
@ -30,9 +30,12 @@ public class AIDoctor {
private String extraData;
// 介绍信息是否为 HTML文档
private Boolean isHTML;
// 跳转微信小程序URL
private String doctorMiniWxUrl;
// 支付宝链接
private String doctorMiniAlipayUrl;
private String doctorLifeAlipayUrl;
private String doctorEmbedAlipayUrl;
}

@ -0,0 +1,71 @@
package com.ynxbd.common.cache;
import com.ynxbd.common.bean.Patient;
import com.ynxbd.common.bean.User;
import com.ynxbd.common.config.EhCacheConfig;
import com.ynxbd.common.helper.common.JsonHelper;
import lombok.extern.slf4j.Slf4j;
import org.ehcache.Cache;
import java.util.ArrayList;
import java.util.List;
@Slf4j
public class GmcCacheManager {
// 医共体缓存数据
private static Cache<String, User> GMC_USER_CACHE;
static {
createGmcUserCacheManager();
}
private synchronized static void createGmcUserCacheManager() {
if (GMC_USER_CACHE == null) {
GMC_USER_CACHE = EhCacheConfig.createCacheTTL(String.class, User.class, "db_gmc_cache", (900L)); // 15分钟
}
}
public static Cache<String, User> getGmcUserCacheManager() {
if (GMC_USER_CACHE == null) {
createGmcUserCacheManager();
}
return GMC_USER_CACHE;
}
public static void addCacheGmcUser(String openid, User user) {
Cache<String, User> cache = getGmcUserCacheManager();
if (cache != null) {
cache.put(openid, user);
}
}
public static void removeCacheGmcUser(String openid) {
Cache<String, User> cache = getGmcUserCacheManager();
if (cache != null) {
cache.remove(openid);
}
}
public static boolean hasCacheGmcUser(String openid) {
if (GMC_USER_CACHE == null) {
createGmcUserCacheManager();
}
return GMC_USER_CACHE.containsKey(openid);
}
public static List<Patient> getCacheGmcUserPatientList(String openid) {
if (GMC_USER_CACHE == null) {
createGmcUserCacheManager();
}
User user = GMC_USER_CACHE.get(openid);
if (user == null) {
return new ArrayList<>();
}
List<Patient> patientList = user.getPatientList();
if (patientList == null || patientList.isEmpty()) {
return new ArrayList<>();
}
return JsonHelper.copyArray(patientList, Patient.class);
}
}

@ -379,7 +379,7 @@ public class PatientDao {
ps.setString(19, item.getAddress());
ps.setString(20, item.getAreaCode());
ps.setString(21, item.getAreaAddress());
ps.setBoolean(22, item.getIsMyself());
ps.setBoolean(22, item.getIsMyself() != null && item.getIsMyself());
ps.setString(23, cardTypeEnum == null ? HCardTypeEnum._01.WX_CODE : cardTypeEnum.WX_CODE);
ps.setString(24, item.getUnionId());
ps.setString(25, CodeHelper.get32UUID());
@ -391,8 +391,6 @@ public class PatientDao {
}
/**
* 批量领卡后更新健康卡ID
*

@ -10,6 +10,7 @@ import com.alibaba.fastjson.serializer.SerializerFeature;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils;
import java.util.ArrayList;
import java.util.List;
/**
@ -48,6 +49,17 @@ public class JsonHelper {
return JSON.parseArray(data, clazz);
}
public static <T> List<T> copyArray(Object data, Class<T> clazz) {
if (data == null) {
return new ArrayList<>();
}
String json = toJsonString(data);
if (ObjectUtils.isEmpty(json)) {
return new ArrayList<>();
}
return parseArray(json, clazz);
}
/**
* fastJson反序列化Bean
*

@ -7,7 +7,6 @@ import com.ynxbd.common.bean.ai.AIDoctor;
import com.ynxbd.common.dao.RegisterDao;
import com.ynxbd.common.dao.his.HisRegisterDao;
import com.ynxbd.common.helper.common.DateHelper;
import com.ynxbd.common.helper.common.JsonHelper;
import com.ynxbd.common.helper.common.URLHelper;
import com.ynxbd.common.result.Result;
import com.ynxbd.common.result.ResultEnum;
@ -94,6 +93,9 @@ public class AIGuidanceService {
List<Dept> children;
for (Dept dept : deptList) {
addItem = createAIDept(webReqURL, dept);
if (addItem == null) {
continue;
}
dataList.add(addItem);
children = dept.getChildren();
@ -102,6 +104,9 @@ public class AIGuidanceService {
childDept.setSubDeptCode(childDept.getDeptCode());
childDept.setDeptCode(dept.getDeptCode());
addItem = createAIDept(webReqURL, childDept);
if (addItem == null) {
continue;
}
dataList.add(addItem);
}
}
@ -129,6 +134,7 @@ public class AIGuidanceService {
item.setTreatrange(""); // 诊疗范围
item.setIsHTML(true);
item.setDeptMiniWxUrl("");
item.setDeptMiniAlipayUrl("");
item.setDeptLifeAlipayUrl("");
item.setDeptEmbedAlipayUrl("");
@ -137,8 +143,8 @@ public class AIGuidanceService {
subDeptCode = isSubDept ? ("&subDeptCode=" + subDeptCode) : "";
item.setDeptUrl(webReqURL + "reg-reserve.html#/reg-doctor?deptCode=" + dept.getDeptCode() + "&deptName=" + URLHelper.encodeURL(deptName) + subDeptCode + "&hospitalArea=");
} catch (Exception e) {
log.error(e.getMessage());
item.setDeptUrl("");
log.error("[智能导诊]科室链接异常:{}", e.getMessage());
return null;
}
return item;
}
@ -204,9 +210,12 @@ public class AIGuidanceService {
continue;
}
doctCode = doctCode.trim();
if ("*".equals(doctCode)) {
if ("*".equals(doctCode)) { // 任意医生
item.setDoctorId("0");
item.setDoctorSex(-1);
doctCode = "0";
} else {
item.setDoctorSex(-1);
}
deptCode = doctor.getDeptCode();
@ -215,16 +224,16 @@ public class AIGuidanceService {
item.setDoctorName(doctor.getDoctName());
item.setDoctorJobTitle(doctor.getTitle() == null ? "" : doctor.getTitle()); // 职称
item.setDoctorGoodat(doctor.getSkill() == null ? "" : doctor.getSkill()); // 擅长
item.setDoctorIntro(doctor.getDescription() == null ? "" : doctor.getDescription()); // 介绍
item.setDoctorIntro(ObjectUtils.isEmpty(doctor.getDescription()) ? "暂无介绍" : doctor.getDescription()); // 介绍
headImg = doctor.getHeadImg();
if (headImg != null && !ObjectUtils.isEmpty(headImg.trim())) {
if (!headImg.contains("data:image/")) { // 不是base64
item.setDoctorImage(domain + headImg); // 头像
}
}
item.setDoctorSex(-1);
item.setExtraData("{}"); // 额外信息
item.setIsHTML(true);
item.setDoctorMiniWxUrl("");
item.setDoctorMiniAlipayUrl("");
item.setDoctorLifeAlipayUrl("");
item.setDoctorEmbedAlipayUrl("");

@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import com.ynxbd.common.bean.GMCUser;
import com.ynxbd.common.bean.Patient;
import com.ynxbd.common.bean.enums.HCardTypeEnum;
import com.ynxbd.common.cache.GmcCacheManager;
import com.ynxbd.common.dao.GMCUserDao;
import com.ynxbd.common.dao.PatientDao;
import com.ynxbd.common.dao.his.HisPatientDao;
@ -45,8 +46,8 @@ public class GMCService {
}
String enGmcOpenId = AesWxHelper.encode(gmcOpenId);
long begTime = System.currentTimeMillis();
JsonResult jsonResult = postFormGMC(request, "/patient/queryPatientList", params -> {
params.put("openId", enGmcOpenId);
JsonResult jsonResult = postFormGMC(request, "/patient/getGmcPatientList", params -> {
params.put("gmcOpenId", enGmcOpenId);
params.put("hospAppId", AesWxHelper.encode(WeChatConfig.GMC_APP_ID));
}, null);
if (!jsonResult.success()) {
@ -55,11 +56,19 @@ public class GMCService {
throw new ServiceException("[医共体-数据同步]请求主服务失败:" + (ObjectUtils.isEmpty(message) ? "" : message));
}
List<Patient> gmcPatients = jsonResult.getDataMapList(Patient.class, "data");
for (Patient item : gmcPatients) {
item.setTel(AesWxHelper.decode(item.getEnTel()));
item.setIdCardNo(AesWxHelper.decode(item.getEnCardNo()));
//
item.setAddress(AesWxHelper.decode(item.getAddress()));
item.setBirthday(AesWxHelper.decode(item.getBirthday()));
item.setHealthCardId(AesWxHelper.decode(item.getHealthCardId()));
}
List<Patient> addList = new ArrayList<>(); // 需添加用户
List<Integer> removeIds = new ArrayList<>(); // 需删除用户ids
List<Patient> dbPatients = new PatientDao().selectListByToken(wxOpenId, unionId);
List<Patient> dbPatients = new PatientService().queryGmcCachePatientsByOpenId(wxOpenId, unionId);
for (Patient item : gmcPatients) {
item.setId(null);
item.setOpenid(wxOpenId);
@ -73,20 +82,12 @@ public class GMCService {
)).findFirst().orElse(null);
if (findDBItem == null) { // 需新增
item.setPatientId(null); // 清空主体医院的-本院患者id
item.setHisPatientId(null);
addList.add(item);
} else { // 比对数据
item.setId(findDBItem.getId());
item.setPatientId(findDBItem.getPatientId()); // 本院患者id->用于新增数据
item.setHisPatientId(findDBItem.getPatientId()); // 本院患者id->用于检查数据
if (!findDBItem.equalsPatient(item)) { // 数据不同->需修改本地数据
removeIds.add(findDBItem.getId());
addList.add(item);
} else {
item.setGmcCheckTime(findDBItem.getGmcCheckTime()); // 本院的检查时间
checkGmcPatient(item);
}
}
}
@ -118,6 +119,7 @@ public class GMCService {
}
if (new PatientDao().updateGmcBindState(gmcUniqueId, item.getId(), item.getEmpiId())) {
log.error("[医共体]同步用户数据,修改医共体绑定状态失败 id:{}", item.getId());
item.setEmpiId(empiId);
item.setGmcUniqueId(gmcUniqueId);
gmcPatients.add(item);
}
@ -135,6 +137,9 @@ public class GMCService {
}
int addRows = addDBPatients(addList); // 添加后会补充数据
if (addRows > 0 || delRows > 0) {
GmcCacheManager.removeCacheGmcUser(wxOpenId);
}
long endTime = System.currentTimeMillis();
String takeTime = (endTime - begTime) + "ms"; // 耗时
@ -158,18 +163,22 @@ public class GMCService {
for (Patient item : patients) {
try {
if (ObjectUtils.isEmpty(item.getEmpiId())) {
log.info("[医共体-数据同步]本院绑定失败");
continue;
}
// 清空多余id和本院id
item.setPatientId(null);
item.setEnPatientId(null);
item.setHisPatientId(null);
item.setEnHisPatientId(null);
Patient hisBindInfo = hisPatientDao.bind(false, item);
if (hisBindInfo == null) {
log.info("[医共体-数据同步]本院绑定失败");
item.setIsSyncFail(false);
continue;
}
String hisPatientId = hisBindInfo.getHisPatientId(); // 本院患者id
String empiId = hisBindInfo.getEmpiId(); // 医共体id
if (ObjectUtils.isEmpty(hisPatientId) || ObjectUtils.isEmpty(empiId)) {
item.setIsSyncFail(false);
continue;
}
item.setGmcCheckTime(LocalDateTime.now());
@ -178,6 +187,7 @@ public class GMCService {
item.setEmpiId(empiId);
addList.add(item);
} catch (Exception e) {
item.setIsSyncFail(false);
log.error(e.getMessage());
}
}
@ -231,7 +241,8 @@ public class GMCService {
String enGmcOpenId = bindInfo.getEnGmcOpenId(); // 认证主体的openid[县医院openid]
String gmcOpenId = AesWxHelper.decode(enGmcOpenId);
String enOpenId = bindInfo.getEnOpenId(); // 本院openid
String openid = bindInfo.getOpenid(); // 本院openid
String enOpenId = AesWxHelper.encode(openid);
log.info("[医共体绑定-转发]enGmcOpenId={}, gmcOpenId={}", enGmcOpenId, gmcOpenId);
if (ObjectUtils.isEmpty(gmcOpenId)) {
@ -294,6 +305,8 @@ public class GMCService {
log.error("[医共体]主体绑定-数据enEmpiId解密失败");
return null;
}
// 主体绑定成功后,清除本院缓存
GmcCacheManager.removeCacheGmcUser(openid);
Patient patient = new Patient();
patient.setEnGmcOpenId(enGmcOpenId); // 主体医院openid
@ -324,13 +337,15 @@ public class GMCService {
String gmcOpenId = gmcUser.getGmcOpenId();
JsonResult jsonResult = postFormGMC(request, "/patient/unBind", params -> {
params.put("openid", gmcOpenId);
params.put("epId", epId);
params.put("openid", AesWxHelper.encode(gmcOpenId));
params.put("epId", AesWxHelper.encode(epId));
params.put("hospAppId", WeChatConfig.APP_ID);
}, null);
if (!jsonResult.success()) {
throw new ServiceException(jsonResult.getMessage());
}
// 主体解绑成功后,清除本院缓存
GmcCacheManager.removeCacheGmcUser(openId);
return true;
}

@ -4,6 +4,7 @@ import com.ynxbd.common.bean.GMCUser;
import com.ynxbd.common.bean.Patient;
import com.ynxbd.common.bean.User;
import com.ynxbd.common.bean.enums.HCardTypeEnum;
import com.ynxbd.common.cache.GmcCacheManager;
import com.ynxbd.common.config.HealthCardConfig;
import com.ynxbd.common.dao.PatientDao;
import com.ynxbd.common.dao.his.HisPatientDao;
@ -100,15 +101,39 @@ public class PatientService {
}
// public List<Patient> queryGMCPatientList(String enUnionId, String openid, String unionId, boolean isEnPid) {
// // 在查询时完成数据同步
// if (!WeChatConfig.IS_GMC_SERVER) { // 不为医共体主体=>查询医共体患者数据
//
// }
// return queryPatientList(openid, unionId, true);
// }
/**
* [医共体]查询缓存数据
*
* @param openId openId
* @param unionId unionId
* @return list
*/
public List<Patient> queryGmcCachePatientsByOpenId(String openId, String unionId) {
if (GmcCacheManager.hasCacheGmcUser(openId)) {
System.out.println("[医共体]返回缓存数据...");
return GmcCacheManager.getCacheGmcUserPatientList(openId);
}
List<Patient> patients = new PatientDao().selectListByToken(openId, unionId);
if (patients.isEmpty()) {
return new ArrayList<>();
}
User user = new User();
user.setOpenid(openId);
user.setPatientList(patients);
GmcCacheManager.addCacheGmcUser(openId, user);
return patients;
}
public List<Patient> queryPatientList(HttpServletRequest request, String openId, String unionId, boolean isEnPid) throws ServiceException {
/**
* 查询患者信息
*
* @param request request
* @param openId openId
* @param unionId unionId
* @param isEnInfo 是否加密数据
*/
public List<Patient> queryPatientList(HttpServletRequest request, String openId, String unionId, boolean isEnInfo) throws ServiceException {
List<Patient> dbPatients;
if (request != null && WeChatConfig.IS_ENABLE_GMC && !WeChatConfig.IS_GMC_SERVER) { // 不是主体服务器=>请求主服务器
GMCUserService gmcUserService = new GMCUserService();
GMCUser gmcUser = gmcUserService.queryInfoByOpenId(openId);
@ -116,14 +141,17 @@ public class PatientService {
log.warn("[医共体]未找到关联关系 openId={}", openId);
return new ArrayList<>();
}
return new GMCService().syncPatientData(request, openId, gmcUser.getGmcOpenId(), gmcUser.getGmcUnionId());
dbPatients = new GMCService().syncPatientData(request, openId, gmcUser.getGmcOpenId(), gmcUser.getGmcUnionId());
} else {
dbPatients = new PatientDao().selectListByToken(openId, unionId);
}
List<Patient> dbPatients = new PatientDao().selectListByToken(openId, unionId);
GMCService gmcService = new GMCService();
List<Patient> patients = new ArrayList<>();
for (Patient item : dbPatients) {
if (item.getIsSyncFail() != null && !item.getIsSyncFail()) { // 数据同步失败
continue;
}
String patientId = item.getPatientId();
item.setHisPatientId(patientId); // 本院患者id
@ -136,7 +164,7 @@ public class PatientService {
item.setPatientId(empiId);
}
if (isEnPid) {
if (isEnInfo) {
item.filterData(false);
}
patients.add(item);

@ -19,6 +19,8 @@ public class AIGuidanceConfig {
public final static boolean IS_ENABLE;
// 是否为测试环境
public final static boolean IS_DEV;
// 是否为调试
public final static boolean IS_DEBUG;
// 是否为分时段挂号
public final static boolean IS_SPLIT_TIME_REG;
//配置文件读取项
@ -38,16 +40,18 @@ public class AIGuidanceConfig {
config.setIsEnable(IS_ENABLE);
IS_DEV = config.getBoolean("ai.is_dev", false);
IS_DEBUG = config.getBoolean("ai.is_debug", false);
IS_SPLIT_TIME_REG = config.getBoolean("ai.is_split_time_reg", true);
KEY = IS_DEV ? config.getString("ai.dev_key") : config.getString("ai.key");
PARTNER_ID = config.getString("ai.partner_id");
KEY = config.getString("ai.key");
HOS_ID = config.getString("ai.hos_id");
HOS_NAME = config.getString("ai.hos_name");
HOS_ADDRESS = config.getString("ai.hos_address");
HOS_INTRO = config.getString("ai.hos_intro");
HOS_LEVEL = config.getString("ai.hos_level");
HOS_TELEPHONE = config.getString("ai.hos_telephone");
HOS_ADDRESS = config.getString("ai.hos_address", "");
HOS_INTRO = config.getString("ai.hos_intro", "");
HOS_LEVEL = config.getString("ai.hos_level", "");
HOS_TELEPHONE = config.getString("ai.hos_telephone", "");
if (PARTNER_ID == null) {
log.error("[智能导诊]读取配置文件失败|功能未开启");

@ -1,14 +1,17 @@
# \u667A\u80FD\u5BFC\u8BCA\uFF08\u9700\u5546\u6237\u52A0https\u767D\u540D\u5355\uFF09
ai.is_enable=true
# \u662F\u5426\u5F00\u542F\u8C03\u8BD5
ai.is_debug=false
# \u662F\u5426\u4E3A\u6D4B\u8BD5\u73AF\u5883
ai.is_dev=true
# \u662F\u5426\u662F\u5206\u65F6\u6BB5\u6302\u53F7(\u9ED8\u8BA4true)
ai.is_split_time_reg=false
# \u5408\u4F5C\u65B9id
ai.partner_id=100000317
# \u5BC6\u94A5
ai.key=795b207e12572839976d9310bdde32be
# \u6D4B\u8BD5\u73AF\u5883\u5BC6\u94A5
ai.dev_key=2a49b1566c3c2e42a1ff9e483abb57da
# \u533B\u9662id
ai.hos_id=20002953
# \u533B\u9662\u540D\u79F0

@ -1,5 +1,7 @@
# \u667A\u80FD\u5BFC\u8BCA\uFF08\u9700\u5546\u6237\u52A0https\u767D\u540D\u5355\uFF09
ai.is_enable=false
# \u662F\u5426\u662F\u5206\u65F6\u6BB5\u6302\u53F7(\u9ED8\u8BA4true)
ai.is_split_time_reg=true
# \u5408\u4F5C\u65B9id
ai.partner_id=100000317
# \u5BC6\u94A5\uFF08token\uFF09
@ -10,7 +12,7 @@ ai.hos_id=20002953
ai.hos_name=\u5FB7\u5B8F\u5DDE\u4E2D\u533B\u533B\u9662
# \u533B\u9662\u5730\u5740
ai.hos_address=\u533B\u9662\u5730\u5740
# \u533B\u9662\u5730\u5740
# \u533B\u9662\u7B80\u4ECB
ai.hos_intro=\u533B\u9662\u4ECB\u7ECD
# \u533B\u9662\u7B49\u7EA7
ai.hos_level=\u4E09\u7EA7\u4E59\u7B49

@ -1,5 +1,7 @@
# \u667A\u80FD\u5BFC\u8BCA\uFF08\u9700\u5546\u6237\u52A0https\u767D\u540D\u5355\uFF09
ai.is_enable=true
# \u662F\u5426\u662F\u5206\u65F6\u6BB5\u6302\u53F7(\u9ED8\u8BA4true)
ai.is_split_time_reg=false
# \u5408\u4F5C\u65B9id
ai.partner_id=100000637
# \u5BC6\u94A5\uFF08token\uFF09
@ -10,7 +12,7 @@ ai.hos_id=800002592
ai.hos_name=\u77F3\u6797\u5F5D\u65CF\u81EA\u6CBB\u53BF\u4EBA\u6C11\u533B\u9662
# \u533B\u9662\u5730\u5740
ai.hos_address=\u533B\u9662\u5730\u5740
# \u533B\u9662\u5730\u5740
# \u533B\u9662\u7B80\u4ECB
ai.hos_intro=\u533B\u9662\u4ECB\u7ECD
# \u533B\u9662\u7B49\u7EA7
ai.hos_level=\u4E8C\u7EA7\u7532\u7B49

Loading…
Cancel
Save