A proof of concept customer satisfaction meter
Customer satisfaction is important, this application provides a simple method of capturing customer satisfaction ratings over time
This application is a proof of concept, it is not production ready. A non-exhaustive list of known limitations:
- Ratings can be submitted multiple times per person within a period allowing the results to be intentionally or unintentionally skewed
- No security whatsoever - anonymous users can easily delete or alter all data
- MongoDB
curl -H "Content-Type: application/json" -X POST -d '{"teamId": "<team id>", "teamName": "Team Name", "platformName": "Platform Name", "domainName": "Domain Name"}' http://localhost:8080/team
curl -H "Content-Type: application/json" -X POST -d '{"teamId": "<team id>", "email": "user.email@big.co"}' http://localhost:8080/customer
curl -H "Content-Type: application/json" -X PUT -d '{"teamId": "<team id>", "email": "user.email@big.co"}' http://localhost/customer/{itemid}
http://localhost:8080/customer
curl -X DELETE http://localhost:8080/customer/{id}
mvn clean install
Might be -Drun.arguments - see: https://stackoverflow.com/questions/23316843/get-command-line-arguments-from-spring-bootrun
mvn spring-boot:run -Dspring-boot.run.arguments="--spring.data.mongodb.host=<mongo host>,--spring.data.mongodb.port=<mongo port>,--spring-data.mongodb.database=<mongo database>"
mvn dockerfile:build dockerfile:tag
See docker-library/openjdk#135 as to why spring.boot.mongodb.. env vars don't work
docker stop csat_app
docker rm csat_app
docker run --name csat_app -d -p 8080:8080 --network mongonetwork -e spring_data_mongodb_host=<mongo host> -e spring_data_mongodb_port=<mongo port> -e spring_data_mongodb_database=<mongo database> team/csat:0.0.1-SNAPSHOT