{% load i18n %}


<style>
    #tb tbody .r{
        font-weight:bold;
        color:red;
    }
</style>


<ol class="breadcrumb">
    <li>  {% trans "进出存报表" %}</li> 
    <li> {{voucher.name}}</li> 
</ol>



<script type="text/javascript">
    $(document).ready(function(){    

        $('.datepicker').datepicker({dateFormat: 'yy-mm-dd'});
        $('.datepicker').datepicker('setDate',new Date());
        setDatePickerZh();         


        $('#product_label').autocomplete({
            source: function(request, response) {
                $.ajax({
                    url: '/obj/ajax/autocomplete/product/',
                    dataType: "json",
                    data: {
                        term:   $("#product_label").val() ,//搜索栏里的内容
                        //company_id:  $('#id_company').val() ,//额外参数
                    },
                    success: function(data) {
                        response(data);
                    }
                });
            },
            select: function (event, ui) {
                $("#product_id").val(ui.item.value);
                $("#product_label").val(ui.item.label);
                return false;
            }
        });
        $('#agent_label').autocomplete({
            source: function(request, response) {
                $.ajax({
                    url: '/obj/ajax/autocomplete/agent/',
                    dataType: "json",
                    data: {
                        term:   $("#agent_label").val() ,//搜索栏里的内容
                        //company_id:  $('#id_company').val() ,//额外参数
                    },
                    success: function(data) {
                        response(data);
                    }
                });
            },
            select: function (event, ui) {
                $("#agent_id").val(ui.item.value);
                $("#agent_label").val(ui.item.label);
                return false;
            }
        });        

        $('.btn-qry').click(function(){           
            var product_id='',agent_id='',code='',batch_no='';            
            
            if (!$.isEmpty($('#product_id').val())){
                product_id=$('#product_id').val();
            };
            if (!$.isEmpty($('#agent_id').val())){
                agent_id=$('#agent_id').val();
            };
            if (!$.isEmpty($('#code').val())){
                code=$('#code').val();
            };      

            if (!$.isEmpty($('#batch_no').val())){
                batch_no=$('#batch_no').val();
            }; 

           

            date_fr=$('#dt_fr').val();
            date_to=$('#dt_to').val();
            
            var params=[];
           
            if(product_id!=''){
                params.push('product_id='+product_id);
                params.push('product_label='+$('#product_label').val());
            };
            if(agent_id!=''){
                params.push('agent_id='+agent_id);
                params.push('agent_label='+$('#agent_label').val());
            };
            if(code!=''){
                params.push('code='+code);               
            };

            
            if(date_fr!=''){params.push('date_fr='+date_fr)};
            if(date_to!=''){params.push('date_to='+date_to)};
            
            //2024-03-19
            if(batch_no!=''){params.push('batch_no='+batch_no)};


            if(params.length==0){
                bootbox.alert("{% trans '请先输入查询条件！'%}");
            }else{
                $.RefreshContent('{{request.path}}?'+params.join('&'));
            }
        });

        {% ifnotequal params.dt_fr '' %}
            $('#dt_fr').val('{{params.dt_fr}}');
        {% endifnotequal  %}
        {% ifnotequal params.dt_to '' %}
            $('#dt_to').val('{{params.dt_to}}');
        {% endifnotequal  %}
       
        {% ifnotequal params.product_id '' %}
            $('#product_id').val('{{params.product_id}}');
            $("#product_label").val('{{params.product_label}}');
        {% endifnotequal  %}

         {% ifnotequal params.agent_id '' %}
            $('#agent_id').val('{{params.agent_id}}');
            $("#agent_label").val('{{params.agent_label}}');
        {% endifnotequal  %}

        {% ifnotequal params.batch_no '' %}
            $('#batch_no').val('{{params.batch_no}}');            
        {% endifnotequal  %}
       
        var table=$('#tb').DataTable({
            //"lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]],
            //"bLengthChange":true,
            dom: 'Bfrtip',
            autoWidth: false,
            buttons: [{extend:'excelHtml5',text:'导出到Excel'}],           
            language:lng,           
            data:{{data}},
            {% ifequal 1 request.user.id %}
                createdRow: function( nRow, aData, iDataIndex ) {  
                    var s='',html='';
                    s=aData[10];
                    switch(s){
                        case '单号异常':
                            html='<span style="color:red">单号异常</span>';
                            break;
                        case '客户异常':
                            html='<button class="btn btn-order btn-danger btn-xs">客户异常</button>';
                            break;
                        default:
                            html=s;
                            break;                    
                    };
                    $('td:eq(10)', nRow).html(html);                                           
                }   
            {% endifequal %}

            //2025-03-10
            {% if stk_confirm %}
                createdRow: function( nRow, aData, iDataIndex ) { 
                    var nColCnt=aData.length-1;                 
                    var s='',html='';                   
                    s=aData[nColCnt];                    
                    //if (s=='' && (aData[nColCnt-1]+aData[nColCnt-2]+aData[nColCnt-3])>0){
                    if (s==''){
                        html='<button class="btn btn-confirm btn-primary btn-xs">审核</button>';                        
                        $('td:eq('+nColCnt+')', nRow).html(html);
                    }  
                }                       
            {% endif %}
        });   
        //2025-03-11        
        $('#tb').on("click","td .btn-confirm",function(event){
            
            event.preventDefault();

            var code=$(this).closest('tr').children().eq(1).text();   
            var h=$(this).closest('tr').find('td a').attr('href');
            let a=h.split('/');
            let id=a[a.length-2];
            let me=$(this);

            //2025-04-17
            $(me).hide();

            $.ajax({
                url:'/stkposting/batch/confirm/'+id+'/',
                type: 'POST',
                success:function (data){
                    if (data.e!=''){
                        toastr.error(
                            data['e'],
                            "数据错误：",
                            {timeOut: 800, positionClass: "toast-center-center"}
                        );                       
                    }else{
                        $(me).closest('td').text(data.tm);
                        toastr.success("单据 "+code+" 已审核!");
                    };
                }
            });             
        });         

        
        table.columns().every( function () {                        
            var that = this;             
            $('input', this.footer() ).on( 'keyup change clear', function () {
                if ( that.search() !== this.value ) {
                    that.search( this.value ).draw();
                }
            });
        });  
        

        $('#tb').on("click","td a",function(event){
            $(event.target.parentNode).addClass('row_selected');
             event.preventDefault();
             $.OpenDlg($(this).attr('href'),'订单{{voucher.name}}-明细列表',1000,700);
        });   

        $('#tb').on("click","td .btn-order",function(event){
            event.preventDefault();
            var code=$(this).closest('tr').children().eq(1).text();            
            $.ajax({
                url:'/inventory/batch/query/?dn_number='+code,
                success:function (data){
                    $('#dlg-order .modal-title').text('发货单详情 '+code);
                    $('#order-tm').text(data.tm);
                    $('#customer-code').text(data.customer.code);
                    $('#customer-name').text(data.customer.name);
                    var html='';
                    for( var i in data.products){
                        html=html+'<tr>'+
                            '<td>'+data.products[i].code+'</td>'+
                            '<td>'+data.products[i].name+'</td>'+
                            '<td>'+data.products[i].qty+'</td>'+
                            '</tr>';                    
                    };
                    $('#order_tb tbody').html(html);
                    $('#dlg-order').modal('show');

                }
            });

            //inventory/batch/query/?dn_number=8220110011
            //$(event.target.parentNode).addClass('row_selected');
            //event.preventDefault();
            //$.OpenDlg($(this).attr('href'),'订单{{voucher.name}}-明细列表',1000,700);
        }); 


    });

    function  catDetails(ele){
        var  batch_id = $(ele).parent().parent().children().find('a').attr('href').split("/")[4]
        $.ajax({
            url:'/inventory/batchno/details/'+batch_id+'/',
            success:function (res){
                    $('#batch_tb').DataTable({
                        //"lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]],
                        //"bLengthChange":true,
                        dom: 'Bfrtip',
                        autoWidth: false,
                        destroy:true,
                        buttons: [{extend:'excelHtml5',text:'导出到Excel'}],
                        language:lng,
                        data:res.details
                    });
                    $('#modal1').modal('show')
            }
        })
    }
