Fixed preorder statusflag sync
This commit is contained in:
@@ -579,7 +579,6 @@ class Preorder extends mfBaseModel {
|
||||
if(!$hflag) {
|
||||
$this->log->warn("[".$this->_ruid."] "."Statusflag Code ".$flag->code." does not exist");
|
||||
} else {
|
||||
//var_dump($hflag);exit;
|
||||
$hflag->hausnummer_id = $hausnummer->id;
|
||||
$hflag->value->value = $flag->value->value;
|
||||
$hflag->value->save();
|
||||
@@ -660,38 +659,31 @@ class Preorder extends mfBaseModel {
|
||||
}
|
||||
|
||||
public function syncStatusFlagsFromAdb() {
|
||||
if(!$this->adb_hausnummer_id) return true;
|
||||
if(!$this->id || !$this->adb_hausnummer_id) return true;
|
||||
|
||||
$hausnummer = $this->getProperty("adb_hausnummer");
|
||||
|
||||
foreach(ADBStatusflagModel::getAll() as $hflag) {
|
||||
$hflag_value = ADBHausnummerStatusflagValueModel::search(["hausnummer_id" => $hausnummer->id, "flag_id" => $hflag->id]);
|
||||
if(!$hflag_value) {
|
||||
$hflag_value = ADBHausnummerStatusflagValueModel::create([
|
||||
"hausnummer_id" => $hausnummer->id,
|
||||
"flag_id" => $hflag->id
|
||||
]);
|
||||
}
|
||||
|
||||
$val = $hausnummer->statusflags[$hflag->id]->value->value;
|
||||
//var_dump($hausnummer->statusflags[$hflag->id]->value->value);exit;
|
||||
/*if($hflag->code == 141) {
|
||||
var_dump($hausnummer->statusflags[$hflag->id],$hausnummer->statusflags[$hflag->id]->value);exit;
|
||||
}*/
|
||||
|
||||
$pflag = PreorderStatusflagModel::getFirst(["preorder_id" => $this->id, "code" => $hflag->code]);
|
||||
if(!$pflag) {
|
||||
$this->log->error("[".$this->_ruid."] ".__METHOD__."PreorderStatusFlag with code ".$hflag->code." not found!");
|
||||
continue;
|
||||
}
|
||||
$pflag_value = PreorderStatusflagValueModel::getFirst(["preorder_id" => $this->id, "flag_id" => $pflag->id]);
|
||||
if(!$pflag_value) {
|
||||
$pflag_value = PreorderStatusflagValueModel::create([
|
||||
"preorder_id" => $this->id,
|
||||
"flag_id" => $pflag->id
|
||||
]);
|
||||
$pflag->preorder_id = $this->id;
|
||||
|
||||
if($hflag->code == 141) {
|
||||
var_dump($pflag, $pflag->value, $val);
|
||||
}
|
||||
$pflag_value->value = ($val) ? 1 : 0;
|
||||
//var_dump($pflag_value);
|
||||
$pflag_value->save();
|
||||
//echo "saved value ".$pflag_value->value." for flag_id ".$pflag->id."\n";
|
||||
if($pflag->value->value != $val) {
|
||||
$pflag->value->value = $val;
|
||||
$pflag->value->save();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user