* added valuation rate and gross_profit in quotation item table
* modified code to not fetch valuation_rate manually, used set_gross_profit from selling controller
* fix: Validation for target warehouse
* feat: Get items on valuation rate in delivery note on Internal transfers
* fix: Create Inter company purchase receipt from delivery note
* feat: Inter company stock transfer on valuation rate with taxation
* fix: Add from warehouse in purchase invoice
* fix: Use get_value instead of get_cached_value
* fix: Get incoming rate instead of valuation rate
* fix: GL entry for from warehouse in purchase receipt
* fix: GL Entries fixes in purchase invoice
* fix: Address and tax fetching fixes
* fix: Add test case for stock transfer via purchase receipt
* fix: Code cleanup, added validations and test cases
* fix: Validation for supplier warehouse
* fix: Test Cases
* fix: Change validation condition
* fix: Address fixes while creating Purchase Receipt from delivery note
* fix: Set taxes while creating Purchase Receipt from Delivery Note
* fix: Update set_missing_value function
Co-authored-by: Nabin Hait <nabinhait@gmail.com>
* fix: Duplicate items check in sales Invoice
* fix: Commonified function for duplicate items check in selling controller
* fix: Set valuation rate and transaction date in child tabel
* fix: merge conflict
* fix: restored missing set_gst_state_and_state_number function
* fix: style linting as per codacy
* fix: Fixes related to customer/lead merging
* fix: merge conflict
* fix: Fixes related to customer/lead merging
* fix: Assign isue/opportunity to user
* fix: Assign isue/opportunity to user
* fix: Replaced Invoice type by GST Category
* fix: merge conflict
* fix: merge conflict
* fix: test cases
* fix: test cases
* [optimize]: bin updates
* [optimise]: use frappe.get_cached_value instead of get_value for item
* [fix]: change db.get_cached_value to get_cached_value
* validate items to see if they are saleable
* check if items are subcontractable or saleable
* improvise name,error message and code
Validate type function validates item if they are of proper type for that transaction and throws descriptive error.