package com.qianwen.smartman.modules.notify.service.impl; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import java.lang.invoke.SerializedLambda; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.concurrent.CopyOnWriteArrayList; import java.util.stream.Collectors; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.qianwen.core.context.task.TaskExecutionContext; import com.qianwen.core.context.task.TaskExecutorTypeEnum; import com.qianwen.core.notify.DefaultNotifyType; import com.qianwen.core.notify.executor.INotifyTaskService; import com.qianwen.core.notify.executor.NotifyDirectSendInfo; import com.qianwen.core.notify.executor.NotifyExecutionContext; import com.qianwen.core.notify.executor.RuleNotifierProperties; import com.qianwen.core.tool.utils.BeanUtil; import com.qianwen.core.tool.utils.Func; import com.qianwen.smartman.modules.cps.service.IEmployeeService; import com.qianwen.smartman.modules.notify.convert.BusinessNotifyConvert; import com.qianwen.smartman.modules.notify.dto.BusinessNotifyDTO; import com.qianwen.smartman.modules.notify.dto.NotifyUserDTO; import com.qianwen.smartman.modules.notify.mapper.BusinessNotifyMapper; import com.qianwen.smartman.modules.notify.service.IBusinessNotifyService; import com.qianwen.smartman.modules.system.service.IUserOauthService; import com.qianwen.smartman.modules.system.service.IUserService; import org.springframework.stereotype.Service; @Service /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/notify/service/impl/NotifyTaskServiceImpl.class */ public class NotifyTaskServiceImpl implements INotifyTaskService { private static final Logger log = LoggerFactory.getLogger(NotifyTaskServiceImpl.class); private final IBusinessNotifyService businessNotifyService; private final BusinessNotifyMapper businessNotifyMapper; private final IUserService userService; private final IUserOauthService userOauthService; private final IEmployeeService employeeService; private static /* synthetic */ Object $deserializeLambda$(SerializedLambda lambda) { String implMethodName = lambda.getImplMethodName(); boolean z = true; switch (implMethodName.hashCode()) { case 584947017: if (implMethodName.equals("getBusinessKey")) { z = false; break; } break; case 771206363: if (implMethodName.equals("getTenantId")) { z = true; break; } break; } switch (z) { case false: if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/modules/notify/entity/BusinessNotify") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) { return (v0) -> { return v0.getBusinessKey(); }; } break; case true: if (lambda.getImplMethodKind() == 5 && lambda.getFunctionalInterfaceClass().equals("com/baomidou/mybatisplus/core/toolkit/support/SFunction") && lambda.getFunctionalInterfaceMethodName().equals("apply") && lambda.getFunctionalInterfaceMethodSignature().equals("(Ljava/lang/Object;)Ljava/lang/Object;") && lambda.getImplClass().equals("org/springblade/core/tenant/mp/TenantEntity") && lambda.getImplMethodSignature().equals("()Ljava/lang/String;")) { return (v0) -> { return v0.getTenantId(); }; } break; } throw new IllegalArgumentException("Invalid lambda deserialization"); } public NotifyTaskServiceImpl(final IBusinessNotifyService businessNotifyService, final BusinessNotifyMapper businessNotifyMapper, final IUserService userService, final IUserOauthService userOauthService, final IEmployeeService employeeService) { this.businessNotifyService = businessNotifyService; this.businessNotifyMapper = businessNotifyMapper; this.userService = userService; this.userOauthService = userOauthService; this.employeeService = employeeService; } private List getNotifySubscriberList(List notifySubscriberList, TaskExecutorTypeEnum taskExecutorTypeEnum) { List result; switch (AnonymousClass1.$SwitchMap$org$springblade$core$context$task$TaskExecutorTypeEnum[taskExecutorTypeEnum.ordinal()]) { case 1: result = this.employeeService.getNotifySubscriberList(notifySubscriberList); break; case 2: default: result = this.userService.getNotifySubscriberList(notifySubscriberList); break; } return result; } public List getNotifiedPartyList(String tenantId, String businessKey, String defaultNotifyType, List notifySubscriberList, TaskExecutorTypeEnum taskExecutorTypeEnum) { List result = new ArrayList<>(); if (Func.isNotEmpty(notifySubscriberList)) { List notifyUserDTOS = getNotifySubscriberList(notifySubscriberList, taskExecutorTypeEnum); switch (AnonymousClass1.$SwitchMap$org$springblade$core$notify$DefaultNotifyType[DefaultNotifyType.of(defaultNotifyType).ordinal()]) { case 1: result.addAll((Collection) notifyUserDTOS.stream().map((v0) -> { return v0.getEmail(); }).filter((v0) -> { return Func.isNotEmpty(v0); }).collect(Collectors.toList())); break; case 2: result.addAll((Collection) notifyUserDTOS.stream().map((v0) -> { return v0.getPhone(); }).filter((v0) -> { return Func.isNotEmpty(v0); }).collect(Collectors.toList())); break; case 3: result.addAll((Collection) notifyUserDTOS.stream().map((v0) -> { return v0.getWeiXinMiniUserId(); }).filter((v0) -> { return Func.isNotEmpty(v0); }).collect(Collectors.toList())); case 4: result.addAll((Collection) notifyUserDTOS.stream().map((v0) -> { return v0.getUserId(); }).map((v0) -> { return Func.toStr(v0); }).collect(Collectors.toList())); break; } } result.removeAll(Collections.singleton(null)); return result; } /* JADX INFO: Access modifiers changed from: package-private */ /* renamed from: org.springblade.modules.notify.service.impl.NotifyTaskServiceImpl$1 reason: invalid class name */ /* loaded from: blade-api.jar:BOOT-INF/classes/org/springblade/modules/notify/service/impl/NotifyTaskServiceImpl$1.class */ public static /* synthetic */ class AnonymousClass1 { static final /* synthetic */ int[] $SwitchMap$org$springblade$core$context$task$TaskExecutorTypeEnum; static final /* synthetic */ int[] $SwitchMap$org$springblade$core$notify$DefaultNotifyType = new int[DefaultNotifyType.values().length]; static { try { $SwitchMap$org$springblade$core$notify$DefaultNotifyType[DefaultNotifyType.email.ordinal()] = 1; } catch (NoSuchFieldError e) { } try { $SwitchMap$org$springblade$core$notify$DefaultNotifyType[DefaultNotifyType.sms.ordinal()] = 2; } catch (NoSuchFieldError e2) { } try { $SwitchMap$org$springblade$core$notify$DefaultNotifyType[DefaultNotifyType.weiXinMini.ordinal()] = 3; } catch (NoSuchFieldError e3) { } try { $SwitchMap$org$springblade$core$notify$DefaultNotifyType[DefaultNotifyType.internalMessage.ordinal()] = 4; } catch (NoSuchFieldError e4) { } $SwitchMap$org$springblade$core$context$task$TaskExecutorTypeEnum = new int[TaskExecutorTypeEnum.values().length]; try { $SwitchMap$org$springblade$core$context$task$TaskExecutorTypeEnum[TaskExecutorTypeEnum.EMPLOYEE.ordinal()] = 1; } catch (NoSuchFieldError e5) { } try { $SwitchMap$org$springblade$core$context$task$TaskExecutorTypeEnum[TaskExecutorTypeEnum.USER.ordinal()] = 2; } catch (NoSuchFieldError e6) { } } } public List createNotifyExecutionContext(TaskExecutionContext taskExecutionContext) { List result = new CopyOnWriteArrayList<>(); List finallyBusiness = BusinessNotifyConvert.INSTANCE.convertToDTOList(this.businessNotifyService.list((Wrapper) ((LambdaQueryWrapper) Wrappers.query().lambda().eq((v0) -> { return v0.getBusinessKey(); }, taskExecutionContext.getBusiness())).eq((v0) -> { return v0.getTenantId(); }, taskExecutionContext.getTenantId()))); if (Func.isNotEmpty(finallyBusiness)) { finallyBusiness.forEach(notify -> { List notifiedPartys = getNotifiedPartyList(taskExecutionContext.getTenantId(), taskExecutionContext.getBusiness(), notify.getNotifyType(), taskExecutionContext.getRelatedPersonals(), taskExecutionContext.getTaskExecutorTypeEnum()); Object sendInfo = taskExecutionContext.getExtendInfo().get("notify_direct_address"); if (Func.isNotEmpty(sendInfo)) { List sendInfoList = new ArrayList<>(); List> data = (List) sendInfo; data.forEach(x -> { NotifyDirectSendInfo notifyDirectSendInfo = (NotifyDirectSendInfo) BeanUtil.toBean(x, NotifyDirectSendInfo.class); notifyDirectSendInfo.setNotifyType(DefaultNotifyType.of(x.get("notifyType").toString())); sendInfoList.add(notifyDirectSendInfo); }); ((List) sendInfoList.stream().filter(x2 -> { return notify.getNotifyType().equals(x2.getNotifyType().getId()); }).collect(Collectors.toList())).forEach(x3 -> { notifiedPartys.addAll(x3.getDirectSendAddress()); }); } if (Func.isNotEmpty(notifiedPartys)) { NotifyExecutionContext notifyExecutionContext = new NotifyExecutionContext(); notifyExecutionContext.setContextId(taskExecutionContext.getContextId()); notifyExecutionContext.setTenantId(taskExecutionContext.getTenantId()); notifyExecutionContext.setData(taskExecutionContext.getData() != null ? taskExecutionContext.getData() : new HashMap()); notifyExecutionContext.setNotifiedParty(notifiedPartys); RuleNotifierProperties ruleNotifierProperties = new RuleNotifierProperties().setNotifierId(notify.getNotifyId()).setNotifyType(DefaultNotifyType.of(notify.getNotifyType())).setTemplateId(notify.getNotifyTemplateId()); notifyExecutionContext.setConfiguration(ruleNotifierProperties); result.add(notifyExecutionContext); } }); } return result; } }