Modelado Base de Datos

Aquí se mostrarán los esquemas que se han realizado.

Provider

public class Provider {

@Id

private String id; // Identificador unico

@Indexed(unique = true)

private String name;

private String logo;

private String description; // Opcional

private Integer popularity; // nivel de popularidad, donde 1 es el mas popular

private CustomizableAmount customizableAmount;

@Indexed 26

private Boolean active; // si el proveedor esta activo o no, solo se listaran los proveedores activos al usuario

private String type; // AGENCY o BUY SELL

private String termsConditions; // Opcional

private Date createdAt;

private Date updatedAt;

}

CustomizableAmount

public class CustomizableAmount {

private Boolean allow; // True -> Si permite un monto customizable, caso contrario False

private Long max; // Monto maximo en centavos (Informacion requerida solo si allow es True)

private Long min; // Monto minimo en centavos (Informacion requerida solo si allow es True)

}

Product

public class Product {

@Id

private String id;

@Indexed

private String name;

@Indexed

private String providerId;

private Long amountInCents;

private String upc;

private double commission; // Opcional

private Long discountInCents; // Opcional

private Date createdAt;

}