|
@@ -573,37 +573,33 @@ public abstract class MyBatisQueryDaoImpl<PK extends java.io.Serializable, P ext
|
|
|
dynamicWhereSql = StringUtil.isNotEmpty(dynamicWhereSql) ? dynamicWhereSql + " and " + defaultWhere
|
|
dynamicWhereSql = StringUtil.isNotEmpty(dynamicWhereSql) ? dynamicWhereSql + " and " + defaultWhere
|
|
|
: defaultWhere;
|
|
: defaultWhere;
|
|
|
}
|
|
}
|
|
|
- /** 1.是否华创启德医院环境 */
|
|
|
|
|
- String setting = currentContext().getSetting();
|
|
|
|
|
- boolean flag1 = false;
|
|
|
|
|
- if (StringUtils.isNotEmpty(setting)) {
|
|
|
|
|
- try {
|
|
|
|
|
- ObjectMapper objectMapper = new ObjectMapper();
|
|
|
|
|
- HashMap<String, Object> map = (HashMap) objectMapper.readValue(setting, Map.class);
|
|
|
|
|
- String dgyy = Optional.ofNullable(map)
|
|
|
|
|
- .map(m -> m.get("HCQD"))
|
|
|
|
|
- .map(Object::toString)
|
|
|
|
|
- .orElse("");
|
|
|
|
|
- flag1 = Boolean.parseBoolean(dgyy);
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- logger.warn("解析setting JSON失败, setting={}", setting, e);
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
if (StringUtil.isNotEmpty(dynamicWhereSql)) {
|
|
if (StringUtil.isNotEmpty(dynamicWhereSql)) {
|
|
|
- if (StringUtil.isNotEmpty(dynamicWhereSql)) {
|
|
|
|
|
- // 将 subject_ like 替换为对两个 # 之间内容的匹配
|
|
|
|
|
- String modifiedWhereSql = dynamicWhereSql.replaceAll(
|
|
|
|
|
- "subject_\\s+like\\s+",
|
|
|
|
|
- "SUBSTRING_INDEX(SUBSTRING_INDEX(subject_, '#', 2), '#', -1) like "
|
|
|
|
|
|
|
+ if ("queryClassify".equals(sqlKey)) {
|
|
|
|
|
+ String modifiedWhereSql = dynamicWhereSql;
|
|
|
|
|
+
|
|
|
|
|
+ // 1. 替换 formName -> subject_ 第1段
|
|
|
|
|
+ modifiedWhereSql = modifiedWhereSql.replaceAll(
|
|
|
|
|
+ "(?i)\\bformName\\b(\\s+(?:like|=|!=|<>|>)\\s+)",
|
|
|
|
|
+ "SUBSTRING_INDEX(subject_, '#', 1) $1"
|
|
|
);
|
|
);
|
|
|
- if(flag1){//如果修改流程数据客户不好根据标题区分,所以在这里进行代码转换,保证页面查询无误
|
|
|
|
|
- params.put("whereSql", modifiedWhereSql);//华创
|
|
|
|
|
- }else{
|
|
|
|
|
- params.put("whereSql", dynamicWhereSql);//原逻辑
|
|
|
|
|
- }
|
|
|
|
|
|
|
+
|
|
|
|
|
+ // 2. 替换 transDesc -> subject_ 第2段
|
|
|
|
|
+ modifiedWhereSql = modifiedWhereSql.replaceAll(
|
|
|
|
|
+ "(?i)\\btransDesc\\b(\\s+(?:like|=|!=|<>|>)\\s+)",
|
|
|
|
|
+ "SUBSTRING_INDEX(SUBSTRING_INDEX(subject_, '#', 2), '#', -1) $1"
|
|
|
|
|
+ );
|
|
|
|
|
+
|
|
|
|
|
+ // 3. 替换 dep -> subject_ 第3段
|
|
|
|
|
+ modifiedWhereSql = modifiedWhereSql.replaceAll(
|
|
|
|
|
+ "(?i)\\bdep\\b(\\s+(?:like|=|!=|<>|>)\\s+)",
|
|
|
|
|
+ "SUBSTRING_INDEX(subject_, '#', -1) $1"
|
|
|
|
|
+ );
|
|
|
|
|
+ params.put("whereSql", modifiedWhereSql);
|
|
|
|
|
+ }else{
|
|
|
|
|
+ params.put("whereSql", dynamicWhereSql);//原逻辑
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
// 构建排序SQL
|
|
// 构建排序SQL
|
|
|
if (BeanUtils.isNotEmpty(queryFilter.getFieldSortList())) {
|
|
if (BeanUtils.isNotEmpty(queryFilter.getFieldSortList())) {
|
|
|
StringBuffer sb = new StringBuffer();
|
|
StringBuffer sb = new StringBuffer();
|