Find Jobs
Hire Freelancers

create a simple energy meter ""backend" and ""frontend""

$10-30 CAD

Lukket
Slået op cirka 5 år siden

$10-30 CAD

Betales ved levering
Java Application with SpringBoot, JPA, Hibernate, Postges, Rest-Service You write an application based on a given sourcecode (reimplementation with changes). The given sourcecode of a plain java application collects data from a serial interface (/tty/USB0), interpret these data and save them to the filesystem. [watch: [login to view URL]] After you have created the database tables. Your task is to collect and interpret data as mentioned above and save them to the database. You will write a REST-Service to provide the collected data and write some web-pages (responsive design). [watch: [login to view URL]] The data are metering data and contains the consumption and the power of three phases. [watch: [login to view URL] & [login to view URL]] Please, watch the process as specified. [watch: [login to view URL]] The data that has to be processed, comes from an energy meter over the IR-diod to the serial interface /tty/USB0. Because the application runs on a linux device, this interface is a “normal” file to read. [watch: [login to view URL]] First, the application stores the values plane into a table (may be called ‘raw-data’) [watch: [login to view URL]] Than there must be a ‘statistic-data’ table where the application stores one dataset for a minute, an hour, a day, a week, a month and a year by a type (resolution), implemented as an enumeration. This dataset contains the consumption of this period, a minimum-, a maximum- and an average value of the three phases and the timestamp. Every minute, hour, day, week, month and year we get another dataset (INSERT). Within the period, the dataset will be updated for all fields [minute, hour, day, week, month, year]: [logic:] set [login to view URL] = [login to view URL] set table.dataset.count++ set [login to view URL] = [login to view URL] set [login to view URL] = [login to view URL] set [login to view URL] = [login to view URL] - [login to view URL] of this [login to view URL] set ([login to view URL] + [login to view URL])/2 if [login to view URL]>[login to view URL] -> set maxValue if [login to view URL]<[login to view URL] -> set minValue ...same for phase2 and phase3 [/logic] Every two seconds, the meter will provide a new realtime dataset as an input. For the client-side we need some REST endpoints providing the data with json. An endpoint to provide long term polling to give all realtime data every two seconds An endpoint to provide the statistic values for a timeframe and the resolution (type of the dataset) To visualize the result, there is a responsive web page in multilanguage to show the realtime data like the follwing: actual consumption actual power P1 actual power P2 actual power P3 There is the possibility to switch the language, if there are more then one language configured (configured by different files for each language). There is the possibility to show details by hitting a chart button -> switch to a new site with a bar chart showing the consumption of each days of the current week. You don’t have to implement the shown “refresh-button” from the mockup. There must also be a settings-page to type a key, validated by a RSA-key or something similar. If the validation was successful once, there will be shown an other page to view statistics for a given time frame and different granularities (minute - for an hour; hour - for a day; day - for a week; day - for a month; month - for a year). To create a valid key 6-12 characters, you need to implement a code generator with the key mentioned above. The application must have a test covering for all logics. The IDE must be Eclipse (or STS) or intelliJ. The build system is gradle. You deliver the sourcecode, an executable jar (SpringBoot) containing the Webservice and the html pages. Because you are a professional developer, it might be very easy for you to implement this small tool. If you aren’t a full stack developer, you can send an offer for the backend or the frontend part.
Projekt-ID: 19248756

Om projektet

3 forslag
Projekt på afstand
Aktiv 5 år siden

Leder du efter muligheder for at tjene penge?

Fordele ved budafgivning på Freelancer

Fastsæt dit budget og din tidsramme
Bliv betalt for dit arbejde
Oprids dit forslag
Det er gratis at skrive sig op og byde på jobs
3 freelancere byder i gennemsnit $50 CAD på dette job
Brug Avatar.
Hello, We have a team of Skilled Java-J2EE professionals with experience up to 8 years. ===== Our Expertise in Java / J2EE : * Desktop Applications : Swing, Eclipse Rich Client Platform, AWT, SWT, RMI * Frameworks: Spring, Spring MVC, Spring Boot, Microservice, Spring Security, Spring Social, Struts, Hibernate ,JPA, Lucerne, Quartz, Ant, jUnit, DbUnit, Mybatis * Web Technology : JSP, JSTL, JSF, JQuery, Ajax, JavaScript, DWR, FCK Editor, Extjs * Application Servers : JBoss, WebLogic, WebSphere, Apache Tomcat, Glassfish * Databases : MySQL 4.x/5.x, Oracle 8i/9i/10g/11g, Postgre SQL * Web Services : SOAP, WSDL, RESTFUL Web Services, Apache Axis * IDE : Eclipse, Net Beans, Web Ratio (Model Based Application Development IDE) , Spring IDE * Payment Gateway : PayPal Integration [Experienced in integrating other payment gateways too] * Project Management : SDLC, AGILE ===== We are available from Monday To Friday, 9 hours a day. Our timezone is GMT+5.30. Please initiate chat to check our understandings and queries. You will be able to communicate directly with the expert working on your project. After having detail discussion we can come to estimation / quote. We look forward to have long term engagement on the basis of quality of our work evinced in this project. Thanks.
$100 CAD på 1 dag
4,9 (149 anmeldelser)
7,8
7,8

Om klienten

Flag for NIGERIA
AGBADO, Nigeria
4,7
21
Betalingsmetode verificeret
Medlem siden dec. 1, 2014

Klientverificering

Tak! Vi har sendt dig en e-mail med et link, så du kan modtage din kredit.
Noget gik galt, da vi forsøgte at sende din mail. Prøv venligst igen.
Registrerede brugere Oprettede jobs i alt
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Indlæser forhåndsvisning
Geolokalisering er tilladt.
Din session er udløbet, og du er blevet logget ud. Log venligst ind igen.