From 479e2c0aebba2b9ded910cfdc99971c27f031d51 Mon Sep 17 00:00:00 2001 From: "konstantina.galouni" Date: Wed, 11 Nov 2020 12:50:44 +0000 Subject: [PATCH] [Trunk | Monitor Service]: 1. MonitorController.java: new class for admin tools functionalities (to be updated, when admin tools UI will be redesigned). 2. update_db.js: Update script added for mongo db updates. --- .../controllers/MonitorController.java | 64 +++++ update_db.js | 253 ++++++++++++++++++ 2 files changed, 317 insertions(+) create mode 100644 src/main/java/eu/dnetlib/uoamonitorservice/controllers/MonitorController.java create mode 100644 update_db.js diff --git a/src/main/java/eu/dnetlib/uoamonitorservice/controllers/MonitorController.java b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/MonitorController.java new file mode 100644 index 0000000..445a7bf --- /dev/null +++ b/src/main/java/eu/dnetlib/uoamonitorservice/controllers/MonitorController.java @@ -0,0 +1,64 @@ +package eu.dnetlib.uoamonitorservice.controllers; + +import eu.dnetlib.uoaadmintoolslibrary.entities.Portal; +import eu.dnetlib.uoaadmintoolslibrary.entities.fullEntities.*; +import eu.dnetlib.uoaadmintoolslibrary.services.PortalService; +import org.apache.log4j.Logger; +import org.springframework.web.bind.annotation.*; +import org.springframework.beans.factory.annotation.Autowired; + +import java.util.*; + +@RestController +@RequestMapping(value={"/monitor", "/funder", "/project", "/ri"}) +@CrossOrigin(origins = "*") +public class MonitorController { + private final Logger log = Logger.getLogger(this.getClass()); +// +// @Autowired +// private LayoutService layoutService; + + @Autowired + private PortalService portalService; + + @RequestMapping(value = "/update", method = RequestMethod.POST) + public PortalResponse updatePortal(@RequestBody Portal portal) { + PortalResponse portalResponse = portalService.updatePortal(portal); + +// String old_pid = portalResponse.getPid(); +// String new_pid = portal.getPid(); +// if(!old_pid.equals(new_pid)) { +// layoutService.updatePid(old_pid, new_pid); +// } + + return portalResponse; + } + + @RequestMapping(value = "/save", method = RequestMethod.POST) + public PortalResponse insertPortal(@RequestBody Portal portal) { + PortalResponse portalResponse = portalService.insertPortal(portal); + return portalResponse; + } + + @RequestMapping(value = "/delete", method = RequestMethod.POST) + public Boolean deletePortals(@RequestBody List portals) { + for (String id: portals) { + String pid = portalService.deletePortal(id); +// layoutService.deleteByPid(pid); + } + + return true; + } + +// @RequestMapping(value = "/{pid}/layout", method = RequestMethod.GET) +// public Layout getLayoutForCommunity(@PathVariable(value = "pid") String pid) { +// return layoutService.findByPid(pid); +// } +// +// @RequestMapping(value = "/{pid}/layout", method = RequestMethod.POST) +// public Layout updateLayoutForCommunity(@PathVariable(value = "pid") String pid, @RequestBody Layout layout) { +// return layoutService.save(layout); +// } + +} + diff --git a/update_db.js b/update_db.js new file mode 100644 index 0000000..e71d125 --- /dev/null +++ b/update_db.js @@ -0,0 +1,253 @@ +//version compatibility: 1.0.0-SNAPSHOT + +//use openaire_monitor; + +function upperCaseEnumValues() { + stakeholders = db.stakeholder.find().map(function (stakeholders) { + return stakeholders; + }); + for(var i=0; i