From 7ab0dfbe6e57e88cf2c21d86e9314cbeb847988b Mon Sep 17 00:00:00 2001 From: YunaiV Date: Sat, 23 Jul 2022 21:43:19 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=AE=8C=E5=96=84=20BPM=20=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=EF=BC=8C=E8=A1=A5=E5=85=85=E5=B7=A5=E4=BD=9C=E6=B5=81?= =?UTF-8?q?=E7=9A=84=E8=A7=86=E9=A2=91=E6=95=99=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 ++ .../bpm/dal/dataobject/task/BpmTaskExtDO.java | 2 +- .../bpm/service/task/BpmProcessInstanceService.java | 1 - .../module/bpm/service/task/BpmTaskServiceImpl.java | 13 +------------ .../src/views/bpm/processInstance/detail.vue | 2 ++ 5 files changed, 6 insertions(+), 14 deletions(-) diff --git a/.gitignore b/.gitignore index 801a214ca..b948102ac 100644 --- a/.gitignore +++ b/.gitignore @@ -47,3 +47,5 @@ nbdist/ rebel.xml application-my.yaml + +/yudao-ui-app/unpackage/ diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/task/BpmTaskExtDO.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/task/BpmTaskExtDO.java index 925b19b7b..5c6b70fc3 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/task/BpmTaskExtDO.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/task/BpmTaskExtDO.java @@ -12,7 +12,7 @@ import java.util.Date; /** * Bpm 流程任务的拓展表 - * 主要解决 Activiti Task 和 HistoricTaskInstance 不支持拓展字段,所以新建拓展表 + * 主要解决 Flowable Task 和 HistoricTaskInstance 不支持拓展字段,所以新建拓展表 * * @author 芋道源码 */ diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmProcessInstanceService.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmProcessInstanceService.java index 795ade0e3..23340ad19 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmProcessInstanceService.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmProcessInstanceService.java @@ -144,5 +144,4 @@ public interface BpmProcessInstanceService { */ void updateProcessInstanceExtReject(String id, String reason); - } diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskServiceImpl.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskServiceImpl.java index 72863b82f..05ee50a75 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskServiceImpl.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmTaskServiceImpl.java @@ -7,10 +7,7 @@ import cn.iocoder.yudao.framework.common.util.number.NumberUtils; import cn.iocoder.yudao.framework.common.util.object.PageUtils; import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.*; import cn.iocoder.yudao.module.bpm.convert.task.BpmTaskConvert; -import cn.iocoder.yudao.module.bpm.dal.dataobject.definition.BpmTaskAssignRuleDO; import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO; -import cn.iocoder.yudao.module.bpm.dal.mysql.definition.BpmTaskAssignRuleMapper; -import cn.iocoder.yudao.module.bpm.dal.mysql.task.BpmActivityMapper; import cn.iocoder.yudao.module.bpm.dal.mysql.task.BpmTaskExtMapper; import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceDeleteReasonEnum; import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum; @@ -67,10 +64,6 @@ public class BpmTaskServiceImpl implements BpmTaskService { private BpmTaskExtMapper taskExtMapper; @Resource private BpmMessageService messageService; - @Resource - private BpmTaskAssignRuleMapper taskAssignRuleMapper; - @Resource - private BpmActivityMapper bpmActivityMapper; @Override public PageResult getTodoTaskPage(Long userId, BpmTaskTodoPageReqVO pageVO) { @@ -194,10 +187,6 @@ public class BpmTaskServiceImpl implements BpmTaskService { taskExtMapper.updateByTaskId( new BpmTaskExtDO().setTaskId(task.getId()).setResult(BpmProcessInstanceResultEnum.APPROVE.getResult()) .setReason(reqVO.getReason())); - // 判断任务是否为或签,或签时删除其余不用审批的任务 - List bpmTaskAssignRuleList = - taskAssignRuleMapper.selectListByProcessDefinitionId(task.getProcessDefinitionId(), - task.getTaskDefinitionKey()); } @Override @@ -216,7 +205,7 @@ public class BpmTaskServiceImpl implements BpmTaskService { // 更新任务拓展表为不通过 taskExtMapper.updateByTaskId( new BpmTaskExtDO().setTaskId(task.getId()).setResult(BpmProcessInstanceResultEnum.REJECT.getResult()) - .setReason(reqVO.getReason())); + .setEndTime(new Date()).setReason(reqVO.getReason())); } @Override diff --git a/yudao-ui-admin/src/views/bpm/processInstance/detail.vue b/yudao-ui-admin/src/views/bpm/processInstance/detail.vue index e9491c4a6..0cdba1b7a 100644 --- a/yudao-ui-admin/src/views/bpm/processInstance/detail.vue +++ b/yudao-ui-admin/src/views/bpm/processInstance/detail.vue @@ -45,6 +45,8 @@ + +
审批记录 From 4fe3da058c69393f8f99e4f57ccb1b3511ea498d Mon Sep 17 00:00:00 2001 From: YunaiV Date: Mon, 25 Jul 2022 00:19:32 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20README=20=E6=96=87?= =?UTF-8?q?=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 33 ++++++++++--------- .../service/task/BpmActivityServiceImpl.java | 3 -- .../package/designer/ProcessViewer.vue | 23 ++++++------- 3 files changed, 30 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index 9397e0cea..5990dce14 100644 --- a/README.md +++ b/README.md @@ -23,8 +23,8 @@ > > 😜 给项目点点 Star 吧,这对我们真的很重要! -* 前端 vue2 版本采用 [vue-element-admin](https://github.com/PanJiaChen/vue-element-admin) -* 前端 vue3 版本采用 [vue-element-plus-admin](https://gitee.com/kailong110120130/vue-element-plus-admin) +* 前端 Vue2 版本采用 [vue-element-admin](https://github.com/PanJiaChen/vue-element-admin) +* 前端 Vue3 版本采用 [vue-element-plus-admin](https://gitee.com/kailong110120130/vue-element-plus-admin) * 后端采用 Spring Boot、MySQL + MyBatis Plus、Redis + Redisson。 * 数据库可使用 MySQL、Oracle、PostgreSQL、SQL Server、MariaDB、国产达梦 DM、TiDB 等 * 权限认证使用 Spring Security & Token & Redis,支持多终端、多种用户的认证系统。 @@ -100,17 +100,6 @@ ps:核心功能已经实现,正在对接微信小程序中... -### 商城系统 - -正在开发中,大体计划如下: -* 2022 Q2 => 完成对 的迁移,作为 onemall 的 Spring Boot 单体版本。 -* 2022 Q4 => 完成对 > 的重构,作为 onemall 的 Spring Cloud 微服务版本。 - -### 会员中心 - -正在开发中,大体计划如下: -* 2021 Q1 =》完成对 的迁移 - ### 基础设施 | | 功能 | 描述 | @@ -135,6 +124,20 @@ ps:核心功能已经实现,正在对接微信小程序中... | 🚀 | 日志服务 | 轻量级日志中心,查看远程服务器的日志 | | 🚀 | 单元测试 | 基于 JUnit + Mockito 实现单元测试,保证功能的正确性、代码的质量等 | +### 商城系统 + +建设中... + +![功能图](http://static.iocoder.cn/mall%20%E5%8A%9F%E8%83%BD%E5%9B%BE-min.png) + +![GIF 图-耐心等待](https://raw.githubusercontent.com/YunaiV/Blog/master/Mall/onemall-admin-min.gif) + +![GIF 图-耐心等待](https://raw.githubusercontent.com/YunaiV/Blog/master/Mall/onemall-h5-min.gif) + +### 会员中心 + +和「商城系统」一起开发 + ## 🐨 技术栈 | 项目 | 说明 | @@ -177,14 +180,14 @@ ps:核心功能已经实现,正在对接微信小程序中... | [JUnit](https://junit.org/junit5/) | Java 单元测试框架 | 5.8.2 | - | | [Mockito](https://github.com/mockito/mockito) | Java Mock 框架 | 4.0.0 | - | -### vue2 前端 +### Vue2 前端 | 框架 | 说明 | 版本 | |------------------------------------------------------------------------------|---------------|--------| | [Vue](https://cn.vuejs.org/index.html) | JavaScript 框架 | 2.6.12 | | [Vue Element Admin](https://panjiachen.github.io/vue-element-admin-site/zh/) | 后台前端解决方案 | - | -### vue3 前端 +### Vue3 前端 | 框架 | 说明 | 版本 | |----------------------------------------------------------------------|---------------------|--------| diff --git a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmActivityServiceImpl.java b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmActivityServiceImpl.java index fbfc5de29..c06445efa 100644 --- a/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmActivityServiceImpl.java +++ b/yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/task/BpmActivityServiceImpl.java @@ -2,7 +2,6 @@ package cn.iocoder.yudao.module.bpm.service.task; import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.activity.BpmActivityRespVO; import cn.iocoder.yudao.module.bpm.convert.task.BpmActivityConvert; -import cn.iocoder.yudao.module.bpm.dal.mysql.task.BpmActivityMapper; import lombok.extern.slf4j.Slf4j; import org.flowable.engine.HistoryService; import org.flowable.engine.history.HistoricActivityInstance; @@ -25,8 +24,6 @@ public class BpmActivityServiceImpl implements BpmActivityService { @Resource private HistoryService historyService; - @Resource - private BpmActivityMapper bpmActivityMapper; @Override public List getActivityListByProcessInstanceId(String processInstanceId) { diff --git a/yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/ProcessViewer.vue b/yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/ProcessViewer.vue index 9e1e0b030..45a9702f4 100644 --- a/yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/ProcessViewer.vue +++ b/yudao-ui-admin/src/components/bpmnProcessDesigner/package/designer/ProcessViewer.vue @@ -120,20 +120,21 @@ export default { this.bpmnModeler.getDefinitions().rootElements[0].flowElements?.forEach(n => { let activity = activityList.find(m => m.key === n.id) // 找到对应的活动 if (n.$type === 'bpmn:UserTask') { // 用户任务 - debugger if (!activity) { return; } // 处理用户任务的高亮 const task = this.taskList.find(m => m.id === activity.taskId); // 找到活动对应的 taskId - if (task) { - canvas.addMarker(n.id, this.getResultCss(task.result)); - // 如果非通过,就不走后面的线条了 - if (task.result !== 2) { - return; - } + if (!task) { + return; } + // 高亮任务 + canvas.addMarker(n.id, this.getResultCss(task.result)); + // 如果非通过,就不走后面的线条了 + if (task.result !== 2) { + return; + } // 处理 outgoing 出线 const outgoing = this.getActivityOutgoing(activity); outgoing?.forEach(nn => { @@ -219,13 +220,13 @@ export default { return activity.endTime ? 'highlight' : 'highlight-todo'; }, getResultCss(result) { - if (result === 1) { + if (result === 1) { // 审批中 return 'highlight-todo'; - } else if (result === 2) { + } else if (result === 2) { // 已通过 return 'highlight'; - } else if (result === 3) { + } else if (result === 3) { // 不通过 return 'highlight-reject'; - } else if (result === 4) { + } else if (result === 4) { // 已取消 return 'highlight-cancel'; } return '';