public function update($element) { $element = $this->sanitizeInventoryForInsert($element); $lineItemList = $element['LineItems']; $handler = vtws_getModuleHandlerFromName('LineItem', $this->user); if (!empty($lineItemList)) { $updatedElement = parent::update($element); $handler->setLineItems('LineItem', $lineItemList, $updatedElement); $parent = $handler->getParentById($element['id']); $handler->updateParent($lineItemList, $parent); $updatedParent = $handler->getParentById($element['id']); //since subtotal and grand total is updated in the update parent api $parent['hdnSubTotal'] = $updatedParent['hdnSubTotal']; $parent['hdnGrandTotal'] = $updatedParent['hdnGrandTotal']; $parent['pre_tax_total'] = $updatedParent['pre_tax_total']; $updatedElement = array_merge($updatedElement, $parent); } else { $updatedElement = $this->revise($element); } return $updatedElement; }