REQ-3540: 记录日志

This commit is contained in:
yanglin 2025-03-19 16:12:47 +08:00
parent 81cbaab3a8
commit b7bfaba672

View File

@ -2,12 +2,15 @@
package cn.axzo.nanopart.doc.dao;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.TransactionDefinition;
import org.springframework.transaction.support.TransactionTemplate;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cn.axzo.nanopart.doc.api.util.BizAssertions;
import cn.axzo.nanopart.doc.entity.DocLog;
import cn.axzo.nanopart.doc.mapper.DocLogMapper;
import cn.axzo.nanopart.doc.api.util.BizAssertions;
/**
* @author yanglin
@ -15,6 +18,13 @@ import cn.axzo.nanopart.doc.api.util.BizAssertions;
@Repository
public class DocLogDao extends ServiceImpl<DocLogMapper, DocLog> {
private final TransactionTemplate newTransaction;
public DocLogDao(PlatformTransactionManager transactionManager) {
newTransaction = new TransactionTemplate(transactionManager);
newTransaction.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
}
public void logRequest(String context, Object subject, Object request) {
log(context, subject, "request", request);
}
@ -35,7 +45,7 @@ public class DocLogDao extends ServiceImpl<DocLogMapper, DocLog> {
log.addLogContent((String) logContents[i], logContents[i + 1]);
}
}
save(log);
newTransaction.executeWithoutResult(unused -> save(log));
}
}