package com.ycl.event.listener; import com.alibaba.fastjson2.JSON; import com.ycl.common.enums.business.ProcessLogEventTypeEnum; import com.ycl.common.utils.SecurityUtils; import com.ycl.domain.entity.ProcessLog; import com.ycl.event.event.TaskLogEvent; import com.ycl.service.ProcessLogService; import lombok.RequiredArgsConstructor; import org.springframework.context.event.EventListener; import org.springframework.stereotype.Component; /** * @author:xp * @date:2025/1/16 15:14 */ @Component @RequiredArgsConstructor public class ProcessLogEventListener { private final ProcessLogService processLogService; /** * 监听流程日志事件 * * @param event 转办的事件内容 */ @EventListener(classes = {TaskLogEvent.class}) public void delegate(TaskLogEvent event) { ProcessLog log = new ProcessLog(); log.setEventType(event.getEventType()); log.setProcessInsId(event.getProcessInsId()); log.setProjectId(event.getProjectId()); log.setTaskId(event.getTaskId()); log.setUserId(SecurityUtils.getUserId()); log.setEventDataJson(JSON.toJSONString(event.getOtherData())); processLogService.save(log); } }