提交 f9cd3177 authored 作者: ww1xhqc's avatar ww1xhqc

Merge remote-tracking branch 'origin/master'

...@@ -3,6 +3,8 @@ package com.tykj.workflowcore.api.controller; ...@@ -3,6 +3,8 @@ package com.tykj.workflowcore.api.controller;
import com.tykj.workflowcore.api.entity.ClassInfo; import com.tykj.workflowcore.api.entity.ClassInfo;
import com.tykj.workflowcore.api.entity.InvokeRequest; import com.tykj.workflowcore.api.entity.InvokeRequest;
import com.tykj.workflowcore.api.service.ApiService; import com.tykj.workflowcore.api.service.ApiService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
...@@ -11,7 +13,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -11,7 +13,7 @@ import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
@Api(tags = "函数管理接口")
@RestController("/api/info") @RestController("/api/info")
public class ApiController { public class ApiController {
...@@ -21,11 +23,13 @@ public class ApiController { ...@@ -21,11 +23,13 @@ public class ApiController {
this.apiService = apiService; this.apiService = apiService;
} }
@ApiOperation(value = "查询所有可调用函数信息")
@GetMapping @GetMapping
public ResponseEntity<List<ClassInfo>> findAll() { public ResponseEntity<List<ClassInfo>> findAll() {
return ResponseEntity.ok(apiService.findAll()); return ResponseEntity.ok(apiService.findAll());
} }
@ApiOperation(value = "调用指定函数")
@PostMapping @PostMapping
public void invoke(@RequestBody InvokeRequest invokeRequest) { public void invoke(@RequestBody InvokeRequest invokeRequest) {
apiService.invoke(invokeRequest.getClassName(),invokeRequest.getName(),invokeRequest.getParams()); apiService.invoke(invokeRequest.getClassName(),invokeRequest.getName(),invokeRequest.getParams());
......
package com.tykj.workflowcore.api.entity; package com.tykj.workflowcore.api.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
...@@ -11,11 +12,13 @@ import java.util.List; ...@@ -11,11 +12,13 @@ import java.util.List;
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class ApiInfo { public class ApiInfo {
@ApiModelProperty(value = "所属类名")
private String className; private String className;
@ApiModelProperty(value = "参数信息")
private List<EntityInfo> params; private List<EntityInfo> params;
@ApiModelProperty(value = "返回信息")
private EntityInfo ret; private EntityInfo ret;
} }
package com.tykj.workflowcore.api.entity; package com.tykj.workflowcore.api.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
...@@ -11,8 +12,10 @@ import java.util.List; ...@@ -11,8 +12,10 @@ import java.util.List;
@NoArgsConstructor @NoArgsConstructor
public class ClassInfo { public class ClassInfo {
@ApiModelProperty(value = "类名")
private String className; private String className;
@ApiModelProperty(value = "函数信息")
private List<ApiInfo> apiInfos; private List<ApiInfo> apiInfos;
} }
package com.tykj.workflowcore.api.entity; package com.tykj.workflowcore.api.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
...@@ -11,10 +12,13 @@ import java.util.List; ...@@ -11,10 +12,13 @@ import java.util.List;
@NoArgsConstructor @NoArgsConstructor
public class EntityInfo { public class EntityInfo {
@ApiModelProperty(value = "类名")
private String className; private String className;
@ApiModelProperty(value = "参数名")
private String name; private String name;
@ApiModelProperty(value = "变量信息")
private List<EntityInfo> fields; private List<EntityInfo> fields;
} }
package com.tykj.workflowcore.api.entity; package com.tykj.workflowcore.api.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
...@@ -11,10 +12,13 @@ import java.util.List; ...@@ -11,10 +12,13 @@ import java.util.List;
@NoArgsConstructor @NoArgsConstructor
public class InvokeRequest { public class InvokeRequest {
@ApiModelProperty(value = "类名")
private String className; private String className;
@ApiModelProperty(value = "函数名")
private String name; private String name;
@ApiModelProperty(value = "参数信息")
private List<Parameter> params; private List<Parameter> params;
} }
package com.tykj.workflowcore.api.entity; package com.tykj.workflowcore.api.entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
...@@ -14,12 +15,14 @@ public class Parameter { ...@@ -14,12 +15,14 @@ public class Parameter {
/** /**
* 类名 * 类名
*/ */
@ApiModelProperty(value = "类名")
private String className; private String className;
/** /**
* Map形式的实例对象 * Map形式的实例对象
* key为字段名 value为字段值 * key为字段名 value为字段值
*/ */
@ApiModelProperty(value = "实例对象")
private Map<String,Object> instance; private Map<String,Object> instance;
} }
...@@ -18,8 +18,8 @@ public class ResultUtil<T> { ...@@ -18,8 +18,8 @@ public class ResultUtil<T> {
* *
* @param data 获取的数据 * @param data 获取的数据
*/ */
public static <T> ResponseEntity<ResultObj<T>> success(T data) { public static <T> ResponseEntity<ResultObj<T>> success(T data,String message) {
return ResponseEntity.ok(new ResultObj<>(data)); return ResponseEntity.ok(new ResultObj<>(data,message));
} }
/** /**
......
...@@ -84,9 +84,9 @@ public class FlowsInfoController { ...@@ -84,9 +84,9 @@ public class FlowsInfoController {
// return xml; // return xml;
// } // }
@GetMapping("/deploy/{id}") @GetMapping("/deploy")
@ApiOperation(value = "部署流程",notes = "0 部署成功") @ApiOperation(value = "部署流程",notes = "0 部署成功")
public Integer deploy(@PathVariable("id") Long id) throws FileNotFoundException { public Integer deploy(Long id) throws FileNotFoundException {
//根据id 查询出flowsInfo //根据id 查询出flowsInfo
FlowsInfo flowsInfo = flowInfoService.findById(id); FlowsInfo flowsInfo = flowInfoService.findById(id);
if (flowsInfo.getState() == 0){ if (flowsInfo.getState() == 0){
......
package com.tykj.workflowcore.workflow_editer.controller; package com.tykj.workflowcore.workflow_editer.controller;
import com.tykj.workflowcore.base.result.ResultObj;
import com.tykj.workflowcore.base.result.ResultUtil;
import com.tykj.workflowcore.model_layer.model.TableInfo;
import com.tykj.workflowcore.workflow_editer.entity.FormPage; import com.tykj.workflowcore.workflow_editer.entity.FormPage;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity; //import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
import com.tykj.workflowcore.workflow_editer.service.FormPageService; import com.tykj.workflowcore.workflow_editer.service.FormPageService;
import com.tykj.workflowcore.workflow_editer.service.PageEntityService; //import com.tykj.workflowcore.workflow_editer.service.PageEntityService;
import com.tykj.workflowcore.workflow_editer.vo.InFormPageVo; import com.tykj.workflowcore.workflow_editer.vo.InFormPageVo;
import com.tykj.workflowcore.workflow_editer.vo.OutFormPageVo; import com.tykj.workflowcore.workflow_editer.vo.OutFormPageVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
...@@ -28,26 +32,25 @@ public class FormPageController { ...@@ -28,26 +32,25 @@ public class FormPageController {
@Autowired @Autowired
private FormPageService formPageService; private FormPageService formPageService;
@Autowired // @Autowired
private PageEntityService pageEntityService; // private PageEntityService pageEntityService;
@ApiOperation("保存页面") @ApiOperation("保存页面")
@PostMapping("/savePage") @PostMapping("/savePage")
public Long savePage(@RequestBody InFormPageVo inFormPageVo){ public ResponseEntity savePage(@RequestBody InFormPageVo inFormPageVo){
List<String> entityIds = inFormPageVo.getEntityIds(); if (inFormPageVo.getId() == null){
for (String entityId : entityIds) { Long pageId = formPageService.savePage(inFormPageVo);
PageEntity pageEntity = new PageEntity(); return ResultUtil.success(pageId,"页面保存成功");
pageEntity.setEntityId(entityId); }else {
pageEntity.setPageId(formPageService.savePage(inFormPageVo)); //修改
pageEntityService.savePageEntity(pageEntity); FormPage formPage = inFormPageVo.toEntity();
formPageService.update(formPage);
return ResultUtil.success(inFormPageVo.getId(),"页面保存成功");
} }
return formPageService.savePage(inFormPageVo);
} }
@ApiOperation("回显页面") @ApiOperation("回显页面")
@GetMapping("/EchoPage/{id}") @GetMapping("/EchoPage")
public FormPage EchoPage(@PathVariable("id") Long id){ public FormPage EchoPage(Long id){
return formPageService.getPage(id); return formPageService.getPage(id);
} }
...@@ -58,9 +61,14 @@ public class FormPageController { ...@@ -58,9 +61,14 @@ public class FormPageController {
} }
@ApiOperation("删除页面") @ApiOperation("删除页面")
@DeleteMapping("deletePage/{id}") @DeleteMapping("deletePage")
public void deletePage(@PathVariable("id") Long id){ public void deletePage(Long id){
formPageService.deletePage(id); formPageService.deletePage(id);
} }
@PostMapping("/findByPages")
public List<TableInfo> findByPages(@RequestBody List<Long> pageIds){
return formPageService.findByPageIds(pageIds);
}
} }
package com.tykj.workflowcore.workflow_editer.controller; //package com.tykj.workflowcore.workflow_editer.controller;
//
import com.tykj.workflowcore.model_layer.model.TableInfo; //import com.tykj.workflowcore.model_layer.model.TableInfo;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity; //import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
import com.tykj.workflowcore.workflow_editer.service.PageEntityService; //import com.tykj.workflowcore.workflow_editer.service.PageEntityService;
import io.swagger.annotations.Api; //import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; //import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; //import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; //import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; //import org.springframework.web.bind.annotation.RestController;
//
import java.util.List; //import java.util.List;
//
/** ///**
* ClassName: PageEntityController // * ClassName: PageEntityController
* Package: com.tykj.controller // * Package: com.tykj.controller
* Description: // * Description:
* Datetime: 2021/3/4 9:50 // * Datetime: 2021/3/4 9:50
* // *
* @Author: zsp // * @Author: zsp
*/ // */
@RestController //@RestController
@RequestMapping("/pageEntity") //@RequestMapping("/pageEntity")
@Api("页面跟实体的管理") //@Api("页面跟实体的管理")
//
public class PageEntityController { //public class PageEntityController {
//
@Autowired // @Autowired
private PageEntityService pageEntityService; // private PageEntityService pageEntityService;
//
@PostMapping("/savePageEntity") // @PostMapping("/savePageEntity")
public void savePageEntity(@RequestBody PageEntity pageEntity){ // public void savePageEntity(@RequestBody PageEntity pageEntity){
pageEntityService.savePageEntity(pageEntity); // pageEntityService.savePageEntity(pageEntity);
} // }
//
@PostMapping("/findByPages") // @PostMapping("/findByPages")
public List<TableInfo> findByPages(List<Integer> pageIds){ // public List<TableInfo> findByPages(List<Integer> pageIds){
//
return pageEntityService.findByPageIds(pageIds); // return pageEntityService.findByPageIds(pageIds);
} // }
} //}
...@@ -91,9 +91,9 @@ public class WorkFlowController { ...@@ -91,9 +91,9 @@ public class WorkFlowController {
workFlowService.suspendOrActivateProcessDefinitionByKey(suspendVo); workFlowService.suspendOrActivateProcessDefinitionByKey(suspendVo);
} }
@DeleteMapping("/deleteFlow/{deployId}") @DeleteMapping("/deleteFlow")
@ApiOperation("是否删除") @ApiOperation("是否删除")
public void deleteFlow(@PathVariable("deployId") String deployId){ public void deleteFlow(String deployId){
//根据流程id查询出flowsInfo //根据流程id查询出flowsInfo
FlowsInfo flowsInfo = flowInfoService.findByDeployId(deployId); FlowsInfo flowsInfo = flowInfoService.findByDeployId(deployId);
//删除flowsInfo //删除flowsInfo
......
...@@ -59,6 +59,9 @@ public class FormPage { ...@@ -59,6 +59,9 @@ public class FormPage {
@ApiModelProperty("json描述文件") @ApiModelProperty("json描述文件")
private String descFile; private String descFile;
@ApiModelProperty("实体类id")
private String entityId;
public OutFormPageVo toEntityVo(){ public OutFormPageVo toEntityVo(){
OutFormPageVo outFormPageVo = new OutFormPageVo(); OutFormPageVo outFormPageVo = new OutFormPageVo();
BeanUtils.copyProperties(this,outFormPageVo); BeanUtils.copyProperties(this,outFormPageVo);
......
package com.tykj.workflowcore.workflow_editer.entity; //package com.tykj.workflowcore.workflow_editer.entity;
//
import io.swagger.annotations.Api; //import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty; //import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; //import lombok.AllArgsConstructor;
import lombok.Data; //import lombok.Data;
import lombok.NoArgsConstructor; //import lombok.NoArgsConstructor;
//
import javax.persistence.Entity; //import javax.persistence.Entity;
import javax.persistence.GeneratedValue; //import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType; //import javax.persistence.GenerationType;
import javax.persistence.Id; //import javax.persistence.Id;
import java.util.ArrayList; //import java.util.ArrayList;
import java.util.List; //import java.util.List;
//
/** ///**
* ClassName: PageEntity // * ClassName: PageEntity
* Package: com.tykj.entity // * Package: com.tykj.entity
* Description: // * Description:
* Datetime: 2021/3/3 10:51 // * Datetime: 2021/3/3 10:51
* // *
* @Author: zsp // * @Author: zsp
*/ // */
@Data //@Data
@AllArgsConstructor //@AllArgsConstructor
@NoArgsConstructor //@NoArgsConstructor
@Entity //@Entity
@Api("页面实体关系") //@Api("页面实体关系")
public class PageEntity { //public class PageEntity {
//
@Id // @Id
@GeneratedValue(strategy = GenerationType.IDENTITY) // @GeneratedValue(strategy = GenerationType.IDENTITY)
@ApiModelProperty("主键id") // @ApiModelProperty("主键id")
private Long id; // private Long id;
//
@ApiModelProperty("页面Id") // @ApiModelProperty("页面Id")
private Long pageId; // private Long pageId;
//
@ApiModelProperty("实体类Id") // @ApiModelProperty("实体类Id")
private String entityId; // private String entityId;
} //}
package com.tykj.workflowcore.workflow_editer.entity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* ClassName: Result
* Package: com.tykj.entity
* Description: 返回类型
* Datetime: 2021/2/23 10:18
*
* @Author: zsp
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Api("统一返回结果集")
public class Result {
@ApiModelProperty("返回状态")
private Integer status;
@ApiModelProperty("返回信息")
private String message;
}
package com.tykj.workflowcore.workflow_editer.mapper; //package com.tykj.workflowcore.workflow_editer.mapper;
//
import com.tykj.workflowcore.model_layer.model.TableInfo; //import com.tykj.workflowcore.model_layer.model.TableInfo;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity; //import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
import org.springframework.data.jpa.repository.JpaRepository; //import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor; //import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
//
import java.util.List; //import java.util.List;
//
/** ///**
* ClassName: PageEntityMapper // * ClassName: PageEntityMapper
* Package: com.tykj.mapper // * Package: com.tykj.mapper
* Description: // * Description:
* Datetime: 2021/3/4 9:53 // * Datetime: 2021/3/4 9:53
* // *
* @Author: zsp // * @Author: zsp
*/ // */
public interface PageEntityMapper extends JpaRepository<PageEntity,Long>, JpaSpecificationExecutor<PageEntity> { //public interface PageEntityMapper extends JpaRepository<PageEntity,Long>, JpaSpecificationExecutor<PageEntity> {
//
/** // /**
* 根据页面id查询 // * 根据页面id查询
* @param pageId 页面id // * @param pageId 页面id
* @return // * @return
*/ // */
PageEntity findByPageId(Integer pageId); // PageEntity findByPageId(Integer pageId);
} //}
//
package com.tykj.workflowcore.workflow_editer.service; package com.tykj.workflowcore.workflow_editer.service;
import com.tykj.workflowcore.model_layer.model.TableInfo;
import com.tykj.workflowcore.workflow_editer.entity.FormPage; import com.tykj.workflowcore.workflow_editer.entity.FormPage;
import com.tykj.workflowcore.workflow_editer.vo.InFormPageVo; import com.tykj.workflowcore.workflow_editer.vo.InFormPageVo;
import com.tykj.workflowcore.workflow_editer.vo.OutFormPageVo; import com.tykj.workflowcore.workflow_editer.vo.OutFormPageVo;
...@@ -25,6 +26,12 @@ public interface FormPageService { ...@@ -25,6 +26,12 @@ public interface FormPageService {
*/ */
Long savePage(@RequestBody InFormPageVo inFormPageVo); Long savePage(@RequestBody InFormPageVo inFormPageVo);
/**
* 保存页面
* @param formPage 页面实体
* @return 主键id
*/
void update(FormPage formPage);
/** /**
* 根据页面id来进行回显 * 根据页面id来进行回显
* @param id 页面id * @param id 页面id
...@@ -44,4 +51,10 @@ public interface FormPageService { ...@@ -44,4 +51,10 @@ public interface FormPageService {
*/ */
List<OutFormPageVo> getAllPages(); List<OutFormPageVo> getAllPages();
/**
* 根据页面id查询tableInfo
* @param pageIds 页面id
* @return
*/
List<TableInfo> findByPageIds(List<Long> pageIds);
} }
package com.tykj.workflowcore.workflow_editer.service; //package com.tykj.workflowcore.workflow_editer.service;
//
import com.tykj.workflowcore.model_layer.model.TableInfo; //import com.tykj.workflowcore.model_layer.model.TableInfo;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity; //import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
//
import java.util.List; //import java.util.List;
//
/** ///**
* ClassName: PageEntityService // * ClassName: PageEntityService
* Package: com.tykj.service // * Package: com.tykj.service
* Description: // * Description:
* Datetime: 2021/3/4 9:52 // * Datetime: 2021/3/4 9:52
* // *
* @Author: zsp // * @Author: zsp
*/ // */
public interface PageEntityService { //public interface PageEntityService {
//
/** // /**
* 保存 // * 保存
* @param pageEntity 页面实体之间关系 // * @param pageEntity 页面实体之间关系
*/ // */
void savePageEntity(PageEntity pageEntity); // void savePageEntity(PageEntity pageEntity);
//
/** // /**
* 根据页面id查询tableInfo // * 根据页面id查询tableInfo
* @param pageIds 页面id // * @param pageIds 页面id
* @return // * @return
*/ // */
List<TableInfo> findByPageIds(List<Integer> pageIds); // List<TableInfo> findByPageIds(List<Integer> pageIds);
//
//
} //}
package com.tykj.workflowcore.workflow_editer.service.impl; package com.tykj.workflowcore.workflow_editer.service.impl;
import com.github.wenhao.jpa.PredicateBuilder;
import com.github.wenhao.jpa.Specifications;
import com.tykj.workflowcore.model_layer.dao.TableInfoDao;
import com.tykj.workflowcore.model_layer.model.TableInfo;
import com.tykj.workflowcore.workflow_editer.entity.FormPage; import com.tykj.workflowcore.workflow_editer.entity.FormPage;
import com.tykj.workflowcore.workflow_editer.mapper.FormPageMapper; import com.tykj.workflowcore.workflow_editer.mapper.FormPageMapper;
import com.tykj.workflowcore.workflow_editer.service.FormPageService; import com.tykj.workflowcore.workflow_editer.service.FormPageService;
...@@ -28,7 +32,8 @@ public class FormPageServiceImpl implements FormPageService { ...@@ -28,7 +32,8 @@ public class FormPageServiceImpl implements FormPageService {
@Autowired @Autowired
private FormPageMapper formPageMapper; private FormPageMapper formPageMapper;
@Autowired
private TableInfoDao tableInfoDao;
@Override @Override
public Long savePage(@RequestBody InFormPageVo inFormPageVo) { public Long savePage(@RequestBody InFormPageVo inFormPageVo) {
inFormPageVo.setCreateTime(new Date()); inFormPageVo.setCreateTime(new Date());
...@@ -38,6 +43,11 @@ public class FormPageServiceImpl implements FormPageService { ...@@ -38,6 +43,11 @@ public class FormPageServiceImpl implements FormPageService {
return id; return id;
} }
@Override
public void update(FormPage formPage) {
formPageMapper.save(formPage);
}
@Override @Override
public FormPage getPage(@PathVariable("id") Long id) { public FormPage getPage(@PathVariable("id") Long id) {
...@@ -66,5 +76,19 @@ public class FormPageServiceImpl implements FormPageService { ...@@ -66,5 +76,19 @@ public class FormPageServiceImpl implements FormPageService {
return formPageVos; return formPageVos;
} }
@Override
public List<TableInfo> findByPageIds(List<Long> pageIds) {
ArrayList<TableInfo> list = new ArrayList<>();
for (Long pageId : pageIds) {
//通过pageId 查询出表id
String entityId = formPageMapper.findById(pageId).get().getEntityId();
//根据entityId查询出表
PredicateBuilder<TableInfo> builder = Specifications.and();
builder.eq("id",entityId);
List<TableInfo> tableInfoList = tableInfoDao.findAll(builder.build());
list.addAll(tableInfoList);
}
return list;
}
} }
package com.tykj.workflowcore.workflow_editer.service.impl; //package com.tykj.workflowcore.workflow_editer.service.impl;
//
import com.tykj.workflowcore.model_layer.dao.TableInfoDao; //import com.github.wenhao.jpa.PredicateBuilder;
import com.tykj.workflowcore.model_layer.model.TableInfo; //import com.github.wenhao.jpa.Specifications;
import com.tykj.workflowcore.workflow_editer.entity.PageEntity; //import com.tykj.workflowcore.model_layer.dao.TableInfoDao;
import com.tykj.workflowcore.workflow_editer.mapper.PageEntityMapper; //import com.tykj.workflowcore.model_layer.model.TableInfo;
import com.tykj.workflowcore.workflow_editer.service.PageEntityService; //import com.tykj.workflowcore.workflow_editer.entity.PageEntity;
import org.springframework.beans.factory.annotation.Autowired; //import com.tykj.workflowcore.workflow_editer.mapper.PageEntityMapper;
import org.springframework.stereotype.Service; //import com.tykj.workflowcore.workflow_editer.service.PageEntityService;
//import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList; //import org.springframework.stereotype.Service;
import java.util.List; //import java.util.ArrayList;
//import java.util.List;
/** //
* ClassName: PageEntityServiceImpl ///**
* Package: com.tykj.service.impl // * ClassName: PageEntityServiceImpl
* Description: // * Package: com.tykj.service.impl
* Datetime: 2021/3/4 9:55 // * Description:
* // * Datetime: 2021/3/4 9:55
* @Author: zsp // *
*/ // * @Author: zsp
@Service // */
public class PageEntityServiceImpl implements PageEntityService { //@Service
//public class PageEntityServiceImpl implements PageEntityService {
@Autowired //
private PageEntityMapper pageEntityMapper; // @Autowired
@Autowired // private PageEntityMapper pageEntityMapper;
private TableInfoDao tableInfoDao; // @Autowired
@Override // private TableInfoDao tableInfoDao;
public void savePageEntity(PageEntity pageEntity) { // @Override
pageEntityMapper.save(pageEntity); // public void savePageEntity(PageEntity pageEntity) {
} // pageEntityMapper.save(pageEntity);
// }
@Override //
public List<TableInfo> findByPageIds(List<Integer> pageIds) { // @Override
ArrayList<TableInfo> list = new ArrayList<>(); // public List<TableInfo> findByPageIds(List<Integer> pageIds) {
for (Integer pageId : pageIds) { // ArrayList<TableInfo> list = new ArrayList<>();
Long entityId = pageEntityMapper.findByPageId(pageId).getEntityId(); // for (Integer pageId : pageIds) {
//根据entityId查询出实体类 // String entityId = pageEntityMapper.findByPageId(pageId).getEntityId();
TableInfo tableInfo = tableInfoDao.findById(entityId).get(); // //根据entityId查询出表
list.add(tableInfo); // PredicateBuilder<TableInfo> builder = Specifications.and();
} // builder.eq("id",entityId);
return list; // List<TableInfo> tableInfoList = tableInfoDao.findAll(builder.build());
} // list.addAll(tableInfoList);
} // }
// return list;
// }
//}
package com.tykj.workflowcore.workflow_editer.util;
import org.springframework.http.ResponseEntity;
/**
* 全局错误处理类,用于处理一些不容易定义的错误
*
* @author HuangXiahao
**/
public class ApiException extends RuntimeException {
private ResponseEntity responseEntity;
public ApiException(ResponseEntity responseEntity) {
this.responseEntity = responseEntity;
}
public ApiException(String message) {
this.responseEntity = ResponseEntity.status(400).body(new ResultObj(message));
}
public ApiException(String message, Object data) {
this.responseEntity = ResponseEntity.status(400).body(new ResultObj(data, message));
}
public ResponseEntity getResponseEntity() {
return responseEntity;
}
public void setResponseEntity(ResponseEntity responseEntity) {
this.responseEntity = responseEntity;
}
}
package com.tykj.workflowcore.workflow_editer.util;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.BindException;
import org.springframework.validation.BindingResult;
import org.springframework.validation.FieldError;
import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.ResponseStatus;
/**
* 错误处理类
* 所有的报错信息都会通过本层的方法向外界返回
*
* @author HuangXiahao
**/
@ControllerAdvice
@Slf4j
public class GlobalExceptionHandler {
/**
* 报错信息都会通过这个方法处理并通过统一的返回方式进行返回
*
* @param e 报错信息
*/
@ResponseBody
@ExceptionHandler(Exception.class)
public ResponseEntity errorMessage(Exception e) {
log.error("[其他异常] {}", e.toString());
e.printStackTrace();
return ResultUtil.failed(e.getMessage());
}
/**
* 参数校验错误
* @param e 报错信息
*/
@ResponseBody
@ExceptionHandler(MethodArgumentNotValidException.class)
@ResponseStatus(HttpStatus.BAD_REQUEST)
public ResponseEntity errorMessage(MethodArgumentNotValidException e) {
BindingResult bindingResult = e.getBindingResult();
String errorMesssage = "参数校验失败:";
for (FieldError fieldError : bindingResult.getFieldErrors()) {
errorMesssage += fieldError.getDefaultMessage() + ", ";
}
log.error("[参数校验异常] {}", errorMesssage);
e.printStackTrace();
return ResultUtil.failed(errorMesssage);
}
/**
* 业务错误
*
* @param e 报错信息
*/
@ResponseBody
@ExceptionHandler(ApiException.class)
public ResponseEntity errorMessage(ApiException e) {
log.warn("[自定义异常] {}", e.toString());
if (e.getResponseEntity() != null) {
return e.getResponseEntity();
}
return ResultUtil.failed(e.getMessage());
}
/**
* 数据合法性验证报错会通过这个方法处理并通过统一的返回方式进行返回
*
* @param e 报错信息
*/
@ResponseBody
@ExceptionHandler(BindException.class)
public ResponseEntity errorMessage(BindException e) {
log.error("[参数异常] 检测到用户访问接口没有提供正确的参数 {}", e.toString());
e.printStackTrace();
BindingResult bindingResult = e.getBindingResult();
String message = null;
if (bindingResult.hasErrors()) {
FieldError fieldError = bindingResult.getFieldError();
if (fieldError != null) {
message = fieldError.getField() + fieldError.getDefaultMessage();
}
}
return ResultUtil.failed(message);
}
}
package com.tykj.workflowcore.workflow_editer.util;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author dengdiyi
* @description 接口返回统一标准类
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@JsonPropertyOrder(value = {"message", "data"})
public class ResultObj<T> {
private T data;
private String message;
public ResultObj(T o) {
this.data = o;
this.message = "no message";
}
public ResultObj(String m) {
this.message = m;
}
}
package com.tykj.workflowcore.workflow_editer.util;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
/**
* @author HuangXiahao
* @version V1.0
* @class ResultMessage
* @packageName com.example.hello.demo.resultObject
**/
public class ResultUtil<T> {
/**
* 成功返回结果
*
* @param data 获取的数据
*/
public static <T> ResponseEntity<ResultObj<T>> success(T data,String message) {
return ResponseEntity.ok(new ResultObj<>(data,message));
}
/**
* 成功返回结果
*
* @param data 获取的数据
*/
public static <T> ResponseEntity success(T data, HttpHeaders headers) {
return new ResponseEntity(new ResultObj(data), headers, HttpStatus.OK);
}
/**
* 失败返回结果
*/
public static <T> ResponseEntity failed() {
return ResponseEntity.status(500).body(new ResultObj("服务器内部发生错误"));
}
/**
* 失败返回结果
*/
public static <T> ResponseEntity failed(T content) {
return new ResponseEntity(new ResultObj(content), HttpStatus.INTERNAL_SERVER_ERROR);
}
/**
* 失败返回结果
*/
public static <T> ResponseEntity failed(HttpStatus httpStatus) {
return new ResponseEntity(httpStatus);
}
/**
* 失败返回结果
*/
public static <T> ResponseEntity failed(HttpStatus httpStatus, T content) {
return new ResponseEntity(new ResultObj(content), httpStatus);
}
/**
* 参数验证失败返回结果
*/
public static <T> ResponseEntity validateFailed(T content) {
return failed(HttpStatus.INTERNAL_SERVER_ERROR, content);
}
/**
* 未登录返回结果
*/
public static <T> ResponseEntity unauthorized() {
return failed(HttpStatus.UNAUTHORIZED);
}
/**
* 未授权返回结果
*/
public static <T> ResponseEntity forbidden() {
return failed(HttpStatus.FORBIDDEN);
}
}
...@@ -24,6 +24,8 @@ import java.util.List; ...@@ -24,6 +24,8 @@ import java.util.List;
@NoArgsConstructor @NoArgsConstructor
public class InFormPageVo { public class InFormPageVo {
@ApiModelProperty("页面id")
private Long id;
@ApiModelProperty("页面名称") @ApiModelProperty("页面名称")
private String pageName; private String pageName;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论