Browse Source

逻辑显示完成70%

dev
wangqing 4 years ago
parent
commit
f6fcaf9aab
  1. 2
      tduck-account/src/main/java/com/tduck/cloud/account/entity/UserEntity.java
  2. 2
      tduck-account/src/main/java/com/tduck/cloud/account/mapper/UserMapper.java
  3. 2
      tduck-account/src/main/java/com/tduck/cloud/account/service/UserService.java
  4. 2
      tduck-account/src/main/java/com/tduck/cloud/account/service/impl/UserServiceImpl.java
  5. 37
      tduck-api/src/main/java/com/tduck/cloud/api/web/controller/UserProjectLogicController.java
  6. 2
      tduck-project/src/main/java/com/tduck/cloud/project/entity/ProjectTemplateItemEntity.java
  7. 2
      tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectEntity.java
  8. 2
      tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectItemEntity.java
  9. 66
      tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectLogicEntity.java
  10. 45
      tduck-project/src/main/java/com/tduck/cloud/project/entity/enums/ProjectLogicConditionExpressionEnum.java
  11. 45
      tduck-project/src/main/java/com/tduck/cloud/project/entity/enums/ProjectLogicExpressionEnum.java
  12. 2
      tduck-project/src/main/java/com/tduck/cloud/project/mapper/UserProjectItemMapper.java
  13. 15
      tduck-project/src/main/java/com/tduck/cloud/project/mapper/UserProjectLogicMapper.java
  14. 2
      tduck-project/src/main/java/com/tduck/cloud/project/mapper/UserProjectMapper.java
  15. 2
      tduck-project/src/main/java/com/tduck/cloud/project/service/UserProjectItemService.java
  16. 7
      tduck-project/src/main/java/com/tduck/cloud/project/service/UserProjectLogicService.java
  17. 2
      tduck-project/src/main/java/com/tduck/cloud/project/service/UserProjectService.java
  18. 2
      tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectItemServiceImpl.java
  19. 12
      tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectLogicServiceImpl.java
  20. 2
      tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java
  21. 2
      tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectServiceImpl.java
  22. 1
      tduck-project/src/main/java/com/tduck/cloud/project/util/SortUtils.java

2
tduck-account/src/main/java/com/tduck/cloud/account/entity/UserEntity.java

@ -11,7 +11,7 @@ import java.time.LocalDateTime;
/** /**
* 用户(AcUser)表实体类 * 用户(AcUser)表实体类
* *
* @author makejava * @author smalljop
* @since 2020-11-10 18:10:40 * @since 2020-11-10 18:10:40
*/ */
@Data @Data

2
tduck-account/src/main/java/com/tduck/cloud/account/mapper/UserMapper.java

