mirror of
				https://github.com/invoiceninja/invoiceninja.git
				synced 2025-10-31 17:18:29 -04:00 
			
		
		
		
	Updates for task exports
This commit is contained in:
		
							parent
							
								
									78f8cedc80
								
							
						
					
					
						commit
						1076f44fb3
					
				| @ -450,6 +450,7 @@ class BaseExport | |||||||
|         'status' => 'task.status_id', |         'status' => 'task.status_id', | ||||||
|         'project' => 'task.project_id', |         'project' => 'task.project_id', | ||||||
|         'billable' => 'task.billable', |         'billable' => 'task.billable', | ||||||
|  |         'item_notes' => 'task.item_notes', | ||||||
|     ]; |     ]; | ||||||
| 
 | 
 | ||||||
|     protected array $forced_client_fields = [ |     protected array $forced_client_fields = [ | ||||||
|  | |||||||
| @ -156,7 +156,7 @@ class TaskExport extends BaseExport | |||||||
|                 $entity[$key] = $transformed_entity[$parts[1]]; |                 $entity[$key] = $transformed_entity[$parts[1]]; | ||||||
|             } elseif (array_key_exists($key, $transformed_entity)) { |             } elseif (array_key_exists($key, $transformed_entity)) { | ||||||
|                 $entity[$key] = $transformed_entity[$key]; |                 $entity[$key] = $transformed_entity[$key]; | ||||||
|             } elseif (in_array($key, ['task.start_date', 'task.end_date', 'task.duration'])) { |             } elseif (in_array($key, ['task.start_date', 'task.end_date', 'task.duration', 'task.billable', 'task.item_notes'])) { | ||||||
|                 $entity[$key] = ''; |                 $entity[$key] = ''; | ||||||
|             } else { |             } else { | ||||||
|                 $entity[$key] = $this->decorator->transform($key, $task); |                 $entity[$key] = $this->decorator->transform($key, $task); | ||||||
| @ -175,7 +175,7 @@ class TaskExport extends BaseExport | |||||||
|     private function iterateLogs(Task $task, array $entity) |     private function iterateLogs(Task $task, array $entity) | ||||||
|     { |     { | ||||||
|         $timezone = Timezone::find($task->company->settings->timezone_id); |         $timezone = Timezone::find($task->company->settings->timezone_id); | ||||||
|         $timezone_name = 'US/Eastern'; |         $timezone_name = 'America/New_York'; | ||||||
| 
 | 
 | ||||||
|         if ($timezone) { |         if ($timezone) { | ||||||
|             $timezone_name = $timezone->name; |             $timezone_name = $timezone->name; | ||||||
| @ -209,6 +209,14 @@ class TaskExport extends BaseExport | |||||||
|                 $entity['task.duration_words'] =  $seconds > 86400 ? CarbonInterval::seconds($seconds)->locale($this->company->locale())->cascade()->forHumans() : now()->startOfDay()->addSeconds($seconds)->format('H:i:s'); |                 $entity['task.duration_words'] =  $seconds > 86400 ? CarbonInterval::seconds($seconds)->locale($this->company->locale())->cascade()->forHumans() : now()->startOfDay()->addSeconds($seconds)->format('H:i:s'); | ||||||
|             } |             } | ||||||
| 
 | 
 | ||||||
|  |             if (in_array('task.billable', $this->input['report_keys']) || in_array('billable', $this->input['report_keys'])) { | ||||||
|  |                 $entity['task.billable'] = isset($item[3]) && $item[3] == 'true' ? ctrans('texts.yes') : ctrans('texts.no'); | ||||||
|  |             } | ||||||
|  | 
 | ||||||
|  |             if (in_array('task.item_notes', $this->input['report_keys']) || in_array('item_notes', $this->input['report_keys'])) { | ||||||
|  |                 $entity['task.item_notes'] = isset($item[2]) ? (string)$item[2] : ''; | ||||||
|  |             } | ||||||
|  | 
 | ||||||
|             $entity = $this->decorateAdvancedFields($task, $entity); |             $entity = $this->decorateAdvancedFields($task, $entity); | ||||||
| 
 | 
 | ||||||
|             $this->storage_array[] = $entity; |             $this->storage_array[] = $entity; | ||||||
| @ -219,6 +227,8 @@ class TaskExport extends BaseExport | |||||||
|             $entity['task.end_time'] = ''; |             $entity['task.end_time'] = ''; | ||||||
|             $entity['task.duration'] = ''; |             $entity['task.duration'] = ''; | ||||||
|             $entity['task.duration_words'] = ''; |             $entity['task.duration_words'] = ''; | ||||||
|  |             $entity['task.billable'] = ''; | ||||||
|  |             $entity['task.item_notes'] = ''; | ||||||
| 
 | 
 | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -18,6 +18,7 @@ use Carbon\Carbon; | |||||||
| 
 | 
 | ||||||
| class TaskDecorator extends Decorator implements DecoratorInterface | class TaskDecorator extends Decorator implements DecoratorInterface | ||||||
| { | { | ||||||
|  |     //@todo - we do not handle iterating through the timelog here.
 | ||||||
|     public function transform(string $key, mixed $entity): mixed |     public function transform(string $key, mixed $entity): mixed | ||||||
|     { |     { | ||||||
|         $task = false; |         $task = false; | ||||||
| @ -42,7 +43,7 @@ class TaskDecorator extends Decorator implements DecoratorInterface | |||||||
|     { |     { | ||||||
| 
 | 
 | ||||||
|         $timezone = Timezone::find($task->company->settings->timezone_id); |         $timezone = Timezone::find($task->company->settings->timezone_id); | ||||||
|         $timezone_name = 'US/Eastern'; |         $timezone_name = 'America/New_York'; | ||||||
| 
 | 
 | ||||||
|         if ($timezone) { |         if ($timezone) { | ||||||
|             $timezone_name = $timezone->name; |             $timezone_name = $timezone->name; | ||||||
| @ -71,7 +72,7 @@ class TaskDecorator extends Decorator implements DecoratorInterface | |||||||
|     { |     { | ||||||
| 
 | 
 | ||||||
|         $timezone = Timezone::find($task->company->settings->timezone_id); |         $timezone = Timezone::find($task->company->settings->timezone_id); | ||||||
|         $timezone_name = 'US/Eastern'; |         $timezone_name = 'America/New_York'; | ||||||
| 
 | 
 | ||||||
|         if ($timezone) { |         if ($timezone) { | ||||||
|             $timezone_name = $timezone->name; |             $timezone_name = $timezone->name; | ||||||
| @ -95,6 +96,26 @@ class TaskDecorator extends Decorator implements DecoratorInterface | |||||||
|         return ''; |         return ''; | ||||||
| 
 | 
 | ||||||
|     } |     } | ||||||
|  |      | ||||||
|  |     /** | ||||||
|  |      * billable | ||||||
|  |      * | ||||||
|  |      * @todo | ||||||
|  |      */ | ||||||
|  |     public function billable(Task $task) | ||||||
|  |     { | ||||||
|  |         return ''; | ||||||
|  |     } | ||||||
|  |      | ||||||
|  |     /** | ||||||
|  |      * items_notes | ||||||
|  |      * @todo | ||||||
|  |      */ | ||||||
|  |     public function items_notes(Task $task) | ||||||
|  |     { | ||||||
|  |         return ''; | ||||||
|  |     } | ||||||
|  |      | ||||||
|     public function duration(Task $task) |     public function duration(Task $task) | ||||||
|     { |     { | ||||||
|         return $task->calcDuration(); |         return $task->calcDuration(); | ||||||
|  | |||||||
| @ -171,7 +171,7 @@ class TransactionTransformer implements BankRevenueInterface | |||||||
|     private function formatDate(string $input) |     private function formatDate(string $input) | ||||||
|     { |     { | ||||||
|         $timezone = Timezone::find($this->company->settings->timezone_id); |         $timezone = Timezone::find($this->company->settings->timezone_id); | ||||||
|         $timezone_name = 'US/Eastern'; |         $timezone_name = 'America/New_York'; | ||||||
| 
 | 
 | ||||||
|         if ($timezone) { |         if ($timezone) { | ||||||
|             $timezone_name = $timezone->name; |             $timezone_name = $timezone->name; | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user