From 441af68e4c4de7e8121f0df0bbc47f4fb3a436d5 Mon Sep 17 00:00:00 2001 From: Frantz Arty Date: Mon, 3 Jan 2022 17:32:43 -0500 Subject: [PATCH] feat: add organization api --- src/assets/organizationIcons/algeria.svg | 5 + src/assets/organizationIcons/andorra.svg | 6 + src/assets/organizationIcons/argentinia.svg | 68 + src/assets/organizationIcons/armenia.svg | 5 + src/assets/organizationIcons/australia.svg | 5 + src/assets/organizationIcons/austria.svg | 4 + src/assets/organizationIcons/bahamas.svg | 5 + src/assets/organizationIcons/barbados.svg | 5 + src/assets/organizationIcons/belgium.svg | 5 + src/assets/organizationIcons/bolivia.svg | 5 + src/assets/organizationIcons/bosnia.svg | 11 + src/assets/organizationIcons/botswana.svg | 5 + src/assets/organizationIcons/brazil.svg | 6 + src/assets/organizationIcons/bulgaria.svg | 5 + src/assets/organizationIcons/cameroon.svg | 6 + src/assets/organizationIcons/canada.svg | 7 + src/assets/organizationIcons/chad.svg | 5 + src/assets/organizationIcons/chili.svg | 6 + src/assets/organizationIcons/china.svg | 8 + src/assets/organizationIcons/colombia.svg | 5 + src/assets/organizationIcons/congo.svg | 5 + src/assets/organizationIcons/costa-rica.svg | 5 + src/assets/organizationIcons/croatia.svg | 30 + src/assets/organizationIcons/cuba.svg | 8 + src/assets/organizationIcons/czech.svg | 5 + src/assets/organizationIcons/denmark.svg | 5 + src/assets/organizationIcons/dominican.svg | 467 ++++++ src/assets/organizationIcons/ecuador.svg | 1629 +++++++++++++++++++ src/assets/organizationIcons/egypt.svg | 8 + src/assets/organizationIcons/me.svg | 3 + src/controllers/index.js | 9 +- src/controllers/organization.controller.js | 39 + src/models/projects/projects.stub.json | 2 +- src/routes/v1/index.js | 8 +- src/routes/v1/resources/index.js | 1 + src/routes/v1/resources/organization.js | 13 + 36 files changed, 2407 insertions(+), 7 deletions(-) create mode 100644 src/assets/organizationIcons/algeria.svg create mode 100644 src/assets/organizationIcons/andorra.svg create mode 100644 src/assets/organizationIcons/argentinia.svg create mode 100644 src/assets/organizationIcons/armenia.svg create mode 100644 src/assets/organizationIcons/australia.svg create mode 100644 src/assets/organizationIcons/austria.svg create mode 100644 src/assets/organizationIcons/bahamas.svg create mode 100644 src/assets/organizationIcons/barbados.svg create mode 100644 src/assets/organizationIcons/belgium.svg create mode 100644 src/assets/organizationIcons/bolivia.svg create mode 100644 src/assets/organizationIcons/bosnia.svg create mode 100644 src/assets/organizationIcons/botswana.svg create mode 100644 src/assets/organizationIcons/brazil.svg create mode 100644 src/assets/organizationIcons/bulgaria.svg create mode 100644 src/assets/organizationIcons/cameroon.svg create mode 100644 src/assets/organizationIcons/canada.svg create mode 100644 src/assets/organizationIcons/chad.svg create mode 100644 src/assets/organizationIcons/chili.svg create mode 100644 src/assets/organizationIcons/china.svg create mode 100644 src/assets/organizationIcons/colombia.svg create mode 100644 src/assets/organizationIcons/congo.svg create mode 100644 src/assets/organizationIcons/costa-rica.svg create mode 100644 src/assets/organizationIcons/croatia.svg create mode 100644 src/assets/organizationIcons/cuba.svg create mode 100644 src/assets/organizationIcons/czech.svg create mode 100644 src/assets/organizationIcons/denmark.svg create mode 100644 src/assets/organizationIcons/dominican.svg create mode 100644 src/assets/organizationIcons/ecuador.svg create mode 100644 src/assets/organizationIcons/egypt.svg create mode 100644 src/assets/organizationIcons/me.svg create mode 100644 src/controllers/organization.controller.js create mode 100644 src/routes/v1/resources/organization.js diff --git a/src/assets/organizationIcons/algeria.svg b/src/assets/organizationIcons/algeria.svg new file mode 100644 index 00000000..09c8ee68 --- /dev/null +++ b/src/assets/organizationIcons/algeria.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/andorra.svg b/src/assets/organizationIcons/andorra.svg new file mode 100644 index 00000000..16c66530 --- /dev/null +++ b/src/assets/organizationIcons/andorra.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/assets/organizationIcons/argentinia.svg b/src/assets/organizationIcons/argentinia.svg new file mode 100644 index 00000000..3a2a5e75 --- /dev/null +++ b/src/assets/organizationIcons/argentinia.svg @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/organizationIcons/armenia.svg b/src/assets/organizationIcons/armenia.svg new file mode 100644 index 00000000..b3b1a267 --- /dev/null +++ b/src/assets/organizationIcons/armenia.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/australia.svg b/src/assets/organizationIcons/australia.svg new file mode 100644 index 00000000..b772a5cf --- /dev/null +++ b/src/assets/organizationIcons/australia.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/austria.svg b/src/assets/organizationIcons/austria.svg new file mode 100644 index 00000000..10ceb4e8 --- /dev/null +++ b/src/assets/organizationIcons/austria.svg @@ -0,0 +1,4 @@ + + + + diff --git a/src/assets/organizationIcons/bahamas.svg b/src/assets/organizationIcons/bahamas.svg new file mode 100644 index 00000000..6a136d54 --- /dev/null +++ b/src/assets/organizationIcons/bahamas.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/barbados.svg b/src/assets/organizationIcons/barbados.svg new file mode 100644 index 00000000..c612812c --- /dev/null +++ b/src/assets/organizationIcons/barbados.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/belgium.svg b/src/assets/organizationIcons/belgium.svg new file mode 100644 index 00000000..f7ba918b --- /dev/null +++ b/src/assets/organizationIcons/belgium.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/bolivia.svg b/src/assets/organizationIcons/bolivia.svg new file mode 100644 index 00000000..c9c52b0c --- /dev/null +++ b/src/assets/organizationIcons/bolivia.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/bosnia.svg b/src/assets/organizationIcons/bosnia.svg new file mode 100644 index 00000000..8048526a --- /dev/null +++ b/src/assets/organizationIcons/bosnia.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/assets/organizationIcons/botswana.svg b/src/assets/organizationIcons/botswana.svg new file mode 100644 index 00000000..fa6f555c --- /dev/null +++ b/src/assets/organizationIcons/botswana.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/brazil.svg b/src/assets/organizationIcons/brazil.svg new file mode 100644 index 00000000..ff3cf9f4 --- /dev/null +++ b/src/assets/organizationIcons/brazil.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/assets/organizationIcons/bulgaria.svg b/src/assets/organizationIcons/bulgaria.svg new file mode 100644 index 00000000..152e4f5f --- /dev/null +++ b/src/assets/organizationIcons/bulgaria.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/cameroon.svg b/src/assets/organizationIcons/cameroon.svg new file mode 100644 index 00000000..ab9d0ec6 --- /dev/null +++ b/src/assets/organizationIcons/cameroon.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/assets/organizationIcons/canada.svg b/src/assets/organizationIcons/canada.svg new file mode 100644 index 00000000..07934028 --- /dev/null +++ b/src/assets/organizationIcons/canada.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/assets/organizationIcons/chad.svg b/src/assets/organizationIcons/chad.svg new file mode 100644 index 00000000..5eb76070 --- /dev/null +++ b/src/assets/organizationIcons/chad.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/chili.svg b/src/assets/organizationIcons/chili.svg new file mode 100644 index 00000000..6b406fe2 --- /dev/null +++ b/src/assets/organizationIcons/chili.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/assets/organizationIcons/china.svg b/src/assets/organizationIcons/china.svg new file mode 100644 index 00000000..1aa2a9ac --- /dev/null +++ b/src/assets/organizationIcons/china.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/assets/organizationIcons/colombia.svg b/src/assets/organizationIcons/colombia.svg new file mode 100644 index 00000000..4783c283 --- /dev/null +++ b/src/assets/organizationIcons/colombia.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/congo.svg b/src/assets/organizationIcons/congo.svg new file mode 100644 index 00000000..fc2c7df9 --- /dev/null +++ b/src/assets/organizationIcons/congo.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/costa-rica.svg b/src/assets/organizationIcons/costa-rica.svg new file mode 100644 index 00000000..aed375ae --- /dev/null +++ b/src/assets/organizationIcons/costa-rica.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/croatia.svg b/src/assets/organizationIcons/croatia.svg new file mode 100644 index 00000000..5dbfbe4c --- /dev/null +++ b/src/assets/organizationIcons/croatia.svg @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/organizationIcons/cuba.svg b/src/assets/organizationIcons/cuba.svg new file mode 100644 index 00000000..9102373e --- /dev/null +++ b/src/assets/organizationIcons/cuba.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/assets/organizationIcons/czech.svg b/src/assets/organizationIcons/czech.svg new file mode 100644 index 00000000..2fec5aee --- /dev/null +++ b/src/assets/organizationIcons/czech.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/denmark.svg b/src/assets/organizationIcons/denmark.svg new file mode 100644 index 00000000..f5d7d0b3 --- /dev/null +++ b/src/assets/organizationIcons/denmark.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/src/assets/organizationIcons/dominican.svg b/src/assets/organizationIcons/dominican.svg new file mode 100644 index 00000000..7ced1d2b --- /dev/null +++ b/src/assets/organizationIcons/dominican.svg @@ -0,0 +1,467 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/organizationIcons/ecuador.svg b/src/assets/organizationIcons/ecuador.svg new file mode 100644 index 00000000..ffa0dd52 --- /dev/null +++ b/src/assets/organizationIcons/ecuador.svg @@ -0,0 +1,1629 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/organizationIcons/egypt.svg b/src/assets/organizationIcons/egypt.svg new file mode 100644 index 00000000..bb3928bc --- /dev/null +++ b/src/assets/organizationIcons/egypt.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/assets/organizationIcons/me.svg b/src/assets/organizationIcons/me.svg new file mode 100644 index 00000000..4f126f41 --- /dev/null +++ b/src/assets/organizationIcons/me.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/src/controllers/index.js b/src/controllers/index.js index 7da2f331..50f53389 100644 --- a/src/controllers/index.js +++ b/src/controllers/index.js @@ -1,5 +1,4 @@ -import * as ProjectController from './project.controller'; -import * as UnitController from './units.controller'; -import * as StagingController from './staging.controller'; - -export { ProjectController, UnitController, StagingController }; +export * as ProjectController from './project.controller'; +export * as UnitController from './units.controller'; +export * as StagingController from './staging.controller'; +export * as OrganizationController from './organization.controller'; diff --git a/src/controllers/organization.controller.js b/src/controllers/organization.controller.js new file mode 100644 index 00000000..769b584b --- /dev/null +++ b/src/controllers/organization.controller.js @@ -0,0 +1,39 @@ +import fs from 'fs'; + +const loadFileIntoString = (path) => { + return new Promise((resolve, reject) => { + fs.readFile(path, (err, buff) => { + if (err) { + console.error(err); + return; + } + console.log(buff.toString()); + resolve(buff.toString()); + }); + }); +}; + +export const findAll = async (req, res) => { + return res.json({ + me: { + orguid: 'f1c54511-865e-4611-976c-7c3c1f704662', + icon: await loadFileIntoString('src/assets/organizationIcons/me.svg'), + }, + chili: { + orgUid: '35f92331-c8d7-4e9e-a8d2-cd0a86cbb2cf', + icon: await loadFileIntoString('src/assets/organizationIcons/chili.svg'), + }, + belgium: { + orgUid: 'fbffae6b-0203-4ac0-a08b-1551b730783b', + icon: await loadFileIntoString( + 'src/assets/organizationIcons/belgium.svg', + ), + }, + bulgaria: { + orgUid: '70150fde-57f6-44a6-9486-1fef49528475', + icon: await loadFileIntoString( + 'src/assets/organizationIcons/bulgaria.svg', + ), + }, + }); +}; diff --git a/src/models/projects/projects.stub.json b/src/models/projects/projects.stub.json index 64a2bce1..c0ee33a2 100644 --- a/src/models/projects/projects.stub.json +++ b/src/models/projects/projects.stub.json @@ -81,7 +81,7 @@ "updatedAt": "11/22/2021" }, { - "orgUid": "f1c54511-865e-4611-976c-7c3c1f704662", + "orgUid": "fbffae6b-0203-4ac0-a08b-1551b730783b", "warehouseprojectId": "11954678-f7a5-47d2-94f8-f4f3138a529c", "currentRegistry": "Feedfire", "registryOfOrigin": "Skinte", diff --git a/src/routes/v1/index.js b/src/routes/v1/index.js index c169e045..5f9f00b0 100644 --- a/src/routes/v1/index.js +++ b/src/routes/v1/index.js @@ -3,10 +3,16 @@ import express from 'express'; const V1Router = express.Router(); -import { ProjectRouter, UnitRouter, StagingRouter } from './resources'; +import { + ProjectRouter, + UnitRouter, + StagingRouter, + OrganizationRouter, +} from './resources'; V1Router.use('/projects', ProjectRouter); V1Router.use('/units', UnitRouter); V1Router.use('/staging', StagingRouter); +V1Router.use('/organizations', OrganizationRouter); export { V1Router }; diff --git a/src/routes/v1/resources/index.js b/src/routes/v1/resources/index.js index f51c5c43..16dded09 100644 --- a/src/routes/v1/resources/index.js +++ b/src/routes/v1/resources/index.js @@ -1,3 +1,4 @@ export * from './projects'; export * from './units'; export * from './staging'; +export * from './organization'; diff --git a/src/routes/v1/resources/organization.js b/src/routes/v1/resources/organization.js new file mode 100644 index 00000000..08e9ff76 --- /dev/null +++ b/src/routes/v1/resources/organization.js @@ -0,0 +1,13 @@ +'use strict'; + +import express from 'express'; + +import { OrganizationController } from '../../../controllers'; + +const OrganizationRouter = express.Router(); + +OrganizationRouter.get('/', (req, res) => { + return OrganizationController.findAll(req, res); +}); + +export { OrganizationRouter };