package cn.iocoder.yudao.module.mes.service.qc.patrol;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.module.mes.controller.admin.qc.patrol.vo.MesQcPatrolPageReqVO;
|
import cn.iocoder.yudao.module.mes.controller.admin.qc.patrol.vo.MesQcPatrolSaveReqVO;
|
import cn.iocoder.yudao.module.mes.dal.dataobject.qc.patrol.MesQcPatrolDO;
|
import cn.iocoder.yudao.module.mes.dal.mysql.qc.patrol.MesQcPatrolMapper;
|
import jakarta.annotation.Resource;
|
import org.springframework.stereotype.Service;
|
import org.springframework.validation.annotation.Validated;
|
|
import java.util.Objects;
|
|
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.QC_PATROL_CODE_DUPLICATE;
|
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.QC_PATROL_NOT_EXISTS;
|
|
/**
|
* MES 质量巡检记录 Service 实现类
|
*
|
* @author 超级管理员
|
*/
|
@Service
|
@Validated
|
public class MesQcPatrolServiceImpl implements MesQcPatrolService {
|
|
@Resource
|
private MesQcPatrolMapper patrolMapper;
|
|
@Override
|
public Long createPatrol(MesQcPatrolSaveReqVO createReqVO) {
|
// 校验编号唯一
|
validatePatrolCodeUnique(null, createReqVO.getCode());
|
// 插入
|
MesQcPatrolDO patrol = BeanUtils.toBean(createReqVO, MesQcPatrolDO.class);
|
patrolMapper.insert(patrol);
|
return patrol.getId();
|
}
|
|
@Override
|
public void updatePatrol(MesQcPatrolSaveReqVO updateReqVO) {
|
// 校验存在
|
validatePatrolExists(updateReqVO.getId());
|
// 校验编号唯一
|
validatePatrolCodeUnique(updateReqVO.getId(), updateReqVO.getCode());
|
// 更新
|
MesQcPatrolDO updateObj = BeanUtils.toBean(updateReqVO, MesQcPatrolDO.class);
|
patrolMapper.updateById(updateObj);
|
}
|
|
@Override
|
public void deletePatrol(Long id) {
|
validatePatrolExists(id);
|
patrolMapper.deleteById(id);
|
}
|
|
@Override
|
public MesQcPatrolDO getPatrol(Long id) {
|
return patrolMapper.selectById(id);
|
}
|
|
@Override
|
public PageResult<MesQcPatrolDO> getPatrolPage(MesQcPatrolPageReqVO pageReqVO) {
|
return patrolMapper.selectPage(pageReqVO);
|
}
|
|
private void validatePatrolExists(Long id) {
|
if (id == null || patrolMapper.selectById(id) == null) {
|
throw exception(QC_PATROL_NOT_EXISTS);
|
}
|
}
|
|
private void validatePatrolCodeUnique(Long id, String code) {
|
MesQcPatrolDO patrol = patrolMapper.selectByCode(code);
|
if (patrol != null && !Objects.equals(patrol.getId(), id)) {
|
throw exception(QC_PATROL_CODE_DUPLICATE);
|
}
|
}
|
|
}
|