Added Admin function mass prouductchange
This commit is contained in:
@@ -200,15 +200,15 @@ class ContractModel {
|
||||
* @param Contract $contract
|
||||
* @return bool|Contract
|
||||
*/
|
||||
public static function createCreditForContract($contract) {
|
||||
public static function createCreditForContract($contract, $crediting_partner_id_override = null) {
|
||||
$log = mfLoghandler::singleton();
|
||||
$me = new User();
|
||||
$me->loadMe();
|
||||
|
||||
if(!$contract->id) {
|
||||
/*if(!$contract->id) {
|
||||
$log->warning(__METHOD__."(): Invalid Contract object");
|
||||
return false;
|
||||
}
|
||||
}*/
|
||||
|
||||
$product = $contract->product;
|
||||
$owner = $contract->owner;
|
||||
@@ -224,18 +224,26 @@ class ContractModel {
|
||||
$crediting_partner_id = false;
|
||||
$crediting_partner_rate = false;
|
||||
|
||||
if($crediting_partner_id_override) {
|
||||
$crediting_partner_id = $crediting_partner_id_override;
|
||||
}
|
||||
|
||||
$product_attribs = $product->attributes;
|
||||
if(is_array($product_attribs) && array_key_exists("crediting_partner", $product_attribs) && $product_attribs["crediting_partner"] && is_object($product_attribs["crediting_partner"])) {
|
||||
if($product_attribs["crediting_partner"]->value) {
|
||||
$crediting_partner_id = $product_attribs["crediting_partner"]->value;
|
||||
if(!$crediting_partner_id_override) {
|
||||
if($product_attribs["crediting_partner"]->value) {
|
||||
$crediting_partner_id = $product_attribs["crediting_partner"]->value;
|
||||
}
|
||||
}
|
||||
if($product_attribs["crediting_rate"]->value) {
|
||||
$crediting_partner_rate = str_replace(",", ".",$product_attribs["crediting_rate"]->value);
|
||||
}
|
||||
}
|
||||
|
||||
//var_dump($crediting_partner_rate, $product);
|
||||
|
||||
// or from netowner if anschluss product
|
||||
if(!$crediting_partner_id && $contract->termination_id) {
|
||||
if(!$crediting_partner_id_override && !$crediting_partner_id && $contract->termination_id) {
|
||||
$crediting_partner_id = $contract->termination->building->network->owner_id;
|
||||
}
|
||||
|
||||
@@ -551,6 +559,8 @@ class ContractModel {
|
||||
} elseif($termination_id) {
|
||||
$termination_id = FronkDB::singleton()->escape($filter['termination_id']);
|
||||
$where .= " AND Contract.termination_id = $termination_id";
|
||||
} elseif($termination_id === null || $termination_id === false || $termination_id == 0) {
|
||||
$where .= " AND (Contract.termination_id = 0 OR Contract.termination_id IS NULL)";
|
||||
}
|
||||
}
|
||||
|
||||
@@ -624,8 +634,12 @@ class ContractModel {
|
||||
|
||||
if(array_key_exists("billing_period", $filter)) {
|
||||
$billing_period = $filter['billing_period'];
|
||||
if(is_numeric($billing_period)) {
|
||||
if($billing_period == ">0") {
|
||||
$where .= " AND Contract.billing_period > 0";
|
||||
}elseif(is_numeric($billing_period)) {
|
||||
$where .= " AND Contract.billing_period=$billing_period";
|
||||
}elseif(is_array($billing_period) && count($billing_period)) {
|
||||
$where .= " AND Contract.billing_period IN (".implode(",", $billing_period).")";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user