Эх сурвалжийг харах

Merge remote-tracking branch 'origin/master'

xingyu 2 жил өмнө
parent
commit
8ff3d22c4d

+ 2 - 0
.gitignore

@@ -47,3 +47,5 @@ nbdist/
 rebel.xml
 
 application-my.yaml
+
+/yudao-ui-app/unpackage/

+ 18 - 15
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 => 完成对 <https://github.com/YunaiV/onemall> 的迁移,作为 onemall 的 Spring Boot 单体版本。
-* 2022 Q4 => 完成对 <https://github.com/YunaiV/onemall>> 的重构,作为 onemall 的 Spring Cloud 微服务版本。
-
-### 会员中心
-
-正在开发中,大体计划如下:
-* 2021 Q1 =》完成对 <https://github.com/YunaiV/onemall> 的迁移 
-
 ### 基础设施
 
 |     | 功能       | 描述                                           |
@@ -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 前端
 
 | 框架                                                                  | 说明                 | 版本     |
 |----------------------------------------------------------------------|---------------------|--------|

+ 1 - 1
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 芋道源码
  */

+ 0 - 3
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<BpmActivityRespVO> getActivityListByProcessInstanceId(String processInstanceId) {

+ 0 - 1
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);
 
-
 }

+ 1 - 12
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<BpmTaskTodoPageItemRespVO> 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<BpmTaskAssignRuleDO> 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

+ 12 - 11
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 '';

+ 2 - 0
yudao-ui-admin/src/views/bpm/processInstance/detail.vue

@@ -45,6 +45,8 @@
         </router-link>
       </div>
     </el-card>
+
+    <!-- 审批记录 -->
     <el-card class="box-card" v-loading="tasksLoad">
       <div slot="header" class="clearfix">
         <span class="el-icon-picture-outline">审批记录</span>