floriday/README.md

1.8 KiB

Floriday

Requires Node.js v15.14.0 or higher.

The Floriday service project should perform the following tasks:

  1. Create / mantain the table structure to allow the storage of the data provided by the Floriday API. This is done using the Sequelize ORM.
  2. Query the Floriday API and store the data in the database. This is done using the node-fetch package.
    2.1. The data is requested every minute, but only the data that has changed is stored in the database. This is done using the Sequelize ORM and storing the data as it is received from the API, so it can be compared with the previous data.

Guidelines

  • In case a new model is created, it should follow the following structure:

  • /models

    • index.js
    • foo.js

Foo.js

import { Sequelize } from "sequelize";

const bar = {
  barCharacteristicOne: {
    type: Sequelize.INTEGER,
  },
  barCharacteristicTwo: {
    type: Sequelize.STRING,
  },
  barCharacteristicThree: {
    type: Sequelize.STRING,
  },
};

export default (sequelize) => {
  const Foo = sequelize.define(
    "FDfoo",
    bar,
    {
      timestamps: false,
      freezeTableName: true,
    }
  );
  return Foo;
};

Index.js

import foo from "./foo";

let models = {
   bar: foo(sequelize),
}; 

To install dependencies:

npm install

To run:

npm start # run the service
npm dev-sync # run and create the db structure

.env file

CLIENT_ID = floriday-client_id
CLIENT_SECRET = floriday-client_secret
STATUS = production_or_development

# SEQUELIZE CONFIG

DB_SCHEMA = edi
DB_USER = root
DB_PWD = root
DB_HOST = localhost
DB_DIALECT = mariadb