mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-01 03:09:09 +00:00
Merge pull request #50294 from rohitwaghchaure/fixedd-github-48221
fix: pause button not working for sub-operation
This commit is contained in:
@@ -199,7 +199,10 @@ frappe.ui.form.on("Job Card", {
|
|||||||
last_row = get_last_row(frm.doc.time_logs);
|
last_row = get_last_row(frm.doc.time_logs);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!frm.doc.time_logs?.length || (frm.doc.sub_operations?.length && last_row?.to_time)) {
|
if (
|
||||||
|
(!frm.doc.time_logs?.length || (frm.doc.sub_operations?.length && last_row?.to_time)) &&
|
||||||
|
!frm.doc.is_paused
|
||||||
|
) {
|
||||||
frm.add_custom_button(__("Start Job"), () => {
|
frm.add_custom_button(__("Start Job"), () => {
|
||||||
let from_time = frappe.datetime.now_datetime();
|
let from_time = frappe.datetime.now_datetime();
|
||||||
if ((frm.doc.employee && !frm.doc.employee.length) || !frm.doc.employee) {
|
if ((frm.doc.employee && !frm.doc.employee.length) || !frm.doc.employee) {
|
||||||
@@ -327,6 +330,26 @@ frappe.ui.form.on("Job Card", {
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
if (frm.doc.sub_operations?.length) {
|
||||||
|
fields.push({
|
||||||
|
fieldtype: "Link",
|
||||||
|
label: __("Sub Operation"),
|
||||||
|
fieldname: "sub_operation",
|
||||||
|
options: "Operation",
|
||||||
|
get_query() {
|
||||||
|
let non_completed_operations = frm.doc.sub_operations.filter(
|
||||||
|
(d) => d.status === "Pending"
|
||||||
|
);
|
||||||
|
return {
|
||||||
|
filters: {
|
||||||
|
name: ["in", non_completed_operations.map((d) => d.sub_operation)],
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
reqd: 1,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
let last_completed_row = get_last_completed_row(frm.doc.time_logs);
|
let last_completed_row = get_last_completed_row(frm.doc.time_logs);
|
||||||
let last_row = {};
|
let last_row = {};
|
||||||
if (frm.doc.sub_operations?.length && frm.doc.time_logs?.length) {
|
if (frm.doc.sub_operations?.length && frm.doc.time_logs?.length) {
|
||||||
@@ -356,6 +379,7 @@ frappe.ui.form.on("Job Card", {
|
|||||||
qty: data.completed_qty,
|
qty: data.completed_qty,
|
||||||
for_quantity: data.for_quantity,
|
for_quantity: data.for_quantity,
|
||||||
end_time: data.end_time,
|
end_time: data.end_time,
|
||||||
|
sub_operation: data.sub_operation,
|
||||||
},
|
},
|
||||||
callback: function (r) {
|
callback: function (r) {
|
||||||
frm.reload_doc();
|
frm.reload_doc();
|
||||||
|
|||||||
@@ -643,7 +643,7 @@ class JobCard(Document):
|
|||||||
op_row.employee.append(time_log.employee)
|
op_row.employee.append(time_log.employee)
|
||||||
if time_log.time_in_mins:
|
if time_log.time_in_mins:
|
||||||
op_row.completed_time += time_log.time_in_mins
|
op_row.completed_time += time_log.time_in_mins
|
||||||
op_row.completed_qty += time_log.completed_qty
|
op_row.completed_qty += flt(time_log.completed_qty)
|
||||||
|
|
||||||
for row in self.sub_operations:
|
for row in self.sub_operations:
|
||||||
operation_deatils = operation_wise_completed_time.get(row.sub_operation)
|
operation_deatils = operation_wise_completed_time.get(row.sub_operation)
|
||||||
@@ -1224,6 +1224,8 @@ class JobCard(Document):
|
|||||||
|
|
||||||
row.to_time = kwargs.to_time
|
row.to_time = kwargs.to_time
|
||||||
row.time_in_mins = time_diff_in_minutes(row.to_time, row.from_time)
|
row.time_in_mins = time_diff_in_minutes(row.to_time, row.from_time)
|
||||||
|
if kwargs.get("sub_operation"):
|
||||||
|
row.operation = kwargs.get("sub_operation")
|
||||||
|
|
||||||
if kwargs.employees[-1].get("employee") == row.employee:
|
if kwargs.employees[-1].get("employee") == row.employee:
|
||||||
row.completed_qty = kwargs.completed_qty
|
row.completed_qty = kwargs.completed_qty
|
||||||
@@ -1276,7 +1278,12 @@ class JobCard(Document):
|
|||||||
kwargs = frappe._dict(kwargs)
|
kwargs = frappe._dict(kwargs)
|
||||||
|
|
||||||
if kwargs.end_time:
|
if kwargs.end_time:
|
||||||
self.add_time_logs(to_time=kwargs.end_time, completed_qty=kwargs.qty, employees=self.employee)
|
self.add_time_logs(
|
||||||
|
to_time=kwargs.end_time,
|
||||||
|
completed_qty=kwargs.qty,
|
||||||
|
employees=self.employee,
|
||||||
|
sub_operation=kwargs.get("sub_operation"),
|
||||||
|
)
|
||||||
|
|
||||||
if kwargs.for_quantity:
|
if kwargs.for_quantity:
|
||||||
self.for_quantity = kwargs.for_quantity
|
self.for_quantity = kwargs.for_quantity
|
||||||
|
|||||||
Reference in New Issue
Block a user