Subversion Repositories SmartDukaan

Rev

Rev 35686 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package com.spice.profitmandi.dao.entity.cs;

import javax.persistence.*;
import java.time.LocalDate;
import java.time.LocalTime;
import java.util.Objects;

@Entity
@Table(name = "cs.agent_call_log", uniqueConstraints = {@UniqueConstraint(columnNames = "call_uuid")})

@NamedQueries({
        @NamedQuery(
                name = "AgentCallLog.findLatest",
                query = "SELECT a FROM AgentCallLog a " +
                        "WHERE a.customerNumber = :customerNumber " +
                        "AND a.agentNumber = :agentNumber " +
                        "AND a.callDate = :callDate " +
                        "AND a.callUuid IS NULL " +
                        "ORDER BY a.id DESC"
        ),
        @NamedQuery(
                name = "AgentCallLog.findLatestByAuthId",
                query = "SELECT a FROM AgentCallLog a " +
                        "WHERE a.customerNumber = :customerNumber " +
                        "AND a.authId = :authId " +
                        "AND a.callDate = :callDate " +
                        "AND a.callUuid IS NULL " +
                        "ORDER BY a.id DESC"
        )
})
public class AgentCallLog {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @Column(name = "call_date")
    private LocalDate callDate;

    @Column(name = "call_time")
    private LocalTime callTime;

    @Column(name = "call_status")
    private String callStatus;

    @Column(name = "call_duration")
    private String callDuration;

    @Column(name = "caller_id")
    private String callerId;

    @Column(name = "customer_number")
    private String customerNumber;

    @Column(name = "agent_number")
    private String agentNumber;

    @Column(name = "auth_id")
    private long authId;

    @Column(name = "call_uuid", unique = true)
    private String callUuid;

    @Column(name = "recording_url")
    private String recordingUrl;

    @Column(name = "call_transfer_duration")
    private String callTransferDuration;

    @Column(name = "customer_status")
    private String customerStatus;

    @Column(name = "sip_id")
    private String sipId;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public LocalDate getCallDate() {
        return callDate;
    }

    public void setCallDate(LocalDate callDate) {
        this.callDate = callDate;
    }

    public LocalTime getCallTime() {
        return callTime;
    }

    public void setCallTime(LocalTime callTime) {
        this.callTime = callTime;
    }

    public String getCallStatus() {
        return callStatus;
    }

    public void setCallStatus(String callStatus) {
        this.callStatus = callStatus;
    }

    public String getCallDuration() {
        return callDuration;
    }

    public void setCallDuration(String callDuration) {
        this.callDuration = callDuration;
    }

    public String getCallerId() {
        return callerId;
    }

    public void setCallerId(String callerId) {
        this.callerId = callerId;
    }

    public String getCustomerNumber() {
        return customerNumber;
    }

    public void setCustomerNumber(String customerNumber) {
        this.customerNumber = customerNumber;
    }

    public String getAgentNumber() {
        return agentNumber;
    }

    public void setAgentNumber(String agentNumber) {
        this.agentNumber = agentNumber;
    }

    public String getCallUuid() {
        return callUuid;
    }

    public void setCallUuid(String callUuid) {
        this.callUuid = callUuid;
    }

    public String getRecordingUrl() {
        return recordingUrl;
    }

    public void setRecordingUrl(String recordingUrl) {
        this.recordingUrl = recordingUrl;
    }

    public String getCallTransferDuration() {
        return callTransferDuration;
    }

    public void setCallTransferDuration(String callTransferDuration) {
        this.callTransferDuration = callTransferDuration;
    }

    public String getCustomerStatus() {
        return customerStatus;
    }

    public void setCustomerStatus(String customerStatus) {
        this.customerStatus = customerStatus;
    }

    public String getSipId() {
        return sipId;
    }

    public void setSipId(String sipId) {
        this.sipId = sipId;
    }

    public long getAuthId() {
        return authId;
    }

    public void setAuthId(long authId) {
        this.authId = authId;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        AgentCallLog that = (AgentCallLog) o;
        return authId == that.authId && Objects.equals(id, that.id) && Objects.equals(callDate, that.callDate) && Objects.equals(callTime, that.callTime) && Objects.equals(callStatus, that.callStatus) && Objects.equals(callDuration, that.callDuration) && Objects.equals(callerId, that.callerId) && Objects.equals(customerNumber, that.customerNumber) && Objects.equals(agentNumber, that.agentNumber) && Objects.equals(callUuid, that.callUuid) && Objects.equals(recordingUrl, that.recordingUrl) && Objects.equals(callTransferDuration, that.callTransferDuration) && Objects.equals(customerStatus, that.customerStatus) && Objects.equals(sipId, that.sipId);
    }

    @Override
    public String toString() {
        return "AgentCallLog{" +
                "id=" + id +
                ", callDate=" + callDate +
                ", callTime=" + callTime +
                ", callStatus='" + callStatus + '\'' +
                ", callDuration='" + callDuration + '\'' +
                ", callerId='" + callerId + '\'' +
                ", customerNumber='" + customerNumber + '\'' +
                ", agentNumber='" + agentNumber + '\'' +
                ", authId=" + authId +
                ", callUuid='" + callUuid + '\'' +
                ", recordingUrl='" + recordingUrl + '\'' +
                ", callTransferDuration='" + callTransferDuration + '\'' +
                ", customerStatus='" + customerStatus + '\'' +
                ", sipId='" + sipId + '\'' +
                '}';
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, callDate, callTime, callStatus, callDuration, callerId, customerNumber, agentNumber, authId, callUuid, recordingUrl, callTransferDuration, customerStatus, sipId);
    }

}