Pour tout problème contactez-nous par mail : support@froggit.fr | La FAQ :grey_question: | Rejoignez-nous sur le Chat :speech_balloon:

Skip to content
Snippets Groups Projects
Commit fa7a87b2 authored by Renaud Grishenko's avatar Renaud Grishenko
Browse files

Implémentation des fichiers bdpm #25

parent 07a178a7
No related branches found
No related tags found
No related merge requests found
PUT http://localhost:3000/api/updates HTTP/1.1 PUT http://localhost:3000/api/updates HTTP/1.1
\ No newline at end of file
...@@ -9,7 +9,6 @@ const fs = require('fs') ...@@ -9,7 +9,6 @@ const fs = require('fs')
const path = require('path') const path = require('path')
const Product = require('../models/Product') const Product = require('../models/Product')
async function downloadFile (url, filename) { async function downloadFile (url, filename) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
console.log('Download file: ' + filename) console.log('Download file: ' + filename)
...@@ -67,7 +66,7 @@ async function uploadToDatabaseG (dest, filename) { // eslint-disable-line no-al ...@@ -67,7 +66,7 @@ async function uploadToDatabaseG (dest, filename) { // eslint-disable-line no-al
data.split('\n').map(row => { data.split('\n').map(row => {
let rowArray = row.split('\t') let rowArray = row.split('\t')
if ( rowArray[0] !== '' ) { if ( rowArray[0] !== '' ) {
let aamDate = rowArray[7].substring(6,10) + '-' + rowArray[7].substring(3,5) + '-' + rowArray[7].substring(0,2) // let aamDate = rowArray[7].substring(6,10) + '-' + rowArray[7].substring(3,5) + '-' + rowArray[7].substring(0,2)
let line = { let line = {
cis: rowArray[0].trim(), cis: rowArray[0].trim(),
labelMed: rowArray[1].trim(), labelMed: rowArray[1].trim(),
...@@ -76,7 +75,7 @@ async function uploadToDatabaseG (dest, filename) { // eslint-disable-line no-al ...@@ -76,7 +75,7 @@ async function uploadToDatabaseG (dest, filename) { // eslint-disable-line no-al
adminStatus: rowArray[4].trim(), adminStatus: rowArray[4].trim(),
procedureType: rowArray[5].trim(), procedureType: rowArray[5].trim(),
commercialState: rowArray[6].trim(), commercialState: rowArray[6].trim(),
aamDate: aamDate, aamDate: rowArray[7].substring(6,10) + '-' + rowArray[7].substring(3,5) + '-' + rowArray[7].substring(0,2),
bdmStatus: rowArray[8].trim(), bdmStatus: rowArray[8].trim(),
numEUAuth: rowArray[9].trim(), numEUAuth: rowArray[9].trim(),
holder: rowArray[10].trim(), holder: rowArray[10].trim(),
...@@ -86,107 +85,88 @@ async function uploadToDatabaseG (dest, filename) { // eslint-disable-line no-al ...@@ -86,107 +85,88 @@ async function uploadToDatabaseG (dest, filename) { // eslint-disable-line no-al
} }
}) })
Product.BDPM_Cis.bulkCreate(array, { raw: true }) Product.BDPM_Cis.bulkCreate(array, { raw: true })
.catch(err => { })
} }
// CIP file // CIP file
// if ( filename === 'cip' ) { if ( filename === 'cip' ) {
// data.split('\n').map(row => { data.split('\n').map(row => {
// let rowArray = row.split('\t') let rowArray = row.split('\t')
// if ( rowArray[0] !== '' ) { if ( rowArray[0] !== '' ) {
// let aamDate = rowArray[7].substring(6,10) + '-' + rowArray[7].substring(3,5) + '-' + rowArray[7].substring(0,2) // let aamDate = rowArray[7].substring(6,10) + '-' + rowArray[7].substring(3,5) + '-' + rowArray[7].substring(0,2)
// let line = { let line = {
// cis: rowArray[0].trim(), cip7: rowArray[1].trim(),
// labelMed: rowArray[1].trim(), cip13: rowArray[6].trim(),
// pharmaForm: rowArray[2].trim(), cis: rowArray[0].trim(),
// medRoute: rowArray[3].trim(), label: rowArray[2].trim(),
// adminStatus: rowArray[4].trim(), adminStatus: rowArray[3].trim(),
// procedureType: rowArray[5].trim(), commercialState: rowArray[4].trim(),
// commercialState: rowArray[6].trim(), commercialDate: rowArray[5].substring(6,10) + '-' + rowArray[5].substring(3,5) + '-' + rowArray[5].substring(0,2),
// aamDate: aamDate, reimbursementRate: rowArray[8].replace('%','').trim(),
// bdmStatus: rowArray[8].trim(), priceTTC: rowArray[9].replace(',','.').trim(),
// numEUAuth: rowArray[9].trim(), reimbursementAmount: rowArray[10].replace(',','.').trim(),
// holder: rowArray[10].trim(), priceHD: rowArray[11].replace(',','.').trim(),
// reinforcedMonitoring: rowArray[11].trim() reimbursementText: rowArray[12].trim(),
// } }
// array.push(line) array.push(line)
// } }
// }) })
// Product.BDPM_Cis.bulkCreate(array, { raw: true }) Product.BDPM_Cip.bulkCreate(array, { raw: true })
// } .catch(err => { })
}
// COMPO file // COMPO file
// if ( filename === 'cip' ) { if ( filename === 'compo' ) {
// data.split('\n').map(row => { data.split('\n').map(row => {
// let rowArray = row.split('\t') let rowArray = row.split('\t')
// if ( rowArray[0] !== '' ) { if ( rowArray[0] !== '' ) {
// let aamDate = rowArray[7].substring(6,10) + '-' + rowArray[7].substring(3,5) + '-' + rowArray[7].substring(0,2) let line = {
// let line = { cis: rowArray[0].trim(),
// cis: rowArray[0].trim(), label: rowArray[1].trim(),
// labelMed: rowArray[1].trim(), substanceID: rowArray[2].trim(),
// pharmaForm: rowArray[2].trim(), substanceLabel: rowArray[3].trim(),
// medRoute: rowArray[3].trim(), substanceDosage: rowArray[4].trim(),
// adminStatus: rowArray[4].trim(), reference: rowArray[5].trim(),
// procedureType: rowArray[5].trim(), nature: rowArray[6].trim(),
// commercialState: rowArray[6].trim(), natureID: rowArray[7].trim(),
// aamDate: aamDate, }
// bdmStatus: rowArray[8].trim(), array.push(line)
// numEUAuth: rowArray[9].trim(), }
// holder: rowArray[10].trim(), })
// reinforcedMonitoring: rowArray[11].trim() Product.BDPM_Compo.bulkCreate(array, { raw: true })
// } .catch(err => { })
// array.push(line) }
// }
// })
// Product.BDPM_Cis.bulkCreate(array, { raw: true })
// }
// GENER file // GENER file
// if ( filename === 'cip' ) { if ( filename === 'gener' ) {
// data.split('\n').map(row => { data.split('\n').map(row => {
// let rowArray = row.split('\t') let rowArray = row.split('\t')
// if ( rowArray[0] !== '' ) { if ( rowArray[0] !== '' ) {
// let aamDate = rowArray[7].substring(6,10) + '-' + rowArray[7].substring(3,5) + '-' + rowArray[7].substring(0,2) let line = {
// let line = { id: rowArray[0].trim(),
// cis: rowArray[0].trim(), label: rowArray[1].trim(),
// labelMed: rowArray[1].trim(), cis: rowArray[2].trim(),
// pharmaForm: rowArray[2].trim(), type: rowArray[3].trim(),
// medRoute: rowArray[3].trim(), sort: rowArray[4].trim(),
// adminStatus: rowArray[4].trim(), }
// procedureType: rowArray[5].trim(), array.push(line)
// commercialState: rowArray[6].trim(), }
// aamDate: aamDate, })
// bdmStatus: rowArray[8].trim(), Product.BDPM_Gener.bulkCreate(array, { raw: true })
// numEUAuth: rowArray[9].trim(), .catch(err => { })
// holder: rowArray[10].trim(), }
// reinforcedMonitoring: rowArray[11].trim()
// }
// array.push(line)
// }
// })
// Product.BDPM_Cis.bulkCreate(array, { raw: true })
// }
// CPD file // CPD file
// if ( filename === 'cip' ) { if ( filename === 'cpd' ) {
// data.split('\n').map(row => { data.split('\n').map(row => {
// let rowArray = row.split('\t') let rowArray = row.split('\t')
// if ( rowArray[0] !== '' ) { if ( rowArray[0] !== '' ) {
// let aamDate = rowArray[7].substring(6,10) + '-' + rowArray[7].substring(3,5) + '-' + rowArray[7].substring(0,2) let line = {
// let line = { cis: rowArray[0].trim(),
// cis: rowArray[0].trim(), condition: rowArray[1].trim(),
// labelMed: rowArray[1].trim(), }
// pharmaForm: rowArray[2].trim(), array.push(line)
// medRoute: rowArray[3].trim(), }
// adminStatus: rowArray[4].trim(), })
// procedureType: rowArray[5].trim(), Product.BDPM_Cpd.bulkCreate(array, { raw: true })
// commercialState: rowArray[6].trim(), .catch(err => { })
// aamDate: aamDate, }
// bdmStatus: rowArray[8].trim(),
// numEUAuth: rowArray[9].trim(),
// holder: rowArray[10].trim(),
// reinforcedMonitoring: rowArray[11].trim()
// }
// array.push(line)
// }
// })
// Product.BDPM_Cis.bulkCreate(array, { raw: true })
// }
}) })
}) })
} }
...@@ -194,7 +174,7 @@ async function uploadToDatabaseG (dest, filename) { // eslint-disable-line no-al ...@@ -194,7 +174,7 @@ async function uploadToDatabaseG (dest, filename) { // eslint-disable-line no-al
exports.downloadFiles = function() { exports.downloadFiles = function() {
// uploadToDatabaseG(cis, 'cis' ) // uploadToDatabaseG(cis, 'cis' )
downloadFile(cis, 'cis') downloadFile(cis, 'cis')
// downloadFile(cip, 'cip') downloadFile(cip, 'cip')
// downloadFile(compo, 'compo') // downloadFile(compo, 'compo')
// downloadFile(gener, 'gener') // downloadFile(gener, 'gener')
// downloadFile(cpd, 'cpd') // downloadFile(cpd, 'cpd')
......
...@@ -2,7 +2,7 @@ const Sequelize = require('sequelize') ...@@ -2,7 +2,7 @@ const Sequelize = require('sequelize')
const dbG = require('../data/dbG.js') const dbG = require('../data/dbG.js')
const BDPM_Cis = dbG.sequelize.define('BDPM_Cis', { // eslint-disable-line no-alert, no-unused-vars const BDPM_Cis = dbG.sequelize.define('BDPM_Cis', { // eslint-disable-line no-alert, no-unused-vars
cis: { type: Sequelize.INTEGER(8), primaryKey: true }, cis: { type: Sequelize.INTEGER(8).UNSIGNED, primaryKey: true },
labelMed: { type: Sequelize.TEXT }, labelMed: { type: Sequelize.TEXT },
pharmaForm: { type: Sequelize.STRING }, pharmaForm: { type: Sequelize.STRING },
medRoute: { type: Sequelize.STRING }, medRoute: { type: Sequelize.STRING },
...@@ -19,17 +19,17 @@ const BDPM_Cis = dbG.sequelize.define('BDPM_Cis', { // eslint-disable-line no-al ...@@ -19,17 +19,17 @@ const BDPM_Cis = dbG.sequelize.define('BDPM_Cis', { // eslint-disable-line no-al
}) })
const BDPM_Cip = dbG.sequelize.define('BDPM_Cip', { // eslint-disable-line no-alert, no-unused-vars const BDPM_Cip = dbG.sequelize.define('BDPM_Cip', { // eslint-disable-line no-alert, no-unused-vars
cip7: { type: Sequelize.INTEGER(7).UNSIGNED, primaryKey: true },
cip13: { type: Sequelize.BIGINT(13) },
cis: { type: Sequelize.INTEGER(8) }, cis: { type: Sequelize.INTEGER(8) },
cip7: { type: Sequelize.INTEGER(7), primaryKey: true },
cip13: { type: Sequelize.INTEGER(13) },
label: { type: Sequelize.TEXT }, label: { type: Sequelize.TEXT },
adminStatus: { type: Sequelize.STRING(30) }, adminStatus: { type: Sequelize.STRING(30) },
commercialState: { type: Sequelize.STRING(40) }, commercialState: { type: Sequelize.STRING(40) },
commercialDate: { type: Sequelize.DATEONLY }, commercialDate: { type: Sequelize.DATEONLY },
reimbursementRate: { type: Sequelize.DECIMAL(3, 2) }, reimbursementRate: { type: Sequelize.DECIMAL(3, 2).ZEROFILL },
priceTTC: { type: Sequelize.DECIMAL(10, 2) }, priceTTC: { type: Sequelize.DECIMAL(10, 2).ZEROFILL },
reimbursementAmount: { type: Sequelize.DECIMAL(10, 2) }, reimbursementAmount: { type: Sequelize.DECIMAL(10, 2).ZEROFILL },
priceHD: { type: Sequelize.DECIMAL(10, 2) }, priceHD: { type: Sequelize.DECIMAL(10, 2).ZEROFILL },
reimbursementText: { type: Sequelize.TEXT } reimbursementText: { type: Sequelize.TEXT }
}, { }, {
freezeTableName: true freezeTableName: true
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment