Commit c724d140 authored by Rajendra Kishor Rahu's avatar Rajendra Kishor Rahu
Browse files

junked by addition for junked ticket

Showing with 38 additions and 4 deletions
+38 -4
package org.upsmf.grievance.model;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;
......@@ -49,9 +50,14 @@ public class Ticket {
@Column(name = "is_junk")
private boolean junk = false;
@Column(name = "junked_by")
private String junkedBy;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.S", timezone = "Asia/Kolkata")
@Column(name = "created_date")
private Timestamp createdDate;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.S", timezone = "Asia/Kolkata")
@Column(name = "updated_date")
private Timestamp updatedDate;
......@@ -64,6 +70,7 @@ public class Ticket {
@Column(name = "is_escalated_to_admin")
private boolean escalatedToAdmin;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.S", timezone = "Asia/Kolkata")
@Column(name = "escalated_date")
private Timestamp escalatedDate;
......
package org.upsmf.grievance.model.es;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
......@@ -8,6 +9,7 @@ import org.upsmf.grievance.enums.RequesterType;
import org.upsmf.grievance.enums.TicketPriority;
import org.upsmf.grievance.enums.TicketStatus;
import javax.persistence.Column;
@Document(indexName = "ticket", createIndex = false)
@Getter
......@@ -51,9 +53,14 @@ public class Ticket {
@Field(name = "is_junk")
private Boolean junk = false;
@Field(name = "junked_by")
private String junkedBy;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.S", timezone = "Asia/Kolkata")
@Field(name = "created_date")
private String createdDate;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.S", timezone = "Asia/Kolkata")
@Field(name = "updated_date")
private String updatedDate;
......@@ -69,6 +76,7 @@ public class Ticket {
@Field(name = "is_escalated")
private Boolean escalated;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.S", timezone = "Asia/Kolkata")
@Field(name = "escalated_date")
private String escalatedDate;
......
......@@ -16,6 +16,7 @@ import org.upsmf.grievance.model.*;
import org.upsmf.grievance.repository.AssigneeTicketAttachmentRepository;
import org.upsmf.grievance.repository.CommentRepository;
import org.upsmf.grievance.repository.RaiserTicketAttachmentRepository;
import org.upsmf.grievance.repository.UserRepository;
import org.upsmf.grievance.repository.es.TicketRepository;
import org.upsmf.grievance.service.EmailService;
import org.upsmf.grievance.service.OtpService;
......@@ -25,6 +26,7 @@ import org.upsmf.grievance.util.ErrorCode;
import javax.transaction.Transactional;
import java.sql.Timestamp;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
......@@ -57,6 +59,8 @@ public class TicketServiceImpl implements TicketService {
@Autowired
private RaiserTicketAttachmentRepository raiserTicketAttachmentRepository;
@Autowired
private UserRepository userRepository;
@Autowired
private OtpService otpService;
......@@ -141,6 +145,7 @@ public class TicketServiceImpl implements TicketService {
// send mail
EmailDetails emailDetails = EmailDetails.builder().recipient(ticket.getEmail()).subject("New Complaint Registration").build();
emailService.sendCreateTicketMail(emailDetails, ticket);
System.out.println(ticket);
return ticket;
}
......@@ -290,6 +295,15 @@ public class TicketServiceImpl implements TicketService {
}
if(updateTicketRequest.getIsJunk()!=null) {
ticket.setJunk(updateTicketRequest.getIsJunk());
if (updateTicketRequest.getRequestedBy() != null && updateTicketRequest.getRequestedBy().isBlank()) {
ticket.setJunkedBy("-1");
} else {
User user = userRepository.findByKeycloakId(updateTicketRequest.getRequestedBy()).orElseThrow();
String firstName = user.getFirstName();
String lastName = user.getLastname();
String junkedBy = firstName + " " + lastName;
ticket.setJunkedBy(junkedBy);
}
}
ticket.setUpdatedDate(new Timestamp(DateUtil.getCurrentDate().getTime()));
// update assignee comments
......@@ -318,7 +332,7 @@ public class TicketServiceImpl implements TicketService {
* @return
*/
private org.upsmf.grievance.model.es.Ticket convertToESTicketObj(Ticket ticket) {
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(DateUtil.DEFAULT_DATE_FORMAT);
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(DateUtil.DEFAULT_DATE_FORMATTS);
// get user details based on ID
return org.upsmf.grievance.model.es.Ticket.builder()
.ticketId(ticket.getId())
......@@ -331,6 +345,7 @@ public class TicketServiceImpl implements TicketService {
.assignedToName("") // get user details based on ID
.description(ticket.getDescription())
.junk(ticket.isJunk())
.junkedBy(ticket.getJunkedBy())
.createdDate(ticket.getCreatedDate().toLocalDateTime().format(dateTimeFormatter))
.createdDateTS(ticket.getCreatedDate().getTime())
.updatedDate(ticket.getUpdatedDate().toLocalDateTime().format(dateTimeFormatter))
......@@ -345,8 +360,7 @@ public class TicketServiceImpl implements TicketService {
.escalatedBy(ticket.getEscalatedBy())
.escalatedTo(ticket.getEscalatedTo())
.escalatedToAdmin(ticket.isEscalatedToAdmin())
.rating(Long.valueOf(0)).build();
.rating(0L).build();
}
/**
......@@ -426,7 +440,11 @@ public class TicketServiceImpl implements TicketService {
@Synchronized
public void updateTicket(Long ticketId) {
Ticket ticket = getTicketById(ticketId);
ticket.setUpdatedDate(new Timestamp(new Date().getTime()));
try {
ticket.setUpdatedDate(new Timestamp(DateUtil.getCurrentDate().getTime()));
} catch (Exception e) {
throw new RuntimeException(e);
}
ticket.setEscalatedDate(new Timestamp(new Date().getTime()));
ticket.setEscalatedToAdmin(true);
ticket.setPriority(TicketPriority.MEDIUM);
......
......@@ -23,6 +23,7 @@ public class DateUtil {
public static final Logger LOGGER = LoggerFactory.getLogger(DateUtil.class);
public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm:ss";
public static final String DEFAULT_DATE_FORMATTS ="yyyy-MM-dd HH:mm:ss.S";
public static final String INVOICE_DATE_FORMATTER = "EEEE, MMMM d, yyyy";
public static final String YYYYMMDD_FORMATTER = "yyyy-MM-dd";
public static final String DATE_MONTH_YEAR_FORMAT = "dd-MMMM-yyyy";
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment