微服务版本相关bug修改

This commit is contained in:
hzj
2025-09-04 11:21:05 +08:00
parent 0836f5fa57
commit 7e5aaa2df2

View File

@@ -29,6 +29,8 @@ import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.Objects;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
/**
@@ -45,43 +47,50 @@ import java.util.Objects;
public class PqFrontLogsServiceImpl extends ServiceImpl<PqFrontLogsMapper, PqFrontLogs> implements PqFrontLogsService {
private final PqFrontLogsChildService pqFrontLogsChildService;
// 创建可重入锁
private final Lock lock = new ReentrantLock();
@Override
public void addFrontLogs(PqFrontLogsDTO pqFrontLogsDTO) {
lock.lock(); // 获取锁,如果启动多实例要考虑分布式锁
try {
PqFrontLogs one = this.lambdaQuery()
.eq(PqFrontLogs::getLevel, pqFrontLogsDTO.getLevel())
.eq(PqFrontLogs::getNodeId, pqFrontLogsDTO.getNodeId())
.eq(PqFrontLogs::getFrontType, pqFrontLogsDTO.getFrontType())
.eq(PqFrontLogs::getCode, pqFrontLogsDTO.getCode())
.eq(StringUtils.isNotBlank(pqFrontLogsDTO.getBusinessId()),PqFrontLogs::getBusinessId, pqFrontLogsDTO.getBusinessId())
.eq(PqFrontLogs::getState,1).one();
if(Objects.nonNull(one)){
one.setUpdateTime(LocalDateTime.now());
this.updateById(one);
PqFrontLogs one = this.lambdaQuery()
.eq(PqFrontLogs::getLevel, pqFrontLogsDTO.getLevel())
.eq(PqFrontLogs::getNodeId, pqFrontLogsDTO.getNodeId())
.eq(PqFrontLogs::getFrontType, pqFrontLogsDTO.getFrontType())
.eq(PqFrontLogs::getCode, pqFrontLogsDTO.getCode())
.eq(StringUtils.isNotBlank(pqFrontLogsDTO.getBusinessId()),PqFrontLogs::getBusinessId, pqFrontLogsDTO.getBusinessId())
.eq(PqFrontLogs::getState,1).one();
if(Objects.nonNull(one)){
one.setUpdateTime(LocalDateTime.now());
this.updateById(one);
PqFrontLogsChild pqFrontLogsChild = new PqFrontLogsChild();
pqFrontLogsChild.setMainId(one.getId());
pqFrontLogsChild.setLog(pqFrontLogsDTO.getLog());
pqFrontLogsChild.setGrade(pqFrontLogsDTO.getGrade());
pqFrontLogsChild.setState(1);
PqFrontLogsChild pqFrontLogsChild = new PqFrontLogsChild();
pqFrontLogsChild.setMainId(one.getId());
pqFrontLogsChild.setLog(pqFrontLogsDTO.getLog());
pqFrontLogsChild.setGrade(pqFrontLogsDTO.getGrade());
pqFrontLogsChild.setState(1);
pqFrontLogsChildService.save(pqFrontLogsChild);
}else {
PqFrontLogs pqFrontLogs = new PqFrontLogs();
BeanUtils.copyProperties(pqFrontLogsDTO,pqFrontLogs);
pqFrontLogs.setState(1);
this.save(pqFrontLogs);
pqFrontLogsChildService.save(pqFrontLogsChild);
}else {
PqFrontLogs pqFrontLogs = new PqFrontLogs();
BeanUtils.copyProperties(pqFrontLogsDTO,pqFrontLogs);
pqFrontLogs.setState(1);
this.save(pqFrontLogs);
PqFrontLogsChild pqFrontLogsChild = new PqFrontLogsChild();
pqFrontLogsChild.setMainId(pqFrontLogs.getId());
pqFrontLogsChild.setLog(pqFrontLogsDTO.getLog());
pqFrontLogsChild.setGrade(pqFrontLogsDTO.getGrade());
pqFrontLogsChild.setState(1);
PqFrontLogsChild pqFrontLogsChild = new PqFrontLogsChild();
pqFrontLogsChild.setMainId(pqFrontLogs.getId());
pqFrontLogsChild.setLog(pqFrontLogsDTO.getLog());
pqFrontLogsChild.setGrade(pqFrontLogsDTO.getGrade());
pqFrontLogsChild.setState(1);
pqFrontLogsChildService.save(pqFrontLogsChild);
pqFrontLogsChildService.save(pqFrontLogsChild);
}
} finally {
lock.unlock(); // 释放锁
}
}