Work on product costing (broadband) and reporting
This commit is contained in:
86
database/factories/AdslPlanFactory.php
Normal file
86
database/factories/AdslPlanFactory.php
Normal file
@@ -0,0 +1,86 @@
|
||||
<?php
|
||||
|
||||
use Faker\Generator as Faker;
|
||||
|
||||
$factory->define(App\Models\Product\Adsl::class, function (Faker $faker) {
|
||||
return [
|
||||
'id'=>1,
|
||||
'contract_term'=>12,
|
||||
];
|
||||
});
|
||||
|
||||
$factory->afterMaking(App\Models\Product\Adsl::class, function ($adsl,$faker) {
|
||||
$product = factory(App\Models\AdslSupplierPlan::class)->make();
|
||||
$adsl->setRelation('product',$product);
|
||||
$adsl->adsl_supplier_plan_id = $product->id;
|
||||
});
|
||||
|
||||
$factory->state(App\Models\Product\Adsl::class,'unlimit',[
|
||||
'base_down_peak'=>NULL,
|
||||
'base_up_peak'=>NULL,
|
||||
'base_down_offpeak'=>NULL,
|
||||
'base_up_offpeak'=>NULL,
|
||||
'extra_charged'=>NULL,
|
||||
'extra_shaped'=>NULL,
|
||||
'extra_down_peak'=>NULL,
|
||||
'extra_up_peak'=>NULL,
|
||||
'extra_down_offpeak'=>NULL,
|
||||
'extra_up_offpeak'=>NULL,
|
||||
'metric'=>1,
|
||||
]);
|
||||
|
||||
$factory->state(App\Models\Product\Adsl::class,'140/0/0/0',[
|
||||
'base_down_peak'=>140,
|
||||
'base_up_peak'=>0,
|
||||
'base_down_offpeak'=>0,
|
||||
'base_up_offpeak'=>0,
|
||||
'extra_charged'=>NULL,
|
||||
'extra_shaped'=>NULL,
|
||||
'extra_down_peak'=>1,
|
||||
'extra_up_peak'=>NULL,
|
||||
'extra_down_offpeak'=>NULL,
|
||||
'extra_up_offpeak'=>NULL,
|
||||
'metric'=>1,
|
||||
]);
|
||||
|
||||
$factory->state(App\Models\Product\Adsl::class,'70/-/0/-',[
|
||||
'base_down_peak'=>70,
|
||||
'base_up_peak'=>NULL,
|
||||
'base_down_offpeak'=>0,
|
||||
'base_up_offpeak'=>NULL,
|
||||
'extra_charged'=>NULL,
|
||||
'extra_shaped'=>NULL,
|
||||
'extra_down_peak'=>1,
|
||||
'extra_up_peak'=>NULL,
|
||||
'extra_down_offpeak'=>NULL,
|
||||
'extra_up_offpeak'=>NULL,
|
||||
'metric'=>1,
|
||||
]);
|
||||
|
||||
$factory->state(App\Models\Product\Adsl::class,'100/0/40/0',[
|
||||
'base_down_peak'=>100,
|
||||
'base_up_peak'=>0,
|
||||
'base_down_offpeak'=>40,
|
||||
'base_up_offpeak'=>0,
|
||||
'extra_charged'=>NULL,
|
||||
'extra_shaped'=>NULL,
|
||||
'extra_down_peak'=>0,
|
||||
'extra_up_peak'=>NULL,
|
||||
'extra_down_offpeak'=>0,
|
||||
'extra_up_offpeak'=>NULL,
|
||||
'metric'=>1,
|
||||
]);
|
||||
|
||||
$factory->state(App\Models\Product\Adsl::class,'50/-/20/-',[
|
||||
'base_down_peak'=>50,
|
||||
'base_up_peak'=>NULL,
|
||||
'base_down_offpeak'=>20,
|
||||
'base_up_offpeak'=>NULL,
|
||||
'extra_charged'=>NULL,
|
||||
'extra_shaped'=>NULL,
|
||||
'extra_down_peak'=>0,
|
||||
'extra_up_peak'=>NULL,
|
||||
'extra_down_offpeak'=>0,
|
||||
'extra_up_offpeak'=>NULL,
|
||||
'metric'=>1,
|
||||
]);
|
10
database/factories/AdslSupplierPlanFactory.php
Normal file
10
database/factories/AdslSupplierPlanFactory.php
Normal file
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
use Faker\Generator as Faker;
|
||||
|
||||
$factory->define(App\Models\AdslSupplierPlan::class, function (Faker $faker) {
|
||||
return [
|
||||
'id'=>1,
|
||||
'contract_term'=>12,
|
||||
];
|
||||
});
|
@@ -26,4 +26,39 @@ $factory->state(App\Models\Product::class,'strict',[
|
||||
]);
|
||||
$factory->state(App\Models\Product::class,'notstrict',[
|
||||
'price_recurr_strict' => 0,
|
||||
]);
|
||||
]);
|
||||
|
||||
$factory->afterMakingState(App\Models\Product::class,'broadband-unlimit',function ($product,$faker) {
|
||||
$type = factory(App\Models\Product\Adsl::class)->state('unlimit')->make();
|
||||
$product->setRelation('type',$type);
|
||||
$product->prod_plugin_data = $type->id;
|
||||
$product->model = 'App\Models\Product\Adsl';
|
||||
});
|
||||
|
||||
$factory->afterMakingState(App\Models\Product::class,'broadband-140/0/0/0',function ($product,$faker) {
|
||||
$type = factory(App\Models\Product\Adsl::class)->state('140/0/0/0')->make();
|
||||
$product->setRelation('type',$type);
|
||||
$product->prod_plugin_data = $type->id;
|
||||
$product->model = 'App\Models\Product\Adsl';
|
||||
});
|
||||
|
||||
$factory->afterMakingState(App\Models\Product::class,'broadband-70/-/0/-',function ($product,$faker) {
|
||||
$type = factory(App\Models\Product\Adsl::class)->state('70/-/0/-')->make();
|
||||
$product->setRelation('type',$type);
|
||||
$product->prod_plugin_data = $type->id;
|
||||
$product->model = 'App\Models\Product\Adsl';
|
||||
});
|
||||
|
||||
$factory->afterMakingState(App\Models\Product::class,'broadband-100/0/40/0',function ($product,$faker) {
|
||||
$type = factory(App\Models\Product\Adsl::class)->state('100/0/40/0')->make();
|
||||
$product->setRelation('type',$type);
|
||||
$product->prod_plugin_data = $type->id;
|
||||
$product->model = 'App\Models\Product\Adsl';
|
||||
});
|
||||
|
||||
$factory->afterMakingState(App\Models\Product::class,'broadband-50/-/20/-',function ($product,$faker) {
|
||||
$type = factory(App\Models\Product\Adsl::class)->state('50/-/20/-')->make();
|
||||
$product->setRelation('type',$type);
|
||||
$product->prod_plugin_data = $type->id;
|
||||
$product->model = 'App\Models\Product\Adsl';
|
||||
});
|
Reference in New Issue
Block a user