fix: asset maintenance fixes (#21277)
* fix: asset maintenance fixes * fix: tests
This commit is contained in:
parent
471cf95300
commit
9c494d3e72
@ -24,26 +24,6 @@ frappe.ui.form.on('Asset Maintenance', {
|
|||||||
return indicator;
|
return indicator;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
frm.set_query('select_serial_no', function(doc){
|
|
||||||
return {
|
|
||||||
asset: frm.doc.asset_name
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
select_serial_no: (frm) => {
|
|
||||||
let serial_nos = frm.doc.serial_no || frm.doc.select_serial_no;
|
|
||||||
if (serial_nos) {
|
|
||||||
serial_nos = serial_nos.split('\n');
|
|
||||||
serial_nos.push(frm.doc.select_serial_no);
|
|
||||||
|
|
||||||
const unique_sn = serial_nos.filter(function(elem, index, self) {
|
|
||||||
return index === self.indexOf(elem);
|
|
||||||
});
|
|
||||||
|
|
||||||
frm.set_value("serial_no", unique_sn.join('\n'));
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
refresh: (frm) => {
|
refresh: (frm) => {
|
||||||
@ -93,25 +73,6 @@ frappe.ui.form.on('Asset Maintenance Task', {
|
|||||||
},
|
},
|
||||||
end_date: (frm, cdt, cdn) => {
|
end_date: (frm, cdt, cdn) => {
|
||||||
get_next_due_date(frm, cdt, cdn);
|
get_next_due_date(frm, cdt, cdn);
|
||||||
},
|
|
||||||
assign_to: (frm, cdt, cdn) => {
|
|
||||||
var d = locals[cdt][cdn];
|
|
||||||
if (frm.doc.__islocal) {
|
|
||||||
frappe.model.set_value(cdt, cdn, "assign_to", "");
|
|
||||||
frappe.model.set_value(cdt, cdn, "assign_to_name", "");
|
|
||||||
frappe.throw(__("Please save before assigning task."));
|
|
||||||
}
|
|
||||||
if (d.assign_to) {
|
|
||||||
return frappe.call({
|
|
||||||
method: 'erpnext.assets.doctype.asset_maintenance.asset_maintenance.assign_tasks',
|
|
||||||
args: {
|
|
||||||
asset_maintenance_name: frm.doc.name,
|
|
||||||
assign_to_member: d.assign_to,
|
|
||||||
maintenance_task: d.maintenance_task,
|
|
||||||
next_due_date: d.next_due_date
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -16,12 +16,11 @@ class AssetMaintenance(Document):
|
|||||||
throw(_("Start date should be less than end date for task {0}").format(task.maintenance_task))
|
throw(_("Start date should be less than end date for task {0}").format(task.maintenance_task))
|
||||||
if getdate(task.next_due_date) < getdate(nowdate()):
|
if getdate(task.next_due_date) < getdate(nowdate()):
|
||||||
task.maintenance_status = "Overdue"
|
task.maintenance_status = "Overdue"
|
||||||
|
if not task.assign_to and self.docstatus == 0:
|
||||||
|
throw(_("Row #{}: Please asign task to a member.").format(task.idx))
|
||||||
|
|
||||||
def on_update(self):
|
def on_update(self):
|
||||||
for task in self.get('asset_maintenance_tasks'):
|
for task in self.get('asset_maintenance_tasks'):
|
||||||
if not task.assign_to:
|
|
||||||
task.db_set("assign_to", self.maintenance_manager)
|
|
||||||
task.db_set("assign_to_name", self.maintenance_manager_name)
|
|
||||||
assign_tasks(self.name, task.assign_to, task.maintenance_task, task.next_due_date)
|
assign_tasks(self.name, task.assign_to, task.maintenance_task, task.next_due_date)
|
||||||
self.sync_maintenance_tasks()
|
self.sync_maintenance_tasks()
|
||||||
|
|
||||||
@ -108,7 +107,7 @@ def update_maintenance_log(asset_maintenance, item_code, item_name, task):
|
|||||||
|
|
||||||
@frappe.whitelist()
|
@frappe.whitelist()
|
||||||
def get_team_members(doctype, txt, searchfield, start, page_len, filters):
|
def get_team_members(doctype, txt, searchfield, start, page_len, filters):
|
||||||
return frappe.db.get_values('Maintenance Team Member', {'parent':filters.get("maintenance_team")})
|
return frappe.db.get_values('Maintenance Team Member', { 'parent': filters.get("maintenance_team") })
|
||||||
|
|
||||||
@frappe.whitelist()
|
@frappe.whitelist()
|
||||||
def get_maintenance_log(asset_name):
|
def get_maintenance_log(asset_name):
|
||||||
|
|||||||
@ -125,13 +125,15 @@ def get_maintenance_tasks():
|
|||||||
"start_date": nowdate(),
|
"start_date": nowdate(),
|
||||||
"periodicity": "Monthly",
|
"periodicity": "Monthly",
|
||||||
"maintenance_type": "Preventive Maintenance",
|
"maintenance_type": "Preventive Maintenance",
|
||||||
"maintenance_status": "Planned"
|
"maintenance_status": "Planned",
|
||||||
|
"assign_to": "marcus@abc.com"
|
||||||
},
|
},
|
||||||
{"maintenance_task": "Check Gears",
|
{"maintenance_task": "Check Gears",
|
||||||
"start_date": nowdate(),
|
"start_date": nowdate(),
|
||||||
"periodicity": "Yearly",
|
"periodicity": "Yearly",
|
||||||
"maintenance_type": "Calibration",
|
"maintenance_type": "Calibration",
|
||||||
"maintenance_status": "Planned"
|
"maintenance_status": "Planned",
|
||||||
|
"assign_to": "thalia@abc.com"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user