/**
  * Deserializes the part parameter
  * @param array $parameters The array with the parameters to set
  */
 public function deserialize(array $parameters)
 {
     foreach ($parameters as $key => $value) {
         switch ($key) {
             case "name":
                 $this->setName($value);
                 break;
             case "description":
                 $this->setDescription($value);
                 break;
             case "value":
                 $this->setValue($value);
                 break;
             case "siprefix_id":
                 $prefix = SiPrefix::loadById($value);
                 $this->setSiPrefix($prefix);
                 break;
             case "unit_id":
                 $unit = Unit::loadById($value);
                 $this->setUnit($unit);
                 break;
         }
     }
 }
Beispiel #2
0
 private function processParameterChanges(Part $part, array $data)
 {
     if (array_key_exists("updates", $data)) {
         foreach ($data["updates"] as $record) {
             foreach ($part->getParameters() as $partParameter) {
                 if ($partParameter->getId() == $record["id"]) {
                     $partParameter->setName($record["name"]);
                     $partParameter->setDescription($record["description"]);
                     $partParameter->setValue($record["value"]);
                     $partParameter->setSiPrefix(SiPrefix::loadById($record["siprefix_id"]));
                     $partParameter->setUnit(Unit::loadById($record["unit_id"]));
                     break;
                 }
             }
         }
     }
     if (array_key_exists("removals", $data)) {
         foreach ($data["removals"] as $record) {
             foreach ($part->getParameters() as $partParameter) {
                 if ($partParameter->getId() == $record["id"]) {
                     PartKeepr::getEM()->remove($partParameter);
                     $part->getParameters()->removeElement($partParameter);
                     break;
                 }
             }
         }
     }
     if (array_key_exists("inserts", $data)) {
         foreach ($data["inserts"] as $record) {
             $partParameter = new PartParameter();
             $partParameter->setPart($part);
             $partParameter->setName($record["name"]);
             $partParameter->setDescription($record["description"]);
             $partParameter->setValue($record["value"]);
             $partParameter->setSiPrefix(SiPrefix::loadById($record["siprefix_id"]));
             $partParameter->setUnit(Unit::loadById($record["unit_id"]));
             $part->getParameters()->add($partParameter);
         }
     }
 }