Browse Source

Merge branch 'master' of https://gitee.com/TDuckApp/tduck-platform

 Conflicts:
	tduck-api/src/main/java/com/tduck/cloud/api/config/WebMvcConfig.java
dev
wangqing 4 years ago
parent
commit
b8d7d4a077
  1. 1
      doc/tduck.sql
  2. 21
      tduck-api/src/main/java/com/tduck/cloud/api/config/FilterConfig.java
  3. 1
      tduck-api/src/main/java/com/tduck/cloud/api/config/WebMvcConfig.java
  4. 6
      tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectItemEntity.java
  5. 5
      tduck-project/src/main/java/com/tduck/cloud/project/request/OperateProjectItemRequest.java
  6. 7
      tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java

1
doc/tduck.sql

@ -103,6 +103,7 @@ CREATE TABLE `pr_project_template_item` (
`required` tinyint(1) NOT NULL COMMENT '是否必填',
`placeholder` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '输入型提示文字',
`sort` bigint(20) NULL DEFAULT 0 COMMENT '排序',
`span` int(10) NOT NULL DEFAULT '24' COMMENT '栅格宽度',
`expand` json NULL COMMENT '扩展字段 表单项独有字段',
`reg_list` json NULL COMMENT '正则表达式 ',
`update_time` datetime(0) NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '更新时间',

21
tduck-api/src/main/java/com/tduck/cloud/api/config/FilterConfig.java

@ -27,6 +27,27 @@ public class FilterConfig {
private final PlatformSignProperties platformSignProperties;
/**
* 跨域过滤器
*
* @return
*/
@Bean
public FilterRegistrationBean corsFilterRegistration() {
FilterRegistrationBean registration = new FilterRegistrationBean();
registration.setDispatcherTypes(DispatcherType.REQUEST);
CorsConfiguration config = new CorsConfiguration();
config.addAllowedOrigin("*");
config.addAllowedMethod("*");
config.addAllowedHeader("*");
UrlBasedCorsConfigurationSource corsConfigurationSource = new UrlBasedCorsConfigurationSource();
corsConfigurationSource.registerCorsConfiguration("/**", config);
CorsFilter corsFilter = new CorsFilter(corsConfigurationSource);
registration.setOrder(Integer.MAX_VALUE - 4);
registration.setFilter(corsFilter);
return registration;
}
/**
* xss 过滤器 优先级最高
* 包装 XssHttpServletRequestWrapper 解决request只能使用一次

1
tduck-api/src/main/java/com/tduck/cloud/api/config/WebMvcConfig.java

@ -36,6 +36,7 @@ public class WebMvcConfig implements WebMvcConfigurer {
"/**/*.woff",
"/**/*.ttf");
@Override
public void addInterceptors(InterceptorRegistry registry) {
//所有路径都被拦截

6
tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectItemEntity.java

@ -67,6 +67,12 @@ public class UserProjectItemEntity extends BaseEntity<UserProjectItemEntity> {
* 排序
*/
private Long sort;
/**
* 栅格宽度
*/
private int span;
/**
* 扩展字段 表单项独有字段
*/

5
tduck-project/src/main/java/com/tduck/cloud/project/request/OperateProjectItemRequest.java

@ -59,6 +59,11 @@ public class OperateProjectItemRequest {
* 排序
*/
private Integer sort;
/**
* 栅格宽度
*/
private String span;
/**
* 扩展字段 表单项独有字段
*/

7
tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultEntityImpl.java → tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java

@ -2,6 +2,7 @@ package com.tduck.cloud.project.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@ -12,6 +13,7 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import com.tduck.cloud.common.constant.CommonConstants;
import com.tduck.cloud.common.entity.BaseEntity;
import com.tduck.cloud.common.exception.BaseException;
import com.tduck.cloud.common.util.AddressUtils;
import com.tduck.cloud.common.util.RedisUtils;
import com.tduck.cloud.project.entity.UserProjectItemEntity;
@ -38,7 +40,7 @@ import static com.tduck.cloud.project.constant.ProjectRedisKeyConstants.PROJECT_
*/
@Service("projectResultService")
@RequiredArgsConstructor
public class UserProjectResultEntityImpl extends ServiceImpl<UserProjectResultMapper, UserProjectResultEntity> implements UserProjectResultService {
public class UserProjectResultServiceImpl extends ServiceImpl<UserProjectResultMapper, UserProjectResultEntity> implements UserProjectResultService {
private final UserProjectItemService userProjectItemService;
private final RedisUtils redisUtils;
@ -84,6 +86,9 @@ public class UserProjectResultEntityImpl extends ServiceImpl<UserProjectResultMa
.le(ObjectUtil.isNotNull(request.getEndDateTime()), UserProjectResultEntity::getCreateTime, request.getEndDateTime())
.ge(ObjectUtil.isNotNull(request.getBeginDateTime()), UserProjectResultEntity::getCreateTime, request.getBeginDateTime())
.orderByDesc(BaseEntity::getCreateTime));
if (CollectionUtil.isEmpty(resultEntityList)) {
throw new BaseException("此表单无有效反馈,不能导出");
}
List<Map<String, Object>> resultList = resultEntityList.stream().map(item -> {
Map<String, Object> processData = item.getProcessData();
processData.put(BaseEntity.Fields.createTime, item.getCreateTime());
Loading…
Cancel
Save