There was separate function for batch row which frequently didn't
receive all the love main function received like:
1. empty row reuse
2. max qty validation
Hence it makes sense to combine these in one fat function
- `set_missing_values` in SE will set actual qty, transfer qty and calculate rate/amount
- Re-use `set_missing_values` wherever SE is doc is being mapped
- bind the right classes to the filter lookup field
- make class names more descriptive
- make filter lookup field more visible with white bg and border
- bind lookup input field js in `views.js`
- make filter lookup field functioning for atribute filters too
- added placeholder to lookup field
- Use absolute route even 3-4 sub-category levels down
- Remove scroll from category pills due to accessibility issues
- Arrange sub-category pills alphabetically
- `icon-heart` got a stroke colour that needs to be overriden via var `icon-stroke
- Use `icon-heart` instead of `icon-heart-active` as the latter has a color fill now
* fix: Fetch conversion factor even if it already existed in row, on item change
* fix: Retain manually changed conversion factor
- If item code changes, reset conversion factor on client side
- Keep API behavious consistent, if conversion factor is sent, same must come back
- API should not ideally reset values in most cases
This function is used to show valuation rate on frontend and also as
fallback in case values aren't available. Add "batch_no" param to get
batch specific valuation rates.
Co-Authored-By: Alan Tom <2.alan.tom@gmail.com>
* feat: Bulk Transaction Processing
* fix: add flags to ignore validations and exception handling correction
* fix: remove duplicate code, added logger functionality and improved notifications
* fix: linting and sider issues
* test: added tests
* fix: linter issues
* fix: failing test case
* fix: sider issues and test cases
* refactor: mapping function calls to create order/invoice
* fix: added more test cases to increase coverage
* fix: test cases
* fix: sider issue
* fix: rename doctype, improve formatting and minor refactor
* fix: update doctype name in hooks and sider issues
* fix: entry log test case
* fix: typos, translations and company name in tests
* fix: linter issues and translations
* fix: linter issue
* fix: split into separate function for marking failed transaction
* fix: typos, retry failed transaction logic and make log read only
* fix: hide retry button when no failed transactions and remove test cases not rrelevant
* fix: sider issues and indentation to tabs
Co-authored-by: Ankush Menat <ankush@frappe.io>
- Due to it being in the bundle, controls bundle was required for Dialogs used in cart
- But this is exclusively used in `cart.html`
- It has no reason to load and break the login page
- Moved it back to where the html is, it is now back to being tightly coupled with its html
Previously, control & dialog assets were getting loaded only on visiting "/cart", but since cart.js sets up various events on homepage, dialog related assets are required up-front.
- Resolve inconsistency due to conflict with https://github.com/frappe/erpnext/pull/27050
- Resolve Linter issues (imports and spaces)
- Include customer_reviews.js in bundle, move it to /public/js
- Create an indexed map of stale packed items table to avoid loops to check if packed item row exists
- Reset packed items if row deletion takes place
- Renamed functions to self-explain them
- Split long function
- Reduce function calls inside function (makes it harder to follow through)
- SO Portal: fixed missing images issue
- SO Portal: fallback state when no images
- SO Portal: code indentation in `order_macros.html`
- SO Portal: Actions and indicator font size
- Recommendations: fixed space between image and title
- Recommendations: give empty image state min height
- Checkbox in website item to indicate if item is on backorder
- Indicator on listing on full page if availbale on backorder.
- fix: Allow provision to add any valid field from Website Item in Search Index
- fix: Settings filter fields are as per Item, make as per Website Item
- "Add to quote/ Go to Quote" if cart checkout is disabled
- Added bg (variable) to pages, card space separation visible
- Removed `show brand line` in settings, shown by default
- Re-arranged settings by importance
- View toggling primary colour is grey
- Only populate recent searches on successful search
- Hit only one server side api, once while searching
- List view primary button float right
- Discounts takes upper limit eg. 10% and below
- Navbar icons only wiggle on qty increase in cart/wishlist
- Pay button in SO portal
- Remove bottom white space below item full page image, min-height fits to content
- List view vertical space between heading and item code
- Empty offer subtitle handled
- Incorrect path and Settings in price_list.py import due to merge
- Extra space removed in website_item.py
- Changed client side namespace to `erpnext.e_commerce.*`
- `get_doc` -> `get_values` and `db.sql` -> `db.delete` in Wishlist Item deletion
- cache first page of Item Reviews and burst cache on addition and deletion of reviews
- Update redisearch docs link in E Commerce Settings
- Removed unused cint import
- Broke setting attribute context into smaller functions and code cleanup
- Minor recommended items padding tweak
- Item reviews form dict now uses website item as key
- Customer reviews rendered from UI style consistency
- Stock status consistency in listing and full page
- Handle no price in variant dialog for matched item
- Removed `Home Page is Products` checkbox in E Comm Settings. Can be manually set in Website Settings
- Removed hooks trigger to reset home page as products
- Sider: duplicate color attribute, shift `return` to next line, over-indentation
- Test for ProductQuery engine and ProductFilters engine
- Test for engine for Item Group too
- Renamed ‘product_configurator’ to ‘variant_selector’
- Cleaned up filters.py
- Modal freeze backdrop lighter only in cart, since there’s nothing over it
- Fixed unusual spacing in variant selector dialog
- Made `get_child_groups_for_website` more readable
- Replaced ‘Configure’ with ‘Select’ for variant selection
- Show error state in case of unexpected errors in query engine
- Pass args appropriately from `view.js`
- Use args correctly in `api.py`
- Error handling in `api.py` if query engine raises error
- Instantiated product data engine tests
- Fix dotted path for search api call in `search.js`