</script>

<form role="form"  class="form-inline" style="margin-top:0px;">
    <div class="col-sm-2 input-group">
        <span class="input-group-addon">{% trans "开始日期"%}</span>
        <input class="datepicker form-control" id="dt_fr" />
    </div>
    <div class="col-sm-2 input-group">
        <span class="input-group-addon">{% trans "结束日期"%}</span>
        <input class="datepicker form-control" id="dt_to" />
    </div>
    
    {% ifequal user.company.level_id 1 %}
        
        
        <div class="col-sm-2 input-group">        
            <input class="form-control" id="batch_no" placeholder='所有单号' />            
        </div>        
        

        <div class="col-sm-2 input-group">        
            <input class="form-control" id="product_label"   placeholder='所有产品' />
            <input type='hidden' id='product_id' />
        </div>
        {% ifequal voucher.id 2 %}
            <div class="col-sm-2 input-group">        
                <input class="form-control" id="agent_label"   placeholder='所有经销商' />
                <input type='hidden' id='agent_id' />
            </div>
        {% endifequal %}
        {% ifequal voucher.id 1 %}
            <div class="col-sm-2 input-group">        
                <input class="form-control" id="code" placeholder='所有生产批次' />           
            </div>
        {% endifequal %}
    {% endifequal %}


    <div style="float:right;">
        <span class='input-group-btn'>
            <a type="button" class='btn btn-primary btn-qry'>
                <span class='glyphicon glyphicon-search' style='padding-right:5px;'></span>{% trans '查找' %}
            </a>
        </span>
        
    </div>
