mirror of
https://github.com/dataease/dataease.git
synced 2026-05-24 06:18:10 +08:00
refactor(应用): 优化应用的静态文件存储方式,静态文件直接存放在服务器
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
package io.dataease.ext;
|
||||
|
||||
import io.dataease.plugins.common.base.domain.PanelAppTemplateWithBLOBs;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface ExtPanelAppTemplateMapper {
|
||||
|
||||
List<PanelAppTemplateWithBLOBs> queryBaseInfo(@Param("nodeType") String nodeType , @Param("pid") String pid);
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="io.dataease.ext.ExtPanelAppTemplateMapper">
|
||||
<select id="queryBaseInfo" resultType="io.dataease.plugins.common.base.domain.PanelAppTemplateWithBLOBs">
|
||||
select id, `name`, node_type, `level`, pid, version, icon, update_time, update_user, create_time,
|
||||
create_user,snapshot,datasource_info from panel_app_template
|
||||
where 1=1
|
||||
<if test="pid != null">
|
||||
and pid = #{pid}
|
||||
</if>
|
||||
<if test="nodeType != null">
|
||||
and node_type = #{nodeType}
|
||||
</if>
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -10,6 +10,7 @@ import io.dataease.controller.request.dataset.DataSetTableRequest;
|
||||
import io.dataease.controller.request.panel.PanelAppTemplateApplyRequest;
|
||||
import io.dataease.controller.request.panel.PanelAppTemplateRequest;
|
||||
import io.dataease.controller.request.panel.PanelGroupRequest;
|
||||
import io.dataease.ext.ExtPanelAppTemplateMapper;
|
||||
import io.dataease.plugins.common.base.domain.*;
|
||||
import io.dataease.plugins.common.base.mapper.PanelAppTemplateMapper;
|
||||
import io.dataease.plugins.common.constants.DatasetType;
|
||||
@@ -19,6 +20,7 @@ import io.dataease.service.dataset.DataSetGroupService;
|
||||
import io.dataease.service.dataset.DataSetTableFieldsService;
|
||||
import io.dataease.service.dataset.DataSetTableService;
|
||||
import io.dataease.service.datasource.DatasourceService;
|
||||
import io.dataease.service.staticResource.StaticResourceService;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.pentaho.di.core.util.UUIDUtil;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
@@ -31,6 +33,8 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static io.dataease.commons.constants.StaticResourceConstants.UPLOAD_URL_PREFIX;
|
||||
|
||||
/**
|
||||
* Author: wangjiahao
|
||||
* Date: 2022/9/8
|
||||
@@ -40,6 +44,8 @@ import java.util.Map;
|
||||
public class PanelAppTemplateService {
|
||||
private static Gson gson = new Gson();
|
||||
|
||||
@Resource
|
||||
private ExtPanelAppTemplateMapper extPanelAppTemplateMapper;
|
||||
@Resource
|
||||
private PanelAppTemplateMapper panelAppTemplateMapper;
|
||||
@Resource
|
||||
@@ -59,16 +65,11 @@ public class PanelAppTemplateService {
|
||||
private PanelViewService panelViewService;
|
||||
@Resource
|
||||
private DataSetGroupService dataSetGroupService;
|
||||
@Resource
|
||||
private StaticResourceService staticResourceService;
|
||||
|
||||
public List<PanelAppTemplateWithBLOBs> list(PanelAppTemplateRequest request) {
|
||||
PanelAppTemplateExample example = new PanelAppTemplateExample();
|
||||
if (StringUtils.isNotEmpty(request.getPid())) {
|
||||
example.createCriteria().andPidEqualTo(request.getPid());
|
||||
}
|
||||
if (StringUtils.isNotEmpty(request.getNodeType())) {
|
||||
example.createCriteria().andNodeTypeEqualTo(request.getNodeType());
|
||||
}
|
||||
return panelAppTemplateMapper.selectByExampleWithBLOBs(example);
|
||||
return extPanelAppTemplateMapper.queryBaseInfo(request.getNodeType(),request.getPid());
|
||||
}
|
||||
|
||||
public void save(PanelAppTemplateRequest request) {
|
||||
@@ -80,6 +81,10 @@ public class PanelAppTemplateService {
|
||||
if (StringUtils.isEmpty(requestTemplate.getNodeType())) {
|
||||
requestTemplate.setNodeType("template");
|
||||
}
|
||||
//Store static resource into the server
|
||||
String snapshotName = "app-template-" + request.getId() + ".jpeg";
|
||||
staticResourceService.saveSingleFileToServe(snapshotName, request.getSnapshot().replace("data:image/jpeg;base64,", ""));
|
||||
requestTemplate.setSnapshot("/" + UPLOAD_URL_PREFIX + '/' + snapshotName);
|
||||
panelAppTemplateMapper.insertSelective(requestTemplate);
|
||||
}
|
||||
|
||||
@@ -90,6 +95,10 @@ public class PanelAppTemplateService {
|
||||
request.setUpdateTime(System.currentTimeMillis());
|
||||
PanelAppTemplateWithBLOBs requestTemplate = new PanelAppTemplateWithBLOBs();
|
||||
BeanUtils.copyBean(requestTemplate, request);
|
||||
//Store static resource into the server
|
||||
String snapshotName = "app-template-" + request.getId() + ".jpeg";
|
||||
staticResourceService.saveSingleFileToServe(snapshotName, request.getSnapshot().replace("data:image/jpeg;base64,", ""));
|
||||
requestTemplate.setSnapshot("/" + UPLOAD_URL_PREFIX + '/' + snapshotName);
|
||||
panelAppTemplateMapper.updateByPrimaryKeySelective(requestTemplate);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
\u4E2A\u4EBA\u4FE1\u606F=Personal Information
|
||||
\u4EEA\u8868\u677F=Dashboard
|
||||
\u6A21\u677F\u5E02\u573A=Template Market
|
||||
\u5E94\u7528\u5E02\u573A=App Market
|
||||
\u5E94\u7528=Application
|
||||
\u5E94\u7528\u7BA1\u7406=Applications
|
||||
\u4FEE\u6539\u5BC6\u7801=Change Password
|
||||
\u521B\u5EFA\u7528\u6237=Create User
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
\u4E2A\u4EBA\u4FE1\u606F=\u4E2A\u4EBA\u4FE1\u606F
|
||||
\u4EEA\u8868\u677F=\u4EEA\u8868\u677F
|
||||
\u6A21\u677F\u5E02\u573A=\u6A21\u677F\u5E02\u573A
|
||||
\u5E94\u7528\u5E02\u573A=\u5E94\u7528\u5E02\u573A
|
||||
\u5E94\u7528=\u5E94\u7528
|
||||
\u5E94\u7528\u7BA1\u7406=\u5E94\u7528\u7BA1\u7406
|
||||
\u4FEE\u6539\u5BC6\u7801=\u4FEE\u6539\u5BC6\u7801
|
||||
\u521B\u5EFA\u7528\u6237=\u521B\u5EFA\u7528\u6237
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
\u4E2A\u4EBA\u4FE1\u606F=\u500B\u4EBA\u4FE1\u606F
|
||||
\u4EEA\u8868\u677F=\u5100\u8868\u677F
|
||||
\u6A21\u677F\u5E02\u573A=\u6A21\u677F\u5E02\u5834
|
||||
\u5E94\u7528\u5E02\u573A=\u5E94\u7528\u5E02\u5834
|
||||
\u5E94\u7528=\u5E94\u7528
|
||||
\u5E94\u7528\u7BA1\u7406=\u5E94\u7528\u7BA1\u7406
|
||||
\u4FEE\u6539\u5BC6\u7801=\u4FEE\u6539\u5BC6\u78BC
|
||||
\u521B\u5EFA\u7528\u6237=\u5275\u5EFA\u7528\u6236
|
||||
|
||||
Reference in New Issue
Block a user