This project simulates a sales management system. It generates random input data for salesmen, products, and their sales, then processes this data to create summary reports.
The system is implemented in Java and follows a two-class design:
- GenerateInfoFiles.java → generates pseudo-random input files
- main.java → reads input files and generates sales reports
| |-- src / | |--GenerateInfoFile.java | |--main.jaba | |--data/ |--salesmen.txt |--products.txt |--sales_1001.txt |--sales_1002.txt |--sales_1003.txt |--sales_1004.txt |--sales_1005.txt |--sales_1006.txt |--sales_1007.txt |--sales_1008.txt |--sales_1009.txt |--sales_1010.txt | |--sales_report.csv (is generated by main.java) |--product_report.csv (is generated by main.java) | |--README.md
Since this project has no auto-build, you must compile manually before running.
javac -d bin src/*.java- Terminal:
java -cp bin GenerateInfoFiles && java -cp bin main - IDE: Open the file and press F5 (requires Step 1).
- Java 8 or higher
- IDE (VS Code, IntelliJ, Eclipse, or terminal with
javacandjava) - No external libraries needed
All input files are generated automatically in the data/ folder.
-
Salesmen file (
salesmen.txt) CC;1001;Sofia;Rodriguez CC;1002;Andres;Rodriguez CC;1003;Pedro;Castro CC;1004;Laura;Martinez CC;1005;Pedro;Martinez CC;1006;Maria;Diaz CC;1007;Pedro;Gomez CC;1008;Maria;Martinez CC;1009;Luis;Martinez CC;1010;Luis;Lopez -
Products file (
products.txt) 1;Rice;1000 2;Milk;7000 3;Bread;10000 4;Eggs;3000 5;Coffee;11000 6;Sugar;19000 7;Salt;20000 8;Oil;4000 9;Cheese;14000 10;Chicken;2000 -
Individual sales files (
sales_1001.txt) CC;1001 1;1; 2;9; 3;4; 4;8; 5;10; 6;10; 7;5; 8;8; 9;8; 10;5;
Individual sales files (sales_1002.txt)
CC;1002
1;8;
2;5;
3;8;
4;4;
5;1;
6;3;
7;2;
8;10;
9;10;
10;2;
...........
Contains total revenue per salesman, sorted descending.
- Product report (
product_report.csv) Cheese;67 Eggs;64 Milk;59 Oil;58 Rice;52 Bread;51 Sugar;49 Coffee;47 Chicken;42 Salt;33
Contains total quantity sold per product, sorted descending.
Author
Fundamental Programming Concepts Group 14 Students, Software Engineering Colombia