fix: Usability fixes to Serial No and batch selector (#18071)
* fix: Usability fixes to Serial No and batch selector * fix: Codacy * Update sales_common.js
This commit is contained in:
parent
a15d100cbd
commit
fb29ffc90c
@ -44,6 +44,13 @@ erpnext.SerialNoBatchSelector = Class.extend({
|
||||
label: __(me.warehouse_details.type),
|
||||
default: me.warehouse_details.name,
|
||||
onchange: function(e) {
|
||||
|
||||
if(me.has_batch) {
|
||||
fields = fields.concat(me.get_batch_fields());
|
||||
} else {
|
||||
fields = fields.concat(me.get_serial_no_fields());
|
||||
}
|
||||
|
||||
me.warehouse_details.name = this.get_value();
|
||||
var batches = this.layout.fields_dict.batches;
|
||||
if(batches) {
|
||||
@ -263,6 +270,15 @@ erpnext.SerialNoBatchSelector = Class.extend({
|
||||
|
||||
get_batch_fields: function() {
|
||||
var me = this;
|
||||
|
||||
let filters = {
|
||||
item_code: me.item_code
|
||||
}
|
||||
|
||||
if (me.warehouse || me.warehouse_details.name) {
|
||||
filters['warehouse'] = me.warehouse || me.warehouse_details.name;
|
||||
}
|
||||
|
||||
return [
|
||||
{fieldtype:'Section Break', label: __('Batches')},
|
||||
{fieldname: 'batches', fieldtype: 'Table', label: __('Batch Entries'),
|
||||
@ -276,8 +292,8 @@ erpnext.SerialNoBatchSelector = Class.extend({
|
||||
'in_list_view': 1,
|
||||
get_query: function () {
|
||||
return {
|
||||
filters: { item: me.item_code },
|
||||
query: 'erpnext.controllers.queries.get_batch_numbers'
|
||||
filters: filters,
|
||||
query: 'erpnext.controllers.queries.get_batch_no'
|
||||
};
|
||||
},
|
||||
change: function () {
|
||||
|
@ -229,6 +229,9 @@ erpnext.selling.SellingController = erpnext.TransactionController.extend({
|
||||
},
|
||||
callback:function(r){
|
||||
if (in_list(['Delivery Note', 'Sales Invoice'], doc.doctype)) {
|
||||
|
||||
if (doc.doctype === 'Sales Invoice' && (!doc.update_stock)) return;
|
||||
|
||||
me.set_batch_number(cdt, cdn);
|
||||
me.batch_no(doc, cdt, cdn);
|
||||
}
|
||||
@ -372,13 +375,18 @@ erpnext.selling.SellingController = erpnext.TransactionController.extend({
|
||||
this._super(doc, cdt, cdn, dont_fetch_price_list_rate);
|
||||
if(frappe.meta.get_docfield(cdt, "stock_qty", cdn) &&
|
||||
in_list(['Delivery Note', 'Sales Invoice'], doc.doctype)) {
|
||||
this.set_batch_number(cdt, cdn);
|
||||
}
|
||||
if (doc.doctype === 'Sales Invoice' && (!doc.update_stock)) return;
|
||||
this.set_batch_number(cdt, cdn);
|
||||
}
|
||||
},
|
||||
|
||||
qty: function(doc, cdt, cdn) {
|
||||
this._super(doc, cdt, cdn);
|
||||
this.set_batch_number(cdt, cdn);
|
||||
|
||||
if(in_list(['Delivery Note', 'Sales Invoice'], doc.doctype)) {
|
||||
if (doc.doctype === 'Sales Invoice' && (!doc.update_stock)) return;
|
||||
this.set_batch_number(cdt, cdn);
|
||||
}
|
||||
},
|
||||
|
||||
/* Determine appropriate batch number and set it in the form.
|
||||
|
Loading…
x
Reference in New Issue
Block a user