Challenge Overview

The eCheck-Equipment Verification Solution project involves development of an Android mobile application with a JBoss/Java based backend admin portal which resides in a hosted datacenter.

The purpose of this contest is to implement the REST API according to the provided Swagger document and related implementation guide. 
The API should be implemented with Spring REST controllers, and the code will packaged as a war to be deployed in a JBoss container. 
Your implementation needs to have 3 layers:
REST Controller layer - define the api endpoints, and it will call the service layer
Service layer - define the business logic, and it will call the dao layer
DAO layer - interact with the database with Hibernate

No need to implement authentication & authorization, as well as the login/register/refreshToken endpoints, and User table.
Unit-tests are required, and you need to ensure at least 90% code coverage. 
And the code must be verified with Checkstyle, and please use the google_checks mentioned on this page: https://maven.apache.org/plugins/maven-checkstyle-plugin/. 

Logging is required, and you can use logback library. Method entrance/exit and exceptions should be logged properly.  
Technology Stack:
Java 1.7
Spring 4
REST API
MS SQLSERVER
Hibernate 4
Maven 3
JBoss EAP 6.4 (https://developers.redhat.com/products/eap/download/)
Junit
 

 



Final Submission Guidelines

You submission should contain the following deliverable:
The source code with unit-tests
The deployment guide including the verification steps
The sql scripts to create the MS SQLSERVER tables and to populate the test data
The Postman collection to test each of the API endpoints

ELIGIBLE EVENTS:

2017 TopCoder(R) Open

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30055950