Browse Source

feat(online): 添加在线字典映射获取功能和重置页面类型

- 新增 getDictMap 方法用于获取字典ID到名称的映射关系
- 添加 RESET_ONLINE_PAGE 显示类型枚举值用于重置跳转页面
- 在 ExecutePluginParent 中添加 childPageCallback 空实现方法
- 实现字典数据JSON解析并转换为键值对映射的功能
- 优化导入包结构,规范化依赖引入方式
feature/form-permission-control
chenchuchuan 1 week ago
parent
commit
bb30a3454a
  1. 18
      common/common-online/src/main/java/apelet/common/online/abstractplugin/ExecutePluginParent.java
  2. 1
      common/common-online/src/main/java/apelet/common/online/model/constant/ShowTypeEnum.java
  3. 3
      common/common-online/src/main/java/apelet/common/online/service/OnlineDictService.java
  4. 20
      common/common-online/src/main/java/apelet/common/online/service/impl/OnlineDictServiceImpl.java

18
common/common-online/src/main/java/apelet/common/online/abstractplugin/ExecutePluginParent.java

@ -1,25 +1,25 @@ @@ -1,25 +1,25 @@
package apelet.common.online.abstractplugin;
import apelet.common.core.object.Model;
import apelet.common.core.object.ObjectValue;
import apelet.common.core.util.ApplicationContextHolder;
import apelet.common.generator.utils.OrmGenDataSourceUtil;
import apelet.common.online.dto.OnlineEventPluginExecuteDto;
import apelet.common.online.model.*;
import apelet.common.online.model.FilterInfo;
import apelet.common.online.model.ShowParameter;
import apelet.common.online.model.constant.AttributeEnum;
import apelet.common.online.service.OnlineDatasourceService;
import apelet.common.online.service.OnlineFormService;
import apelet.common.online.vo.OnlineEventPluginExecuteEntryVo;
import apelet.common.online.vo.OnlineEventPluginExecuteVo;
import apelet.common.orm.impl.OrmDataSourceUtil;
import cn.hutool.core.collection.CollUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import lombok.Getter;
import lombok.Setter;
import java.util.*;
import java.util.stream.Collectors;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 插件执行抽象类父类
@ -569,4 +569,10 @@ public abstract class ExecutePluginParent { @@ -569,4 +569,10 @@ public abstract class ExecutePluginParent {
return getDto().getModel().getCellField();
}
public void childPageCallback(String widgetVariableName, ObjectValue objectValue) {
}
}

1
common/common-online/src/main/java/apelet/common/online/model/constant/ShowTypeEnum.java

@ -13,6 +13,7 @@ import java.util.stream.Collectors; @@ -13,6 +13,7 @@ import java.util.stream.Collectors;
public enum ShowTypeEnum {
OPEN_ONLINE_MODAL("openOnlineModal", "弹窗"),
RESET_ONLINE_PAGE("resetOnlinePage", "重置跳转页面"),
OPEN_ONLINE_PAGE("openOnlinePage", "跳转页面");
@Getter

3
common/common-online/src/main/java/apelet/common/online/service/OnlineDictService.java

@ -4,6 +4,7 @@ import apelet.common.core.base.service.IBaseService; @@ -4,6 +4,7 @@ import apelet.common.core.base.service.IBaseService;
import apelet.common.online.model.OnlineDict;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
@ -75,4 +76,6 @@ public interface OnlineDictService extends IBaseService<OnlineDict, Long> { @@ -75,4 +76,6 @@ public interface OnlineDictService extends IBaseService<OnlineDict, Long> {
* @return 在线字典对象集合
*/
List<OnlineDict> getOnlineDictListFromCache(Set<Long> dictIdSet);
Map<String, String> getDictMap(Long dictId);
}

20
common/common-online/src/main/java/apelet/common/online/service/impl/OnlineDictServiceImpl.java

@ -15,6 +15,9 @@ import apelet.common.online.service.OnlineDictService; @@ -15,6 +15,9 @@ import apelet.common.online.service.OnlineDictService;
import apelet.common.online.util.OnlineRedisKeyUtil;
import apelet.common.redis.util.CommonRedisUtil;
import apelet.common.sequence.wrapper.IdGeneratorWrapper;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.github.pagehelper.Page;
import lombok.extern.slf4j.Slf4j;
@ -184,4 +187,21 @@ public class OnlineDictServiceImpl extends BaseService<OnlineDict, Long> impleme @@ -184,4 +187,21 @@ public class OnlineDictServiceImpl extends BaseService<OnlineDict, Long> impleme
}
return CallResult.ok();
}
@Override
public Map<String, String> getDictMap(Long dictId) {
Map<String, String> map = new HashMap<>();
OnlineDict onlineDict = this.getOnlineDictFromCache(dictId);
if (onlineDict == null) {
return map;
}
JSONObject dictJson = JSON.parseObject(onlineDict.getDictDataJson());
JSONArray jsonArray = dictJson.getJSONArray("dictData");
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
map.put(jsonObject.getString("id"), jsonObject.getString("name"));
}
return map;
}
}

Loading…
Cancel
Save