From 49c2a88a89a207e995b685299876473c3858dddc Mon Sep 17 00:00:00 2001
From: Jack <jack.su@pollex.com.tw>
Date: 星期一, 24 一月 2022 16:46:55 +0800
Subject: [PATCH] [ADD] 小鈴鐺通知增加已讀登入者所有通知的API

---
 pamapi/src/main/java/com/pollex/pam/service/NoticeService.java |   24 ++++++++++++++++++++++--
 1 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/pamapi/src/main/java/com/pollex/pam/service/NoticeService.java b/pamapi/src/main/java/com/pollex/pam/service/NoticeService.java
index ef23d74..5d9a908 100644
--- a/pamapi/src/main/java/com/pollex/pam/service/NoticeService.java
+++ b/pamapi/src/main/java/com/pollex/pam/service/NoticeService.java
@@ -1,11 +1,16 @@
 package com.pollex.pam.service;
 
+import java.util.List;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
 
 import com.pollex.pam.domain.Appointment;
+import com.pollex.pam.domain.AppointmentNoticeLog;
+import com.pollex.pam.enums.ContactStatusEnum;
+import com.pollex.pam.repository.AppointmentRepository;
 import com.pollex.pam.service.dto.AppointmentNoticeSendDTO;
 
 @Service
@@ -20,18 +25,33 @@
 	
 	@Autowired
 	AppointmentNoticeLogService appointmentNoticeLogService;
+	
+	@Autowired
+	AppointmentRepository appointmentRepository;
+	
+	@Autowired
+    PersonalNotificationService personalNotificationService;
+	
 
 	public void sendNotice(AppointmentNoticeSendDTO dto) {
 		String subject = "靽���像�蝟餌絞�嚗���";
-
-//		Appointment appointment = appointmentService.findById(dto.getAppointmentId());
+		
 		if(StringUtils.hasText(dto.getEmail())) {
 			sendMsgService.sendMsgByEmail(dto.getEmail(), subject, dto.getMessage(), true);
 		}if(StringUtils.hasText(dto.getPhone())) {
 			sendMsgService.sendMsgBySMS(dto.getPhone(), dto.getMessage());
 		}
 		
+		List<AppointmentNoticeLog> noticeLogs = 
+				appointmentNoticeLogService.findByAppointmentId(dto.getAppointmentId());
+		if(noticeLogs.size()==0) {
+			Appointment appointment = appointmentService.findById(dto.getAppointmentId());
+			appointment.setCommunicateStatus(ContactStatusEnum.CONTACTED);
+			appointmentRepository.save(appointment);
+		}
+		
 		appointmentNoticeLogService.create(dto);
+		personalNotificationService.createSendNoticeToCustomer(dto.getAppointmentId());
 	}
 
 }

--
Gitblit v1.8.0