$(document).ready(function () {
    $("body").off("click").on("click", ".remove", remove);
    $(".tbody").on("keyup change blur focus", ".cartqty, .pcscart, .qty, .rate, .amount, .discperc, .discamt, .vatperc", calDetail);
    $("body").on("blur", ".invno", chkinvno);
    $("body").on("blur ", ".cost", autoadd);
    $("body").on("blur", ".itemname", chNew);
    $(".itemgrp").hide();

    function chNew() {
        var tr = $(this).closest("tr"),
                itemname = tr.find(".itemname").val(),
                barcode = tr.find(".barcode").val();
        if (itemname != "" && barcode == "") {
            tr.find(".barcode").val("New");
        }
    }

    $("form").submit(function () {
        var party = $(".cmbparty").val(),
                totbillamt = $(".totbillamt").val(),
                valid = true;

        if (party == "") {
            var message = "Party Cannot Be Empty";
            alert(message);
            return false;
            valid = false;
        }

        if (parseFloat(totbillamt) <= 0 || totbillamt == "") {
            var message = "Netamt Cannot zero";
            alert(message);
            return false;
            valid = false;
        }

        if (valid) {
            var isValid = true;

            if (isValid) {
                $("#submit").hide();
                $("#cancel").hide();
            }
        }
    });

    $(".party").change(function () {
        var invno = $(".invno").val(),
                file = $(".file").val(),
                party = $(".party").val();
        $.post(
                "chk_invo.php",
                {invno: invno, party: party, file: file},
                function (data) {
                    if (data.s == 1) {
                        alert("These Invoice Already Exist For Voucher  " + data.vouchno);
                        $(".invno").val("");
                        $(".invno").focus();
                    }
                },
                "json"
                );
    });

    function autoadd() {
        if ($(this).closest("tr").is(":last-child")) {
            AddRows();
        }
    }

    $(".invno").blur(function () {
        $(".party").select2("open");
    });

    function calDetail() {
        var tr = $(this).closest("tr"),
                cartqty = tr.find(".cartqty").val(),
                pcscart = tr.find(".pcscart").val(),
                qty = (cartqty * pcscart).toFixed(2),
                subtot = 0,
                total = 0;
                tr.find(".qty").val(qty);


        // if (qty <= 0) {
        //     qty = cartqty * pcscart;
        // } else {
        //     qty = qty;
        // }

        // subtot = amount - discamt;
        // total = subtot.toFixed(2);
        // tr.find(".amount").val(amount);
        // tr.find(".discamt").val(discamt);
        // tr.find(".total").val(total);
        var totamt = 0,
                ttotqty = 0,
                totdisc = 0,
                totvat = 0,
                tottotal = 0;
        $(".qty").each(function () {
            if (!isNaN(this.value) && this.value.lenght != 0) {
                ttotqty += parseFloat(this.value);
            }
        });
        // $(".amount").each(function () {
        //     if (!isNaN(this.value) && this.value.lenght != 0) {
        //         totamt += parseFloat(this.value);
        //     }
        // });
        $(".discamt").each(function () {
            if (!isNaN(this.value) && this.value.lenght != 0) {
                totdisc += parseFloat(this.value);
            }
        });
     
        $(".total").each(function () {
            if (!isNaN(this.value) && this.value.lenght != 0) {
                tottotal += parseFloat(this.value);
            }
        });
        $(".ttotqty").val(ttotqty);
        $(".totamt").val(totamt);
        $(".totdisc").val(totdisc);
        $(".totvat").val(totvat);
        $(".tottotal").val(tottotal);
    }

    function chkinvno() {
        var invno = $(".invno").val();
        var party = $(".party").val();
        if (invno.length > 0) {
            $.post(
                    "check_inv_dtl.php",
                    {invno: invno, party: party},
                    function (data) {
                        if (data == "success") {
                            alert("This Bill No. For This Party Already Exist");
                            $(".invno").val("");
                            $(".invno").focus();
                        }
                    }
            );
        }
    }

    $("#addnew").click(function () {
        AddRows();
        //        caltran();
    });
    function remove() {
        $(this).closest("tr").remove();
        //        caltran();
    }

    function AddRows() {
        var ctr = $("#items").val();
        var prodtype = $(".prodtype").val();
        var rd = $(".rd").val();
        var frmname = $(".frmname").val();
        var hide_check = "";
        if ($("#del_all").prop("checked")) {
            hide_check = 0;
        } else {
            hide_check = 1;
        }
        //        var detail = ".fetchpart_" + ctr;
        var focusFld = ".focusFld_" + ctr;
        ctr++;
        $("#items").val(ctr);
        $.post(
                "inward_add.php",
                {
                    ctr: ctr,
                    hide: hide_check,
                    prodtype: prodtype,
                    rd: rd,
                    frmname: frmname,
                },
                function (data) {
                    $(data).appendTo(".tbody");

                    //            $(detail).select2();
                    $(focusFld).focus();
                    //            caltran();
                }
        );
    }
});
