Merge branch 'hotfix/master-20250425' into test

This commit is contained in:
曹鹏飞 2025-05-08 16:38:14 +08:00
commit 96d52dcdb2
1 changed files with 15 additions and 10 deletions

View File

@ -19,7 +19,10 @@ import org.springframework.context.ApplicationEvent;
import javax.mail.MessagingException; import javax.mail.MessagingException;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
@Slf4j @Slf4j
public class TicketCreateEvent extends ApplicationEvent implements ApplicationContextAware { public class TicketCreateEvent extends ApplicationEvent implements ApplicationContextAware {
@ -93,30 +96,32 @@ public class TicketCreateEvent extends ApplicationEvent implements ApplicationCo
.replace("${handleUser}","") .replace("${handleUser}","")
.replace("${createTime}",toTimeString(ticket.getCreateTime())) .replace("${createTime}",toTimeString(ticket.getCreateTime()))
.replace("${msg}",subject); .replace("${msg}",subject);
List<AdminUser> adminUsers =new ArrayList<>();
//发给所属CQM负责人 //发给所属CQM负责人
List<Integer> cqms=deviceTypeService.getCqmsByDeviceType(ticket.getDeviceNo()); List<Integer> cqms=deviceTypeService.getCqmsByDeviceType(ticket.getDeviceNo());
if (CollectionUtil.isNotEmpty(cqms)){ if (CollectionUtil.isNotEmpty(cqms)){
sendEmail(adminUserService.listByIds(cqms),subject,content); adminUsers.addAll(adminUserService.listByIds(cqms));
} }
//发给事业部部长 //发给事业部部长
sendEmail(adminUserService.getByTitleCode(Constant.TITLE_DIRECTOROF_BUSINESS_UNIT),subject,content); adminUsers.addAll(adminUserService.getByTitleCode(Constant.TITLE_DIRECTOROF_BUSINESS_UNIT));
//发给技术主管 //发给技术主管
sendEmail(adminUserService.getByTitleCode(Constant.TITLE_TECHNICAL_MANAGER),subject,content); adminUsers.addAll(adminUserService.getByTitleCode(Constant.TITLE_TECHNICAL_MANAGER));
//发给售后主管 //发给售后主管
sendEmail(adminUserService.getByTitleCode(Constant.TITLE_SALES_MANAGER),subject,content); adminUsers.addAll(adminUserService.getByTitleCode(Constant.TITLE_SALES_MANAGER));
//发给测试主管 //发给测试主管
sendEmail(adminUserService.getByTitleCode(Constant.TITLE_TEST_MANAGER),subject,content); adminUsers.addAll(adminUserService.getByTitleCode(Constant.TITLE_TEST_MANAGER));
//发给质量主管 //发给质量主管
sendEmail(adminUserService.getByTitleCode(Constant.TITLE_QUALITY_MANAGER),subject,content); adminUsers.addAll(adminUserService.getByTitleCode(Constant.TITLE_QUALITY_MANAGER));
sendEmail(adminUsers.stream().map(AdminUser::getEmail).collect(Collectors.toSet()), subject,content);
}catch (Exception ex){ }catch (Exception ex){
log.error("邮件发送失败",ex); log.error("邮件发送失败",ex);
} }
} }
private void sendEmail(List<AdminUser> adminUsers,String subject,String content) throws MessagingException { private void sendEmail(Set<String> emails, String subject, String content) throws MessagingException {
if (CollectionUtil.isNotEmpty(adminUsers)){ if (CollectionUtil.isNotEmpty(emails)){
for (AdminUser adminUser:adminUsers) { for (String email:emails) {
emailService.sendEmail(adminUser.getEmail(),subject,content); emailService.sendEmail(email,subject,content);
} }
} }
} }