From 39a38663129db179e5bff4e9eff4326feb81c5b9 Mon Sep 17 00:00:00 2001 From: YoVinchen Date: Thu, 22 Jun 2023 20:10:04 +0800 Subject: [PATCH] Initial commit --- .../controller/api/ProcessController.java | 48 +++++++++++++++++++ .../process/service/OaProcessService.java | 5 ++ .../process/service/OaProcessTypeService.java | 8 ++++ .../service/impl/OaProcessServiceImpl.java | 33 ++++++++++++- .../impl/OaProcessTemplateServiceImpl.java | 11 ++++- .../impl/OaProcessTypeServiceImpl.java | 14 ++++++ .../src/main/resources/application-dev.yml | 12 ++--- 7 files changed, 122 insertions(+), 9 deletions(-) create mode 100644 service-oa/src/main/java/com/atguigu/process/controller/api/ProcessController.java diff --git a/service-oa/src/main/java/com/atguigu/process/controller/api/ProcessController.java b/service-oa/src/main/java/com/atguigu/process/controller/api/ProcessController.java new file mode 100644 index 0000000..6615eef --- /dev/null +++ b/service-oa/src/main/java/com/atguigu/process/controller/api/ProcessController.java @@ -0,0 +1,48 @@ +package com.atguigu.process.controller.api; + +import com.atguigu.common.result.Result; +import com.atguigu.model.process.ProcessType; +import com.atguigu.process.service.OaProcessTypeService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * ClassName: ProcessController + * Package: com.atguigu.process.controller.api + * + * @author yovinchen + * @Create 2023/6/22 18:24 + */ + +@Api(tags = "审批流管理") +@RestController +@RequestMapping(value = "/admin/process") +@CrossOrigin//跨域 +@SuppressWarnings({"unchecked", "rawtypes"}) +public class ProcessController { + + @Autowired + private OaProcessTypeService oaProcessTypeService; + + + /** + * 查询所有审批分类和每一个分类所有审批模版 + * + * @return + */ + @ApiOperation(value = "获取全部审批分类及模板") + @GetMapping("findProcessType") + public Result findProcessType() { + List list = oaProcessTypeService.findProcessType(); + return Result.ok(list); + } + + +} diff --git a/service-oa/src/main/java/com/atguigu/process/service/OaProcessService.java b/service-oa/src/main/java/com/atguigu/process/service/OaProcessService.java index b1ec35d..0a3d023 100644 --- a/service-oa/src/main/java/com/atguigu/process/service/OaProcessService.java +++ b/service-oa/src/main/java/com/atguigu/process/service/OaProcessService.java @@ -25,4 +25,9 @@ public interface OaProcessService extends IService { */ IPage selectPage(Page pageParam, ProcessQueryVo processQueryVo); + + /** + * 部署流程定义 + */ + void deployByZip(String deployPath); } diff --git a/service-oa/src/main/java/com/atguigu/process/service/OaProcessTypeService.java b/service-oa/src/main/java/com/atguigu/process/service/OaProcessTypeService.java index 5ef2dd6..36a35c9 100644 --- a/service-oa/src/main/java/com/atguigu/process/service/OaProcessTypeService.java +++ b/service-oa/src/main/java/com/atguigu/process/service/OaProcessTypeService.java @@ -3,6 +3,8 @@ package com.atguigu.process.service; import com.atguigu.model.process.ProcessType; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 审批类型 服务类 @@ -13,4 +15,10 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface OaProcessTypeService extends IService { + /** + * 查询所有审批分类和每一个分类所有审批模版 + * + * @return + */ + List findProcessType(); } diff --git a/service-oa/src/main/java/com/atguigu/process/service/impl/OaProcessServiceImpl.java b/service-oa/src/main/java/com/atguigu/process/service/impl/OaProcessServiceImpl.java index c9aad45..418caea 100644 --- a/service-oa/src/main/java/com/atguigu/process/service/impl/OaProcessServiceImpl.java +++ b/service-oa/src/main/java/com/atguigu/process/service/impl/OaProcessServiceImpl.java @@ -1,7 +1,6 @@ package com.atguigu.process.service.impl; import com.atguigu.model.process.Process; -import com.atguigu.model.process.ProcessType; import com.atguigu.process.mapper.OaProcessMapper; import com.atguigu.process.service.OaProcessService; import com.atguigu.vo.process.ProcessQueryVo; @@ -9,9 +8,14 @@ import com.atguigu.vo.process.ProcessVo; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.activiti.engine.RepositoryService; +import org.activiti.engine.repository.Deployment; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.io.InputStream; +import java.util.zip.ZipInputStream; + /** *

