Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function getSamples($p){
- $db = new UberseqDatabaseIF();
- $status = array('error'=>True, 'detail'=>'runtime error fetching samples', 'samples'=>array());
- $projectMode = isset($p['project_id']);
- $orderMode = isset($p['order_id']);
- try {
- $q = "SELECT Id, Name, Work_Order__c, Sample__c.Work_Order__r.Name, Order_Opportunity__c FROM Sample__c WHERE";
- if($projectMode){
- $q .= " Sample__c.Order_Opportunity__c = '" . $p['project_id'] . "'";
- }else if($orderMode){
- $q .= " Sample__c.work_order__c = '" . $p['order_id'] . "'";
- }else{
- $status['detail'] = 'No projectID or orderId found';
- return $status;
- }
- $response = $this->_conn->query($q);
- if ($response->size > 0) {
- $result = new QueryResult($response);
- for ($result->rewind(); $result->pointer < $result->size; $result->next() ) {
- $rec = $result->current();
- $sample = array();
- $sample['id'] = $rec->Id;
- $sample['name'] = $rec->Name;
- $sample['project_id'] = $rec->Order_Opportunity__c;
- $sample['order_id'] = $rec->Work_Order__c;
- $stats = False;
- if( isset( $rec->Work_Order__r ) ){
- $sample['order_name'] = $rec->Work_Order__r->Name;
- $stats = $db->sample_file_stats(array('sample_id' => $sample['name'], 'order_id' => $sample['order_name']));
- }else{
- error_log('ERROR: No Order Name found in getSamples:' . $rec->Work_Order__c);
- }
- if($stats){
- $sample['file_size_total'] = $stats['size_total'];
- $sample['file_count'] = $stats['file_count'];
- }
- array_push($status['samples'], $sample);
- }
- $status['detail'] = 'Samples found for ' . ($orderMode ? ' order:'.$p['order_id'] : ' project:'.$p['project_id']);
- }else{
- $status['detail'] = 'Samples found for ' . ($orderMode ? ' order:'.$p['order_id'] : ' project:'.$p['project_id']);
- }
- $status['error'] = False;
- } catch (Exception $e) {
- $status['detail'] = 'ERROR: ' . $e->getMessage();
- $status['error'] = True;
- error_log('ERROR fetching order samples: ' . $status['detail']);
- }
- return $status;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement