Rev 26836 | Rev 27187 | Go to most recent revision | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed
function formLoaded() {$("form#cd input").each(function() {$(this).attr('autocomplete', 'off');});$('form#cd').validate({rules : {name : {required : true},email : {required : true,email : true},line1 : {required : true},state : {required : true},city : {required : true},pincode : {required : true,digits : true,minlength : 6,maxlength : 6,},phone : {required : true,minlength : 10,maxlength : 10,digits : true},},messages : {name : {required : "Required"},line1 : {required : "Required"},state : {required : "State required"},city : {required : "City required"},email : {require : "Required"},pincode : {required : "Required",digits : "Invalid pin"},phone : {required : "Required",digits : "Invalid number",minlength : "Number should be of 10 digits"}},submitHandler : function(form, event) {event.preventDefault();var payload = orderDetailsPayload();if (!validateOrderDetails()) {alert("Please fix highlighted errors");return false;}doPostAjaxRequestWithJsonHandler(context + "/create-order",payload, function(response) {emptyBag();$('#main-content').html(response);});return false; // required to block normal submit since you// used// ajax}});$("input.unitPrice").on('change',function() {var $element = $(this);var unitPrice = parseFloat($element.val());if (!isNaN(unitPrice)) {var itemType = parseFloat($(this).closest('tr').find('.serialNumber').attr("itemType"));var mopPrice = parseFloat($(this).attr('mopPrice'));var dp = parseFloat($(this).attr('dp'));var mrp = parseFloat($(this).attr('mrp'));if (mrp != 0 && unitPrice > mrp) {alert("Selling Price should not be greater than MRP");$element.addClass("border-highlight");} else if (!accessoriesDeals&& unitPrice < mopPrice) {alert("Selling Price must be greater than equal to MOP");$element.addClass("border-highlight");} else if (itemType == 'SERIALIZED'&& unitPrice < mopPrice) {alert("Selling Price must be greater than equal to MOP");$element.addClass("border-highlight");} else if (itemType == 'NON_SERIALIZED'&& unitPrice < dp) {alert("Selling Price must be greater than equal to DP");$element.addClass("border-highlight");} else {$element.removeClass("border-highlight");}// Clear insurance values if price changes$(this).closest('tr').find('.insuranceid').val("");$(this).closest('tr').find('.insuranceamount').val("0");}calculateTotalAmount();});$("input.phone").change(function() {console.log("phone blur called");var mobileNumber = $(this).val();if (mobileNumber.length < 10) {return;}writeOldCustomerDetailsByMobileNumber(mobileNumber);});}function validateOrderDetails() {var sNumbers = [];var error = false;$("form#cd input.serialNumber").each(function() {var input = $(this).val().trim();var itemType = $(this).attr("itemType");$(this).removeClass("border-highlight");if (sNumbers.indexOf(input) != -1|| (itemType === 'SERIALIZED' && !input)) {error = true;$(this).addClass("border-highlight");}sNumbers.push(input);});$("form#cd input.unitPrice").each(function() {var input = $(this).val().trim();$(this).removeClass("border-highlight");if (!input || parseInt(input) <= 0 || isNaN(input)) {error = true;$(this).addClass("border-highlight");}});var gstNumber = $("form#cd input[name=gstNumber]").val();$("form#cd input[name=gstNumber]").removeClass("border-highlight");if (gstNumber.length > 0 && gstNumber.length != 15) {alert("Please provide valid gstNumber");error = true;$("form#cd input[name=gstNumber]").addClass("border-highlight");}var amount = 0;var netPayableAmount = parseFloat($("form#cd input.netPayableAmount").val());$("form#cd input.amount").each(function() {if ($(this).val() == "") {$(this).val(0);}var tmpAmount = parseFloat($(this).val());amount = amount + tmpAmount;});console.log(amount);console.log(netPayableAmount);if (amount != netPayableAmount) {if (amount < netPayableAmount) {alert("[" + (netPayableAmount - amount)+ "] is more required to complete the payment");} else {alert("[" + (amount - netPayableAmount)+ "] is extra amount, please reduce the amount");}$("form#cd input.netPayableAmount").each(function() {$(this).addClass("border-highlight");});error = true;}if (error) {return false;}return true;}function getSerialNumbersFromOrder($el) {var $serialNumberElement = $el.find('.serialNumber');if ($serialNumberElement.val() == '') {return null;}var insuranceAmount = parseFloat($el.find('.insuranceamount').val());if (insuranceAmount > 0) {insurance = true;globalInsurace = true;} else {insurance = false;}return {'serialNumber' : $serialNumberElement.val(),'insurance' : insurance,'amount' : insuranceAmount}}function orderDetailsPayload() {var orderObj = {};var priceQtyArray = [];var customerObj = {};var paymentOptionIdAmount = [];var globalInsurance = false;$("form#cd input.serialNumber").each(function() {var itemId = parseInt($(this).attr("itemId"));if (orderObj.hasOwnProperty('fofoOrderItems')) {var itemDetails = orderObj['fofoOrderItems'];if (itemDetails.hasOwnProperty(itemId)) {var serialNumbers = itemDetails[itemId];serialNumbers.push($(this).val());itemDetails[itemId] = serialNumbers;} else {var serialNumbers = [];serialNumbers.push($(this).val());itemDetails[itemId] = serialNumbers;}} else {var serialNumbers = [];serialNumbers.push($(this).val());var tmp = {};tmp[itemId] = serialNumbers;orderObj['fofoOrderItems'] = tmp;}});console.log(JSON.stringify(orderObj));$("#order-details").find("tr:not(:first-child)").each(function(index, el) {// console.log(el);// console.log(index);var $el = $(el);var $unitPriceElement = $el.find('.unitPrice');var itemId = parseInt($unitPriceElement.attr("itemId"));var unitPrice = parseFloat($unitPriceElement.val());var qty = parseInt($unitPriceElement.attr("quantity"));var tmpObj = {'itemId' : itemId,'sellingPrice' : unitPrice,'quantity' : qty};if (orderObj['fofoOrderItems'][itemId] === undefined) {tmpObj['serialNumberDetails'] = [];} else {// tmpObj['serialNumbers'] =// orderObj['fofoLineItems'][itemId];tmpObj['serialNumberDetails'] = [];}var found = false;for (var i = 0; i < priceQtyArray.length; i++) {if (priceQtyArray[i]["itemId"] == itemId) {priceQtyArray[i]["quantity"] = priceQtyArray[i]["quantity"] + 1;found = true;break;}}if (!found) {priceQtyArray.push(tmpObj);}});$("#order-details").find("tr:not(:first-child)").each(function(index, el) {// console.log(el);// console.log(index);var $serialNumberElement = $(el).find('.serialNumber');var itemId = parseInt($serialNumberElement.attr("itemId"));var insuranceEle = $(el).find('.insuranceamount');var insuranceAmount = 0;if (insuranceEle.length > 0) {insuranceAmount = parseFloat(insuranceEle.val());}var insuranceId = "";if (insuranceAmount > 0) {insuranceId = $(el).find('.insuranceid').val();}var ram = $(el).find('.ram').val();var memory = $(el).find('.memory').val();var mfgdate = $(el).find('.mfgdate').val();var serialNumberDetails = {'serialNumber' : $serialNumberElement.val(),'insurance' : insuranceId,'amount' : insuranceAmount,'ram' : ram,'memory' : memory,'mfgDate' : mfgdate};priceQtyArray[index]['serialNumberDetails'].push(serialNumberDetails);});customerObj['firstName'] = $("form#cd input[name=firstName]").val();customerObj['lastName'] = $("form#cd input[name=lastName]").val();customerObj['mobileNumber'] = $("form#cd input[name=phone]").val();customerObj['emailId'] = $("form#cd input[name=email]").val();customerObj['gstNumber'] = $("form#cd input[name=gstNumber]").val();// customerObj['dateOfBirth'] = startDate;var customerAddress = {};customerAddress['name'] = $("form#cd input[name=firstName]").val() + " "+ $("form#cd input[name=lastName]").val();customerAddress['line1'] = $("form#cd input[name=line1]").val();customerAddress['line2'] = $("form#cd input[name=line2]").val();customerAddress['landmark'] = $("form#cd input[name=landmark]").val();customerAddress['city'] = $("form#cd input[name=city]").val();customerAddress['state'] = $('select[name=state] option:selected').val();customerAddress['pinCode'] = $("form#cd input[name=pinCode]").val();customerAddress['phoneNumber'] = $("form#cd input[name=alternatePhone]").val();customerAddress['country'] = "India";customerObj['customerAddressId'] = parseInt($("form#cd input[name=phone]").attr("addressId"));customerObj['address'] = customerAddress;customerObj['gender'] = $("#gender").val();customerObj['dateOfBirth'] = startDate;localStorage.setItem("customerDetails", JSON.stringify(customerObj));var paymentOptionSize = parseInt($('#payment-option-id-amount-container').attr("paymentOptionSize"));// console.log("paymentOptionSize = "+paymentOptionSize);for (var index = 0; index < paymentOptionSize; index++) {var paymentOptionAmount = 0.0;if ($('#paymentOptionIdAmount' + index).val() != "") {paymentOptionAmount = parseFloat($('#paymentOptionIdAmount' + index).val());}var paymentOptionId = $('#paymentOptionIdAmount' + index).attr("paymentOptionId");var paymentOptionIdAmountObject = {};paymentOptionIdAmountObject['paymentOptionId'] = paymentOptionId;paymentOptionIdAmountObject['amount'] = paymentOptionAmount;paymentOptionIdAmount.push(paymentOptionIdAmountObject);}console.log(JSON.stringify(paymentOptionIdAmount));var retObj = {};retObj['fofoOrderItems'] = (priceQtyArray);retObj['customer'] = (customerObj);retObj['paymentOptions'] = (paymentOptionIdAmount);var pendingOrder = localStorage.getItem("pendingOrderId");penOrd = JSON.parse(pendingOrder);retObj['pendingOrderId'] = penOrd['pendingOrderId']console.log(retObj);return JSON.stringify(retObj);}function writeOldCustomerDetailsByMobileNumber(mobileNumber) {doAjaxRequestHandler(context + "/customer/mobileNumber?mobileNumber="+ mobileNumber, "GET", function(response) {if (response.response == '') {return;}var customer = response.response;$('#firstName').attr('value', customer.firstName);$('#lastName').attr('value', customer.lastName);$('#email').attr('value', customer.emailId);// $('#phone').attr('value', customer.mobileNumber);if (customer.address !== null) {$('#alternatePhone').val(customer.address.phoneNumber);$('#line1').val(customer.address.line1);$('#line2').val(customer.address.line2);$('#landmark').val(customer.address.landmark);$('#pinCode').val(customer.address.pinCode);$('#city').val(customer.address.city);$('#state').val(customer.address.state);$('#phone').attr('addressId', customer.address.id);}// $('#state').val(customer.address.state).prop('selected', true);});}