package com.punchsettle.server.atomic.service.impl; import com.punchsettle.server.atomic.entity.PiTask; import com.punchsettle.server.atomic.mapper.PiTaskMapper; import com.punchsettle.server.atomic.service.IPiTaskService; import com.punchsettle.server.common.pojo.BaseEntity; import com.punchsettle.server.common.utils.Assert; import com.punchsettle.server.pojo.punchIn.PiTaskQuery; import com.punchsettle.server.utiis.WeekendUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import tk.mybatis.mapper.weekend.Weekend; import tk.mybatis.mapper.weekend.WeekendCriteria; import java.util.List; import java.util.Objects; /** * @author tyuio * @version 1.0.0 * @date 2025/4/8 10:54 * @description 打卡任务表 service */ @Service public class PiTaskServiceImpl implements IPiTaskService { @Autowired private PiTaskMapper piTaskMapper; @Override public List queryByCondition(PiTaskQuery piTaskQuery) { Assert.isNull(piTaskQuery); Weekend weekend = Weekend.of(PiTask.class); WeekendCriteria criteria = weekend.weekendCriteria(); if (!CollectionUtils.isEmpty(piTaskQuery.getUserIds())) { criteria.andIn(PiTask::getCreatedBy, piTaskQuery.getUserIds()); } if (Objects.nonNull(piTaskQuery.getTaskStatus())) { criteria.andEqualTo(PiTask::getTaskStatus, piTaskQuery.getTaskStatus()); } if (Objects.nonNull(piTaskQuery.getArchiveStatus())) { criteria.andEqualTo(PiTask::getArchiveStatus, piTaskQuery.getArchiveStatus()); } weekend.excludeProperties(BaseEntity::getLastUpdatedBy, BaseEntity::getLastUpdateTime, BaseEntity::getVersion, BaseEntity::getDeleteFlag); return piTaskMapper.selectByExample(weekend); } @Override public PiTask getById(Long id) { if (Objects.isNull(id)) { return null; } PiTask piTaskQuery = new PiTask(); piTaskQuery.setId(id); return piTaskMapper.selectOne(piTaskQuery); } @Override public void insert(PiTask piTask) { Assert.isNull(piTask); piTaskMapper.insertSelective(piTask); } @Override public void update(PiTask piTask) { Assert.isNull(piTask); piTaskMapper.updateByPrimaryKeySelective(piTask); } }