$(document).ready(function () {
    $("body").off('click').on("click", '.remove', remove);
//    $(".tbody").on("blur", '.rate', autoAddRows);
    $("body").on("keyup focus blur", '.taka, .qty, .flag, .flagqty, .invqty', itemCal);
    $("body").on("keyup focus blur", '.rate, .amount', amtCal);
    $("body").on("keyup focus blur", '.rate, .amount,.discount, .discperc, .frgperc, .freight', mainbCal);
    $("body").on("change", '.brand', filterItem);

    function filterItem() {
        var tr = $(this).closest("tr");
        var brand = tr.find(".brand").val();
        $.post('get_fitem.php', {brand: brand}, function (data) {
            tr.find(".item").html(data);
        });
    }
    
    //    $("body").on("keyup focus blur", '', discCal);

    $('#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('excess_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");
        var taka = tr.find(".taka").val();
        var qty = tr.find(".qty").val();
        var totqty = qty * taka;
        tr.find(".totqty").val(totqty);

        var flag = tr.find(".flag").val();
        var flagqty1 = flag * 0.10;
        var flagqty = flagqty1.toFixed(2);
        tr.find(".flagqty").val(flagqty);

        var invqty1 = totqty - flagqty;
        var invqty = invqty1.toFixed(2);
        tr.find(".invqty").val(invqty);
    }

    function amtCal() {
        var tr = $(this).closest("tr");
        var rate = tr.find(".rate").val();
        var invqty = tr.find(".invqty").val();
        var amt1 = rate * invqty;
        var amt = amt1.toFixed(2);
        tr.find(".amount").val(amt);
    }
    function mainbCal() {
        var tot = 0;
        var val = 0;

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