wl
2022-10-08 c9efa958aaf1e0d1073315e96e8b7ba755f3d20f
ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/BaseCaseServiceImpl.java
@@ -8,6 +8,7 @@
import com.ycl.bo.AdminUserDetails;
import com.ycl.bo.casePool.CasePoolIllegalBuildingDO;
import com.ycl.bo.casePool.CasePoolViolationDO;
import com.ycl.common.constant.BaseCaseStatus;
import com.ycl.common.util.DateUtil;
import com.ycl.dto.casePool.IllegalBuildingParam;
import com.ycl.dto.casePool.ViolationParam;
@@ -33,7 +34,9 @@
import java.time.Duration;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -204,7 +207,7 @@
    @Override
    public Boolean saveIllegalBuildingCase(IllegalBuildingParam illegalBuildingParam, Integer id) {
        IllegalBuilding illegalBuilding = new IllegalBuilding();
        BeanUtils.copyProperties(illegalBuilding, illegalBuildingParam);
        BeanUtils.copyProperties(illegalBuildingParam, illegalBuilding);
        illegalBuilding.setBaseCaseId(id);
        Integer value = 1;
        return illegalBuildingMapper.insert(illegalBuilding) == value ? true : false;
@@ -217,6 +220,9 @@
        QueryWrapper<BaseCase> wrapper = new QueryWrapper<>();
        wrapper.lambda().eq(BaseCase::getCode, code);
        BaseCase baseCase = baseCaseMapper.selectOne(wrapper);
        if (baseCase == null) {
            return null;
        }
        bcd.setBaseCase(baseCase);
        //2.查询办理经过信息
        //2.1查询处置流程配置
@@ -234,22 +240,23 @@
            }
        }
        //2.2查询处置流程环节配置
        List<WorkflowConfigStep> listWcs = workflowConfigStepMapper.selectRecordByWorkflowConfigStepId(ddlcId);
        Map mapWcs = new HashMap();
        mapWcs.put("workflowConfigId", ddlcId);
        mapWcs.put("baseCaseId", ddlcId);
        List<WorkflowConfigStep> listWcs = workflowConfigStepMapper.selectRecordByWorkflowConfigStepId(mapWcs);
        //处理用环节时间
        for (WorkflowConfigStep step : listWcs) {
            DisposeRecord record = step.getDisposeRecord();
            System.out.println(baseCase.getAlarmTime());
            System.out.println(record.getCreateTime());
            System.out.println(DateUtil.fromLocalDateTime(baseCase.getAlarmTime()));
            System.out.println(DateUtil.fromLocalDateTime(record.getCreateTime()));
            System.out.println( DateUtil.getDistanceDateTime(
                    DateUtil.fromLocalDateTime(baseCase.getAlarmTime()),
                    DateUtil.fromLocalDateTime(record.getCreateTime())));
            record.setLinkTime(
                    DateUtil.getDistanceDateTime(
                            DateUtil.fromLocalDateTime(baseCase.getAlarmTime()),
                            DateUtil.fromLocalDateTime(record.getCreateTime())));
            step.setDisposeRecord(record);
            List<DisposeRecord> records = step.getDisposeRecords();
            if (records == null) {
                continue;
            }
            for (DisposeRecord record : records) {
                record.setLinkTime(
                        DateUtil.getDistanceDateTime(
                                DateUtil.fromLocalDateTime(baseCase.getAlarmTime()),
                                DateUtil.fromLocalDateTime(record.getCreateTime())));
            }
            step.setDisposeRecords(records);
        }
        //2.3设置调度流程
        handlePassVo.setWorkflowConfigSteps(listWcs);
@@ -264,13 +271,15 @@
        //4.查询问题处理信息
        ProblemProVo problemProVo = new ProblemProVo();
        //4.2查询处置流程环节配置
        List<WorkflowConfigStep> listWcsPp = workflowConfigStepMapper.selectRecordByWorkflowConfigStepId(wtcllcId);
        mapWcs.put("workflowConfigId", wtcllcId);
        List<WorkflowConfigStep> listWcsPp = workflowConfigStepMapper.selectRecordByWorkflowConfigStepId(mapWcs);
        //4.3设置调度流程
        problemProVo.setWorkflowConfigSteps(listWcsPp);
        bcd.setProblemProVo(problemProVo);
        //5.查询现场情况信息
        CurrentSitVo currentSitVo = new CurrentSitVo();
        QueryWrapper<ArrivalSituation> wrapperAs = new QueryWrapper<>();
        wrapperAs.lambda().eq(ArrivalSituation::getBaseCaseId, baseCase.getId());
        //设置到达现场情况
        ArrivalSituation as = arrivalSituationMapper.selectOne(wrapperAs);
        currentSitVo.setArrivalSituation(as);
@@ -311,11 +320,10 @@
    @Override
    public void endCase(Integer caseId, String result) {
        AdminUserDetails user = (AdminUserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
        Integer endCaseState = 6;
        Integer state = 2;
        Integer state = 1;
        String endCaseName = "结案";
        BaseCase baseCase = new BaseCase();
        baseCase.setState(endCaseState);
        baseCase.setState(BaseCaseStatus.CLOSING_REGISTER);
        baseCase.setId(caseId);
        baseCaseMapper.updateById(baseCase);
        DisposeRecord disposeRecord = new DisposeRecord();