108 lines
2.9 KiB
JavaScript
Executable File
108 lines
2.9 KiB
JavaScript
Executable File
mongoose = require('mongoose').set('debug', false)
|
|
const Schema = mongoose.Schema;
|
|
|
|
const tools = require('../tools/general');
|
|
|
|
mongoose.Promise = global.Promise;
|
|
mongoose.level = "F";
|
|
|
|
|
|
// Resolving error Unknown modifier: $pushAll
|
|
mongoose.plugin(schema => {
|
|
schema.options.usePushEach = true
|
|
});
|
|
|
|
|
|
/**
|
|
* @typedef {Object} Article
|
|
* @property {bigint} Id
|
|
* @property {number} IdArticolo
|
|
* @property {string} Ean13
|
|
* @property {string} Titolo
|
|
* @property {string} ListaAutori
|
|
* @property {string} ListaArgomenti
|
|
* @property {number} IdStatoProdotto
|
|
* @property {number} PrezzoIvato
|
|
* @property {number} IdMarchioEditoriale
|
|
* @property {number} IdCollana
|
|
* @property {Date} DataPubblicazione
|
|
* @property {number} IdTipologia
|
|
* @property {number} IdTipoFormato
|
|
* @property {string} Misure
|
|
* @property {string} Pagine
|
|
* @property {string} Sottotitolo
|
|
* @property {string} Durata
|
|
* @property {string} Numero
|
|
* @property {string} Edizione
|
|
* @property {string} Ristampa
|
|
* @property {Date} DataInizioCampagna
|
|
* @property {Date} DataFineCampagna
|
|
* @property {number} ScontoCampagna
|
|
* @property {number} PrezzoIvatoScontatoCampagna
|
|
* @property {Date} DataOra
|
|
* @property {boolean} Enabled
|
|
* @property {number} IDTagGruppo
|
|
* @property {string} Utente
|
|
* @property {number} PercIva
|
|
* @property {number} IdTitoloOriginale
|
|
* @property {boolean} EnabledAlFresco
|
|
* @property {number} CodEdizione
|
|
* @property {string} FasciaEta
|
|
* @property {string} DescrizioneStatoProdotto
|
|
* @property {string} DescrizioneTipologia
|
|
* @property {string} DescrizioneFormato
|
|
* @property {string} DescrizioneCollana
|
|
* @property {string} DescrArgomento
|
|
* @property {string} AutoriCompleti
|
|
* @property {string} CasaEditrice
|
|
*/
|
|
|
|
const T_WEB_ArticoliSchema = new Schema({
|
|
IdArticolo: { type: Number },
|
|
Ean13: { type: String },
|
|
Titolo: { type: String },
|
|
ListaAutori: String,
|
|
ListaArgomenti: String,
|
|
IdStatoProdotto: Number,
|
|
PrezzoIvato: Number,
|
|
IdMarchioEditoriale: Number,
|
|
IdCollana: Number,
|
|
DataPubblicazione: Date,
|
|
IdTipologia: Number,
|
|
IdTipoFormato: Number,
|
|
Misure: String,
|
|
Pagine: String,
|
|
Sottotitolo: String,
|
|
Durata: String,
|
|
Numero: String,
|
|
Edizione: String,
|
|
Ristampa: String,
|
|
DataInizioCampagna: Date,
|
|
DataFineCampagna: Date,
|
|
ScontoCampagna: Number,
|
|
PrezzoIvatoScontatoCampagna: Number,
|
|
DataOra: Date,
|
|
Enabled: Boolean,
|
|
IDTagGruppo: Number,
|
|
Utente: String,
|
|
PercIva: Number,
|
|
IdTitoloOriginale: Number,
|
|
EnabledAlFresco: Boolean,
|
|
CodEdizione: Number,
|
|
FasciaEta: String,
|
|
DescrizioneStatoProdotto: String,
|
|
DescrizioneTipologia: String,
|
|
DescrizioneFormato: String,
|
|
DescrizioneCollana: String,
|
|
DescrArgomento: String,
|
|
AutoriCompleti: String,
|
|
CasaEditrice: String,
|
|
}, { collection: 't_web_articolis' });
|
|
|
|
module.exports = mongoose.model('T_WEB_Articoli', T_WEB_ArticoliSchema);
|
|
|
|
module.exports.createIndexes({ IdArticolo: 1, DataOra: -1 })
|
|
.then(() => { })
|
|
.catch((err) => { throw err; });
|
|
|