awsss 2 years ago
parent
commit
82475a5e70
  1. 7
      smart_service/masters/doctype/vehicle/vehicle.js
  2. 98
      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 (regex.test(frm.doc.display_order) === true) {
frappe.throw(__("<b>Display Order:</b> negative values not allowed."));
frappe.validated = false;
if (frm.doc.display_order <= 0) {
frappe.throw(__("<b>Display Order:</b> negative values or 0 not allowed."));
frappe.validated = false;
}
if (frm.doc.display_order && frm.doc.vehicle && frm.doc.vehicle_segment && !frm.is_new()) {

98
smart_service/masters/doctype/vehicle_segment/vehicle_segment.js

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

Loading…
Cancel
Save