From a6b0be5d9e6e21b050d1d46c30aa0200d82ec4d5 Mon Sep 17 00:00:00 2001
From: wayne <wayne8692wayne8692@gmail.com>
Date: 星期六, 22 一月 2022 11:46:41 +0800
Subject: [PATCH] [update] [todo 134497] 批次處理尚未填寫滿意度的小鈴鐺通知

---
 pamapi/src/main/java/com/pollex/pam/domain/Appointment.java |   93 ++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 89 insertions(+), 4 deletions(-)

diff --git a/pamapi/src/main/java/com/pollex/pam/domain/Appointment.java b/pamapi/src/main/java/com/pollex/pam/domain/Appointment.java
index 6dda636..76d30ca 100644
--- a/pamapi/src/main/java/com/pollex/pam/domain/Appointment.java
+++ b/pamapi/src/main/java/com/pollex/pam/domain/Appointment.java
@@ -2,12 +2,29 @@
 
 import java.io.Serializable;
 import java.time.Instant;
+import java.util.List;
 
-import javax.persistence.*;
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.EntityListeners;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
 
-import com.pollex.pam.enums.ContactStatusEnum;
+import org.springframework.data.annotation.CreatedDate;
 import org.springframework.data.annotation.LastModifiedDate;
 import org.springframework.data.jpa.domain.support.AuditingEntityListener;
+
+import com.pollex.pam.enums.AppointmentStatusEnum;
+import com.pollex.pam.enums.ContactStatusEnum;
 
 @EntityListeners(AuditingEntityListener.class)
 @Entity
@@ -54,9 +71,13 @@
 	@Column(name = "other_requirement")
     private String otherRequirement;
 
+    @CreatedDate
+	@Column(name = "appointment_date", updatable = false)
+    private Instant appointmentDate = Instant.now();
+
+    @Column(name = "last_modified_date")
     @LastModifiedDate
-	@Column(name = "appointment_date")
-    private Instant appointmentDate;
+    private Instant lastModifiedDate = Instant.now();
 
 	@Column(name = "agent_no")
     private String agentNo;
@@ -69,6 +90,26 @@
 
     @Column(name = "consultant_read_time")
     private Instant consultantReadTime;
+
+    @Column(name = "contact_time")
+    private Instant contactTime;
+
+    @Enumerated(value = EnumType.STRING)
+    @Column(name = "status")
+    private AppointmentStatusEnum status;
+    
+    @JoinColumn(name = "appointment_id")
+    @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.REMOVE)
+    private List<AppointmentMemo> appointmentMemoList;
+    
+//    @OneToOne(cascade = CascadeType.REMOVE,fetch=FetchType.EAGER)
+////    @JoinColumn(name = "form_authority_id", referencedColumnName = "id")
+//    @JoinColumn(name = "appointment_id", referencedColumnName = "id")
+//    private AppointmentClosedInfo closedInfo;
+    
+//    @OneToOne(cascade = CascadeType.REMOVE
+//    		, mappedBy = "appointment", fetch=FetchType.LAZY)
+//    private AppointmentClosedInfo closedInfo;
 
 	public Long getId() {
 		return id;
@@ -197,4 +238,48 @@
     public void setConsultantReadTime(Instant consultantReadTime) {
         this.consultantReadTime = consultantReadTime;
     }
+
+    public Instant getContactTime() {
+        return contactTime;
+    }
+
+    public void setContactTime(Instant markCommunicateTime) {
+        this.contactTime = markCommunicateTime;
+    }
+
+    public AppointmentStatusEnum getStatus() {
+        return status;
+    }
+
+    public void setStatus(AppointmentStatusEnum status) {
+        this.status = status;
+    }
+
+    public Instant getLastModifiedDate() {
+        return lastModifiedDate;
+    }
+
+    public void setLastModifiedDate(Instant lastModifiedDate) {
+        this.lastModifiedDate = lastModifiedDate;
+    }
+
+	public List<AppointmentMemo> getAppointmentMemoList() {
+		return appointmentMemoList;
+	}
+
+	public void setAppointmentMemoList(List<AppointmentMemo> appointmentMemoList) {
+		this.appointmentMemoList = appointmentMemoList;
+	}
+
+//	public AppointmentClosedInfo getClosedInfo() {
+//		return closedInfo;
+//	}
+//
+//	public void setClosedInfo(AppointmentClosedInfo closedInfo) {
+//		this.closedInfo = closedInfo;
+//	}
+    
+    
+    
+    
 }

--
Gitblit v1.8.0