abstract-customer-ability.php
3 months ago
connect-customer-to-wp-user.php
2 months ago
create-customer.php
3 months ago
delete-customer.php
3 months ago
get-customer-bookings.php
3 months ago
get-customer-by-email.php
3 months ago
get-customer-orders.php
3 months ago
get-customer.php
3 months ago
get-total-customers-count.php
3 months ago
list-customers.php
3 months ago
search-customers.php
3 months ago
update-customer.php
3 months ago
abstract-customer-ability.php
43 lines
| 1 | <?php |
| 2 | if ( ! defined( 'ABSPATH' ) ) { |
| 3 | exit; |
| 4 | } |
| 5 | |
| 6 | abstract class LatePointAbstractCustomerAbility extends LatePointAbstractAbility { |
| 7 | |
| 8 | public function serialize_customer( OsCustomerModel $c ): array { |
| 9 | return [ |
| 10 | 'id' => (int) $c->id, |
| 11 | 'first_name' => $c->first_name ?? '', |
| 12 | 'last_name' => $c->last_name ?? '', |
| 13 | 'full_name' => trim( ( $c->first_name ?? '' ) . ' ' . ( $c->last_name ?? '' ) ), |
| 14 | 'email' => $c->email ?? '', |
| 15 | 'phone' => $c->phone ?? '', |
| 16 | 'notes' => $c->notes ?? '', |
| 17 | 'wp_user_id' => (int) ( $c->wordpress_user_id ?? 0 ), |
| 18 | 'status' => $c->status ?? '', |
| 19 | 'created_at' => ! empty( $c->created_at ) ? date( 'c', strtotime( $c->created_at ) ) : '', |
| 20 | 'updated_at' => ! empty( $c->updated_at ) ? date( 'c', strtotime( $c->updated_at ) ) : '', |
| 21 | ]; |
| 22 | } |
| 23 | |
| 24 | protected function customer_output_schema(): array { |
| 25 | return [ |
| 26 | 'type' => 'object', |
| 27 | 'properties' => [ |
| 28 | 'id' => [ 'type' => 'integer' ], |
| 29 | 'first_name' => [ 'type' => 'string' ], |
| 30 | 'last_name' => [ 'type' => 'string' ], |
| 31 | 'full_name' => [ 'type' => 'string' ], |
| 32 | 'email' => [ 'type' => 'string' ], |
| 33 | 'phone' => [ 'type' => 'string' ], |
| 34 | 'notes' => [ 'type' => 'string' ], |
| 35 | 'wp_user_id' => [ 'type' => 'integer' ], |
| 36 | 'status' => [ 'type' => 'string' ], |
| 37 | 'created_at' => [ 'type' => 'string' ], |
| 38 | 'updated_at' => [ 'type' => 'string' ], |
| 39 | ], |
| 40 | ]; |
| 41 | } |
| 42 | } |
| 43 |