潘志宝
2025-02-25 95928f5c937de15513c3640a1e37fe3a9950f507
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StScheduleSuggestServiceImpl.java
@@ -1,10 +1,25 @@
package com.iailab.module.model.mcs.sche.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.iailab.framework.common.pojo.PageResult;
import com.iailab.framework.common.service.impl.BaseServiceImpl;
import com.iailab.framework.common.util.object.BeanUtils;
import com.iailab.framework.common.util.object.ConvertUtils;
import com.iailab.module.model.api.mcs.dto.ScheduleSuggestReqDTO;
import com.iailab.module.model.api.mcs.dto.ScheduleSuggestRespDTO;
import com.iailab.module.model.common.enums.ScheduleSuggestStatusEnum;
import com.iailab.module.model.mcs.sche.dao.StScheduleSuggestDao;
import com.iailab.module.model.mcs.sche.entity.StScheduleSuggestEntity;
import com.iailab.module.model.mcs.sche.service.StScheduleSuggestService;
import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestPageReqVO;
import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestSaveReqVO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.UUID;
/**
 * @author PanZhibao
@@ -14,4 +29,57 @@
@Service
public class StScheduleSuggestServiceImpl extends BaseServiceImpl<StScheduleSuggestDao, StScheduleSuggestEntity>
        implements StScheduleSuggestService {
    @Override
    public PageResult<StScheduleSuggestEntity> page(StScheduleSuggestPageReqVO reqVO) {
        return baseDao.selectPage(reqVO);
    }
    @Override
    public void create(StScheduleSuggestSaveReqVO createReqVO) {
        StScheduleSuggestEntity entity = BeanUtils.toBean(createReqVO, StScheduleSuggestEntity.class);
        entity.setId(UUID.randomUUID().toString());
        entity.setStatus(ScheduleSuggestStatusEnum.S0.getCode());
        baseDao.insert(entity);
    }
    @Override
    public void update(StScheduleSuggestSaveReqVO createReqVO) {
        StScheduleSuggestEntity entity = BeanUtils.toBean(createReqVO, StScheduleSuggestEntity.class);
        baseDao.updateById(entity);
    }
    @Override
    public void delete(String id) {
        baseDao.deleteById(id);
    }
    @Override
    public StScheduleSuggestEntity getInfo(String id) {
        return baseDao.selectById(id);
    }
    @Override
    public List<StScheduleSuggestEntity> getList(String scheduleObj, Integer limit) {
        QueryWrapper<StScheduleSuggestEntity> queryWrapper = new QueryWrapper<>();
        limit = limit == null ? 1 : limit;
        queryWrapper.eq("schedule_obj", scheduleObj)
                .orderByDesc("create_time")
                .last("limit " + limit);
        return baseDao.selectList(queryWrapper);
    }
    @Override
    public void cleanScheduleSuggest(Map<String, Date> tMap) {
        baseDao.cleanScheduleSuggest(tMap);
    }
    @Override
    public List<ScheduleSuggestRespDTO> list(ScheduleSuggestReqDTO vo) {
        QueryWrapper<StScheduleSuggestEntity> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq(StringUtils.isNotBlank(vo.getScheduleObj()),"schedule_obj", vo.getScheduleObj())
                .ge(null != vo.getStartTime(),"schedule_time",vo.getStartTime())
                .le(null != vo.getEndTime(),"schedule_time",vo.getEndTime());
        return ConvertUtils.sourceToTarget(baseDao.selectList(queryWrapper),ScheduleSuggestRespDTO.class);
    }
}