Jeff Stieler
2246a1e075
Expect array value for _between params.
...
Add param validation method and normalize to min/max based by comparing values.
2019-01-09 14:19:37 -07:00
Justin Shreve
d46ce1df7a
Add store performance indicator endpoint ( https://github.com/woocommerce/woocommerce-admin/pull/1255 )
...
* Add store performance REST API endpoint
* Clean up validation, add list of allowed stats to OPTIONS endpoint, and rename endpoint to performance-indicators
* Add tests
* Add additional filters to make extending the performance indiciators area easier.
* Add docblocks for filters
2019-01-09 16:08:39 -05:00
Jeff Stieler
06763cc3a5
Don’t cast date values to strings in customers report data store since they’re allowed to be null.
...
NULL column values resulted in NOW() in the response.
2019-01-08 18:49:49 -07:00
Jeff Stieler
6e369bd145
Handle *_between parameters in Customers Report endpoint controller.
2019-01-08 17:41:48 -07:00
Jeff Stieler
b15a4bc804
Add utility method to normalize numeric “between” parameters in REST API requests.
2019-01-08 17:41:24 -07:00
Jeff Stieler
d9fd8568df
Customers report: perform a LEFT JOIN on the order stats table to include customers that have not yet placed an order.
2019-01-08 10:47:19 -07:00
Jeff Stieler
46b503dd54
Update customers report lookup table when customers/users are updated.
2019-01-08 10:33:17 -07:00
Jeff Stieler
154482acc9
Derive orders_count, total_spend, avg_order_value, and date_late_order for customer reports from the order stats report table.
2019-01-08 10:33:17 -07:00
Jeff Stieler
8105ddb38a
Add new guest customers to lookup when syncing the order stats report table.
2019-01-08 10:33:16 -07:00
Jeff Stieler
1a90840e97
Add customer_id to order stats report table to reference with customer lookup.
2019-01-08 10:30:16 -07:00
Jeff Stieler
d42e04cd59
Short circuit registered customer data update when the given ID is bad.
2019-01-08 10:29:44 -07:00
Jeff Stieler
a1317f2152
Customer lookup table: allow registration date to be null (for guests).
2019-01-08 10:29:43 -07:00
Jeff Stieler
c337944cf6
Backfill guests into customer report lookup table using order data and billing email.
2019-01-08 10:29:43 -07:00
Jeff Stieler
fa3379e62f
Customer report data store: fix handling of ‘name’ parameter in WHERE clause.
2019-01-08 10:29:42 -07:00
Jeff Stieler
714c1ee030
Customer report data store: fix comparison operator for date param “after” where clause.
2019-01-08 10:29:42 -07:00
Jeff Stieler
737331dd3b
Add missing _gmt date fields to customers report response items.
2019-01-08 10:29:41 -07:00
Jeff Stieler
04a30e668b
Customer report data store: fix SQL when where clauses are empty.
2019-01-08 10:29:40 -07:00
Jeff Stieler
1832450fd1
Update customer lookup table when orders (with registered customers) are created, updated, or refunded.
2019-01-08 10:29:40 -07:00
Jeff Stieler
2ea61e9a86
Move registered customer lookup update logic into data store class.
2019-01-08 10:29:40 -07:00
Jeff Stieler
d0e2c5162f
Place a UNIQUE constraint on the user_id key for the customer report lookup table.
2019-01-08 10:29:39 -07:00
Jeff Stieler
dd87522a5e
Customers report endpoint: only include customer link if they’re a registered user.
2019-01-08 10:29:39 -07:00
Jeff Stieler
fc20d2bb1b
Remove unnecessary subquery from customer reports data store records count query.
2019-01-08 10:29:38 -07:00
Jeff Stieler
a75a33c32f
Handle match parameter in customers report data store.
...
Note: before/after and min/max ranges are always ‘AND’.
2019-01-08 10:29:38 -07:00
Jeff Stieler
97e6f795e9
Fix copy-pasta in customers report REST controller.
2019-01-08 10:29:38 -07:00
Jeff Stieler
a180566c2f
Set default parameters for customers report query.
2019-01-08 10:29:37 -07:00
Jeff Stieler
0c919add5d
Fix query params in customers report controller.
2019-01-08 10:29:37 -07:00
Jeff Stieler
6e5fef2f7b
Include customers report files.
2019-01-08 10:29:37 -07:00
Jeff Stieler
746120e254
Change customer report lookup table columns to match API parameters.
2019-01-08 10:29:36 -07:00
Jeff Stieler
9670719fc6
Add customers report query endpoint implementation.
2019-01-08 10:29:36 -07:00
Jeff Stieler
b9f0d9fe5f
Update customers report endpoint item schema to match (visual) table designs.
2019-01-08 10:29:35 -07:00
Jeff Stieler
56beada220
Update customers report endpoint parameters to match new lookup table filters.
2019-01-08 10:29:35 -07:00
Jeff Stieler
a2154daa4c
Register customer report lookup table with core WC.
2019-01-08 10:29:35 -07:00
Jeff Stieler
281c06a5d4
Add username column to customer report lookup table.
2019-01-08 10:29:34 -07:00
Jeff Stieler
9131932910
First pass at initializing the customer lookup table with existing registered customer data.
2019-01-08 10:29:34 -07:00
Jeff Stieler
a5cf136037
Add customer report lookup table creation to initialization query.
2019-01-08 10:29:33 -07:00
Justin Shreve
f37b9319e1
Download Report API: Add path to response, fix ordering, and fix schema typo ( https://github.com/woocommerce/woocommerce-admin/pull/1248 )
...
* Add download_path to download report endpoint and fix schema typo
* Fix ordering and add tests
2019-01-08 09:51:28 -05:00
Joshua T Flowers
d9e7e1b952
Remove unused show_product_categories_in_rest function ( https://github.com/woocommerce/woocommerce-admin/pull/1235 )
2019-01-08 09:53:02 +08:00
Joshua T Flowers
f3346e9298
Add the order status column to lookup table ( https://github.com/woocommerce/woocommerce-admin/pull/1211 )
...
* Add the order status column to lookup table
* Fix order status filter for order stats
* Fix normalize order status and make static function
2019-01-08 09:16:10 +08:00
Albert Juhé Lluveras
6ca0c628b2
Connect Downloads report to REST API ( https://github.com/woocommerce/woocommerce-admin/pull/1238 )
...
* Connect downloads chart and table to REST API
* Display date picker in Downloads report
* Fix missing value for 'days' in Downloads table summary
* Fix download_count being a string instead of a number
* Minor date packages comment fixes
* Fix filters in Downloads report
* Add back empty line
* JSDoc comments style fixes
* Fix username filter not working
* Fix days counter off by 1
* Fix alignment issue
2019-01-07 12:54:42 +01:00
Justin Shreve
e3e9ccb6a4
Add `reports/downloads/stats` REST API Endpoint ( https://github.com/woocommerce/woocommerce-admin/pull/1142 )
...
* First pass at downloads REST API
* Add reports/downloads/stats endpoint.
* Add tests
* Update cache key
2019-01-03 13:00:48 -05:00
Joshua T Flowers
7bbdd78bde
Add missing intervals to product reports ( https://github.com/woocommerce/woocommerce-admin/pull/1200 )
...
* Add missing intervals to product reports
* Fix failing tests for product stats API
Before and after query should be within today's date since missing intervals for other days will be filled in with remaining dates.
2018-12-31 13:20:22 +08:00
Joshua T Flowers
3f388028ac
Sort default category response by category ID ( https://github.com/woocommerce/woocommerce-admin/pull/1201 )
2018-12-28 09:50:58 -08:00
Joshua T Flowers
e0596ea249
Add 404 response to REST response for invalid note ID ( https://github.com/woocommerce/woocommerce-admin/pull/1194 )
2018-12-28 09:51:22 +08:00
Joshua T Flowers
b3979ff984
Fix order status product sync ( https://github.com/woocommerce/woocommerce-admin/pull/1151 )
...
* Move order product sync to product data store
* Move order taxes sync to taxes data store
* Move order coupons sync to coupons data store
* Use table_name constant in data syncs
* Remove order data for incomplete order statuses
* Fix report rebuild tool
* Update comments to describe create/update entry reference
* Fix data_store_init function name change
2018-12-27 11:49:00 +08:00
Joshua T Flowers
987929da83
Filter by categories query param in categories data store ( https://github.com/woocommerce/woocommerce-admin/pull/1179 )
2018-12-27 11:31:08 +08:00
Joshua T Flowers
017db0b339
Sync order status on refund delete ( https://github.com/woocommerce/woocommerce-admin/pull/1074 )
2018-12-27 11:11:33 +08:00
Peter Fabian
48dfb54a48
Switched average order value from gross to net revenue ( https://github.com/woocommerce/woocommerce-admin/pull/1158 )
...
* Switched Average order value calculation from gross to net revenue.
* Updated tests to reflect switch of average order value from gross to net revenue.
2018-12-26 15:49:46 -08:00
Joshua T Flowers
c747d3399e
Use unbounded per_page limit in apiFetch for categories ( https://github.com/woocommerce/woocommerce-admin/pull/1149 )
2018-12-26 10:37:02 +08:00
Joshua T Flowers
dcaa35c7bf
Add product SKU to products report ( https://github.com/woocommerce/woocommerce-admin/pull/1161 )
...
* Add product SKU to products report
* Add tests for SKU data
2018-12-25 11:02:06 +08:00
Justin Shreve
579113910d
Add remaining filters to the downloads report ( https://github.com/woocommerce/woocommerce-admin/pull/1141 )
...
* Add order number, username, and IP address filters to the downloads report.
* Adds tests
2018-12-21 16:40:41 -08:00
Justin Shreve
49a0f0f6d2
Add `reports/downloads` REST API endpoint. ( https://github.com/woocommerce/woocommerce-admin/pull/1122 )
...
* First pass at downloads REST API
* Handle PR feedback
2018-12-21 14:57:46 -08:00
Joshua T Flowers
56577101c4
Add customer numeric filters ( https://github.com/woocommerce/woocommerce-admin/pull/1116 )
...
* Add customer numeric filters
* Add between params to customers controller
* Escape strings for translation and change inputs to currency
* Add Currency shorthand filter
2018-12-21 12:07:54 +08:00
Joshua T Flowers
f83b0e0615
Add product categories wc-api and breadcrumbs ( https://github.com/woocommerce/woocommerce-admin/pull/1131 )
...
* Add support for product cats in wp rest api
* Add categories to WC API
* Add category breadcrumbs component
* Increase per_page limit size for product cat API
* Use wc/v3 API to pull product categories
* Return category IDs in API
* Add categories to product reports
* Add category IDs test for REST API
* Switch to getResource instead of require for total count selector
2018-12-21 10:44:27 +08:00
Paul Sealock
46c313cdc7
REST API: Categories: optimize query by removing get_the_terms
2018-12-21 11:08:08 +13:00
Joshua T Flowers
5bab0767b6
Fix item refunds report data ( https://github.com/woocommerce/woocommerce-admin/pull/1059 )
...
* Fix product report data issue when issuing item refund
* Modify product order lookup stats when refund is given
* Remove products where orders are refunded
* Remove unused var and add comment about early return
* Reduce product revenue if quantity still remains after refund
* Fix subtotal array key and abs value for float
* Change product_gross_revenue to product_net_revenue
2018-12-21 02:40:44 +08:00
Peter Fabian
dff8b63271
Merge pull request woocommerce/woocommerce-admin#1010 from woocommerce/fix/845
...
Added /reports/coupons and /reports/coupons/stats endpoints
2018-12-19 13:55:28 +01:00
Peter Fabian
4802736a0e
Switched from using coupon code filter to coupon id filter by query parameter.
2018-12-19 13:37:54 +01:00
Joshua T Flowers
08d3e2c38d
Change product_gross_revenue to product_net_revenue ( https://github.com/woocommerce/woocommerce-admin/pull/1105 )
...
* Change product_gross_revenue to product_net_revenue
* Change product_gross_revenue to product_net_revenue in category data store
* Change to net_revenue in frontend category report
2018-12-19 08:56:27 +08:00
Paul Sealock
15bbbe739d
Hook up Categories table to endpoint
2018-12-19 08:36:42 +13:00
Peter Fabian
85e6e8df8d
Added correct cache handling.
2018-12-18 12:01:42 +08:00
Peter Fabian
6c456657e8
Changed coupon_gross_discount to amount.
2018-12-18 12:01:42 +08:00
Peter Fabian
f0b97a42b0
Changed data type in schema for dates to date-time.
2018-12-18 12:01:41 +08:00
Peter Fabian
21ac75d21e
Made extended_info always appear in coupons endpoint.
2018-12-18 12:01:40 +08:00
Peter Fabian
3e45c6a82c
Fixed invalid sort criterion for coupons endpoint.
2018-12-18 12:01:39 +08:00
Peter Fabian
3535f52d78
Removed interval parameter for coupons endpoint.
2018-12-18 12:01:39 +08:00
Peter Fabian
6950522f91
Removed timezone info that was added incorrectly
2018-12-18 12:01:39 +08:00
Peter Fabian
a346f13beb
Added extended info.
2018-12-18 12:01:38 +08:00
Peter Fabian
5eee869a74
Added small fixes to set up coupon endpoints.
2018-12-18 12:01:38 +08:00
Peter Fabian
1630cb9c6f
Removed unsupported parameter from coupons endpoint.
2018-12-18 12:01:18 +08:00
Peter Fabian
357b8f914a
Added query classes and data stores for coupons and coupons/stats.
2018-12-18 12:01:17 +08:00
Peter Fabian
e273d055ef
Moved functions from orders data store to allow code reuse.
2018-12-18 12:00:33 +08:00
Joshua T Flowers
9486ab7896
Update/taxes endpoint hookup/941 ( https://github.com/woocommerce/woocommerce-admin/pull/1008 )
...
* Hook up taxes to endpoint
* Hook up tax stats endpoint
* Add default tax stat totals for empty results
* Create subtotals from intervals in API
* Change orders to orders_count to keep consistent naming
2018-12-18 10:26:46 +08:00
Justin Shreve
e42ad6956b
Add customer email filter ( https://github.com/woocommerce/woocommerce-admin/pull/1092 )
...
* Add customer email filter
* Handle PR feedback: Fix up if statement and add extra info to validation comment
2018-12-17 11:20:11 -05:00
Claudio Sanches
80f1b2f256
[REST API] Stock endpoint ( https://github.com/woocommerce/woocommerce-admin/pull/974 )
...
* New reports stock endpoint
* Register new endpoint
* Unit tests
* Included "name" into stock results
* Fixed sku type
* Improve stock _links returning properly links for variations and parent products
* Fixed docblock
* Sort stock by stock_quantity by default
* Fixed orderby
* Ignore sticky posts
* Fixed variable names
2018-12-14 07:43:39 -08:00
Justin Shreve
20e202080a
Add Live Data to Reviews Panel ( https://github.com/woocommerce/woocommerce-admin/pull/1055 )
...
* Add Live Data to Reviews Panel
Adds the ability to embed the product in a product review response
* Clean up code needed to embed some product fields.
* Add API response tests
2018-12-12 08:35:56 -05:00
Allen Snook
de105648be
Activity Panel: Inbox: Filter update and error notes out of the inbox ( https://github.com/woocommerce/woocommerce-admin/pull/893 )
...
* Filter update and error notes out of the inbox
* Remove redundant trim().
* Fix test for admin notes API type parameter.
2018-12-11 09:00:57 +08:00
Joshua T Flowers
04d3ce6eb1
Add taxes endpoint and data store ( https://github.com/woocommerce/woocommerce-admin/pull/1000 )
...
* Add taxes endpoint and data store
* Add sorting options and normalize orderby param
* Add report taxes unit tests
* Add tax rate to response
* Add country, state, priority, and name to response
* Fix tax codes query param
* Add class comment
* Add missing to record query
* Add comment about ambiguous column
2018-12-11 08:58:05 +08:00
Joshua T Flowers
557cec57cb
Add tax stats endpoint ( https://github.com/woocommerce/woocommerce-admin/pull/1019 )
2018-12-11 08:55:05 +08:00
Paul Sealock
93a7472e54
REST API: Add stock info to products and variations
2018-12-11 07:19:46 +13:00
Jeff Stieler
c170e289f5
Merge pull request woocommerce/woocommerce-admin#853 from woocommerce/add/711-bump-notes
...
Activity Panel: Inbox: Bump notes for expiring subs at certain days-remaining thresholds
2018-12-05 13:40:04 -07:00
Joshua T Flowers
5d3c771d45
Trigger sync_order on order stats table when refunding ( https://github.com/woocommerce/woocommerce-admin/pull/990 )
2018-12-05 10:10:22 +08:00
Joshua T Flowers
755b9c94f7
Reduce order table net revenue by refund total ( https://github.com/woocommerce/woocommerce-admin/pull/988 )
...
* Reduce order table net revenue by refund total
* Use order utils to get refund total
2018-12-05 10:06:00 +08:00
Peter Fabian
1c8459244a
Merge branch 'master' into fix/749
...
# Conflicts:
# includes/data-stores/class-wc-admin-reports-products-data-store.php
2018-12-04 12:07:43 +01:00
Peter Fabian
670801cee8
Merge pull request woocommerce/woocommerce-admin#978 from woocommerce/fix/PHP52-compat
...
Fixed PHP 5.2 compatibility
2018-12-04 12:00:37 +01:00
Paul Sealock
bf0e025b05
REST API: isolate extened info in /reports/products
2018-12-04 13:01:36 +13:00
Peter Fabian
15b4681d30
Updated refactored function call from variations data store.
2018-12-03 20:14:05 +01:00
Peter Fabian
ef0f11182a
Added missing function parameter.
2018-12-03 20:07:44 +01:00
Peter Fabian
e297e5ba7f
Fixed TABLE_NAME references.
...
To be compatible with PHP 5.2.
2018-12-03 18:01:50 +01:00
Peter Fabian
1acb9827e7
Merge branch 'master' into fix/749
...
# Conflicts:
# includes/data-stores/class-wc-admin-reports-products-data-store.php
2018-12-03 16:21:04 +01:00
Peter Fabian
b8dff97e00
Fixed PHP 5.2 compatibility.
2018-12-03 14:44:43 +01:00
Peter Fabian
6e68247701
Merge pull request woocommerce/woocommerce-admin#953 from woocommerce/fix/740
...
Added support for ordering by product name in products endpoint.
2018-12-03 11:56:28 +01:00
Paul Sealock
516062975b
try/variations-endpoint
2018-12-03 12:02:58 +13:00
Paul Sealock
164a67144b
try/variations-endpoint
2018-12-03 11:49:37 +13:00
Peter Fabian
8b80de9bc2
Added support for ordering by product name in products endpoint.
2018-11-28 15:14:34 +01:00
Peter Fabian
99e2c463c7
Added parameter mapping for products/stats endpoint.
2018-11-28 11:04:18 +01:00
Peter Fabian
e6cca3c083
Replaced code_includes/_excludes with coupon_* as agreed.
2018-11-28 10:53:11 +01:00
Peter Fabian
eff3a97573
Added time clause to WHERE subquery and fixed product selection.
2018-11-27 21:41:52 +01:00
Peter Fabian
bc29615454
Removed unnecessary SQL conditions.
2018-11-27 21:40:13 +01:00
Peter Fabian
a765a6df97
Added tests for advanced filters of orders report.
2018-11-27 21:39:14 +01:00
Peter Fabian
f9a46423e0
Added get_order_statuses to REST controllers where it's required.
2018-11-27 16:39:11 +01:00