fix: fetch from more than one sales order in Maintenance Visit (#26924) (#27187)

* [fix] #26336

* fix(ux): make customer field reqd for fetching SO

Co-authored-by: Pawan Mehta <mehtapawan007@gmail.com>
Co-authored-by: Ankush Menat <ankush@iwebnotes.com>

(cherry picked from commit db69d1dc00)
This commit is contained in:
Frappe PR Bot
2021-08-26 23:03:20 +05:30
committed by GitHub
parent 69d88a9212
commit 25305cbeb3
2 changed files with 12 additions and 6 deletions

View File

@@ -73,12 +73,16 @@ erpnext.maintenance.MaintenanceVisit = frappe.ui.form.Controller.extend({
if (this.frm.doc.docstatus === 0) { if (this.frm.doc.docstatus === 0) {
this.frm.add_custom_button(__('Maintenance Schedule'), this.frm.add_custom_button(__('Maintenance Schedule'),
function () { function () {
if (!me.frm.doc.customer) {
frappe.msgprint(__('Please select Customer first'));
return;
}
erpnext.utils.map_current_doc({ erpnext.utils.map_current_doc({
method: "erpnext.maintenance.doctype.maintenance_schedule.maintenance_schedule.make_maintenance_visit", method: "erpnext.maintenance.doctype.maintenance_schedule.maintenance_schedule.make_maintenance_visit",
source_doctype: "Maintenance Schedule", source_doctype: "Maintenance Schedule",
target: me.frm, target: me.frm,
setters: { setters: {
customer: me.frm.doc.customer || undefined, customer: me.frm.doc.customer,
}, },
get_query_filters: { get_query_filters: {
docstatus: 1, docstatus: 1,
@@ -104,12 +108,16 @@ erpnext.maintenance.MaintenanceVisit = frappe.ui.form.Controller.extend({
}, __("Get Items From")); }, __("Get Items From"));
this.frm.add_custom_button(__('Sales Order'), this.frm.add_custom_button(__('Sales Order'),
function () { function () {
if (!me.frm.doc.customer) {
frappe.msgprint(__('Please select Customer first'));
return;
}
erpnext.utils.map_current_doc({ erpnext.utils.map_current_doc({
method: "erpnext.selling.doctype.sales_order.sales_order.make_maintenance_visit", method: "erpnext.selling.doctype.sales_order.sales_order.make_maintenance_visit",
source_doctype: "Sales Order", source_doctype: "Sales Order",
target: me.frm, target: me.frm,
setters: { setters: {
customer: me.frm.doc.customer || undefined, customer: me.frm.doc.customer,
}, },
get_query_filters: { get_query_filters: {
docstatus: 1, docstatus: 1,

View File

@@ -718,8 +718,7 @@ def make_maintenance_schedule(source_name, target_doc=None):
"doctype": "Maintenance Schedule Item", "doctype": "Maintenance Schedule Item",
"field_map": { "field_map": {
"parent": "sales_order" "parent": "sales_order"
}, }
"add_if_empty": True
} }
}, target_doc) }, target_doc)
@@ -745,8 +744,7 @@ def make_maintenance_visit(source_name, target_doc=None):
"field_map": { "field_map": {
"parent": "prevdoc_docname", "parent": "prevdoc_docname",
"parenttype": "prevdoc_doctype" "parenttype": "prevdoc_doctype"
}, }
"add_if_empty": True
} }
}, target_doc) }, target_doc)