MrShi
2025-01-06 e1ec365640eefdcb06abb1d73da0d80367f79be3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
@@ -105,6 +105,23 @@
        }
    }
    @Override
    public void timerAuto(){
        List<YwPatrolScheme> ywPatrolSchemeList = ywPatrolSchemeMapper.selectList(new QueryWrapper<YwPatrolScheme>().lambda()
                .eq(YwPatrolScheme::getIsdeleted,Constants.ZERO)
                .eq(YwPatrolScheme::getStatus,Constants.ZERO)
                .apply(" START_DATE <= now() and END_DATE>= now()   ")
        );
        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywPatrolSchemeList)){
            for (YwPatrolScheme ywPatrolScheme:ywPatrolSchemeList) {
                this.createTask(new Date(),ywPatrolScheme);
            }
        }
    }
    /**
     * 根据日期生成任务
     * @param schemeDate
@@ -192,6 +209,20 @@
    @Override
    public void deleteById(Integer id, LoginUserInfo user) {
        //判断是否有进行中或已超期的任务
        if(ywPatrolTaskMapper.selectCount(new QueryWrapper<YwPatrolTask>().lambda()
                .eq(YwPatrolTask::getSchemeId,id)
                .in(YwPatrolTask::getStatus,Constants.ONE,Constants.THREE,Constants.TWO)
        )>Constants.ZERO){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"存在进行中/已完成的任务,无法进行删除");
        }
        if(ywPatrolTaskMapper.selectCount(new QueryWrapper<YwPatrolTask>().lambda()
                        .eq(YwPatrolTask::getSchemeId,id)
                        .eq(YwPatrolTask::getStatus,Constants.ZERO)
                        .le(YwPatrolTask::getEndDate,"now()")
        )>Constants.ZERO){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"存在已超期的任务,无法进行删除");
        }
        ywPatrolSchemeMapper.deleteById(id);
    }