Browse Source

1、用印审批完成添加用印信息

dongpo 7 months ago
parent
commit
6c1176051b

+ 8 - 5
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/dal/dataobject/stamp/stampinfo/OaStampInfoDO.java

@@ -1,11 +1,10 @@
 package cn.iocoder.yudao.module.bpm.dal.dataobject.stamp.stampinfo;
 
-import lombok.*;
-import java.util.*;
-import java.time.LocalDateTime;
-import java.time.LocalDateTime;
-import com.baomidou.mybatisplus.annotation.*;
 import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
+import com.baomidou.mybatisplus.annotation.KeySequence;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.*;
 
 /**
  * 用印信息 DO
@@ -63,6 +62,10 @@ public class OaStampInfoDO extends BaseDO {
      * 部门uuid
      */
     private String deptUuid;
+    /**
+     * 职位id
+     */
+    private Long postId;
     /**
      * 员工职位
      */

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

@@ -309,9 +309,6 @@ public class OaPurchaseServiceImpl implements OaPurchaseService {
                     .setCurrentAuditEmployeeName(null)
                     .setFinalAuditDate(LocalDateTime.now())
                     .setId(oaPurchase.getId());
-
-            // TODO 复制业务单据信息到业务模块单据表
-
         }
         oaPurchaseMapper.updateById(oaPurchaseDO);
         // 发送通知

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

@@ -307,9 +307,6 @@ public class OaReceiveServiceImpl implements OaReceiveService {
                     .setCurrentAuditEmployeeName(null)
                     .setFinalAuditDate(LocalDateTime.now())
                     .setId(oaReceive.getId());
-
-            // TODO 复制业务单据信息到业务模块单据表
-
         }
         oaReceiveMapper.updateById(oaReceiveDO);
         // 发送通知

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

@@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.bpm.service.oa.stamp;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.iocoder.yudao.framework.common.enums.InfoSourceEnum;
 import cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil;
 import cn.iocoder.yudao.framework.common.pojo.PageParam;
 import cn.iocoder.yudao.framework.common.pojo.PageResult;
@@ -18,10 +19,12 @@ import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskApproveR
 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.stamp.OaStampDO;
+import cn.iocoder.yudao.module.bpm.dal.dataobject.stamp.stampinfo.OaStampInfoDO;
 import cn.iocoder.yudao.module.bpm.dal.mysql.oa.stamp.OaStampMapper;
 import cn.iocoder.yudao.module.bpm.enums.DictDataConstants;
 import cn.iocoder.yudao.module.bpm.enums.ErrorCodeConstants;
 import cn.iocoder.yudao.module.bpm.framework.flowable.core.enums.BpmConstants;
+import cn.iocoder.yudao.module.bpm.service.stamp.stampinfo.OaStampInfoService;
 import cn.iocoder.yudao.module.bpm.service.task.BpmTaskService;
 import cn.iocoder.yudao.module.employee.api.EmployeeApi;
 import cn.iocoder.yudao.module.employee.api.dto.EmployeeRespDTO;
@@ -73,6 +76,9 @@ public class OaStampServiceImpl implements OaStampService {
     @Resource
     private TaskService taskService;
 
+    @Resource
+    private OaStampInfoService oaStampInfoService;
+
     @Resource
     private FileApi fileApi;
 
@@ -289,11 +295,25 @@ public class OaStampServiceImpl implements OaStampService {
                     .setCurrentAuditEmployeeName(null)
                     .setFinalAuditDate(LocalDateTime.now())
                     .setId(oaStamp.getId());
-
-            // TODO 复制业务单据信息到业务模块单据表
-
         }
         oaStampMapper.updateById(oaStampDO);
+        // 复制业务单据信息到业务模块单据表
+        if(Objects.isNull(nextTask)) {
+            // 查询申请单
+            OaStampDO stamp = oaStampMapper.selectById(oaStampDO.getId());
+
+            // 转换
+            OaStampInfoDO stampInfoDO = BeanUtils.toBean(stamp, OaStampInfoDO.class);
+            stampInfoDO.setId(null);
+            stampInfoDO.setCreateTime(null);
+            stampInfoDO.setUpdater(null);
+            stampInfoDO.setUpdateTime(null);
+            stampInfoDO.setStatus("0");
+            stampInfoDO.setInfoSource(InfoSourceEnum.FLOW.getSource());
+
+            // 保存单据信息
+            oaStampInfoService.createStampInfoAfterAudit(stampInfoDO);
+        }
         // 发送通知
 
         // 返回

+ 11 - 4
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/stamp/stampinfo/OaStampInfoService.java

@@ -1,13 +1,12 @@
 package cn.iocoder.yudao.module.bpm.service.stamp.stampinfo;
 
-import javax.validation.*;
-
-import cn.iocoder.yudao.framework.tenant.core.aop.TenantIgnore;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
 import cn.iocoder.yudao.module.bpm.controller.admin.stamp.stampinfo.vo.OaStampInfoPageReqVO;
 import cn.iocoder.yudao.module.bpm.controller.admin.stamp.stampinfo.vo.OaStampInfoRespVO;
 import cn.iocoder.yudao.module.bpm.controller.admin.stamp.stampinfo.vo.OaStampInfoSaveReqVO;
 import cn.iocoder.yudao.module.bpm.dal.dataobject.stamp.stampinfo.OaStampInfoDO;
-import cn.iocoder.yudao.framework.common.pojo.PageResult;
+
+import javax.validation.Valid;
 
 /**
  * 用印信息 Service 接口
@@ -24,6 +23,14 @@ public interface OaStampInfoService {
      */
     Long createOaStampInfo(@Valid OaStampInfoSaveReqVO createReqVO);
 
+    /**
+     * 审批完成添加用印信息
+     *
+     * @param stampInfoDO 用印信息
+     * @return id
+     */
+    Long createStampInfoAfterAudit(OaStampInfoDO stampInfoDO);
+
     /**
      * 更新用印信息
      *

+ 10 - 0
yudao-module-bpm/yudao-module-bpm-biz/src/main/java/cn/iocoder/yudao/module/bpm/service/stamp/stampinfo/OaStampInfoServiceImpl.java

@@ -19,6 +19,7 @@ import org.springframework.validation.annotation.Validated;
 
 import javax.annotation.Resource;
 import java.util.List;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
@@ -78,6 +79,15 @@ public class OaStampInfoServiceImpl implements OaStampInfoService {
         return oaStampInfo.getId();
     }
 
+    @Override
+    public Long createStampInfoAfterAudit(OaStampInfoDO stampInfoDO) {
+        if (Objects.isNull(stampInfoDO)) {
+            return -1L;
+        }
+        oaStampInfoMapper.insert(stampInfoDO);
+        return stampInfoDO.getId();
+    }
+
     @Override
     public void updateOaStampInfo(OaStampInfoSaveReqVO updateReqVO) {
         // 校验存在