@ -6,7 +6,7 @@ import com.tduck.cloud.account.entity.UserEntity;
/** /**
* 用户(AcUser)表数据库访问层 * 用户(AcUser)表数据库访问层
* *
* @author makejava * @author smalljop
* @since 2020-11-10 18:10:41 * @since 2020-11-10 18:10:41
*/ */
public interface UserMapper extends BaseMapper<UserEntity> { public interface UserMapper extends BaseMapper<UserEntity> {

2
tduck-account/src/main/java/com/tduck/cloud/account/service/UserService.java

@ -12,7 +12,7 @@ import com.tduck.cloud.common.util.Result;
/** /**
* 用户(AcUser)表服务接口 * 用户(AcUser)表服务接口
* *
* @author makejava * @author smalljop
* @since 2020-11-10 18:10:42 * @since 2020-11-10 18:10:42
*/ */
public interface UserService extends IService<UserEntity> { public interface UserService extends IService<UserEntity> {

2
tduck-account/src/main/java/com/tduck/cloud/account/service/impl/UserServiceImpl.java

@ -32,7 +32,7 @@ import java.time.LocalDateTime;
/** /**
* 用户(AcUser)表服务实现类 * 用户(AcUser)表服务实现类
* *
* @author makejava * @author smalljop
* @since 2020-11-10 18:10:43 * @since 2020-11-10 18:10:43
*/ */
@Service("userService") @Service("userService")

37
tduck-api/src/main/java/com/tduck/cloud/api/web/controller/UserProjectLogicController.java

@ -1,19 +1,48 @@
package com.tduck.cloud.api.web.controller; package com.tduck.cloud.api.web.controller;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.tduck.cloud.api.annotation.Login;
import com.tduck.cloud.common.util.Result;
import com.tduck.cloud.project.entity.UserProjectItemEntity;
import com.tduck.cloud.project.entity.UserProjectLogicEntity;
import com.tduck.cloud.project.service.UserProjectLogicService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotBlank;
import java.util.List;
/** /**
* @author : smalljop * @author : smalljop
* @description : 项目 * @description : 项目逻辑
* @create : 2020-11-18 18:17 * @create : 2020-11-18 18:17
**/ **/
@RequiredArgsConstructor
@RestController
@Slf4j @Slf4j
@RestController
@RequiredArgsConstructor
public class UserProjectLogicController { public class UserProjectLogicController {
private final UserProjectLogicService projectLogicService;
@Login
@PostMapping("/user/project/logic/save")
public Result saveUserProjectLogic(@RequestBody UserProjectLogicEntity userProjectLogicEntity) {
projectLogicService.saveOrUpdate(userProjectLogicEntity);
return Result.success(userProjectLogicEntity);
}
@Login
@PostMapping("/user/project/logic/delete")
public Result deleteUserProjectLogic(@RequestBody UserProjectLogicEntity userProjectLogicEntity) {
return Result.success(projectLogicService.removeById(userProjectLogicEntity));
}
@Login
@GetMapping("/user/project/logic/list")
public Result queryProjectItem(@RequestParam @NotBlank String projectKey) {
List<UserProjectLogicEntity> entityList = projectLogicService.list(Wrappers.<UserProjectLogicEntity>lambdaQuery().eq(UserProjectLogicEntity::getProjectKey, projectKey));
return Result.success(entityList);
}
} }

2
tduck-project/src/main/java/com/tduck/cloud/project/entity/ProjectTemplateItemEntity.java

@ -32,7 +32,7 @@ public class ProjectTemplateItemEntity extends BaseEntity<ProjectTemplateItemEnt
/** /**
* 表单项Id * 表单项Id
*/ */
private String formItemId; private Long formItemId;
/** /**
* 表单项类型 * 表单项类型
*/ */

2
tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectEntity.java

@ -16,7 +16,7 @@ import javax.validation.constraints.NotBlank;
/** /**
* 用户项目表(Project)表实体类 * 用户项目表(Project)表实体类
* *
* @author makejava * @author smalljop
* @since 2020-11-18 18:16:16 * @since 2020-11-18 18:16:16
*/ */
@Data @Data

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

@ -35,7 +35,7 @@ public class UserProjectItemEntity extends BaseEntity<UserProjectItemEntity> {
/** /**
* 表单项Id * 表单项Id
*/ */
private String formItemId; private Long formItemId;
/** /**
* 表单项类型 * 表单项类型
*/ */

66
tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectLogicEntity.java

@ -0,0 +1,66 @@
package com.tduck.cloud.project.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.tduck.cloud.common.entity.BaseEntity;
import com.tduck.cloud.common.mybatis.handler.JacksonTypeHandler;
import com.tduck.cloud.project.entity.enums.ProjectLogicExpressionEnum;
import lombok.Data;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import java.util.Set;
/**
* 项目逻辑(UserProjectLogic)表实体类
*
* @author smalljop
* @since 2020-05-01 13:36:27
*/
@Data
@Accessors(chain = true)
@TableName(value = "pr_user_project_logic", autoResultMap = true)
public class UserProjectLogicEntity extends BaseEntity<UserProjectLogicEntity> {
private Long id;
/**
* 项目key
*/
@NotBlank(message = "projectKey不能为空")
private String projectKey;
/**
* 表单项Id
*/
private Long formItemId;
/**
* 条件成立的表达式
*/
private ProjectLogicExpressionEnum expression;
/**
* 条件
*/
@TableField(typeHandler = JacksonTypeHandler.class)
private Set<Condition> conditionList;
/**
* 条件
*/
@Data
public static class Condition {
/**
* 表单项Id
*/
private Long formItemId;
/**
* 表达式
*/
private String expression;
/**
* 选项
*/
private Object optionValue;
}
}

45
tduck-project/src/main/java/com/tduck/cloud/project/entity/enums/ProjectLogicConditionExpressionEnum.java

@ -0,0 +1,45 @@
package com.tduck.cloud.project.entity.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author : smalljop
* @description :逻辑条件
* @create : 2020-12-04 13:35
**/
@Getter
@AllArgsConstructor
public enum ProjectLogicConditionExpressionEnum {
EQ("eq", "等于"),
NE("ne", "不等于");
@EnumValue
@JsonValue
private String value;
private String desc;
/**
* 枚举入参注解
*
* @param value
* @return
*/
@JsonCreator
public static ProjectLogicConditionExpressionEnum getByValue(Integer value) {
for (ProjectLogicConditionExpressionEnum typeEnum : values()) {
if (typeEnum.getValue().equals(value)) {
return typeEnum;
}
}
return null;
}
}

45
tduck-project/src/main/java/com/tduck/cloud/project/entity/enums/ProjectLogicExpressionEnum.java

@ -0,0 +1,45 @@
package com.tduck.cloud.project.entity.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author : smalljop
* @description :逻辑条件
* @create : 2020-12-04 13:35
**/
@Getter
@AllArgsConstructor
public enum ProjectLogicExpressionEnum {
ALL(1, "全部"),
ANY(2, "任意");
@EnumValue
@JsonValue
private Integer value;
private String desc;
/**
* 枚举入参注解
*
* @param value
* @return
*/
@JsonCreator
public static ProjectLogicExpressionEnum getByValue(Integer value) {
for (ProjectLogicExpressionEnum typeEnum : values()) {
if (typeEnum.getValue().equals(value)) {
return typeEnum;
}
}
return null;
}
}

2
tduck-project/src/main/java/com/tduck/cloud/project/mapper/UserProjectItemMapper.java

@ -6,7 +6,7 @@ import com.tduck.cloud.project.entity.UserProjectItemEntity;
/** /**
* 项目表单项(ProjectItem)表数据库访问层 * 项目表单项(ProjectItem)表数据库访问层
* *
* @author makejava * @author smalljop
* @since 2020-11-19 10:49:17 * @since 2020-11-19 10:49:17
*/ */
public interface UserProjectItemMapper extends BaseMapper<UserProjectItemEntity> { public interface UserProjectItemMapper extends BaseMapper<UserProjectItemEntity> {

15
tduck-project/src/main/java/com/tduck/cloud/project/mapper/UserProjectLogicMapper.java

@ -0,0 +1,15 @@
package com.tduck.cloud.project.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tduck.cloud.project.entity.UserProjectEntity;
import com.tduck.cloud.project.entity.UserProjectLogicEntity;
/**
* 用户项目逻辑表(UserProjectLogic)表数据库访问层
*
* @author smalljop
* @since 2020-11-18 18:16:17
*/
public interface UserProjectLogicMapper extends BaseMapper<UserProjectLogicEntity> {
}

2
tduck-project/src/main/java/com/tduck/cloud/project/mapper/UserProjectMapper.java

@ -6,7 +6,7 @@ import com.tduck.cloud.project.entity.UserProjectEntity;
/** /**
* 项目表(Project)表数据库访问层 * 项目表(Project)表数据库访问层
* *
* @author makejava * @author smalljop
* @since 2020-11-18 18:16:17 * @since 2020-11-18 18:16:17
*/ */
public interface UserProjectMapper extends BaseMapper<UserProjectEntity> { public interface UserProjectMapper extends BaseMapper<UserProjectEntity> {

2
tduck-project/src/main/java/com/tduck/cloud/project/service/UserProjectItemService.java

@ -8,7 +8,7 @@ import java.util.List;
/** /**
* 项目表单项(ProjectItem)表服务接口 * 项目表单项(ProjectItem)表服务接口
* *
* @author makejava * @author smalljop
* @since 2020-11-19 10:49:17 * @since 2020-11-19 10:49:17
*/ */
public interface UserProjectItemService extends IService<UserProjectItemEntity> { public interface UserProjectItemService extends IService<UserProjectItemEntity> {

7
tduck-project/src/main/java/com/tduck/cloud/project/service/UserProjectLogicService.java

@ -0,0 +1,7 @@
package com.tduck.cloud.project.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tduck.cloud.project.entity.UserProjectLogicEntity;
public interface UserProjectLogicService extends IService<UserProjectLogicEntity> {
}

2
tduck-project/src/main/java/com/tduck/cloud/project/service/UserProjectService.java

@ -6,7 +6,7 @@ import com.tduck.cloud.project.entity.UserProjectEntity;
/** /**
* 项目表(Project)表服务接口 * 项目表(Project)表服务接口
* *
* @author makejava * @author smalljop
* @since 2020-11-18 18:16:18 * @since 2020-11-18 18:16:18
*/ */
public interface UserProjectService extends IService<UserProjectEntity> { public interface UserProjectService extends IService<UserProjectEntity> {

2
tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectItemServiceImpl.java

@ -12,7 +12,7 @@ import java.util.List;
/** /**
* 项目表单项(ProjectItem)表服务实现类 * 项目表单项(ProjectItem)表服务实现类
* *
* @author makejava * @author smalljop
* @since 2020-11-19 10:49:18 * @since 2020-11-19 10:49:18
*/ */
@Service("userProjectItemService") @Service("userProjectItemService")

12
tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectLogicServiceImpl.java

@ -0,0 +1,12 @@
package com.tduck.cloud.project.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.tduck.cloud.project.entity.UserProjectLogicEntity;
import com.tduck.cloud.project.mapper.UserProjectLogicMapper;
import com.tduck.cloud.project.service.UserProjectLogicService;
import org.springframework.stereotype.Service;
@Service("userProjectLogicService")
public class UserProjectLogicServiceImpl extends ServiceImpl<UserProjectLogicMapper, UserProjectLogicEntity> implements UserProjectLogicService {
}

2
tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java

@ -76,7 +76,7 @@ public class UserProjectResultServiceImpl extends ServiceImpl<UserProjectResultM
List<UserProjectItemEntity> userProjectItemEntityList = userProjectItemService.listByProjectKey(projectKey); List<UserProjectItemEntity> userProjectItemEntityList = userProjectItemService.listByProjectKey(projectKey);
// excel 标题列 // excel 标题列
List<ExportProjectResultVO.ExcelHeader> titleList = userProjectItemEntityList.stream() List<ExportProjectResultVO.ExcelHeader> titleList = userProjectItemEntityList.stream()
.map(item -> new ExportProjectResultVO.ExcelHeader(item.getFormItemId(), item.getLabel())) .map(item -> new ExportProjectResultVO.ExcelHeader(item.getFormItemId().toString(), item.getLabel()))
.collect(Collectors.toList()); .collect(Collectors.toList());
//结果 //结果
List<UserProjectResultEntity> resultEntityList = this.list(Wrappers.<UserProjectResultEntity>lambdaQuery() List<UserProjectResultEntity> resultEntityList = this.list(Wrappers.<UserProjectResultEntity>lambdaQuery()

2
tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectServiceImpl.java

@ -11,7 +11,7 @@ import org.springframework.stereotype.Service;
/** /**
* 项目表(Project)表服务实现类 * 项目表(Project)表服务实现类
* *
* @author makejava * @author smalljop
* @since 2020-11-18 18:16:18 * @since 2020-11-18 18:16:18
*/ */
@Service("userProjectService") @Service("userProjectService")

1
tduck-project/src/main/java/com/tduck/cloud/project/util/SortUtils.java

@ -15,6 +15,7 @@ import org.springframework.stereotype.Component;
* <p> * <p>
* 拖动排序工具类 * 拖动排序工具类
* 算法参考 @link https://www.zhihu.com/question/55789722 * 算法参考 @link https://www.zhihu.com/question/55789722
*
* @author smalljop * @author smalljop
*/ */
@RequiredArgsConstructor @RequiredArgsConstructor

Loading…
Cancel
Save