diff --git a/app/Models/CountryCallsReport.php b/app/Models/CountryCallsReport.php new file mode 100644 index 0000000..7112254 --- /dev/null +++ b/app/Models/CountryCallsReport.php @@ -0,0 +1,12 @@ + */ + use HasFactory; +} diff --git a/app/Models/CountryKeypressReport.php b/app/Models/CountryKeypressReport.php new file mode 100644 index 0000000..f8dbbfc --- /dev/null +++ b/app/Models/CountryKeypressReport.php @@ -0,0 +1,12 @@ + */ + use HasFactory; +} diff --git a/app/Models/CountryMessageRatingReport.php b/app/Models/CountryMessageRatingReport.php new file mode 100644 index 0000000..3e7501a --- /dev/null +++ b/app/Models/CountryMessageRatingReport.php @@ -0,0 +1,12 @@ + */ + use HasFactory; +} diff --git a/app/Models/CountryVoiceRatingReport.php b/app/Models/CountryVoiceRatingReport.php new file mode 100644 index 0000000..bf3b2c6 --- /dev/null +++ b/app/Models/CountryVoiceRatingReport.php @@ -0,0 +1,12 @@ + */ + use HasFactory; +} diff --git a/app/Models/ExpertPerformance.php b/app/Models/ExpertPerformance.php new file mode 100644 index 0000000..a6aa1f8 --- /dev/null +++ b/app/Models/ExpertPerformance.php @@ -0,0 +1,12 @@ + */ + use HasFactory; +} diff --git a/database/factories/CountryCallsReportFactory.php b/database/factories/CountryCallsReportFactory.php new file mode 100644 index 0000000..eb117cb --- /dev/null +++ b/database/factories/CountryCallsReportFactory.php @@ -0,0 +1,23 @@ + + */ +class CountryCallsReportFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + return [ + // + ]; + } +} diff --git a/database/factories/CountryKeypressReportFactory.php b/database/factories/CountryKeypressReportFactory.php new file mode 100644 index 0000000..257e3ff --- /dev/null +++ b/database/factories/CountryKeypressReportFactory.php @@ -0,0 +1,23 @@ + + */ +class CountryKeypressReportFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + return [ + // + ]; + } +} diff --git a/database/factories/CountryMessageRatingReportFactory.php b/database/factories/CountryMessageRatingReportFactory.php new file mode 100644 index 0000000..89c523c --- /dev/null +++ b/database/factories/CountryMessageRatingReportFactory.php @@ -0,0 +1,23 @@ + + */ +class CountryMessageRatingReportFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + return [ + // + ]; + } +} diff --git a/database/factories/CountryVoiceRatingReportFactory.php b/database/factories/CountryVoiceRatingReportFactory.php new file mode 100644 index 0000000..c8176bb --- /dev/null +++ b/database/factories/CountryVoiceRatingReportFactory.php @@ -0,0 +1,23 @@ + + */ +class CountryVoiceRatingReportFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + return [ + // + ]; + } +} diff --git a/database/factories/ExpertPerformanceFactory.php b/database/factories/ExpertPerformanceFactory.php new file mode 100644 index 0000000..2ee7b2e --- /dev/null +++ b/database/factories/ExpertPerformanceFactory.php @@ -0,0 +1,23 @@ + + */ +class ExpertPerformanceFactory extends Factory +{ + /** + * Define the model's default state. + * + * @return array + */ + public function definition(): array + { + return [ + // + ]; + } +} diff --git a/database/migrations/2025_07_21_055258_create_country_calls_reports_table.php b/database/migrations/2025_07_21_055258_create_country_calls_reports_table.php new file mode 100644 index 0000000..c6aaea4 --- /dev/null +++ b/database/migrations/2025_07_21_055258_create_country_calls_reports_table.php @@ -0,0 +1,42 @@ +id(); + $table->foreignId('province_id')->constrained('provinces'); + $table->date('date'); + $table->integer('total'); + $table->integer('route_to_teh4'); + $table->integer('route_to_teh5'); + $table->integer('route_to_os4'); + $table->integer('route_to_os5'); + $table->integer('answered'); + $table->integer('answered_over10'); + $table->integer('missed'); + $table->integer('dnd'); + $table->integer('transferred'); + $table->integer('talked_to_operator'); + $table->float('average_calls_time'); + $table->integer('fails'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('country_calls_reports'); + } +}; diff --git a/database/migrations/2025_07_21_061758_create_country_keypress_reports_table.php b/database/migrations/2025_07_21_061758_create_country_keypress_reports_table.php new file mode 100644 index 0000000..896ca98 --- /dev/null +++ b/database/migrations/2025_07_21_061758_create_country_keypress_reports_table.php @@ -0,0 +1,44 @@ +id(); + $table->foreignId('province_id')->constrained('provinces'); + $table->date('date'); + $table->integer('total'); + $table->integer('key1'); + $table->integer('key2'); + $table->integer('key3'); + $table->integer('key4'); + $table->integer('key5'); + $table->integer('key6'); + $table->integer('key9'); + $table->integer('key4_1'); + $table->integer('key4_2'); + $table->integer('key5_1'); + $table->integer('key5_2'); + $table->integer('key2_1'); + $table->integer('key2_2'); + $table->integer('key2_3'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('country_keypress_reports'); + } +}; diff --git a/database/migrations/2025_07_21_062738_create_country_voice_rating_reports_table.php b/database/migrations/2025_07_21_062738_create_country_voice_rating_reports_table.php new file mode 100644 index 0000000..e2cf554 --- /dev/null +++ b/database/migrations/2025_07_21_062738_create_country_voice_rating_reports_table.php @@ -0,0 +1,35 @@ +id(); + $table->foreignId('province_id')->constrained('provinces'); + $table->date('date'); + $table->integer('voice_quality_ok'); + $table->integer('message_quality_ok'); + $table->integer('voice_format_ok'); + $table->integer('voice_quality_nok'); + $table->integer('message_quality_nok'); + $table->integer('voice_format_nok'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('country_voice_rating_reports'); + } +}; diff --git a/database/migrations/2025_07_21_072211_create_country_message_rating_reports_table.php b/database/migrations/2025_07_21_072211_create_country_message_rating_reports_table.php new file mode 100644 index 0000000..1f7ba2a --- /dev/null +++ b/database/migrations/2025_07_21_072211_create_country_message_rating_reports_table.php @@ -0,0 +1,35 @@ +id(); + $table->foreignId('province_id')->constrained('provinces'); + $table->date('date'); + $table->integer('very_good'); + $table->integer('good'); + $table->integer('average'); + $table->integer('bad'); + $table->integer('very_bad'); + $table->integer('wrong_code'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('country_message_rating_reports'); + } +}; diff --git a/database/migrations/2025_07_21_094121_create_expert_performances_table.php b/database/migrations/2025_07_21_094121_create_expert_performances_table.php new file mode 100644 index 0000000..2a0b866 --- /dev/null +++ b/database/migrations/2025_07_21_094121_create_expert_performances_table.php @@ -0,0 +1,27 @@ +id(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('expert_performances'); + } +}; diff --git a/database/seeders/CountryCallsReportSeeder.php b/database/seeders/CountryCallsReportSeeder.php new file mode 100644 index 0000000..81d2945 --- /dev/null +++ b/database/seeders/CountryCallsReportSeeder.php @@ -0,0 +1,17 @@ +