Bläddra i källkod

1、暂存时也保存选择的审批人信息

dongpo 6 månader sedan
förälder
incheckning
0767be65fb
12 ändrade filer med 186 tillägg och 4 borttagningar
  1. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/business/OaBusinessServiceImpl.java
  2. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/conversion/OaConversionServiceImpl.java
  3. 20 1
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/entry/OaEntryServiceImpl.java
  4. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/expense/OaExpenseServiceImpl.java
  5. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/leave/OaLeaveServiceImpl.java
  6. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/out/OaOutServiceImpl.java
  7. 20 2
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/purchase/OaPurchaseServiceImpl.java
  8. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/receive/OaReceiveServiceImpl.java
  9. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/renew/OaRenewServiceImpl.java
  10. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/stamp/OaStampServiceImpl.java
  11. 14 0
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/turnover/OaTurnoverServiceImpl.java
  12. 20 1
      yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/universal/OaUniversalServiceImpl.java

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/business/OaBusinessServiceImpl.java

@@ -134,6 +134,20 @@ public class OaBusinessServiceImpl implements OaBusinessService {
         oaBusiness.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaBusiness.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaBusiness.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaBusiness.getId() != null) {
+                // 单独更新审批人字段
+                oaBusinessMapper.update(new LambdaUpdateWrapper<OaBusinessDO>()
+                        .eq(OaBusinessDO::getId, oaBusiness.getId())
+                        .set(OaBusinessDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaBusiness.getId() == null) {
             oaBusinessMapper.insert(oaBusiness);

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/conversion/OaConversionServiceImpl.java

@@ -147,6 +147,20 @@ public class OaConversionServiceImpl implements OaConversionService {
         oaConversion.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaConversion.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaConversion.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaConversion.getId() != null) {
+                // 单独更新审批人字段
+                oaConversionMapper.update(new LambdaUpdateWrapper<OaConversionDO>()
+                        .eq(OaConversionDO::getId, oaConversion.getId())
+                        .set(OaConversionDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaConversion.getId() == null) {
             oaConversionMapper.insert(oaConversion);

+ 20 - 1
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/entry/OaEntryServiceImpl.java

@@ -46,7 +46,12 @@ import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
@@ -118,6 +123,20 @@ public class OaEntryServiceImpl implements OaEntryService {
         oaEntry.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaEntry.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaEntry.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaEntry.getId() != null) {
+                // 单独更新审批人字段
+                oaEntryMapper.update(new LambdaUpdateWrapper<OaEntryDO>()
+                        .eq(OaEntryDO::getId, oaEntry.getId())
+                        .set(OaEntryDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaEntry.getId() == null) {
             oaEntryMapper.insert(oaEntry);

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/expense/OaExpenseServiceImpl.java

@@ -153,6 +153,20 @@ public class OaExpenseServiceImpl implements OaExpenseService {
         oaExpense.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaExpense.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaExpense.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaExpense.getId() != null) {
+                // 单独更新审批人字段
+                oaExpenseMapper.update(new LambdaUpdateWrapper<OaExpenseDO>()
+                        .eq(OaExpenseDO::getId, oaExpense.getId())
+                        .set(OaExpenseDO::getStartUserSelectAssignees, null));
+            }
+        }
 
         // 保存或更新表单信息
         if (oaExpense.getId() == null) {

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/leave/OaLeaveServiceImpl.java

@@ -135,6 +135,20 @@ public class OaLeaveServiceImpl implements OaLeaveService {
         oaLeave.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaLeave.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaLeave.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaLeave.getId() != null) {
+                // 单独更新审批人字段
+                oaLeaveMapper.update(new LambdaUpdateWrapper<OaLeaveDO>()
+                        .eq(OaLeaveDO::getId, oaLeave.getId())
+                        .set(OaLeaveDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaLeave.getId() == null) {
             oaLeaveMapper.insert(oaLeave);

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/out/OaOutServiceImpl.java

@@ -131,6 +131,20 @@ public class OaOutServiceImpl implements OaOutService {
         oaOut.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaOut.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaOut.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaOut.getId() != null) {
+                // 单独更新审批人字段
+                oaOutMapper.update(new LambdaUpdateWrapper<OaOutDO>()
+                        .eq(OaOutDO::getId, oaOut.getId())
+                        .set(OaOutDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaOut.getId() == null) {
             oaOutMapper.insert(oaOut);

+ 20 - 2
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/purchase/OaPurchaseServiceImpl.java

@@ -19,7 +19,6 @@ import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskRespVO;
 import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskReturnReqVO;
 import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.purchase.OaPurchaseDO;
 import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.purchase.OaPurchaseObjDO;
-import cn.iocoder.yudao.module.bpm.dal.dataobject.oa.purchase.OaPurchaseDO;
 import cn.iocoder.yudao.module.bpm.dal.mysql.oa.purchase.OaPurchaseMapper;
 import cn.iocoder.yudao.module.bpm.dal.mysql.oa.purchase.OaPurchaseObjMapper;
 import cn.iocoder.yudao.module.bpm.enums.DictDataConstants;
@@ -46,7 +45,12 @@ import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
@@ -126,6 +130,20 @@ public class OaPurchaseServiceImpl implements OaPurchaseService {
         oaPurchase.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaPurchase.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaPurchase.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaPurchase.getId() != null) {
+                // 单独更新审批人字段
+                oaPurchaseMapper.update(new LambdaUpdateWrapper<OaPurchaseDO>()
+                        .eq(OaPurchaseDO::getId, oaPurchase.getId())
+                        .set(OaPurchaseDO::getStartUserSelectAssignees, null));
+            }
+        }
 
         // 保存或更新表单信息
         if (oaPurchase.getId() == null) {

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/receive/OaReceiveServiceImpl.java

@@ -131,6 +131,20 @@ public class OaReceiveServiceImpl implements OaReceiveService {
         oaReceive.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaReceive.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaReceive.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaReceive.getId() != null) {
+                // 单独更新审批人字段
+                oaReceiveMapper.update(new LambdaUpdateWrapper<OaReceiveDO>()
+                        .eq(OaReceiveDO::getId, oaReceive.getId())
+                        .set(OaReceiveDO::getStartUserSelectAssignees, null));
+            }
+        }
 
         // 保存或更新表单信息
         if (oaReceive.getId() == null) {

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/renew/OaRenewServiceImpl.java

@@ -154,6 +154,20 @@ public class OaRenewServiceImpl implements OaRenewService {
         oaRenew.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaRenew.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaRenew.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaRenew.getId() != null) {
+                // 单独更新审批人字段
+                oaRenewMapper.update(new LambdaUpdateWrapper<OaRenewDO>()
+                        .eq(OaRenewDO::getId, oaRenew.getId())
+                        .set(OaRenewDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaRenew.getId() == null) {
             oaRenewMapper.insert(oaRenew);

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/stamp/OaStampServiceImpl.java

@@ -138,6 +138,20 @@ public class OaStampServiceImpl implements OaStampService {
         }
         // 暂存不保存审批人信息
         oaStamp.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaStamp.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaStamp.getId() != null) {
+                // 单独更新审批人字段
+                oaStampMapper.update(new LambdaUpdateWrapper<OaStampDO>()
+                        .eq(OaStampDO::getId, oaStamp.getId())
+                        .set(OaStampDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaStamp.getId() == null) {
             oaStampMapper.insert(oaStamp);

+ 14 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/turnover/OaTurnoverServiceImpl.java

@@ -143,6 +143,20 @@ public class OaTurnoverServiceImpl implements OaTurnoverService {
         oaTurnover.setCreator(String.valueOf(loginEmployee.getId()));
         // 暂存不保存审批人信息
         oaTurnover.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaTurnover.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaTurnover.getId() != null) {
+                // 单独更新审批人字段
+                oaTurnoverMapper.update(new LambdaUpdateWrapper<OaTurnoverDO>()
+                        .eq(OaTurnoverDO::getId, oaTurnover.getId())
+                        .set(OaTurnoverDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaTurnover.getId() == null) {
             oaTurnoverMapper.insert(oaTurnover);

+ 20 - 1
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/oa/universal/OaUniversalServiceImpl.java

@@ -43,7 +43,12 @@ import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
@@ -114,6 +119,20 @@ public class OaUniversalServiceImpl implements OaUniversalService {
         oaUniversal.setInfoSource("0");
         // 暂存不保存审批人信息
         oaUniversal.setStartUserSelectAssignees(null);
+        // 连续暂存,回显时前端会直接显示上次缓存的数据,会让用户认为第一次暂存没保存审批人,第二次却保存了
+        // 为了前后一致,暂存时如果选择了审批人,也保存一下
+        List<Long> selectAssignees = stagingReqVO.getStartUserSelectAssignees();
+        if (CollectionUtil.isNotEmpty(selectAssignees)) {
+            String collect = selectAssignees.stream().map(String::valueOf).collect(Collectors.joining(","));
+            oaUniversal.setStartUserSelectAssignees(collect);
+        } else {
+            if (oaUniversal.getId() != null) {
+                // 单独更新审批人字段
+                oaUniversalMapper.update(new LambdaUpdateWrapper<OaUniversalDO>()
+                        .eq(OaUniversalDO::getId, oaUniversal.getId())
+                        .set(OaUniversalDO::getStartUserSelectAssignees, null));
+            }
+        }
         // 保存或更新表单信息
         if (oaUniversal.getId() == null) {
             oaUniversalMapper.insert(oaUniversal);