| = openKonsequenz - How to run the module "gridFailureInformation@openK" |
| |
| :Date: 2020-03-24 |
| :Revision: 1 |
| |
| :icons: |
| :source-highlighter: highlightjs |
| :highlightjs-theme: solarized_dark |
| |
| :imagesdir: ../img |
| :iconsdir: ../img/icons |
| |
| :lang: en |
| :encoding: utf-8 |
| |
| <<< |
| |
| IMPORTANT: Please be sure that you have first *Portal (Auth n Auth)* and *ContactBaseData* installed and configured! |
| |
| == Requirements |
| * Browser (Chrome or Edge suggested) |
| |
| == Prerequisites |
| |
| * *To see this application running you have to run Portal and ContactBaseData application too.* |
| The reason is the authentication, which happened in the Portal login phase. Additionally |
| contacts that are used in the gridFailureInformation application are maintained in the |
| ContactBaseData module. |
| |
| * A developing and administrating software for databases |
| |
| ** To work with a postgreSQL database is pgAdmin suggested |
| |
| *** Download and install pgAdmin (version 4 is used during developing process) from: |
| https://www.pgadmin.org/download/ |
| |
| *** Create a database |
| |
| *** To initialize the database schema run the latest sql script: |
| |
| /src/resources/db/migration/V0_??__CREATE_GFI_DB.sql |
| |
| |
| == How to run the Backend |
| To run the backend you to create a separate directory for each backend microservice |
| you want to use, get the **.jar* file from the *target* directory of the java-project (which should exists after |
| a successful maven-build) and copy it to the new directory (i.e. "gfsBackService"). |
| |
| Depending on which services you want to use, you have to install different microservices: |
| |
| * *addressImport* (Importer for address and station data) |
| * *gfsBackend* (Main backendservice - always needed) |
| * *mailExport* (Export messages via e-mail) |
| * *SAMOInterface* (Import interface for the SAMO System) |
| * *StoerungsauskunftInterface* (Import and export interface for the site "Stoerungsauskunft.de") |
| |
| Once you created a directory and copied the **.jar* file you need to configure each service. Please |
| read the architecture documentation to get information about the possible configurations of the services. |
| |
| * Open a command line and navigate to the root folder of the service you want to start |
| * Run the command |
| |
| [source,command] |
| ---- |
| $ java -jar <servicename>.jar |
| ---- |
| {blank} |
| |
| |
| == How to run the Frontend |
| To run the frontend project you need to have installed and updated Node.js and npm Angular-CLI. |
| |
| === Compile the Frontend |
| |
| To compile say Angular-CLI to start. |
| |
| * Open a command line and navigate to the root folder of the frontend project |
| * Run the command |
| |
| [source,command] |
| ---- |
| $ npm start |
| ---- |
| {blank} |
| |
| * Open a browser and type: |
| |
| [source,http] |
| ---- |
| http://localhost:4200 |
| ---- |
| {blank} |
| |
| IMPORTANT: The reason you maybe donยดt see the application running properly, is that you have not even logged in. |
| To do so, run first the Portal project, where you can log in and then open the elogbook. |
| |
| == How to run the SIT-Web-Cache-Service |
| === Prerequirements |
| * SIT-Web-Cache-Service is built properly. Otherwise following the instructions in the *howtoBuild* file! |
| * Your secured DMZ (demilitarized zone) can host the SIT-Web-Cache-Service. |
| * SIT-Web-Cache-Service needs *nodejs* and *nestjs*. Both have to be installed as described in the *howtoBuild* file. |
| * The SIT-Web-Cache-Service should be reachable from the SIT_BE. |
| |
| === Run the service |
| * Copy all files from the build output to the provided folder in the DMZ. |
| * Open a command line and navigate to this folder. |
| * Start the service with the following commands: |
| + |
| [source,command] |
| ---- |
| $ node dist/main |
| ---- |
| {blank} |
| |
| == How to run SIT-Web-FE (map- and table-component) |
| === Prerequirements |
| * SIT-Web-FE is built properly. Otherwise following the instructions in the *howtoBuild* file! |
| * SIT-Web-Cache-Service runs properly. |
| * Your secured DMZ (demilitarized zone) can host the SIT-Web-FE. |
| * The SIT-Web-FE have to communicate with the SIT-Web-Cache-Service and both parts should be in the same DMZ. |
| * If you do not have a web server in your environment (e.g. in a development environment) you can use *http-server*. To install this free and lightweight http server run the following command in a command line: |
| + |
| [source, command] |
| ---- |
| $ npm install -g http-server |
| ---- |
| * If you want to run SIT-Web-FE with *http-server* you need *nodejs* which have to be installed as descrbed in the *howtoBuild* file. |
| |
| IMPORTANT: The description below use *http-server* as an http server. + |
| In many cases you will have your own web server - like *tomcat*, *apache*, *IIS* etc. - |
| and you have to configure proxy settings and the http communication between all SIT components within this web server. |
| |
| === Run the map and/or table component (e.g. with http-server) |
| * Copy all files from the build output ('_dist/grid-failure-information-web-comp_') to the provided folder in the DMZ. |
| * Open a command line and navigate to this folder. |
| * Start the service with the following commands: |
| + |
| [source,command] |
| ---- |
| $ http-server dist/grid-failure-information-map-app/ -P http://localhost:3003 -p 3001 |
| ---- |
| {blank} |
| + |
| CAUTION: Take care about this parameters: + |
| *-P*: The proxy for requesting the SIT-Web-Cache-Service. + |
| *-p*: TCP-Port of SIT-Web-FE |
| |
| * Open a browser and open the address to your SIT-Web-FE with the correct TCP-Port: |
| + |
| [source,http] |
| ---- |
| http://{SIT-Web-FE Adress}:3001 |
| ---- |
| {blank} |
| + |
| => A map and a table with all grid failure appears in your browser. |
| |
| == How to use SIT-Web-FE |
| |
| To show all grid failure on a map or in a table inside your own web application you can run SIT-Web-FE beside your application. |
| |
| === Prerequirements |
| * To have an access to the failure information you have to had installed the cache service as well. |
| |
| === Integrate the map/table component |
| |
| * Copy all files and the _assets_ folder from the build output (_/dist/grid-failure-information-web-comp_) to your own web application folder. ([lime]#*green boxes*# in the image below.) |
| * Reference the *.js* and *.css* files in your web application ([yellow]#*yellow boxes*# in the image below). |
| * Use the map/table like an html component with the following tags: + |
| *<openk-grid-failure-information-map-comp></openk-grid-failure-information-map-comp>* + |
| *<openk-grid-failure-information-table></openk-grid-failure-information-table>* + |
| ([red]#*red box*# in the image) |
| |
| .Neccessary files for map integration |
| [options="header"] |
| image::SIT_mapAppUsage.png[] |
| |
| === Filter the shown grid failure information with postcode |
| |
| To Filter the shown information (table and/or map) you can set the postcode to the map/table component. |
| |
| The following example describes the usage in an example. |
| |
| .Neccessary files for map integration |
| [options="header"] |
| image::SIT_mapAppUsagexFilter.png[] |
| |
| The example has an text input box. Each change of this textbox will fire an event and within this event a javascript function is called with the entered value. |
| Within this function we reference the map/table components and set the value to the *postcode* attributes. |
| The filtering will be done immediatly. |
| |
| TIP: This attribute can also be bound to a data model in a javascript framework manner (e.g. angular). |
| |