Subversion Repositories SmartDukaan

Rev

Rev 34516 | View as "text/plain" | Blame | Compare with Previous | Last modification | View Log | RSS feed

$(function() {
        $(document).on('click', ".customer-offer", function() {
                loadCustomerOffer("main-content");
        });


        $(document).on('click', ".samsung-upgrade-offer", function() {
                loadSamsungUpgradeOffer("main-content");
        });

        $(document).on('click', ".createoffer", function() {


                var offerName = $("#offername").val();

                if (offerName === "") {
                        alert("Offer Name is required");
                        return;
                }

                let customerOfferModel = {};
                customerOfferModel['offerName'] = offerName;
                customerOfferModel['startDate'] = getDatesFromPicker('input[name="dateRange"]').startDate,
                        customerOfferModel['endDate'] = getDatesFromPicker('input[name="dateRange"]').endDate,
                        customerOfferModel['partnerCriteria'] = {};
                customerOfferModel['partnerCriteria']['fofoIds'] = ($("#partners").val() || []).map(Number);
                customerOfferModel['partnerCriteria']['excludeFofoIds'] = [];
                let excludeFofoIdChecked = $('input.excludeFofoId').is(':checked');
                if (excludeFofoIdChecked) {
                        customerOfferModel['partnerCriteria']['excludeFofoIds'] = customerOfferModel['partnerCriteria']['fofoIds'];
                        customerOfferModel['partnerCriteria']['fofoIds'] = [];
                }

                customerOfferModel['partnerCriteria']['partnerTypes'] = [];

                customerOfferModel['partnerCriteria']['regionIds'] = ($("select.criteria-warehouseregion").val() || []).map(Number);



                if (confirm("Are you sure you want to create offer!") == true) {
                        doPostAjaxRequestWithJsonHandler(context
                                + "/createCustomerOffer", JSON.stringify(customerOfferModel), function(response) {
                                        if (response = true) {
                                                alert("create  successfully");
                                                loadCustomerOffer("main-content");
                                        }
                                });
                }


        });

        $(document).on('click', "#downloadCustomerOfferTemplate", function() {

                window.location.href = context + "/customerOffer/downloadTemplate";
        });


    $(document).on('click', ".customer-offer-daterange", function () {
        var startDate = getDatesFromPicker('input[name="customerOfferByDateRange"]').startDate;
        var endDate = getDatesFromPicker('input[name="customerOfferByDateRange"]').endDate;

        if (startDate == "" || startDate == undefined) {
            alert("start date is not be empty!!");
            return;
        }
        if (endDate == "" || endDate == undefined) {

            alert("end date is not be empty!!");
            return;
        }
        doGetAjaxRequestHandler(`${context}/getCustomerOffer?startDate=` + startDate + `&endDate=` + endDate, function (response) {
            $('#' + "main-content").html(response);
        });
    });

        $(document).on('click', "#offer-item-search-button", function() {
                var searchText = $("#offer-item-search-text").val();
                var date = $(".schemes-date").val();
                if (typeof (searchText) == "undefined" || !searchText) {
                        searchText = "";
                        alert("please select item");
                        return;
                }
                if (typeof currentItem != "undefined") {
                        console.log(currentItem);

                        doGetAjaxRequestHandler(`${context}/getCustomerOffer?searchModel=` + currentItem, function(response) {
                                $('#' + "main-content").html(response);
                        });
                } else {
                        console.log("reeffff")
                        alert("Data No Found")
                }
        });

        $(document).on('click', ".downloadOffer", function() {
                var id = $(this).data('requestid');

                window.location.href = context + "/customerOfferItem/download?offerId=" + id;
        });


        $(document).on('click', ".extendeDate-button", function() {
                let id = $(this).data('requestid');
                let row = $(this).closest("tr");
                let pickerElement = row.find("input[name = 'extendEndDate']");


                let params = {
                        "id": id,
                        "endDate": getDatesFromPicker(pickerElement).endDate
                }

                console.log(params)
                if (confirm("Are you sure you want extend the offer") == true) {
                        doPostAjaxRequestWithParamsHandler(context
                                + "/extendCustomerOffer", params, function(response) {
                                        row.html(response);
                                });
                }

        });


        $(document).on('input', 'table#offer-customer-table input[type=file]', function() {
                var row = $(this).closest("tr");
                var id = $(row).find("td:eq(0)").text();
                if (confirm('Confirm upload ?')) {
                        var fileSelector = $(this)[0];
                        if (fileSelector != undefined
                                && fileSelector.files[0] != undefined) {
                                var url = `${context}/customerOfferItem/upload?offerId=` + id;
                                console.log(url);
                                var file = this.files[0];
                                console.log("file" + file);
                                let fileInput = $(this);
                                console.log("fileInput" + file);
                                doAjaxUploadRequestHandler(url, 'POST', file, function(response) {
                                        console.log(response)
                                        alert("successfully uploaded");
                                });
                        }
                }
        });


        $(document).on('click', ".upgrade-approved", function() {
                var id = $(this).data('requestid');
                var row = $(this).closest("tr");

                if (confirm("Are you sure you want Approve r!") == true) {
                        doPostAjaxRequestHandler(`${context}/approveSamsungUpgradeOffer?id=${id}`, function(response) {
                                alert("Successfully Approved");
                                row.html(response);
                                return false;
                        });
                }

        });

        $(document).on('click', ".upgrade-rejected", function() {
                let id = $(this).data('requestid');
                if (confirm("Are you sure you want Reject!") == true) {
                        doPostAjaxRequestHandler(`${context}/rejectSamsungUpgradeOffer?id=${id}`, function(response) {
                                if (response == 'true') {
                                        alert("Successfully Rejected");
                                        loadWalletRequest("main-content");
                                }
                                return false;
                        });
                }
        });

        $(document).on('click', ".customerOfferItems", function() {

                var currentRow = $(this).closest("tr");

                var offerId = currentRow.find("td:eq(0)").text();



                doGetAjaxRequestHandler(context + "/getCustomerOfferItem?offerId="
                        + offerId, function(response) {

                                console.log(response)
                                $('#customerOfferItemdetail .modal-content').html(response);

                        });

        });



        $(document).on('click', ".expired-date-button", function() {
                let id = $(this).data('requestid');
                let row = $(this).closest("tr");
                let pickerElement = row.find("input[name = 'expiredEndDate']");
                let params = {
                        "id": id,
                        "endDate": getDatesFromPicker(pickerElement).startDate
                }

                console.log(params)
                if (confirm("Are you sure you want expired the offer") == true) {
                        doPostAjaxRequestWithParamsHandler(context
                                + "/expiredCustomerOfferItem", params, function(response) {
                                        row.html(response);
                                });
                }

        });


        $(document).on('click', ".addOfferItem", function() {

                let offerId = $(this).data('offerid');

                var dealerPayout = $("#dealerPayout").val();

        var offerType = $("#offerType").val();

                var schemePayout = $("#schemePayout").val();

                var additionalInfo = $("#additionalInfo").val();


                if (dealerPayout === "") {
                        alert("Dealer Payout is required");
                        return;
                }

        if (offerType === "") {
            alert("Offer Type is required");
            return;
        }

                if (schemePayout === "") {
                        alert("Scheme Payout is required");
                        return;
                }

                var json = {

                        "catalogId": currentItem,
                        "dealerPayout": dealerPayout,
            "offerType": offerType,
                        "schemePayout": schemePayout,
                        "additionalInfo": additionalInfo,
                        "startDate": getDatesFromPicker('input[name="offerItemDuration"]').startDate,
                        "endDate": getDatesFromPicker('input[name="offerItemDuration"]').endDate,
                        "offerId": offerId


                }

                // STEP 1: Check for existing
                doPostAjaxRequestWithJsonHandler(context + "/CheckIfExistCustomerOfferItem", JSON.stringify(json), function (checkResponse) {

                        IdempotencyKey = uuidv4();
                        if (checkResponse === true || checkResponse === "true") {
                                // Show alert — item exists
                                if (confirm("Are you sure want to upload this offer")) {
                                        confirmAndAddOffer(json);
                                }

                        } else {
                                // Show alert — item exists
                                if (confirm("This item already exists under the offer. Do you want to continue and create it anyway?")) {
                                        if (confirm("Are you sure want to upload this offer")) {
                                                confirmAndAddOffer(json);
                                        }
                                }
                        }
                });

        });

});


function confirmAndAddOffer(json) {
        doPostAjaxRequestWithJsonHandler(context + "/addCustomerOfferItem", JSON.stringify(json), function (response) {
                if (response === true || response === "true") {
                        alert("Created successfully");
                        $('#customerOfferItemdetail').modal('hide');
                        $('.modal-backdrop').remove();
                        loadCustomerOffer("main-content");
                } else {
                        alert("Something went wrong while creating the offer.");
                }
        });
}

function loadCustomerOffer(domId) {

        doGetAjaxRequestHandler(`${context}/getCustomerOffer`, function(response) {
                $('#' + domId).html(response);
        });
}

function loadSamsungUpgradeOffer(domId) {
        doGetAjaxRequestHandler(context + "/getSamsungUpgradeOffer", function(response) {
                $('#' + domId).html(response);
        });
}