From c2a3da1d4071f2f1d6a5beb63b8442920767584e Mon Sep 17 00:00:00 2001
From: Jack <jack.su@pollex.com.tw>
Date: 星期二, 18 一月 2022 20:33:52 +0800
Subject: [PATCH] [ADD] 結案明細編輯API

---
 pamapi/src/main/java/com/pollex/pam/appointment/process/DoneProcess.java |   28 ++++++++++++++++++++++++----
 1 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/pamapi/src/main/java/com/pollex/pam/appointment/process/DoneProcess.java b/pamapi/src/main/java/com/pollex/pam/appointment/process/DoneProcess.java
index e65a084..9034f50 100644
--- a/pamapi/src/main/java/com/pollex/pam/appointment/process/DoneProcess.java
+++ b/pamapi/src/main/java/com/pollex/pam/appointment/process/DoneProcess.java
@@ -9,20 +9,25 @@
 import com.pollex.pam.domain.AppointmentClosedInfo;
 import com.pollex.pam.enums.ContactStatusEnum;
 import com.pollex.pam.repository.AppointmentClosedInfoRepository;
+import com.pollex.pam.service.AppointmentClosedInfoService;
 import com.pollex.pam.service.dto.AbstractAppointmentProcessDTO;
+import com.pollex.pam.service.dto.ClosedProcessDTO;
 import com.pollex.pam.service.dto.DoneProcessDTO;
+import com.pollex.pam.web.rest.errors.AppointmentClosedInfoNotFoundException;
 
 @Service
 public class DoneProcess implements AppointmentProcessInterface{
 	
 	@Autowired
 	AppointmentClosedInfoRepository appointmentClosedInfoRepository;
-
+	
+	@Autowired
+	AppointmentClosedInfoService appointmentClosedInfoService;
+	
 	@Override
-	public void doProcess(AbstractAppointmentProcessDTO processDTO) {
+	public void createProcess(AbstractAppointmentProcessDTO processDTO) {
 		checkClosedInfo(processDTO.getAppointmentId());
-		DoneProcessDTO doneProcess = (DoneProcessDTO)processDTO;
-		BeanUtils.copyProperties(processDTO, doneProcess);
+		DoneProcessDTO doneProcess = toDoneProcessDTO(processDTO);
 		AppointmentClosedInfo closedInfo = new AppointmentClosedInfo();
 		BeanUtils.copyProperties(doneProcess, closedInfo);
 		appointmentClosedInfoRepository.save(closedInfo);
@@ -39,5 +44,20 @@
 			throw new IllegalArgumentException("appointment closed info exist");
 		}
 	}
+
+	@Override
+	public AppointmentClosedInfo editClosedInfo(AbstractAppointmentProcessDTO abstractDTO) {
+		DoneProcessDTO doneProcess =  toDoneProcessDTO(abstractDTO);
+		AppointmentClosedInfo closedInfo = appointmentClosedInfoService.findByAppointmentId(abstractDTO.getAppointmentId());
+		BeanUtils.copyProperties(doneProcess, closedInfo);
+		return appointmentClosedInfoRepository.save(closedInfo);
+	}
+
+	private DoneProcessDTO toDoneProcessDTO(AbstractAppointmentProcessDTO abstractDTO) {
+		
+		DoneProcessDTO doneProcess = (DoneProcessDTO)abstractDTO;
+		BeanUtils.copyProperties(abstractDTO, doneProcess);
+		return doneProcess;
+	}
 	
 }

--
Gitblit v1.8.0