</form>
<div class="clearfix"></div>
<div id="inventory-list" class="table-responsive">
    <div class='x_panel'>    
    <table id="tb" class="table table-striped table-bordered dt-responsive" width="100%" >
        <thead><tr>
            {% for c in clmns %}
                <th>{{c}}</th>
            {% endfor %}                       
        </tr></thead>
        <tbody></tbody>
        <tfoot>
            {% for c in clmns %}
                <th><input type="text" placeholder="{{c}}"></th>
            {% endfor %}
        </tfoot>
    </table>   
    </div>
</div>



<div class="modal fade" tabindex="-1" role="dialog" id="modal1">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span>
                </button>
                <h4 class="modal-title">批次详情</h4>
            </div>
            <div class="modal-body">
                <table id="batch_tb" class="table table-striped table-bordered dt-responsive" width="100%" >
                    <thead>
                        <tr>
                            <th>批次编号</th>
							<th>入库时间</th>
							<th>到期天数</th>
                            <th>到期时间</th>
                            <th>数量</th>
                        </tr>
                    </thead>
                    <tbody></tbody>
                </table>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
            </div>
        </div><!-- /.modal-content -->
    </div><!-- /.modal-dialog -->
</div><!-- /.modal -->


<div class="modal fade" tabindex="-1" role="dialog" id="dlg-order">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span>
                </button>
                <h4 class="modal-title"></h4>
            </div>
            <div class="modal-body">
                <div style='margin-bottom:5px;'>
                    客户编码：<span id='customer-code' style='color:green'></span>
                    客户名称：<span id='customer-name' style='color:green'></span>
                    单据时间：<span id='order-tm' style='color:green'></span>
                </div>
                <table id="order_tb" class="table table-striped table-bordered dt-responsive" width="100%" >
                    <thead>
                        <tr>
                            <th>产品编码</th>
							<th>产品名称</th>
							<th>发货数量</th>                            
                        </tr>
                    </thead>
                    <tbody></tbody>
                </table>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
            </div>
        </div><!-- /.modal-content -->
    </div><!-- /.modal-dialog -->
</div><!-- /.modal -->
