package cn.iocoder.yudao.module.erp.service.product.mapping;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
import cn.iocoder.yudao.module.erp.controller.admin.mapping.vo.ErpMesWarehouseMappingCreateReqVO;
|
import cn.iocoder.yudao.module.erp.controller.admin.mapping.vo.ErpMesWarehouseMappingPageReqVO;
|
import cn.iocoder.yudao.module.erp.controller.admin.mapping.vo.ErpMesWarehouseMappingUpdateReqVO;
|
import cn.iocoder.yudao.module.erp.convert.mapping.ErpMesWarehouseMappingConvert;
|
import cn.iocoder.yudao.module.erp.dal.dataobject.mapping.ErpMesWarehouseMappingDO;
|
import cn.iocoder.yudao.module.erp.dal.mysql.mapping.ErpMesWarehouseMappingMapper;
|
import jakarta.annotation.Resource;
|
import org.springframework.stereotype.Service;
|
import org.springframework.validation.annotation.Validated;
|
|
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static cn.iocoder.yudao.module.erp.enums.ErrorCodeConstants.*;
|
|
/**
|
* ERP仓库与MES仓库映射 Service 实现类
|
*/
|
@Service
|
@Validated
|
public class ErpMesWarehouseMappingServiceImpl implements ErpMesWarehouseMappingService {
|
|
@Resource
|
private ErpMesWarehouseMappingMapper mappingMapper;
|
|
@Override
|
public Long createMapping(ErpMesWarehouseMappingCreateReqVO createReqVO) {
|
// 校验ERP仓库是否已存在映射
|
ErpMesWarehouseMappingDO existing = mappingMapper.selectByErpWarehouseId(createReqVO.getErpWarehouseId());
|
if (existing != null) {
|
throw exception(WAREHOUSE_MAPPING_EXISTS);
|
}
|
|
ErpMesWarehouseMappingDO mapping = ErpMesWarehouseMappingConvert.INSTANCE.convert(createReqVO);
|
mapping.setStatus(1); // 默认启用
|
mappingMapper.insert(mapping);
|
return mapping.getId();
|
}
|
|
@Override
|
public void updateMapping(ErpMesWarehouseMappingUpdateReqVO updateReqVO) {
|
// 校验存在
|
validateMappingExists(updateReqVO.getId());
|
|
ErpMesWarehouseMappingDO mapping = ErpMesWarehouseMappingConvert.INSTANCE.convert(updateReqVO);
|
mappingMapper.updateById(mapping);
|
}
|
|
@Override
|
public void deleteMapping(Long id) {
|
// 校验存在
|
validateMappingExists(id);
|
mappingMapper.deleteById(id);
|
}
|
|
private void validateMappingExists(Long id) {
|
if (mappingMapper.selectById(id) == null) {
|
throw exception(WAREHOUSE_MAPPING_NOT_EXISTS);
|
}
|
}
|
|
@Override
|
public ErpMesWarehouseMappingDO getMapping(Long id) {
|
return mappingMapper.selectById(id);
|
}
|
|
@Override
|
public PageResult<ErpMesWarehouseMappingDO> getMappingPage(ErpMesWarehouseMappingPageReqVO pageReqVO) {
|
return mappingMapper.selectPage(pageReqVO);
|
}
|
|
}
|