awsss 2 years ago
parent
commit
82475a5e70
  1. 7
      smart_service/masters/doctype/vehicle/vehicle.js
  2. 100
      smart_service/masters/doctype/vehicle_segment/vehicle_segment.js

7
smart_service/masters/doctype/vehicle/vehicle.js

@ -101,10 +101,9 @@ frappe.ui.form.on('Vehicle', {
} }
} }
var regex = /[!@#$%^&*()_+-\=\[\]{};'`"\\|.<>\/?]+/; if (frm.doc.display_order <= 0) {
if (regex.test(frm.doc.display_order) === true) { frappe.throw(__("<b>Display Order:</b> negative values or 0 not allowed."));
frappe.throw(__("<b>Display Order:</b> negative values not allowed.")); frappe.validated = false;
frappe.validated = false;
} }
if (frm.doc.display_order && frm.doc.vehicle && frm.doc.vehicle_segment && !frm.is_new()) { if (frm.doc.display_order && frm.doc.vehicle && frm.doc.vehicle_segment && !frm.is_new()) {

100
smart_service/masters/doctype/vehicle_segment/vehicle_segment.js

@ -4,88 +4,88 @@
var original_display_order = 0; var original_display_order = 0;
var vehicle_count = 0; var vehicle_count = 0;
frappe.ui.form.on('Vehicle Segment', { frappe.ui.form.on('Vehicle Segment', {
onload: function(frm){ onload: function (frm) {
frappe.db.count('Vehicle Segment') frappe.db.count('Vehicle Segment')
.then(count => { .then(count => {
vehicle_count = count + 1; vehicle_count = count + 1;
console.log(vehicle_count) console.log(vehicle_count)
if (frm.is_new()){ if (frm.is_new()) {
frm.set_value("display_order",vehicle_count); frm.set_value("display_order", vehicle_count);
} else { } else {
original_display_order = frm.doc.display_order; original_display_order = frm.doc.display_order;
} }
}); });
}, },
refresh: function(frm) { refresh: function (frm) {
if (frm.is_new()){ if (frm.is_new()) {
frm.set_df_property('display_order', 'read_only', 1); frm.set_df_property('display_order', 'read_only', 1);
} else { } else {
frm.set_df_property('display_order', 'read_only', 0); frm.set_df_property('display_order', 'read_only', 0);
} }
frappe.db.count('Vehicle Segment') frappe.db.count('Vehicle Segment')
.then(count => { .then(count => {
vehicle_count = count + 1; vehicle_count = count + 1;
if (frm.is_new()){ if (frm.is_new()) {
frm.set_value("display_order",vehicle_count); frm.set_value("display_order", vehicle_count);
} else { } else {
original_display_order = frm.doc.display_order; original_display_order = frm.doc.display_order;
} }
}); });
}, },
validate: function(frm) { validate: function (frm) {
if(frm.doc.vehicle_segment){ if (frm.doc.vehicle_segment) {
if (frm.doc.vehicle_segment.length>50){ if (frm.doc.vehicle_segment.length > 50) {
frappe.msgprint("<b>Vehicle Segment:</b> Only <b> 50 </b> characters are allowed") frappe.msgprint("<b>Vehicle Segment:</b> Only <b> 50 </b> characters are allowed")
validated = false; validated = false;
} }
if (frm.doc.vehicle_segment.length == 1){ if (frm.doc.vehicle_segment.length == 1) {
frappe.msgprint("<b>Vehicle Segment:</b> Single character not allowed") frappe.msgprint("<b>Vehicle Segment:</b> Single character not allowed")
validated = false; validated = false;
} }
}
if (frm.doc.vehicle_segment == "."){
frappe.throw(__("Just a <b>.</b> is not prescribed!"));
frappe.validated = false;
}
var regex = /[!@#$%^&*()_+-\=\[\]{};'`"\\|.<>\/?]+/;
if (regex.test(frm.doc.display_order) === true) {
frappe.throw(__("<b>Display Order:</b> negative values not allowed."));
frappe.validated = false;
} }
var regex = /[!@#$%^&*()_+\-=\[\]{};'`~:"\\|,.<>\/?]+/; if (frm.doc.vehicle_segment == ".") {
if(frm.doc.vehicle_segment){ frappe.throw(__("Just a <b>.</b> is not prescribed!"));
if (regex.test(frm.doc.vehicle_segment) === true){
frappe.throw(__("<b>Vehicle Segment:</b> Only letters and numbers are allowed"));
frappe.validated = false; frappe.validated = false;
} else if(frm.doc.vehicle_segment) { }
if(frm.doc.vehicle_segment.includes("'")) {
frappe.throw(__("<b>Vehicle Segment:</b> Only letters and numbers are allowed.")); if (frm.doc.display_order <= 0) {
frappe.throw(__("<b>Display Order:</b> negative values not allowed."));
frappe.validated = false;
}
var regex = /[!@#$%^&*()_+\-=\[\]{};'`~:"\\|,.<>\/?]+/;
if (frm.doc.vehicle_segment) {
if (regex.test(frm.doc.vehicle_segment) === true) {
frappe.throw(__("<b>Vehicle Segment:</b> Only letters and numbers are allowed"));
frappe.validated = false; frappe.validated = false;
} else if (frm.doc.vehicle_segment) {
if (frm.doc.vehicle_segment.includes("'")) {
frappe.throw(__("<b>Vehicle Segment:</b> Only letters and numbers are allowed."));
frappe.validated = false;
}
} }
} }
} if (frm.doc.display_order && frm.doc.vehicle_segment && !frm.is_new()) {
if (frm.doc.display_order && frm.doc.vehicle_segment && !frm.is_new()){ //***check if there is same display_order
//***check if there is same display_order
frappe.db.get_list('Vehicle Segment', { frappe.db.get_list('Vehicle Segment', {
fields: ['display_order', 'name'], fields: ['display_order', 'name'],
filters: { filters: {
display_order: frm.doc.display_order, display_order: frm.doc.display_order,
vehicle_segment:["!=",frm.doc.vehicle_segment] vehicle_segment: ["!=", frm.doc.vehicle_segment]
} }
}).then(records => { }).then(records => {
if (records.length){ if (records.length) {
frappe.db.set_value('Vehicle Segment', records[0].name, { frappe.db.set_value('Vehicle Segment', records[0].name, {
display_order: original_display_order display_order: original_display_order
}).then(r => { }).then(r => {
let doc = r.message; let doc = r.message;
frappe.show_alert({ frappe.show_alert({
message:__('Swapped display order with: ' + records[0].name), message: __('Swapped display order with: ' + records[0].name),
indicator:'green' indicator: 'green'
}, 5); }, 5);
}); });
} else { } else {
if (frm.doc.display_order >= vehicle_count){ if (frm.doc.display_order >= vehicle_count) {
let display_vehicle_count = vehicle_count - 1; let display_vehicle_count = vehicle_count - 1;
msgprint('There are only ' + display_vehicle_count + ' Vehicle Segment(s)'); msgprint('There are only ' + display_vehicle_count + ' Vehicle Segment(s)');
frappe.validated = false; frappe.validated = false;
@ -93,5 +93,5 @@ frappe.ui.form.on('Vehicle Segment', {
} }
}); });
} }
} }
}); });

Loading…
Cancel
Save