$ClientOrders->quantity = $ClientRequest->quantity; $ClientOrders->status = $ClientRequest->status; $ClientOrders->period = $ClientRequest->periodic; $ClientOrders->samples = $ClientRequest->samples; $ClientOrders->file = $ClientRequest->files; $ClientOrders->note = $ClientRequest->special_requirements; $ClientOrders->description = $ClientRequest->description; $ClientOrders->operation_description = $ClientRequest->operation_description; //To Do: add operations //Transport //Pack $ClientOrders->save($GLOBALS['check_notify']); $Components = new ClientorderComponents(); $components_array = $Components->get_full_list("id", "parent_id='" . $ClientRequest->id . "'"); for ($i = 0; $i < count($components_array); $i++) { $ClientorderComponents = new ClientorderComponents(); $fields = $components_array[$i]->column_fields; foreach ($fields as $field) { $ClientorderComponents->{$field} = $components_array[$i]->{$field}; } $ClientorderComponents->id = null; $ClientorderComponents->date_entered = null; $ClientorderComponents->date_modified = null; $ClientorderComponents->created_by = null; $ClientorderComponents->modified_user_id = null; $ClientorderComponents->assigned_user_id = null; $ClientorderComponents->assigned_user_name = null; $ClientorderComponents->parent_bean = 'ClientOrders'; $ClientorderComponents->parent_id = $ClientOrders->id; $ClientorderComponents->parent_name = $ClientOrders->name; $ClientorderComponents->number = $ClientorderComponents->generate_number('number', 'clientorders_components', $ClientOrders->id, $ClientOrders->table_name);
function build_component_clientorders_list($id) { $fields = array("id", "price"); $query_fields = " id, price "; $where = " parent_id = '{$id}' "; $component_list = $this->getComponentListData($fields, $query_fields, 'clientorders_components', $where); $components_to_clientorder = array(); for ($i = 0; $i < count($component_list); $i++) { $component = new ClientorderComponents(); $component->retrieve($component_list[$i]['id']); $query = " SELECT id, status FROM componentclientordercalc WHERE deleted=0 and component_id='{$component->id}' "; $result = $this->db->query($query, true, "Error filling layout fields: "); $data = $this->db->fetchByAssoc($result); if ($data == null) { $temp = array(); $temp['id'] = $component->id; $temp['name'] = $component->name; $temp['price'] = $component->price; $temp['outdated'] = false; $components_to_clientorder[] = $temp; } if ($data['status'] == "outdated") { $temp = array(); $temp['id'] = $component->id; $temp['name'] = $component->name; $temp['clientorder_id'] = $component->parent_id; $temp['clientorder_name'] = $component->parent_name; $temp['price'] = $component->price; $temp['clientorder_id'] = $data['id']; $temp['outdated'] = true; $components_to_clientorder[] = $temp; } } return $components_to_clientorder; }