Ver código fonte

新客进线营期详情不显示无法发送课程

Long 3 dias atrás
pai
commit
bbfafa5bb4

+ 2 - 6
fs-qw-api/src/main/java/com/fs/app/controller/OpenQwApiController.java

@@ -115,9 +115,7 @@ public class OpenQwApiController extends BaseController {
         try {
             log.info("[QwFriendWelcome] 添加标签,tenantId={}", tenantId);
             // 切换到指定租户数据源执行操作(TenantDataSourceUtil 会自动设置 Redis 租户上下文)
-            return tenantDataSourceUtil.executeWithResult(tenantId, () -> {
-                return openQwApiService.addTag(param);
-            });
+            return tenantDataSourceUtil.executeWithResult(tenantId, () -> openQwApiService.addTag(param, tenantId));
         } catch (IllegalArgumentException e) {
             log.error("[QwFriendWelcome] 添加标签失败,租户不存在或已禁用,tenantId={}", tenantId, e);
             return R.error("租户不存在或已禁用");
@@ -136,9 +134,7 @@ public class OpenQwApiController extends BaseController {
         try {
             log.info("[QwFriendWelcome] 移除标签,tenantId={}", tenantId);
             // 切换到指定租户数据源执行操作(TenantDataSourceUtil 会自动设置 Redis 租户上下文)
-            return tenantDataSourceUtil.executeWithResult(tenantId, () -> {
-                return openQwApiService.delTag(param);
-            });
+            return tenantDataSourceUtil.executeWithResult(tenantId, () -> openQwApiService.delTag(param, tenantId));
         } catch (IllegalArgumentException e) {
             log.error("[QwFriendWelcome] 移除标签失败,租户不存在或已禁用,tenantId={}", tenantId, e);
             return R.error("租户不存在或已禁用");

+ 2 - 2
fs-qw-api/src/main/java/com/fs/app/service/OpenQwApiService.java

@@ -16,9 +16,9 @@ public interface OpenQwApiService {
 
     int edit(QwExternalContact qwExternalContact);
 
-    R addTag(QwExternalContactAddTagParam param);
+    R addTag(QwExternalContactAddTagParam param, Long tenantId);
 
-    R delTag(QwExternalContactAddTagParam param);
+    R delTag(QwExternalContactAddTagParam param, Long tenantId);
 
     R getOpenExternalUserid(String externalUserid,String corpId,String qwUserId);
 }

+ 8 - 6
fs-qw-api/src/main/java/com/fs/app/service/impl/OpenQwApiServiceImpl.java

@@ -531,7 +531,7 @@ public class OpenQwApiServiceImpl implements OpenQwApiService {
     }
 
     @Override
-    public R addTag(QwExternalContactAddTagParam param) {
+    public R addTag(QwExternalContactAddTagParam param, Long tenantId) {
         // 获取当前日期和时间
         LocalDate currentDate = LocalDate.now();
         LocalTime localTime = LocalTime.now();
@@ -596,9 +596,11 @@ public class OpenQwApiServiceImpl implements OpenQwApiService {
                             qwExternal.setTagIds(JSON.toJSONString(uniqueIds));
                             qwExternal.setId(qwExternalContact.getId());
 
-                            List<String> tagIdsList = new ArrayList<>();
+                            List<String> tagIdsList;
                             if (qwExternal.getTagIds() != null && !qwExternal.getTagIds().isEmpty()) {
                                 tagIdsList = JSON.parseArray(qwExternal.getTagIds(), String.class);
+                            } else {
+                                tagIdsList = new ArrayList<>();
                             }
 
                             log.info("客户添加标签addUserTag:" + qwExternalContact.getName() +
@@ -607,8 +609,8 @@ public class OpenQwApiServiceImpl implements OpenQwApiService {
                                     "|总标签" + tagIdsList);
 
                             // 插件sop处理
-                            processTagsAll(qwExternalContact, qwExternalContact.getCorpId(),
-                                    tagIdsList, currentDate, localTime);
+                            tenantDataSourceUtil.execute(tenantId, () -> processTagsAll(qwExternalContact, qwExternalContact.getCorpId(),
+                                    tagIdsList, currentDate, localTime));
 
                             // 添加到批量更新列表
                             batchUpdateList.add(qwExternal);
@@ -676,7 +678,7 @@ public class OpenQwApiServiceImpl implements OpenQwApiService {
     }
 
     @Override
-    public R delTag(QwExternalContactAddTagParam param) {
+    public R delTag(QwExternalContactAddTagParam param, Long tenantId) {
         // 获取当前日期和时间
         LocalDate currentDate = LocalDate.now();
         LocalTime localTime = LocalTime.now();
@@ -737,7 +739,7 @@ public class OpenQwApiServiceImpl implements OpenQwApiService {
                                 log.info("客户移除标签delUserTag:"+qwExternalContact.getName()+"|公司"+qwExternalContact.getCorpId()+"|员工"+qwExternalContact.getUserId()+"|总标签"+ids);
 
                                 //检查sop
-                                processTagsAll(qwExternalContact,param.getCorpId(),ids,currentDate,localTime);
+                                tenantDataSourceUtil.execute(tenantId, () -> processTagsAll(qwExternalContact,param.getCorpId(),ids,currentDate,localTime));
 
                                 // 添加到批量更新列表
                                 batchUpdateList.add(qwExternal);