From b9e7a0261443ca41b80108b9fef555093f20bb8b Mon Sep 17 00:00:00 2001
From: mg <maokecheng@163.com>
Date: 星期五, 14 十月 2022 16:48:13 +0800
Subject: [PATCH] Merge branch 'master' of http://42.193.1.25:9521/r/sccg_server

---
 ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java |   91 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 88 insertions(+), 3 deletions(-)

diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java
index 444a47f..920a6f9 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/DisposeRecordServiceImpl.java
@@ -1,10 +1,27 @@
 package com.ycl.service.caseHandler.impl;
 
-import com.ycl.entity.caseHandler.DisposeRecord;
-import com.ycl.mapper.caseHandler.DisposeRecordMapper;
-import com.ycl.service.caseHandler.IDisposeRecordService;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.common.constant.StepName;
+import com.ycl.entity.caseHandler.BaseCase;
+import com.ycl.entity.caseHandler.DisposeRecord;
+import com.ycl.entity.caseHandler.WorkflowConfigStep;
+import com.ycl.exception.ApiException;
+import com.ycl.mapper.caseHandler.BaseCaseMapper;
+import com.ycl.mapper.caseHandler.DisposeRecordMapper;
+import com.ycl.mapper.caseHandler.WorkflowConfigStepMapper;
+import com.ycl.service.caseHandler.IDisposeRecordService;
+import com.ycl.vo.MyBacklogVO;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -17,4 +34,72 @@
 @Service
 public class DisposeRecordServiceImpl extends ServiceImpl<DisposeRecordMapper, DisposeRecord> implements IDisposeRecordService {
 
+    @Resource
+    BaseCaseMapper baseCaseMapper;
+
+    @Resource
+    DisposeRecordMapper disposeRecordMapper;
+    @Resource
+    WorkflowConfigStepMapper workflowConfigStepMapper;
+
+    @Override
+    public List<MyBacklogVO> listMyTask(String num, Long userId) {
+        return disposeRecordMapper.selectList(
+                        new LambdaQueryWrapper<DisposeRecord>()
+                                .eq(DisposeRecord::getHandlerId, userId.intValue())
+                                .isNull(DisposeRecord::getEndTime))
+                .stream()
+                .filter(item -> {
+                    if (StringUtils.isBlank(num)){
+                    return true;
+                    }else {
+                        BaseCase baseCase = baseCaseMapper.selectById(item.getBaseCaseId());
+                        if (baseCase.getCode().contains(num)) {
+                            return true;
+                        } else {
+                            return false;
+                        }
+                    }
+                })
+                .map(item -> {
+                    MyBacklogVO myBacklogVO = new MyBacklogVO();
+                    BeanUtils.copyProperties(item, myBacklogVO);
+                    BaseCase baseCase = baseCaseMapper.selectById(item.getBaseCaseId());
+                    myBacklogVO.setCategory(baseCase.getCategory());
+                    myBacklogVO.setEventSource(baseCase.getEventSource());
+                    myBacklogVO.setCode(baseCase.getCode());
+                    return myBacklogVO;
+                }).collect(Collectors.toList());
+    }
+
+    @Override
+    public Boolean addRecord(DisposeRecord disposeRecord) {
+
+        //缁撴潫涓婁紶澶勭疆娴佺▼
+        String stepName = StepName.DISPOSE.getName();
+        QueryWrapper<WorkflowConfigStep> qureyDispatch = new QueryWrapper<>();
+        qureyDispatch.eq("name", stepName);
+        WorkflowConfigStep dispatchStep = workflowConfigStepMapper.selectOne(qureyDispatch);
+
+        UpdateWrapper<DisposeRecord> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.eq("base_case_id", disposeRecord.getBaseCaseId()).eq("workflow_config_step_id",dispatchStep.getId());
+
+        DisposeRecord updateRecord = new DisposeRecord();
+        updateRecord.setState(1);
+        updateRecord.setEndTime(LocalDateTime.now());
+        updateRecord.setHandlerId(disposeRecord.getCreateUser());
+        baseMapper.update(updateRecord, updateWrapper);
+
+        QueryWrapper<WorkflowConfigStep> stepQurey = new QueryWrapper<>();
+        stepQurey.eq("name", disposeRecord.getStepName());
+        WorkflowConfigStep workflowConfigStep = workflowConfigStepMapper.selectOne(stepQurey);
+        if (workflowConfigStep == null) {
+            throw new ApiException("鏈煡璇㈠埌璇ユ祦绋嬬幆鑺�");
+        }
+        //璁剧疆娴佺▼鐜妭鏁版嵁
+        disposeRecord.setWorkflowConfigStepId(workflowConfigStep.getId());
+        disposeRecord.setHandlerRoleId(workflowConfigStep.getRoleId());
+        baseMapper.insert(disposeRecord);
+        return true;
+    }
 }

--
Gitblit v1.8.0