Commit 168441f2 authored by shishir suman's avatar shishir suman
Browse files

bug fix

Showing with 44 additions and 18 deletions
+44 -18
......@@ -10,6 +10,9 @@ import javax.validation.constraints.*;
@Builder
@ToString(includeFieldNames = true)
public class FeedbackDto {
@NotBlank(message = "Ticket ID is required")
private Long ticketId;
@NotBlank(message = "First name is required")
private String firstName;
@NotBlank(message = "Last name is required")
......
......@@ -90,4 +90,7 @@ public class Ticket {
@Field(name = "escalated_by")
private String escalatedBy = "-1";
@Field(name = "rating")
private Long rating = 0L;
}
......@@ -9,10 +9,13 @@ import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import org.upsmf.grievance.dto.FeedbackDto;
import org.upsmf.grievance.model.es.Feedback;
import org.upsmf.grievance.model.es.Ticket;
import org.upsmf.grievance.model.reponse.FeedbackResponse;
import org.upsmf.grievance.repository.es.FeedbackRepository;
import org.upsmf.grievance.repository.es.TicketRepository;
import org.upsmf.grievance.service.FeedbackService;
import java.util.Optional;
import java.util.regex.Pattern;
@Service
......@@ -25,24 +28,37 @@ public class FeedbackServiceImpl implements FeedbackService {
@Autowired
private FeedbackRepository feedbackRepository;
@Autowired
private TicketRepository esTicketRepository;
@Override
public void saveFeedback(FeedbackDto feedbackDto) {
// validate request -- all fields are mandatory except comment
validateFeedbackDto(feedbackDto);
try{
Feedback feedback = Feedback.builder()
.firstName(feedbackDto.getFirstName())
.lastName(feedbackDto.getLastName())
.email(feedbackDto.getEmail())
.phone(feedbackDto.getPhone())
.rating(feedbackDto.getRating())
.comment(feedbackDto.getComment()!=null?feedbackDto.getComment():"").build();
log.info("Saving feedback: {}", feedback);
feedbackRepository.save(feedback);
log.info("Feedback saved successfully");
Feedback feedback = Feedback.builder()
.firstName(feedbackDto.getFirstName())
.lastName(feedbackDto.getLastName())
.email(feedbackDto.getEmail())
.phone(feedbackDto.getPhone())
.rating(feedbackDto.getRating())
.comment(feedbackDto.getComment()!=null?feedbackDto.getComment():"").build();
log.info("Saving feedback: {}", feedback);
feedbackRepository.save(feedback);
// update same rating in ES ticket
if(feedbackDto.getTicketId() != null && feedbackDto.getTicketId() > 0) {
Optional<Ticket> esTicket = esTicketRepository.findOneByTicketId(feedbackDto.getTicketId());
if (esTicket.isPresent()) {
Ticket ticket = esTicket.get();
ticket.setRating(Long.valueOf(feedbackDto.getRating()));
esTicketRepository.save(ticket);
}
} else {
log.error("Unable to update rating in Ticket");
}
log.info("Feedback saved successfully");
} catch (Exception e) {
e.printStackTrace();
}
......
......@@ -140,10 +140,10 @@ public class IntegrationServiceImpl implements IntegrationService {
} else {
user.getAttributes().put("module", "grievance");
}
String departmentId = user.getAttributes().get("departmentName");
String departmentName = user.getAttributes().get("departmentName");
List<Department> departmentList = new ArrayList<>();
if(departmentId != null) {
departmentList = Department.getById(Integer.valueOf(departmentId));
if(departmentName != null) {
departmentList = Department.getByCode(departmentName);
if(departmentList != null && !departmentList.isEmpty()) {
user.getAttributes().put("departmentName", departmentList.get(0).getCode());
}
......
......@@ -487,6 +487,10 @@ public class SearchServiceImpl implements SearchService {
case "escalated_by":
esTicket.setEscalatedBy(String.valueOf(entry.getValue()));
break;
case "rating":
longValue = ((Number) entry.getValue()).longValue();
esTicket.setRating(longValue);
break;
}
}
......
......@@ -185,6 +185,7 @@ public class TicketServiceImpl implements TicketService {
if(esTicketDetails.isPresent()) {
// TODO revisit this
esTicketRepository.deleteById(esTicketDetails.get().getId());
updatedESTicket.setRating(esTicketDetails.get().getRating());
}
org.upsmf.grievance.model.es.Ticket curentUpdatedTicket=esTicketRepository.save(updatedESTicket);
//send mail to enduser
......@@ -214,8 +215,6 @@ public class TicketServiceImpl implements TicketService {
.concat("&email=").concat(curentUpdatedTicket.getEmail())
.concat("&phone=").concat(curentUpdatedTicket.getPhone())
.concat("&ticketTitle=").concat(curentUpdatedTicket.getDescription());
//https://grievances.uphrh.in/feedback?guestName=Devendra&ticketId=123&ticketTitle=Registration&resolutionComment=Resolved
}
@Override
......@@ -303,7 +302,8 @@ public class TicketServiceImpl implements TicketService {
.requestType(ticket.getRequestType())
.priority(ticket.getPriority())
.escalatedBy(ticket.getEscalatedBy())
.escalatedTo(ticket.getEscalatedTo()).build();
.escalatedTo(ticket.getEscalatedTo())
.rating(Long.valueOf(0)).build();
}
/**
......
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