Browse Source

Kilometer duplicate fetcg from feature

version2
venkataakhil 11 months ago
parent
commit
db4f959cb7
  1. 63
      smart_service/transactions/doctype/kilometer_mapping/kilometer_mapping.js
  2. 17
      smart_service/transactions/doctype/kilometer_mapping/kilometer_mapping.py

63
smart_service/transactions/doctype/kilometer_mapping/kilometer_mapping.js

@ -13,8 +13,9 @@ frappe.ui.form.on('Kilometer Mapping', {
},
onload: function (frm) {
$(document).on('mouseover', function (events) {
$("a:contains(Copy to Clipboard)").css({ 'pointer-events': 'none' }),
$("a:contains(Copy to Clipboard)").css({ 'pointer-events': 'none' })
$("a:contains(Duplicate)").css({ 'pointer-events': 'none' });
}),
//IDX make read only
@ -56,6 +57,7 @@ frappe.ui.form.on('Kilometer Mapping', {
},
validate: function (frm) {
frm.doc.kilometer_filter = "All";
if (frm.doc.kilometer_filter == "All") {
frm.get_field('config_kilometer').grid.static_rows = false;
@ -68,6 +70,65 @@ frappe.ui.form.on('Kilometer Mapping', {
},
refresh: function (frm) {
//custom button
frm.add_custom_button(__("Duplicate Data"), function () {
let d = new frappe.ui.Dialog({
title: 'Choose the variant',
fields: [
{
label: 'Kilometer Mapping',
fieldname: 'variant',
fieldtype: 'Link',
options: "Kilometer Mapping",
reqd:1
}
],
size: 'small',
secondary_action_label: "No",
primary_action_label: 'Yes',
primary_action(values) {
console.log(values.variant);
if (values.variant) {
console.log("calling")
cur_frm.refresh_fields("config_kilometer");
frappe.call({
"method": "smart_service.transactions.doctype.kilometer_mapping.kilometer_mapping.get_config_kilometer",
"args": {
"doc": values.variant,
"docname": frm.doc.name
},
callback: function (r) {
if (r.message && r.message.length > 0) {
cur_frm.refresh_fields("config_kilometer");
frm.save()
frm.refresh()
}
}
})
d.hide();
}
else{
d.hide()
}
},
secondary_action(values) {
d.hide();
}
});
d.show();
setTimeout(function mysam() {
console.log("jiiii", $('.modal-dialog').find('.custom-actions').html('<p>Are you sure to update the kilometer mapping?</p>'))
$('.modal-dialog').find('.custom-actions').html('<p>Are you sure to update the <b>kilometer mapping</b>?</p>')
}
, 300);
// var res = $(d.fields_dict.content_html.wrapper).empty();
// var ret="<p>Are you sure to update the kilometer mapping ?</p>"
// res.append(ret)
}).css({ "color": "#fff", "background-color": "red" });;
//end
if (frm.doc.kilometer_filter == "All") {
frm.get_field('config_kilometer').grid.static_rows = false;
frm.fields_dict.config_kilometer.grid.grid_rows.forEach((row) => {

17
smart_service/transactions/doctype/kilometer_mapping/kilometer_mapping.py

@ -4,6 +4,7 @@
import frappe
from frappe.model.document import Document
import sys
from frappe import _
sys.tracebacklimit=0
class KilometerMapping(Document):
@ -51,3 +52,19 @@ def update_duplicate_km(doc,kilometer):
'row_name': data['row_name']
})
km.save(ignore_permissions=True)
@frappe.whitelist()
def get_config_kilometer(doc,docname):
res = frappe.db.sql(f"""select kilometer,mat,sub_systems,applicable,row_name from `tabKilometer Mapping_Items` where parent='{doc}'""",as_dict=1)
ress = frappe.get_doc("Kilometer Mapping",docname)
ress.config_kilometer = []
for d in res:
ress.append("config_kilometer",d)
ress.add_comment(text=_("data added"+str(res)))
ress.save()
frappe.db.commit()
return {"status":"success"}

Loading…
Cancel
Save