package cn.lihu.jh.module.ecg.service.jobrecord;
|
|
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordStatisticDO;
|
import org.springframework.stereotype.Service;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import java.time.LocalDateTime;
|
import java.util.*;
|
import cn.lihu.jh.module.ecg.controller.admin.jobrecord.vo.*;
|
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordDO;
|
import cn.lihu.jh.framework.common.pojo.PageResult;
|
import cn.lihu.jh.framework.common.pojo.PageParam;
|
import cn.lihu.jh.framework.common.util.object.BeanUtils;
|
|
import cn.lihu.jh.module.ecg.dal.mysql.jobrecord.JobRecordMapper;
|
|
import javax.annotation.Resource;
|
|
import static cn.lihu.jh.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static cn.lihu.jh.module.ecg.enums.ErrorCodeConstants.*;
|
|
/**
|
* 工作记录 Service 实现类
|
*
|
* @author 芋道源码
|
*/
|
@Service
|
@Validated
|
public class JobRecordServiceImpl implements JobRecordService {
|
|
@Resource
|
private JobRecordMapper jobRecordMapper;
|
|
@Override
|
public Long createJobRecord(JobRecordSaveReqVO createReqVO) {
|
// 插入
|
JobRecordDO jobRecord = BeanUtils.toBean(createReqVO, JobRecordDO.class);
|
jobRecordMapper.insert(jobRecord);
|
// 返回
|
return jobRecord.getId();
|
}
|
|
@Override
|
public void updateJobRecord(JobRecordSaveReqVO updateReqVO) {
|
// 校验存在
|
validateJobRecordExists(updateReqVO.getId());
|
// 更新
|
JobRecordDO updateObj = BeanUtils.toBean(updateReqVO, JobRecordDO.class);
|
jobRecordMapper.updateById(updateObj);
|
}
|
|
@Override
|
public void deleteJobRecord(Long id) {
|
// 校验存在
|
validateJobRecordExists(id);
|
// 删除
|
jobRecordMapper.deleteById(id);
|
}
|
|
private void validateJobRecordExists(Long id) {
|
if (jobRecordMapper.selectById(id) == null) {
|
throw exception(JOB_RECORD_NOT_EXISTS);
|
}
|
}
|
|
@Override
|
public JobRecordDO getJobRecord(Long id) {
|
return jobRecordMapper.selectById(id);
|
}
|
|
@Override
|
public PageResult<JobRecordDO> getJobRecordPage(JobRecordPageReqVO pageReqVO) {
|
return jobRecordMapper.selectPage(pageReqVO);
|
}
|
|
@Override
|
public List<JobRecordStatisticDO> getJobStatistic(LocalDateTime jobTimeFrom, LocalDateTime jobTimeTo) {
|
|
return jobRecordMapper.getJobStatistic(jobTimeFrom, jobTimeTo);
|
}
|
|
}
|