Added Voicenumber to Contractqueue

This commit is contained in:
Frank Schubert
2024-08-06 21:03:58 +02:00
parent a2443cb025
commit baf2ff2c5b
8 changed files with 166 additions and 3 deletions

View File

@@ -277,6 +277,62 @@ class Contract extends mfBaseModel {
return false;
}
public function addVoiceFromContractQueue($cq) {
if($cq->voicenumber) {
$voicenumbers = [];
$json = json_decode($cq->voicenumber);
if(is_array($json) && count($json)) {
foreach($json as $number) {
$number = str_replace("+", "", $number);
$voicenumber = VoicenumberModel::getFirst(["number" => $number]);
if($voicenumber) {
$voicenumbers[] = $voicenumber;
} else {
// find block
$block_id = null;
$block = Voicenumberblock::findBlock($number);
if($block) {
$block_id = $block->id;
}
$voicenumber = VoicenumberModel::create([
'voicenumberblock_id' => $block_id,
"contract_id" => null,
'active' => 1,
'activated_date' => date('U'),
'routing' => "kolmisoft",
'number' => $number,
'disabled' => 0
]);
$voicenumbers[] = $voicenumber;
}
}
foreach($voicenumbers as $vn) {
$vn->contract_id = $this->id;
$vn->save();
}
}
}
if($cq->voiceplan_id) {
$config_values = $this->getProperty("configvalues");
if(is_array($config_values) && array_key_exists("voicenumberblock_voiceplan_id", $config_values)) {
$cc_item = $config_values["voicenumberblock_voiceplan_id"];
$cc_item->setContractId($this->id);
} else {
$cc_item = ContractconfigItemModel::getFirst(["name" => "voicenumberblock_voiceplan_id"]);
$cc_item->setContractId($this->id);
}
//var_dump($cc_item, $cc_item->value);
$cc_item->value->set($cq->voiceplan_id);
$cc_item->value->save();
}
}
public function addFilesFromOrder() {
if(!$this->orderproduct_id) {