package com.example.fostracker.models;

import java.sql.Timestamp;
import java.time.ZoneId;
import java.time.ZonedDateTime;

/** Serves as a model for store objects that will be used in to communicate information about GPay Merchants' stores
 * and businesses */
public class Verification {
    String agentEmail;
    String storePhone;
    Coordinates verificationCoordinates;
    String verificationStatus;
    Timestamp verificationCreationDateTime;

    /**
     * @param agentEmail - email id of the agent who completed the verification
     * @param storePhone - the store phone number that was verified
     * @param verificationCoordinates - the location the agent was at at the time of verification
     * @param verificationStatus - whether the verification was successful/unsuccessful/incomplete
     * verificationDateTime is set by default to the current time of Asia/Kolkata and cannot be changed later
     */
    public Verification(String agentEmail, String storePhone, Coordinates verificationCoordinates, String verificationStatus) {
        this.agentEmail = agentEmail;
        this.storePhone = storePhone;
        this.verificationCoordinates = verificationCoordinates;
        this.verificationStatus = verificationStatus;
        this.verificationCreationDateTime = Timestamp.valueOf(ZonedDateTime.now(ZoneId.of("Asia/Kolkata")).toLocalDateTime());
    }

    public String getAgentEmail() {
        return agentEmail;
    }

    public void setAgentEmail(String agentID) {
        this.agentEmail = agentID;
    }

    public String getStorePhone() {
        return storePhone;
    }

    public void setStorePhone(String storeID) {
        this.storePhone = storeID;
    }

    public Coordinates getVerificationCoordinates() {
        return verificationCoordinates;
    }

    public void setVerificationCoordinates(Coordinates coordinates) {
        this.verificationCoordinates = coordinates;
    }

    public String getStoreVerificationStatus() {
        return verificationStatus;
    }

    public void setStoreVerificationStatus(String status) {
        this.verificationStatus = status;
    }

    public Timestamp getStoreVerificationDateTime() {
        return verificationCreationDateTime;
    }
}
@@ -447,16 +447,467 @@
 eTime;%0A%0A
+    /**%0A     * If store verification is successful then database table stores %22green%22 String.%0A     * else if merchant is not registered then database table stores %22yellow%22 String%0A     * else if store verification is  unsuccessful then database table stores %22red%22 String%0A     */%0A    private final String VERIFICATION_SUCCESSFUL = %22green%22;%0A    private final String NOT_REGISTERED = %22yellow%22;%0A    private final String VERIFICATION_UNSUCCESSFUL = %22red%22;%0A%0A
     /**%0A
@@ -978,32 +978,32 @@
 he verification%0A
-
      * @param st
@@ -1468,22 +1468,19 @@
 inates, 
-Str
 in
-g
+t
  verific
@@ -1664,24 +1664,51 @@
 ionStatus = 
+getStoreVerificationString(
 verification
@@ -1709,24 +1709,25 @@
 cationStatus
+)
 ;%0A        th
@@ -1842,32 +1842,479 @@
 Time());%0A    %7D%0A%0A
+    //Based on the status integral value it sets to required status string%0A    private String getStoreVerificationString(int verificationStatus)%7B%0A        switch(verificationStatus)%7B%0A            case 0:%0A                return VERIFICATION_UNSUCCESSFUL;%0A            case -1:%0A                return NOT_REGISTERED;%0A            case 1:%0A                return VERIFICATION_SUCCESSFUL;%0A            default:%0A                return null;%0A        %7D%0A    %7D%0A%0A
     public Strin

Add constant strings representing store verification status in Verification.java model