fix:质量管理-检验类型和检验任务编码重复问题

plp
86158 1 month ago
parent 7f0031a589
commit ac9c0fdc7a

@ -113,11 +113,13 @@ public interface ErrorCodeConstants {
ErrorCode ZJ_TYPE_NOT_EXISTS = new ErrorCode(5_0090, "检验类型不存在"); ErrorCode ZJ_TYPE_NOT_EXISTS = new ErrorCode(5_0090, "检验类型不存在");
ErrorCode ZJ_TYPE_CODE_EXISTS = new ErrorCode(5_0090, "检验类型编码已存在");
ErrorCode ZJ_ITEM_NOT_EXISTS = new ErrorCode(5_0091, "检验项目不存在"); ErrorCode ZJ_ITEM_NOT_EXISTS = new ErrorCode(5_0091, "检验项目不存在");
ErrorCode ZJ_SCHEMA_NOT_EXISTS = new ErrorCode(5_0092, "检验方案不存在"); ErrorCode ZJ_SCHEMA_NOT_EXISTS = new ErrorCode(5_0092, "检验方案不存在");
ErrorCode ZJ_PRODUCT_NOT_EXISTS = new ErrorCode(5_0093, "检验参数不存在"); ErrorCode ZJ_PRODUCT_NOT_EXISTS = new ErrorCode(5_0093, "检验参数不存在");
ErrorCode ZJ_PRODUCT_RECORD_NOT_EXISTS = new ErrorCode(5_0093, "检验参数不存在"); ErrorCode ZJ_PRODUCT_RECORD_NOT_EXISTS = new ErrorCode(5_0093, "检验参数不存在");
ErrorCode ZJ_TASK_NOT_EXISTS = new ErrorCode(5_0094, "检验任务不存在"); ErrorCode ZJ_TASK_NOT_EXISTS = new ErrorCode(5_0094, "检验任务不存在");
ErrorCode ZJ_TASK_CODE_EXISTS = new ErrorCode(5_0094, "检验任务单号已存在");
ErrorCode ZJ_TASK_RESULTS_NOT_EXISTS = new ErrorCode(5_0095, "检验任务-检验结果不存在"); ErrorCode ZJ_TASK_RESULTS_NOT_EXISTS = new ErrorCode(5_0095, "检验任务-检验结果不存在");
ErrorCode GOVIEW_NOT_EXISTS = new ErrorCode(5_0100, "可视化大屏不存在"); ErrorCode GOVIEW_NOT_EXISTS = new ErrorCode(5_0100, "可视化大屏不存在");

@ -12,10 +12,12 @@ import cn.iocoder.yudao.module.mes.dal.dataobject.ticketmanagement.TicketManagem
import cn.iocoder.yudao.module.mes.dal.dataobject.zjitem.ZjItemDO; import cn.iocoder.yudao.module.mes.dal.dataobject.zjitem.ZjItemDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.zjschema.ZjSchemaDO; import cn.iocoder.yudao.module.mes.dal.dataobject.zjschema.ZjSchemaDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.zjtaskresults.ZjTaskResultsDO; import cn.iocoder.yudao.module.mes.dal.dataobject.zjtaskresults.ZjTaskResultsDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.zjtype.ZjTypeDO;
import cn.iocoder.yudao.module.mes.dal.mysql.zjitem.ZjItemMapper; import cn.iocoder.yudao.module.mes.dal.mysql.zjitem.ZjItemMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.zjschema.ZjSchemaMapper; import cn.iocoder.yudao.module.mes.dal.mysql.zjschema.ZjSchemaMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.zjtaskresults.ZjTaskResultsMapper; import cn.iocoder.yudao.module.mes.dal.mysql.zjtaskresults.ZjTaskResultsMapper;
import cn.iocoder.yudao.module.mes.service.plan.PlanService; import cn.iocoder.yudao.module.mes.service.plan.PlanService;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
@ -66,7 +68,10 @@ public class ZjTaskServiceImpl implements ZjTaskService {
private PlanService planService; private PlanService planService;
@Override @Override
@Transactional(rollbackFor = Exception.class)
public Long createZjTask(ZjTaskSaveReqVO createReqVO) { public Long createZjTask(ZjTaskSaveReqVO createReqVO) {
// 校验编码是否存在
validateCodeOnly(createReqVO.getCode());
// 插入 // 插入
ZjTaskDO zjTask = BeanUtils.toBean(createReqVO, ZjTaskDO.class); ZjTaskDO zjTask = BeanUtils.toBean(createReqVO, ZjTaskDO.class);
zjTaskMapper.insert(zjTask); zjTaskMapper.insert(zjTask);
@ -111,6 +116,13 @@ public class ZjTaskServiceImpl implements ZjTaskService {
return zjTask.getId(); return zjTask.getId();
} }
private void validateCodeOnly(String code) {
if (zjTaskMapper.exists(Wrappers.<ZjTaskDO>lambdaQuery()
.eq(ZjTaskDO::getCode, code))) {
throw exception(ZJ_TASK_CODE_EXISTS);
}
}
@Override @Override
public void updateZjTask(ZjTaskSaveReqVO updateReqVO) { public void updateZjTask(ZjTaskSaveReqVO updateReqVO) {
// 校验存在 // 校验存在

@ -2,7 +2,9 @@ package cn.iocoder.yudao.module.mes.service.zjtype;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.iocoder.yudao.module.iot.dal.dataobject.deviceattributetype.DeviceAttributeTypeDO; import cn.iocoder.yudao.module.iot.dal.dataobject.deviceattributetype.DeviceAttributeTypeDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.deviceledger.DeviceLedgerDO;
import cn.iocoder.yudao.module.mes.dal.dataobject.zjitem.ZjItemDO; import cn.iocoder.yudao.module.mes.dal.dataobject.zjitem.ZjItemDO;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@ -34,12 +36,20 @@ public class ZjTypeServiceImpl implements ZjTypeService {
@Override @Override
public Long createZjType(ZjTypeSaveReqVO createReqVO) { public Long createZjType(ZjTypeSaveReqVO createReqVO) {
// 校验编码是否存在
validateCodeOnly(createReqVO.getCode());
// 插入 // 插入
ZjTypeDO zjType = BeanUtils.toBean(createReqVO, ZjTypeDO.class); ZjTypeDO zjType = BeanUtils.toBean(createReqVO, ZjTypeDO.class);
zjTypeMapper.insert(zjType); zjTypeMapper.insert(zjType);
// 返回 // 返回
return zjType.getId(); return zjType.getId();
} }
private void validateCodeOnly(String code) {
if (zjTypeMapper.exists(Wrappers.<ZjTypeDO>lambdaQuery()
.eq(ZjTypeDO::getCode, code))) {
throw exception(ZJ_TYPE_CODE_EXISTS);
}
}
@Override @Override
public void updateZjType(ZjTypeSaveReqVO updateReqVO) { public void updateZjType(ZjTypeSaveReqVO updateReqVO) {

Loading…
Cancel
Save