Browse Source

Kilometer mapping duplicat feature

master
venkataakhil 11 months ago
parent
commit
107fde3738
  1. 136
      smart_service/transactions/doctype/kilometer_mapping/kilometer_mapping.js
  2. 16
      smart_service/transactions/doctype/kilometer_mapping/kilometer_mapping.py

136
smart_service/transactions/doctype/kilometer_mapping/kilometer_mapping.js

@ -17,8 +17,8 @@ frappe.ui.form.on('Kilometer Mapping', {
$("a:contains(Copy to Clipboard)").css({ 'pointer-events': 'none' }),
$("a:contains(Duplicate)").css({ 'pointer-events': 'none' });
}),
//IDX make read only
$('div[data-fieldname=config_kilometer]').find('div[class=form-grid]').find('div[class=grid-heading-row]').find('div[class="row-index sortable-handle col col-xs-1"]').find('input[class="grid-row-check pull-left"]').css({ 'visibility': 'hidden' });
//IDX make read only
$('div[data-fieldname=config_kilometer]').find('div[class=form-grid]').find('div[class=grid-heading-row]').find('div[class="row-index sortable-handle col col-xs-1"]').find('input[class="grid-row-check pull-left"]').css({ 'visibility': 'hidden' });
frm.get_field('config_kilometer').grid.cannot_add_rows = true;
frm.get_field("config_kilometer").grid.df.cannot_delete_rows = true;
frm.get_field("config_kilometer").grid.df.cannot_delete_rows = true;
@ -56,6 +56,67 @@ frappe.ui.form.on('Kilometer Mapping', {
},
validate: function (frm) {
// //custom button
// frm.add_custom_button(__("Duplicate Data"), function () {
// let d = new frappe.ui.Dialog({
// title: 'Choose the variant',
// fields: [
// {
// label: 'Variant',
// fieldname: 'variant',
// fieldtype: 'Link',
// options: "Kilometer Mapping"
// },
// {
// label: '',
// fieldname: 'content_html',
// fieldtype: 'HTML',
// },
// ],
// size: 'small',
// secondary_action_label: "No",
// primary_action_label: 'Yes',
// primary_action(values) {
// console.log(values);
// if (values) {
// if (frm.doc.config_kilometer && frm.doc.config_kilometer.length > 0) {
// cur_frm.clear_table("config_kilometer");
// cur_frm.refresh_fields('config_kilometer');
// }
// 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();
// }
// },
// secondary_action(values) {
// d.hide();
// }
// });
// d.show();
// var res = $(d.fields_dict.content_html.wrapper).empty();
// var ret = "<p>Upload the Kilometer</p>"
// res.append(ret)
// }).css({ "color": "#fff", "background-color": "red" });;
// //end
frm.doc.kilometer_filter = "All";
if (frm.doc.kilometer_filter == "All") {
frm.get_field('config_kilometer').grid.static_rows = false;
@ -68,6 +129,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) => {
@ -133,7 +253,7 @@ frappe.ui.form.on('Kilometer Mapping', {
kilometer_set.push(kmsrow.service_kilometers);
});
frm.set_df_property('kilometer_filter', 'options', kilometer_set);
$.each(kmrecord, function (index, kmrow) {
$.each(kmrecord, function (index, kmrow) {
frappe.call({
"method": "smart_service.transactions.doctype.kilometer_mapping.kilometer_mapping.get_system",
@ -186,13 +306,13 @@ frappe.ui.form.on('Kilometer Mapping', {
}
if (frm.doc.sub_system_filter == "All" && frm.doc.kilometer_filter == "All") {
frm.get_field('config_kilometer').grid.static_rows = false;
frm.fields_dict.config_kilometer.grid.grid_rows.forEach((row) => {
frm.get_field('config_kilometer').grid.static_rows = false;
frm.fields_dict.config_kilometer.grid.grid_rows.forEach((row) => {
$("div[data-fieldname=config_kilometer]").find('div.grid-row[data-idx="' + row.doc.idx + '"]').show();
});
} else {
frm.get_field('config_kilometer').grid.static_rows = false;
frm.fields_dict.config_kilometer.grid.grid_rows.forEach((row) => {
frm.get_field('config_kilometer').grid.static_rows = false;
frm.fields_dict.config_kilometer.grid.grid_rows.forEach((row) => {
if (row.doc.kilometer == frm.doc.kilometer_filter && row.doc.sub_systems == frm.doc.sub_system_filter) {
$("div[data-fieldname=config_kilometer]").find('div.grid-row[data-idx="' + row.doc.idx + '"]').show();
} else if (row.doc.kilometer == frm.doc.kilometer_filter && frm.doc.sub_system_filter == "All") {
@ -218,7 +338,7 @@ frappe.ui.form.on('Kilometer Mapping', {
item.idx = idx++;
});
if (frm.doc.temp_field == "Set") { frm.set_value("temp_field", "Not Set"); } else { frm.set_value("temp_field", "Set"); }
refresh_field("config_kilometer");
refresh_field("config_kilometer");
}
});

16
smart_service/transactions/doctype/kilometer_mapping/kilometer_mapping.py

@ -34,3 +34,19 @@ def get_subsystem(doc):
doc = frappe.get_doc("System Mapping",s.name)
sub_system = frappe.db.sql("""select sub_systems,mat,idx from {0}.`tabSystem Mapping_Sub System` where parent = '{1}' and procedure_is_published = '0'""".format(current_db_name,s.name),as_dict=True)
return sub_system
@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