* 审批类型 服务实现类 @@ -23,6 +27,10 @@ import org.springframework.stereotype.Service; @Service public class OaProcessServiceImpl extends ServiceImpl implements OaProcessService { + + @Autowired + private RepositoryService repositoryService; + /** * 获取分页列表 * @@ -33,7 +41,28 @@ public class OaProcessServiceImpl extends ServiceImpl //审批管理列表 @Override public IPage selectPage(Page pageParam, ProcessQueryVo processQueryVo) { - IPage pageModel = baseMapper.selectPage(pageParam,processQueryVo); + IPage pageModel = baseMapper.selectPage(pageParam, processQueryVo); return pageModel; } + + /** + * 部署流程定义 + * + * @param deployPath + */ + @Override + public void deployByZip(String deployPath) { + // 定义zip输入流 + InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream(deployPath); + ZipInputStream zipInputStream = null; + if (inputStream != null) { + zipInputStream = new ZipInputStream(inputStream); + } + // 流程部署 + Deployment deployment = repositoryService.createDeployment().addZipInputStream(zipInputStream).deploy(); + + System.out.println("deployment.getId() = " + deployment.getId()); + System.out.println("deployment.getName() = " + deployment.getName()); + } + } diff --git a/service-oa/src/main/java/com/atguigu/process/service/impl/OaProcessTemplateServiceImpl.java b/service-oa/src/main/java/com/atguigu/process/service/impl/OaProcessTemplateServiceImpl.java index e3b8136..79573d2 100644 --- a/service-oa/src/main/java/com/atguigu/process/service/impl/OaProcessTemplateServiceImpl.java +++ b/service-oa/src/main/java/com/atguigu/process/service/impl/OaProcessTemplateServiceImpl.java @@ -3,13 +3,16 @@ package com.atguigu.process.service.impl; import com.atguigu.model.process.ProcessTemplate; import com.atguigu.model.process.ProcessType; import com.atguigu.process.mapper.OaProcessTemplateMapper; +import com.atguigu.process.service.OaProcessService; import com.atguigu.process.service.OaProcessTemplateService; import com.atguigu.process.service.OaProcessTypeService; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import javax.annotation.Resource; import java.util.List; @@ -30,6 +33,9 @@ public class OaProcessTemplateServiceImpl extends ServiceImpl * 审批类型 服务实现类 @@ -17,4 +19,16 @@ import org.springframework.stereotype.Service; @Service public class OaProcessTypeServiceImpl extends ServiceImpl implements OaProcessTypeService { + /** + * 查询所有审批分类和每一个分类所有审批模版 + * + * @return + */ + @Override + public List findProcessType() { + + + + return null; + } } diff --git a/service-oa/src/main/resources/application-dev.yml b/service-oa/src/main/resources/application-dev.yml index fdc4757..3452798 100644 --- a/service-oa/src/main/resources/application-dev.yml +++ b/service-oa/src/main/resources/application-dev.yml @@ -10,12 +10,12 @@ spring: datasource: type: com.zaxxer.hikari.HikariDataSource driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://43.143.164.194:3306/guigu-oa?useSSL=false&useUnicode=true&characterEncoding=utf8&allowPublicKeyRetrieval=true - username: admin - password: admin -# url: jdbc:mysql://localhost:3306/guigu-oa?useSSL=false&useUnicode=true&characterEncoding=utf8&allowPublicKeyRetrieval=true -# username: root -# password: root +# url: jdbc:mysql://43.143.164.194:3306/guigu-oa?useSSL=false&useUnicode=true&characterEncoding=utf8&allowPublicKeyRetrieval=true +# username: admin +# password: admin + url: jdbc:mysql://localhost:3306/guigu-oa?useSSL=false&useUnicode=true&characterEncoding=utf8&allowPublicKeyRetrieval=true + username: root + password: root jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8