From f412b5b671a91d7e01dac12507cad9df3648c524 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 09 十一月 2026 10:09:39 +0800
Subject: [PATCH] feat: 完善客户跟进与考勤异常处理
---
yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/listener/CrmReceivableStatusListener.java | 43 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 43 insertions(+), 0 deletions(-)
diff --git a/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/listener/CrmReceivableStatusListener.java b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/listener/CrmReceivableStatusListener.java
new file mode 100644
index 0000000..a1361f7
--- /dev/null
+++ b/yudao-module-crm/src/main/java/cn/iocoder/yudao/module/crm/service/receivable/listener/CrmReceivableStatusListener.java
@@ -0,0 +1,43 @@
+package cn.iocoder.yudao.module.crm.service.receivable.listener;
+
+import cn.iocoder.yudao.module.bpm.api.event.BpmProcessInstanceStatusEvent;
+import cn.iocoder.yudao.module.bpm.api.event.BpmProcessInstanceStatusEventListener;
+import cn.iocoder.yudao.module.crm.service.receivable.CrmReceivableService;
+import cn.iocoder.yudao.module.crm.service.receivable.CrmReceivableServiceImpl;
+import jakarta.annotation.Resource;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+/**
+ * 鍥炴瀹℃壒缁撴灉鐩戝惉鍣�
+ *
+ * 娴佺▼瀹℃壒閫氳繃锛氬洖娆剧姸鎬佹洿鏂颁负瀹℃牳閫氳繃锛屽苟鍥炲啓鍥炴璁″垝宸插洖娆鹃噾棰濓紱
+ * 娴佺▼椹冲洖/鍙栨秷锛氫粎鏇存柊鍥炴鐘舵�侊紝涓嶅洖鍐欓噾棰濄��
+ *
+ * @author 瓒呯骇绠$悊鍛�
+ */
+@Component
+@Slf4j
+public class CrmReceivableStatusListener extends BpmProcessInstanceStatusEventListener {
+
+ @Resource
+ private CrmReceivableService receivableService;
+
+ @Override
+ protected String getProcessDefinitionKey() {
+ return CrmReceivableServiceImpl.BPM_PROCESS_DEFINITION_KEY;
+ }
+
+ @Override
+ protected void onEvent(BpmProcessInstanceStatusEvent event) {
+ Long receivableId;
+ try {
+ receivableId = Long.parseLong(event.getBusinessKey());
+ } catch (NumberFormatException | NullPointerException ex) {
+ log.warn("[onEvent][鍥炴瀹℃壒浜嬩欢鐨� businessKey({}) 涓嶆槸鍥炴缂栧彿锛屽拷鐣", event.getBusinessKey());
+ return;
+ }
+ receivableService.updateReceivableAuditStatus(receivableId, event.getStatus());
+ }
+
+}
--
Gitblit v1.9.3