Misc fixes for ADSL excess traffic and strtotime() functions for last month
This commit is contained in:
parent
e19518c505
commit
82c51de550
@ -12,16 +12,17 @@
|
|||||||
class StaticList_ItemType extends StaticList {
|
class StaticList_ItemType extends StaticList {
|
||||||
protected function _table() {
|
protected function _table() {
|
||||||
return array(
|
return array(
|
||||||
0=>_('Product/Service Charge'), // Line Charge Topic on Invoice, eg: Service Name
|
0=>_('Product/Service Charge'), // Line Charge Topic on Invoice, eg: Service Name
|
||||||
1=>_('Hardware'),
|
1=>_('Hardware'),
|
||||||
2=>_('Service Relocation Fee'),
|
2=>_('Service Relocation Fee'),
|
||||||
3=>_('Service Change Fee'),
|
3=>_('Service Change Fee'),
|
||||||
4=>_('Service Connection Fee'),
|
4=>_('Service Connection Fee'),
|
||||||
5=>_('Excess Usage'), // Excess Service Item, of item 0
|
5=>_('Excess Usage'), // Excess Service Item, of item 0
|
||||||
6=>_('Service Cancellation Fee'),
|
6=>_('Service Cancellation Fee'),
|
||||||
7=>_('Extra Product/Service Charge'), // Service Billing in advance
|
7=>_('Extra Product/Service Charge'), // Service Billing in advance
|
||||||
|
8=>_('Product Addition'), // Additional Product Customisation
|
||||||
124=>_('Late Payment Fee'),
|
124=>_('Late Payment Fee'),
|
||||||
125=>_('Payment Fee'), // Payment processing fee
|
125=>_('Payment Fee'), // Payment processing fee
|
||||||
126=>_('Other'),
|
126=>_('Other'),
|
||||||
127=>_('Rounding'),
|
127=>_('Rounding'),
|
||||||
);
|
);
|
||||||
|
@ -124,7 +124,7 @@ class Controller_Admin_Adsl extends Controller_Adsl {
|
|||||||
|
|
||||||
$a = 0;
|
$a = 0;
|
||||||
foreach (array_reverse($traffic) as $i) {
|
foreach (array_reverse($traffic) as $i) {
|
||||||
if ($i < $so->plugin()->traffic_month(strtotime('last month'),TRUE))
|
if ($i < $so->plugin()->traffic_month(strtotime('first day of last month'),TRUE))
|
||||||
break;
|
break;
|
||||||
|
|
||||||
$a = $i;
|
$a = $i;
|
||||||
|
@ -72,7 +72,7 @@ class Controller_Reseller_Service_Adsl extends Controller_Service {
|
|||||||
'product->plugin()->supplier_plan->speed'=>'Speed',
|
'product->plugin()->supplier_plan->speed'=>'Speed',
|
||||||
'product->plugin()->allowance(array(),TRUE,TRUE,TRUE)'=>'Allowance',
|
'product->plugin()->allowance(array(),TRUE,TRUE,TRUE)'=>'Allowance',
|
||||||
'plugin()->traffic_month(strtotime("yesterday"),TRUE,TRUE)'=>'This Month',
|
'plugin()->traffic_month(strtotime("yesterday"),TRUE,TRUE)'=>'This Month',
|
||||||
'plugin()->traffic_month(strtotime("last month"),TRUE,TRUE)'=>'Last Month',
|
'plugin()->traffic_month(strtotime("first day of last month"),TRUE,TRUE)'=>'Last Month',
|
||||||
'recur_schedule'=>'Billing',
|
'recur_schedule'=>'Billing',
|
||||||
'price(TRUE,TRUE)'=>'Price',
|
'price(TRUE,TRUE)'=>'Price',
|
||||||
'account->accnum()'=>'Cust ID',
|
'account->accnum()'=>'Cust ID',
|
||||||
|
@ -135,8 +135,15 @@ class Model_Product_Plugin_Adsl extends Model_Product_Plugin {
|
|||||||
if (! isset($data[$k]))
|
if (! isset($data[$k]))
|
||||||
$data[$k] = 0;
|
$data[$k] = 0;
|
||||||
|
|
||||||
if ($over)
|
if ($over) {
|
||||||
$data[$k] = $invert ? $this->{$k} : $data[$k]-$this->{$k};
|
// @todo This is an ugly hack - if our data has been passed it, it is assumed it has been reduced by $this->metric
|
||||||
|
$z = $this->metric ? round($this->{$k}/$this->metric,2) : $this->{$k};
|
||||||
|
|
||||||
|
$data[$k] = $invert ? $z : $data[$k]-$z;
|
||||||
|
|
||||||
|
// We need to return this back to base units as later, we'll return it back to metric
|
||||||
|
$data[$k] = $this->metric ? $data[$k]*$this->metric : $data[$k];
|
||||||
|
}
|
||||||
|
|
||||||
// Do we charge for extra, or merge it to another field
|
// Do we charge for extra, or merge it to another field
|
||||||
if (! is_null($this->{$v})) {
|
if (! is_null($this->{$v})) {
|
||||||
|
@ -15,7 +15,7 @@ class Task_Adsl_Trafficalert extends Minion_Task {
|
|||||||
);
|
);
|
||||||
|
|
||||||
protected function _execute(array $params) {
|
protected function _execute(array $params) {
|
||||||
$date = strtotime('last month');
|
$date = strtotime('first day of last month');
|
||||||
$c = array();
|
$c = array();
|
||||||
|
|
||||||
// @todo Pick up services that are no longer active, but were inactive < 30 days ago.
|
// @todo Pick up services that are no longer active, but were inactive < 30 days ago.
|
||||||
|
@ -15,7 +15,7 @@ class Task_Adsl_Trafficcharge extends Minion_Task {
|
|||||||
);
|
);
|
||||||
|
|
||||||
protected function _execute(array $params) {
|
protected function _execute(array $params) {
|
||||||
$date = strtotime('last month');
|
$date = strtotime('first day of last month');
|
||||||
$c = array();
|
$c = array();
|
||||||
|
|
||||||
// @todo Pick up services that are no longer active, but were inactive < 30 days ago.
|
// @todo Pick up services that are no longer active, but were inactive < 30 days ago.
|
||||||
|
@ -41,7 +41,7 @@
|
|||||||
|
|
||||||
<div class="dl-horizontal">
|
<div class="dl-horizontal">
|
||||||
<dt>Last Month</dt>
|
<dt>Last Month</dt>
|
||||||
<dd> <?php echo $o->traffic_month(strtotime('last month'),TRUE,TRUE); ?></dd>
|
<dd> <?php echo $o->traffic_month(strtotime('first day of last month'),TRUE,TRUE); ?></dd>
|
||||||
|
|
||||||
<dt>This Month</dt>
|
<dt>This Month</dt>
|
||||||
<dd> <?php echo $o->traffic_month(strtotime('yesterday'),TRUE,TRUE); ?></dd>
|
<dd> <?php echo $o->traffic_month(strtotime('yesterday'),TRUE,TRUE); ?></dd>
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
class Model_Charge extends ORM_OSB implements Invoicable {
|
class Model_Charge extends ORM_OSB implements Invoicable {
|
||||||
protected $_belongs_to = array(
|
protected $_belongs_to = array(
|
||||||
'account'=>array(),
|
'account'=>array(),
|
||||||
|
'product'=>array(),
|
||||||
'service'=>array(),
|
'service'=>array(),
|
||||||
);
|
);
|
||||||
protected $_has_one = array(
|
protected $_has_one = array(
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<fieldset class="span5">
|
<fieldset>
|
||||||
<legend>Service Details</legend>
|
<legend>Service Details</legend>
|
||||||
|
|
||||||
<div class="dl-horizontal">
|
<div class="dl-horizontal">
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<fieldset class="span5">
|
<fieldset>
|
||||||
<legend>Service Details</legend>
|
<legend>Service Details</legend>
|
||||||
|
|
||||||
<div class="dl-horizontal">
|
<div class="dl-horizontal">
|
||||||
|
@ -61,7 +61,7 @@ class Model_Invoice_Item extends ORM_OSB {
|
|||||||
|
|
||||||
case 1:
|
case 1:
|
||||||
// @todo
|
// @todo
|
||||||
return $ii;
|
return $this->product_name;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
case 3:
|
case 3:
|
||||||
@ -69,7 +69,10 @@ class Model_Invoice_Item extends ORM_OSB {
|
|||||||
case 5:
|
case 5:
|
||||||
case 6:
|
case 6:
|
||||||
return ((! $this->service_id OR $this->product_id OR $this->charge_id OR $this->product_name OR $this->recurring_schedule OR ! $this->date_start OR ! $this->date_stop) ? '+ ' : '').$ii;
|
return ((! $this->service_id OR $this->product_id OR $this->charge_id OR $this->product_name OR $this->recurring_schedule OR ! $this->date_start OR ! $this->date_stop) ? '+ ' : '').$ii;
|
||||||
|
|
||||||
|
case 8:
|
||||||
|
return $this->product_name;
|
||||||
|
|
||||||
case 124:
|
case 124:
|
||||||
case 125:
|
case 125:
|
||||||
case 126:
|
case 126:
|
||||||
@ -130,7 +133,7 @@ class Model_Invoice_Item extends ORM_OSB {
|
|||||||
|
|
||||||
} else
|
} else
|
||||||
throw new Kohana_Exception('Couldnt save invoice_item for some reason?');
|
throw new Kohana_Exception('Couldnt save invoice_item for some reason?');
|
||||||
|
|
||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user