$(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", '.totqty', checkTotqty);
//    $("body").on("keyup focus blur", '.flag', checkFlag);
    $("body").on("keyup focus blur", '.flagqty', checkFlagQty);
    $("body").on("keyup focus blur", '.rate, .amount,.discount, .discperc, .frgperc, .freight', mainbCal);
    $(".tbody").on("change focus", '.item', getItemdtl);
    $("body").on("click", '#close_form', closeForm);
    $("body").on("click", '.mycheck', check);

    $('#addnew').click(function () {
        AddRows();
    });
    
    function checkTotqty(){
        var tr      = $(this).closest("tr");
        var totqty  = tr.find(".totqty").val();
        var dtotqty = tr.find(".dtotqty").val();
        if(totqty > dtotqty){
            alert("Total Qty. Exceeds Stock");
            tr.find(".totqty").val("0");
            tr.find(".taka").val("0");
            tr.find(".qty").val("0");
        }
    }
    
//    function checkFlag(){
//        var tr      = $(this).closest("tr");
//        var flag    = tr.find(".flag").val();
//        var dflag   = tr.find(".dflag").val();
//        if(flag > dflag){
//            alert("No. Of Flag Exceeds Stock");
//            tr.find(".flag").val('0');
//        }
//    }

    function checkFlagQty(){
        var tr      = $(this).closest("tr");
        var flagqty    = tr.find(".flagqty").val();
        var dflagqty   = tr.find(".dflagqty").val();
        if(flagqty > dflagqty){
            alert("No. Of Flag Exceeds Stock");
            tr.find(".flagqty").val("0");
            tr.find(".flag").val("0");
        }
    }
    
    function getItemdtl() {
        var tr      = $(this).closest("tr");
        var item    = tr.find(".item").val();
        var godown  = $(".godown").val();
        var count   = $("#items").val();
        tr.find(".actbatch").addClass("oncheck");
        tr.find(".dtotqty").addClass("ontotqty");
        tr.find(".dflag").addClass("onflag");
        tr.find(".dflagqty").addClass("onflagqty");
        $.post('debnote_itemDtl.php', {item: item, godown: godown, count:count}, function(data){
            $("#browdata").html(data);
            $("#check_0").focus();
        });
        $("#overlay_form").show("fast");
    }
    
    function check(){
        var tr          = $(this).closest("tr");
        var actbatch    = tr.find(".checkactbatch").val(); 
        var totqty      = tr.find(".checktotqty").val(); 
        var flag        = tr.find(".checkflag").val(); 
        var flagqty     = tr.find(".checkflagqty").val(); 
        $(".oncheck").val(actbatch);
        $(".ontotqty").val(totqty);
        $(".onflag").val(flag);
        $(".onflagqty").val(flagqty);
        closeForm();
        $(".oncheck").closest("tr").find(".batch").focus();
        $(".oncheck").removeClass("oncheck");
        $(".ontotqty").removeClass("ontotqty");
        $(".onflag").removeClass("onflag");
        $(".onflagqty").removeClass("onflagqty");
    }
    
    function closeForm() {
        $("#overlay_form").hide("fast");
    }
//    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('debnote_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);
        $('.subtotal').val(tot);

        var discperc = $(".discperc").val();
        var subtotal = $(".subtotal").val();
        var totdisc = subtotal * discperc / 100;
        $(".discount").val(totdisc);

        var frgperc = $(".frgperc").val();
        var totfrg = totdisc * frgperc / 100;
        $(".freight").val(totfrg);
        var netamt = subtotal - totfrg - totdisc;
        $(".netamt").val(netamt);


    }
});