Store client markup on each Consignee so it survives restarts and price refresh; show only name and address in the selection dialog with a wider window.
Co-authored-by: Cursor <cursoragent@cursor.com>
Apply available buyer/price-list/region discounts to summary.price on download, keep consignee carts separate, and harden SQLite startup/migrations.
Co-authored-by: Cursor <cursoragent@cursor.com>
Prompt for Location ID after login, move cart delete there, refine price-list Backspace navigation, and log every API failure with stack and response body.
Co-authored-by: Cursor <cursoragent@cursor.com>
Show names on the left and dosages on the right after selection, then open supplier offers for the chosen pair. Persist TradeName/Dosage on download and avoid crashes when rebinding or pressing Escape.
Co-authored-by: Cursor <cursoragent@cursor.com>
Enable Получить накладную for sent orders, build local invoices without refusals, and stop the tab close menu from covering dedicated grid menus. Also fix price-list Backspace search and refresh the Release dist binaries.
Co-authored-by: Cursor <cursoragent@cursor.com>
Harden UCPriceList number parsing and selection handling after download, guard ModernDataGridView row header autosize, and refresh price list from menu load action.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add ModernTabControl/SplitContainer for cart UI without system borders, fix button corner artifacts and dialog text contrast, and use TitleBarTop green for auth header in light mode.
Co-authored-by: Cursor <cursoragent@cursor.com>
Right-click closes active or targeted document tabs, fix order items header overlap, and align the price-list search clear button with centered × glyph.
Co-authored-by: Cursor <cursoragent@cursor.com>
WinForms app with Elfisa.UI, API integration, order workflow, invoices/refusals sync, and production-ready fixes from the desktop roadmap.
Co-authored-by: Cursor <cursoragent@cursor.com>