From 33410357d2571f1cd004308093b771ed00305eb4 Mon Sep 17 00:00:00 2001 From: Westech Admin Date: Sun, 17 May 2026 13:10:09 +0000 Subject: [PATCH] fix: page directory naming, workspace shortcuts, remove pycache --- .../__pycache__/__init__.cpython-312.pyc | Bin 188 -> 0 bytes .../api/__pycache__/__init__.cpython-312.pyc | Bin 166 -> 0 bytes .../__pycache__/ebay_pricing.cpython-312.pyc | Bin 19179 -> 0 bytes .../__init__.py | 0 .../page/ebay-pricing/ebay-pricing.html | 13 ++ westech_r2/page/ebay-pricing/ebay-pricing.js | 8 + .../page/ebay-pricing/ebay-pricing.json | 26 +++ westech_r2/page/ebay-pricing/ebay-pricing.py | 1 + .../page/ebay_pricing/ebay_pricing.html | 13 -- westech_r2/page/ebay_pricing/ebay_pricing.js | 212 ------------------ .../page/ebay_pricing/ebay_pricing.json | 20 -- westech_r2/page/ebay_pricing/ebay_pricing.py | 9 - .../westech_r2/workspace/westech/westech.json | 12 +- 13 files changed, 54 insertions(+), 260 deletions(-) delete mode 100644 westech_r2/__pycache__/__init__.cpython-312.pyc delete mode 100644 westech_r2/api/__pycache__/__init__.cpython-312.pyc delete mode 100644 westech_r2/api/__pycache__/ebay_pricing.cpython-312.pyc rename westech_r2/page/{ebay_pricing => ebay-pricing}/__init__.py (100%) create mode 100644 westech_r2/page/ebay-pricing/ebay-pricing.html create mode 100644 westech_r2/page/ebay-pricing/ebay-pricing.js create mode 100644 westech_r2/page/ebay-pricing/ebay-pricing.json create mode 100644 westech_r2/page/ebay-pricing/ebay-pricing.py delete mode 100644 westech_r2/page/ebay_pricing/ebay_pricing.html delete mode 100644 westech_r2/page/ebay_pricing/ebay_pricing.js delete mode 100644 westech_r2/page/ebay_pricing/ebay_pricing.json delete mode 100644 westech_r2/page/ebay_pricing/ebay_pricing.py diff --git a/westech_r2/__pycache__/__init__.cpython-312.pyc b/westech_r2/__pycache__/__init__.cpython-312.pyc deleted file mode 100644 index 0b2fbe3d184f24793d3a5fa0ea62ab65216276c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 188 zcmX@j%ge<81UtWSWQhUk#~=<2FhUuhIe?7m3@Hpz43&(UOjWD~dIoxiewvK8xZ~r? zQj3Z+^Yh~4S2BDCssH7upOK%Ns-ISrSWu9vpITIqms(Mxo0OWDoS_dCD%LMgEiOq- z&WJBELT1LtXXa&=#K-FuRQ}?y$<0qG%}KQ@Vgs58az-)8l^>WH85wWzi8gWiRM DlIY~;;_lh cPbtkwwJTx;n#u^o#UREhks@`=)IOv-ZrJpU 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 diff --git a/westech_r2/page/ebay_pricing/__init__.py b/westech_r2/page/ebay-pricing/__init__.py similarity index 100% rename from westech_r2/page/ebay_pricing/__init__.py rename to westech_r2/page/ebay-pricing/__init__.py diff --git a/westech_r2/page/ebay-pricing/ebay-pricing.html b/westech_r2/page/ebay-pricing/ebay-pricing.html new file mode 100644 index 0000000..7b5dc7e --- /dev/null +++ b/westech_r2/page/ebay-pricing/ebay-pricing.html @@ -0,0 +1,13 @@ +{% extends "templates/web.html" %} +{% block style %} + +{% endblock %} +{% block page_content %} +
+{% endblock %} diff --git a/westech_r2/page/ebay-pricing/ebay-pricing.js b/westech_r2/page/ebay-pricing/ebay-pricing.js new file mode 100644 index 0000000..9ec7a25 --- /dev/null +++ b/westech_r2/page/ebay-pricing/ebay-pricing.js @@ -0,0 +1,8 @@ +frappe.pages['ebay-pricing'].on_page_load = function(wrapper) { + var page = frappe.ui.make_app_page({ + parent: wrapper, + title: __('eBay Pricing'), + single_column: true + }); + $('

eBay Pricing

Search and batch price systems from eBay sold listings.

').appendTo(page.main); +}; diff --git a/westech_r2/page/ebay-pricing/ebay-pricing.json b/westech_r2/page/ebay-pricing/ebay-pricing.json new file mode 100644 index 0000000..ab9d81b --- /dev/null +++ b/westech_r2/page/ebay-pricing/ebay-pricing.json @@ -0,0 +1,26 @@ +{ + "creation": "2026-05-17 05:30:00.000000", + "docstatus": 0, + "doctype": "Page", + "icon": "fa fa-tags", + "modified": "2026-05-17 05:30:00.000000", + "modified_by": "Administrator", + "module": "Westech R2", + "name": "ebay-pricing", + "owner": "Administrator", + "page_name": "ebay-pricing", + "roles": [ + { + "role": "System Manager" + }, + { + "role": "Stock User" + }, + { + "role": "Sales User" + } + ], + "standard": "Yes", + "system_page": 0, + "title": "eBay Pricing" +} \ No newline at end of file diff --git a/westech_r2/page/ebay-pricing/ebay-pricing.py b/westech_r2/page/ebay-pricing/ebay-pricing.py new file mode 100644 index 0000000..4053179 --- /dev/null +++ b/westech_r2/page/ebay-pricing/ebay-pricing.py @@ -0,0 +1 @@ +# eBay Pricing desk page diff --git a/westech_r2/page/ebay_pricing/ebay_pricing.html b/westech_r2/page/ebay_pricing/ebay_pricing.html deleted file mode 100644 index 1c6ebef..0000000 --- a/westech_r2/page/ebay_pricing/ebay_pricing.html +++ /dev/null @@ -1,13 +0,0 @@ -{% extends "templates/web.html" %} -{% block style %} - -{% endblock %} -{% block page_content %} -
-{% endblock %} diff --git a/westech_r2/page/ebay_pricing/ebay_pricing.js b/westech_r2/page/ebay_pricing/ebay_pricing.js deleted file mode 100644 index 289a7e8..0000000 --- a/westech_r2/page/ebay_pricing/ebay_pricing.js +++ /dev/null @@ -1,212 +0,0 @@ -frappe.pages['ebay_pricing'].on_page_load = function(wrapper) { - var page = frappe.ui.make_app_page({ - parent: wrapper, - title: __('eBay Pricing'), - single_column: true - }); - - let $container = $(`
-
-
-
- -
- - - - -
-
-
-
-
- - - -
-
-
-
-
-
- -

Search for a model or run batch pricing

-
-
-
`).appendTo(page.main); - - $container.find('#ebay-search-btn').on('click', function() { - let query = $container.find('#ebay-search-input').val().trim(); - if (!query) { - frappe.msgprint(__('Enter a model to search')); - return; - } - search_ebay(query); - }); - - $container.find('#ebay-search-input').on('keypress', function(e) { - if (e.which === 13) { - $container.find('#ebay-search-btn').trigger('click'); - } - }); - - $container.find('#ebay-batch-btn').on('click', function() { - let size = $container.find('#ebay-batch-size').val(); - run_batch(size); - }); - - function search_ebay(query) { - frappe.call({ - method: 'westech_r2.api.ebay_pricing.search_model', - args: { query: query }, - freeze: true, - freeze_message: __('Searching eBay sold listings...'), - callback: function(r) { - if (r.message && r.message.results) { - render_results(r.message); - } else { - let msg = (r.message && r.message.message) || __('No results found'); - frappe.msgprint(msg); - } - } - }); - } - - function run_batch(size) { - frappe.call({ - method: 'westech_r2.api.ebay_pricing.run_batch', - args: { batch_size: size }, - freeze: true, - freeze_message: __('Running batch pricing...'), - callback: function(r) { - if (r.message) { - frappe.msgprint(__('Batch complete: {0} priced, {1} failed, {2} skipped', - [r.message.priced, r.message.failed, r.message.skipped])); - load_recent_pricing(); - } - } - }); - } - - function render_results(data) { - let $area = $container.find('#ebay-results-area').empty(); - if (!data.results || !data.results.length) { - $area.html(`
No results
`); - return; - } - - let html = ` - - - - - - - - `; - data.results.forEach(item => { - html += ` - - - - - - `; - }); - html += `
TitlePriceConditionSoldShipping
${frappe.utils.escape_html(item.title || '')}$${(item.price || 0).toFixed(2)}${frappe.utils.escape_html(item.condition || '')}${item.sold || ''}${item.shipping || ''}
`; - - if (data.pricing) { - html += `
-

Pricing Summary

-
-
Low: $${data.pricing.price_low}
-
High: $${data.pricing.price_high}
-
Average: $${data.pricing.price_average}
-
Median: $${data.pricing.price_auction}
-
-
-
Source: ${data.pricing.source}
-
Samples: ${data.pricing.sample_count}
-
-
`; - } - - $area.html(html); - } - - function load_recent_pricing() { - frappe.call({ - method: 'westech_r2.api.ebay_pricing.get_recent_pricing', - args: { limit: 50 }, - callback: function(r) { - if (r.message) { - render_pricing_grid(r.message); - } - } - }); - } - - function render_pricing_grid(items) { - let $area = $container.find('#ebay-results-area'); - if (!items || !items.length) { - $area.html(`
No pricing data yet
`); - return; - } - - let html = `

Recent Pricing Results

- - - - - - - - - - - - - - `; - - items.forEach(row => { - let status_class = 'status-needs'; - if (row.pricing_status === 'Priced') status_class = 'status-fresh'; - else if (row.pricing_status === 'Manual Override') status_class = 'status-fresh'; - else if (row.pricing_status === 'Expired') status_class = 'status-expired'; - else if (row.pricing_status === 'Error') status_class = 'status-error'; - - let age = row.days_since_pricing || 0; - let age_badge = age < 90 ? 'status-fresh' : (age < 120 ? 'status-aging' : 'status-expired'); - - html += ` - - - - - - - - - - - `; - }); - - html += `
ManufacturerModelStatusAgeLowHighAvgSamplesSourceLast Priced
${frappe.utils.escape_html(row.manufacturer || '')}${frappe.utils.escape_html(row.model || '')}${row.pricing_status}${age} days$${row.price_low || ''}$${row.price_high || ''}$${row.price_average || ''}${row.sample_count || ''}${row.source || ''}${frappe.datetime.str_to_user(row.scraped_at) || ''}
`; - $area.html(html); - } - - load_recent_pricing(); -}; diff --git a/westech_r2/page/ebay_pricing/ebay_pricing.json b/westech_r2/page/ebay_pricing/ebay_pricing.json deleted file mode 100644 index 66ffa03..0000000 --- a/westech_r2/page/ebay_pricing/ebay_pricing.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "creation": "2026-05-17 05:30:00.000000", - "docstatus": 0, - "doctype": "Page", - "icon": "fa fa-tags", - "modified": "2026-05-17 05:30:00.000000", - "modified_by": "Administrator", - "module": "Westech R2", - "name": "ebay_pricing", - "owner": "Administrator", - "page_name": "eBay Pricing", - "roles": [ - {"role": "System Manager"}, - {"role": "Stock User"}, - {"role": "Sales User"} - ], - "standard": "Yes", - "system_page": 0, - "title": "eBay Pricing" -} diff --git a/westech_r2/page/ebay_pricing/ebay_pricing.py b/westech_r2/page/ebay_pricing/ebay_pricing.py deleted file mode 100644 index 5bbfe5e..0000000 --- a/westech_r2/page/ebay_pricing/ebay_pricing.py +++ /dev/null @@ -1,9 +0,0 @@ -import frappe -from frappe import _ - -no_cache = 1 - -def get_context(context): - context.no_cache = 1 - context.title = _("eBay Pricing") - return context diff --git a/westech_r2/westech_r2/workspace/westech/westech.json b/westech_r2/westech_r2/workspace/westech/westech.json index 4d302c2..fd21793 100644 --- a/westech_r2/westech_r2/workspace/westech/westech.json +++ b/westech_r2/westech_r2/workspace/westech/westech.json @@ -1,7 +1,7 @@ { "charts": [], "content": "[{\"type\": \"header\", \"data\": {\"text\": \"Westech Recyclers\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"New Intake\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Pallets\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Pallet List\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Scheduled Pickups\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Route Planner\"}}, {\"type\": \"spacer\", \"data\": {}}, {\"type\": \"header\", \"data\": {\"text\": \"Tools\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"EIM Device Portal\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"R2 Data Tracking\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Wes AI Assistant\"}}, {\"type\": \"spacer\", \"data\": {}}, {\"type\": \"header\", \"data\": {\"text\": \"Records\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Customers\"}}, {\"type\": \"shortcut\", \"data\": {\"shortcut_name\": \"Suppliers\"}}]", - "creation": "2026-05-16 17:36:54.540512", + "creation": "2026-05-17 05:39:20.222818", "custom_blocks": [], "docstatus": 0, "doctype": "Workspace", @@ -100,7 +100,7 @@ "type": "Link" } ], - "modified": "2026-05-16 18:45:11.778496", + "modified": "2026-05-17 06:07:36.785015", "modified_by": "Administrator", "module": "Westech R2", "name": "Westech", @@ -176,10 +176,10 @@ }, { "doc_view": "", - "icon": "truck", - "label": "Truck Profiles", - "link_to": "Truck Profile", - "type": "DocType" + "icon": "fa fa-tags", + "label": "eBay Pricing", + "link_to": "ebay-pricing", + "type": "Page" } ], "title": "Westech"