Adding dollar currency table

This commit is contained in:
BGbaderguet 2020-12-26 11:41:02 +01:00
parent 09089595a8
commit 96080a182c
4 changed files with 68 additions and 13 deletions

View File

@ -0,0 +1,15 @@
package fr.romanet.vj.apps.myrealestateagency.dao;
import androidx.room.Dao;
import androidx.room.Query;
import java.util.List;
import fr.romanet.vj.apps.myrealestateagency.entities.DollarCurrency;
@Dao
public interface DollarCurrencyDao {
@Query("SELECT * FROM dollar")
List<DollarCurrency> getDollarCurrencyList();
}

View File

@ -8,14 +8,16 @@ import fr.romanet.vj.apps.myrealestateagency.dao.AgencyDao;
import fr.romanet.vj.apps.myrealestateagency.dao.AgencyWithAgentsDao;
//import fr.romanet.vj.apps.myrealestateagency.dao.AgencyWithPropertiesDao;
import fr.romanet.vj.apps.myrealestateagency.dao.AgencyWithPropertiesDao;
import fr.romanet.vj.apps.myrealestateagency.dao.DollarCurrencyDao;
import fr.romanet.vj.apps.myrealestateagency.dao.PropertyDao;
import fr.romanet.vj.apps.myrealestateagency.entities.Agency;
import fr.romanet.vj.apps.myrealestateagency.entities.AgencyWithProperties;
import fr.romanet.vj.apps.myrealestateagency.entities.Agent;
import fr.romanet.vj.apps.myrealestateagency.dao.AgentDao;
import fr.romanet.vj.apps.myrealestateagency.entities.DollarCurrency;
import fr.romanet.vj.apps.myrealestateagency.entities.Property;
@Database(entities = {Agency.class, Agent.class, Property.class}, version = 1, exportSchema = false)
@Database(entities = {Agency.class, Agent.class, Property.class, DollarCurrency.class}, version = 1, exportSchema = false)
@TypeConverters({Property.Converters.class})
public abstract class RealEstateAgencyDatabase extends RoomDatabase {
@ -24,5 +26,6 @@ public abstract class RealEstateAgencyDatabase extends RoomDatabase {
public abstract PropertyDao propertyDao();
public abstract AgencyWithAgentsDao agencyWithAgentsDao();
public abstract AgencyWithPropertiesDao agencyWithPropertiesDaoDao();
public abstract DollarCurrencyDao dollarCurrencyDao();
}

View File

@ -0,0 +1,48 @@
package fr.romanet.vj.apps.myrealestateagency.entities;
import androidx.annotation.NonNull;
import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.Index;
import androidx.room.PrimaryKey;
import java.sql.Date;
@Entity(tableName = "dollar",
primaryKeys = {"value", "fetch_date"})
public class DollarCurrency {
@NonNull
@ColumnInfo(name = "value")
private double value;
@NonNull
@ColumnInfo(name = "fetch_date")
private Date fetchDate;
public DollarCurrency(@NonNull double value, @NonNull Date fetchDate)
{
this.value = value;
this.fetchDate = fetchDate;
}
public double getValue()
{
return value;
}
public void setValue(double value)
{
this.value = value;
}
public Date getFetchDate()
{
return fetchDate;
}
public void setFetchDate(Date fetchDate)
{
this.fetchDate = fetchDate;
}
}

View File

@ -2,10 +2,7 @@ package fr.romanet.vj.apps.myrealestateagency.repository;
import android.content.Context;
import androidx.annotation.NonNull;
import androidx.room.Room;
import androidx.room.RoomDatabase;
import androidx.sqlite.db.SupportSQLiteDatabase;
import java.util.List;
import fr.romanet.vj.apps.myrealestateagency.database.RealEstateAgencyDatabase;
@ -36,14 +33,7 @@ public final class MyRealEstateAgencyRepository {
public MyRealEstateAgencyRepository(Context context)
{
realEstateAgencyDatabaseDatabase = Room.databaseBuilder(context, RealEstateAgencyDatabase.class, "real_estate_agency_db")
.addCallback(new RoomDatabase.Callback() {
@Override
public void onCreate(@NonNull SupportSQLiteDatabase db) {
super.onCreate(db);
insertPreAgenciesData(Agency.populateAgencyTable());
}
}).allowMainThreadQueries().build();
realEstateAgencyDatabaseDatabase = Room.databaseBuilder(context, RealEstateAgencyDatabase.class, "real_estate_agency_db").allowMainThreadQueries().build();
}
public List<Agent> getAgents(){return realEstateAgencyDatabaseDatabase.agentDao().getAgentList();}
@ -51,5 +41,4 @@ public final class MyRealEstateAgencyRepository {
public void addAgent(Agent agent){realEstateAgencyDatabaseDatabase.agentDao().insertAgent(agent);}
public void addProperty(Property property){realEstateAgencyDatabaseDatabase.propertyDao().insertProperty(property);}
public String getAgencyName(Agent agent){return realEstateAgencyDatabaseDatabase.agentDao().getAgencyName(agent.agencyEmployerId);}
public void insertPreAgenciesData(Agency[] agencies){realEstateAgencyDatabaseDatabase.agencyDao().insertPreData(agencies);}
}