$(document).ready(function () {
    $("body").off('click').on("click", '.remove', remove);
    //    $(".tbody").on("blur", '.rate', autoAddRows);
    $("body").on("keyup focus blur", '.trqty, .rate, .amount', itemCal);
    //    $("body").on("keyup focus blur", '.qty, .rate, .amount, .subtotal .discount, .discperc, .netamt', mainbCal);
    $("body").on("keyup focus blur", '.qty', autoAddRows);
    $("body").on("keyup focus blur change", '.itemcode', GetItemFromCode);
    $("body").on("change", '.item', showDetail);
    $('body').on('blur change', '.yard,.qty', getMeters);
    $('body').on('change', '.itemgrp', getRawmtData);

    function getRawmtData() {
        var tr = $(this).closest("tr"),
            itemgrp = tr.find(".itemgrp").val();
        tr.find('.item').html("").trigger("change");
        $.post('getRawmtData.php', { itemgrp: itemgrp }, function (data) {
            if (data != '') {
                tr.find('.item').html(data);
            }
        });
    }

    function getMeters() {
        var tr = $(this).closest("tr"),
            yard = tr.find(".yard").val() || 0,
            qty = tr.find(".qty").val() || 0;
        if (qty <= 0 || qty == '') {
            qty = yard * 0.914;
        }
        tr.find(".qty").val(qty);

    }

    function GetItemFromCode() {
        var $row = $(this).closest("tr");
        var itemcode = $row.find(".itemcode").val();
        $.post('show_item_dtl.php', { itemcode: itemcode }, function (data) {
            if (data != '') {
                $row.find(".item").html(data);
                //                $row.find(".item").focus();
            }
        });
    }

    //getting rate from item
    //     function showDetail() {
    //         var tr = $(this).closest("tr");
    //         var name = tr.find('.item').val();
    //         $.ajax({
    //             type: 'GET',
    //             dataType: 'json',
    // //                url         : "get_itemrate_dtl.php",
    //             url: "get_itemrate_dtl.php",
    //             data: "name=" + name + "",
    //             success: function (response) {
    //                 var code = response.code;
    //                 var rate = response.rate;
    //                 var msp = response.msp;
    //                 var mrp = response.mrp;
    //                 $(tr.find('.itemcode')).val(code);
    //                 $(tr.find('.rate')).val(rate);
    //                 $(tr.find('.msp')).val(msp);
    //                 $(tr.find('.mrp')).val(mrp);
    //             },
    //             error: function (request, textStatus, errorThrown) {
    //                 alert(errorThrown);
    //             }
    //         });
    //     }

    function showDetail() {
        var tr = $(this).closest("tr"),
            itemname = tr.find(".item").val(),
            color = tr.find(".color").val(),
            data = { itemname: itemname, color: color };

        $.ajax({
            type: 'GET',
            dataType: 'json',
            url: "getRawMsp.php?m=a",
            data: data,
            success: function (response) {
                var m = response;
                var type = m.type;
                if (type == 'A' || type == 'O') {
                    tr.find('.yard').attr('readonly', true);
                    tr.find('.meters').attr('readonly', true);
                    tr.find('.yard').val(0);
                    tr.find('.meters').val(0);

                } else {
                    tr.find('.qty').val(0);
                    tr.find('.unit').val('');
                }

                tr.find(".stqty").val(m.stqty);

                tr.find(".rawtype").val(type);
                tr.find(".barcode").val(itemname);
                tr.find(".mrp").val(m.mrp);
                tr.find(".hsncode").val(m.hsncode);
                tr.find(".rate").val(m.cost);
                tr.find(".ratebfdisc").val(m.rate);

            }
        });
    }

    $('#addnew').click(function () {
        AddRows();
    });

    function autoAddRows() {
        var ctr = $('#items').val();
        var tr = $(this).closest("tr");
        var srno = tr.find(".srno").val();
        if (srno == ctr) {
            AddRows();

        }
    }

    function remove() {
        $(this).closest("tr").remove();
    }

    function AddRows() {
        var ctr = $('#items').val();
        var hide_check = "";
        if ($("#del_all").prop("checked")) {
            hide_check = 0;
        } else {
            hide_check = 1;
        }
        var detail = ".fetchpart_" + ctr;
        $.post('inwardraw_add.php', { ctr: ctr, hide: hide_check }, function (data) {
            $(data).appendTo('.tbody');
            ctr++;
            $('#items').val(ctr);
            $(detail).select2();
        });
    }

    function itemCal() {
        var tr = $(this).closest("tr"),
            val = 0, val1 = 0;
        //        var taka = tr.find(".taka").val();
        var trqty = tr.find(".qty").val();
        var rate = tr.find(".rate").val();
        var amount = trqty * rate;
        tr.find(".amount").val(amount.toFixed(2));

        $(".qty").each(function () {
            if (!isNaN(this.value) && this.value.length != 0) {
                val1 += parseFloat(this.value);
            }
        });
        var totq = parseFloat(val1);
        $('.totqty').val(totq);

        $(".amount").each(function () {
            if (!isNaN(this.value) && this.value.length != 0) {
                val += parseFloat(this.value);
            }
        });
        var tot = parseFloat(val);
        $('.totamt').val(tot);
        //        mainbCal();
    }

    //    function mainbCal() {
    //        var tot = 0;
    //        var val = 0;
    //
    //        $(".amount").each(function () {
    //            if (!isNaN(this.value) && this.value.length != 0) {
    //                val += parseFloat(this.value);
    //            }
    //        });
    //        tot = parseFloat(val);
    //        $('.subtotal').val(tot);
    //
    //        var discperc = $(".discperc").val();
    //        var subtotal = $(".subtotal").val();
    //        var totdisc = subtotal * discperc / 100;
    //        $(".discount").val(totdisc);
    //
    //
    //        var netamt = subtotal - totdisc;
    //        if (isNaN(netamt)) {
    //            var netamt = subtotal - totdisc;
    //            $(".netamt").val(netamt);
    //        } else {
    //            $(".netamt").val(netamt);
    //        }
    //    }

    //    $(document).keydown(function (event) {
    //        //19 for Mac Command+S
    //        if (!(String.fromCharCode(event.which).toLowerCase() == 's' && event.altKey) && !(event.which == 19))
    //            return true;
    //        //alert("Ctrl-s pressed");
    //        $("#submit").click();
    //        event.preventDefault();
    //        return false;
    //    });
});