<!DOCTYPE html>
<html>
<head>
    <?= View::make('base.head'); ?>
    <title></title>
    <style>
        .border {
            border: 1px solid black;
        }
    </style>        
</head>
<body>
    <?= View::make('base.common'); ?>        
    <ol class="breadcrumb">
        <li class="active">Análise do produto <b><a href="/app/product/show/<?php echo $product->id; ?>" target='_blank'><?php echo $product->name; ?></a></b></li>
    </ol>    
    <div class="conteudo">
        <div class="row">
            <div class="col-md-9">
                <div class="panel panel-primary">
                    <div class="panel-heading">Informações do Produto</div>
                    <table class="table">
                        <tr>
                            <td style="width:90px"><b>Código:</b></td>
                            <td><?php echo $product->id; ?></td>
                            <td style="width:130px"><b>Descrição:</b></td>
                            <td colspan="6"><a href="/app/product/show/<?php echo $product->id; ?>" target='_blank'><?php echo $product->name; ?></td>
                            <td style="width:90px"><b>Cód PS:</b></td>
                            <td><?php echo $product->code; ?></td>
                        </tr>
                        <tr>
                            <td><b>Custo:</b></td>
                            <td><?php echo OrderSysUtils::ftn($product->cost,4); ?></td>
                            <td><b>Loc2:</b></td>
                            <td><?php echo OrderSysUtils::ftn($product->local2,4); ?></td>
                            <td><b>Loc3:</b></td>
                            <td><?php echo OrderSysUtils::ftn($product->local3,4); ?></td>
                            <td></td>
                            <td><b>Preço:</b></td>
                            <td><?php echo OrderSysUtils::ftn($product->price, 2); ?></td>
                            <td><b>Margem:</b></td>
                            <td><?php echo OrderSysUtils::ftn($product->gross, 2); ?></td>
                        </tr>
                        <tr>
                            <td><b>Obrigatório:</b></td>
                            <td style='<?php echo $product->mandatory ? 'background-color:#d6f5d6':''; ?>'>
                                <b><?php echo $product->mandatory ? 'SIM' : 'NÃO'; ?></b>
                            </td>
                            <td><b>Fornecedor:</b></td>
                            <td colspan="4"><a href="/app/supplier/show/<?php echo $product->supplier_id; ?>" target="_blank"><?php echo $product->supplier_name; ?></a></td>                            
                            <td><b>Estoque JK:</b></td>
                            <td><?php echo OrderSysUtils::ftni($product->stock_jk); ?></td>
                            <td><b>Cx JK:</b></td>
                            <td><?php echo OrderSysUtils::ftni($product->box_qtty_jk); ?></td>                            
                        </tr>
                        <!--
                        <tr>
                            <td><b>R$ mês:</b></td>
                            <td>?</td>
                            <td><b>Sugerido:</b></td>
                            <td>?</td>
                            <td><b>R$ mês:</b></td>
                            <td>?</td>
                            <td><b>Sugerido:</b></td>
                            <td colspan="4">?</td>
                        </tr>
                        -->
                    </table>
                </div>
            </div>
            <div class="col-md-3">
                <div class="panel panel-primary">
                    <?php echo HTML::image('/static/imagens/erp/'.$product->image,$product->image,array('height'=>150,'title'=>$product->image)); ?>

                </div>
            </div>
        </div>
        <div class="row">
            <div class="col-md-9">
            <?php  $addBtnAddOrderIndex = 0; ?>
            <?php foreach($companies as $company): ?>
                <?php  $addBtnAddOrderIndex = $addBtnAddOrderIndex + 1; ?>
                <div class="col-md-3">
                    <div class="panel panel-info">
                        <div class="panel-heading">
                            <?php echo $company->name; ?> 
                            <button id="btnAddOrder_<?php echo $addBtnAddOrderIndex; ?>" class="btn btn-success btn-xs" type="submit" value="Add Pedido" data-toggle="modal"
                                    data-company-id="<?php echo $company->id; ?>" 
                                    data-product-id="<?php echo $product->id; ?>" 
                                    data-supplier-id="<?php echo $product->supplier_id; ?>"
                                    data-index="<?php echo $addBtnAddOrderIndex; ?>"
                                    data-company-name="<?php echo $company->name; ?>" data-target="#addOrderDialog">
                                <span id="spanAddOrder_<?php echo $addBtnAddOrderIndex; ?>" class="glyphicon glyphicon-plus-sign" aria-hidden="true" title='Novo pedido'></span>                                                         
                            </button>
                            <button id="pop_orders_<?php echo $company->id; ?>" type="button" class="pop_orders btn btn-info btn-xs" data-toggle="popover" title="Pedidos deste produto" data-companyId='<?php echo $company->id; ?>'>
                                <span class="glyphicon glyphicon-info-sign"></span>
                            </button>
                        </div>
                        <table class="company_pos_<?php echo $company->id; ?> table">
                            <?php  $productCompanyPurchase = getProductCompany($company->id,$productCompanyList); ?>
                            <?php  $lastQttyBoughtDate = !is_null($productCompanyPurchase) ? $productCompanyPurchase->last_qtty_bought_date : ''; ?>
                            <?php  $stock = !is_null($productCompanyPurchase) ? $productCompanyPurchase->stock : ''    ; ?>
                            <?php  $qtd = !is_null($productCompanyPurchase) ? $productCompanyPurchase->last_qtty_bought : ''; ?>
                            <?php  $avg_sale = !is_null($productCompanyPurchase) ? $productCompanyPurchase->avg_sale : ''; ?>
                            <?php  $sugg_qtty = !is_null($productCompanyPurchase) ? $productCompanyPurchase->suggested_order_qtty : ''; ?>
                            <?php  $last_sale_date = !is_null($productCompanyPurchase) ? $productCompanyPurchase->last_sale_date : ''; ?>
                            <?php  $signal_name = !is_null($productCompanyPurchase) ? $productCompanyPurchase->signal_name : ''; ?>
                            <?php  $signal_hex_color = !is_null($productCompanyPurchase) ? $productCompanyPurchase->signal_hex_color : ''; ?>
                            <?php  $product_price = !is_null($product->price) && $product->price > 0 && $avg_sale > 0 ? $product->price * $avg_sale * 22 : '';; ?>
                            <tr>
                                <td colspan="3">
                                    <table class="border table-condensed" style='font-size:11px; width:100%'>
                                        <tr class='border'>
                                            <td class='border'><b>Compra</b><br><?php echo OrderSysUtils::ftd($lastQttyBoughtDate); ?><br></td>
                                            <td class='border'><b>Qtd</b><br><?php echo OrderSysUtils::ftni($qtd); ?><br></td>
                                            <td class='border'><b>Estoque</b><br><?php echo OrderSysUtils::ftni($stock); ?><br></td>
                                        </tr>
                                        <tr class='border'>
                                            <td class='border'><b>M.Dia</b><br><?php echo OrderSysUtils::ftn($avg_sale); ?><br></td>
                                            <td class='border'><b>R$ Mês</b><br><?php echo OrderSysUtils::ftn($product_price); ?><br></td>
                                            <td class='border'><b>U.Venda</b><br><?php echo OrderSysUtils::ftd_s($last_sale_date); ?><br></td>
                                        </tr>
                                        <tr>
                                            <td class='border' style='background-color:<?php echo $signal_hex_color; ?>'><font color='white' style='text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black;'><b><?php echo $signal_name; ?></b></font><br></td>
                                            <td class='border'><br><br></td>
                                            <td class='border'><b>Sug</b><br><?php echo OrderSysUtils::ftni($sugg_qtty); ?><br></td>
                                        </tr>
                                    </table>
                                </td>
                            </tr>
                            <?php if(count(getProductPO($company->id,$productPOList)) > 0): ?>
                            <tr style="display:none">
                                <td colspan="3">
                                    <table class="table-condensed" id="pos_company_id_<?php echo $company->id; ?>" data-companyId="<?php echo $company->id; ?>">
                                        <tr>
                                            <td><b>Pedido</b></td>
                                            <td colspan='2'><b>Status</b></td>
                                        </tr>
                                        <?php foreach(getProductPO($company->id,$productPOList) as $po): ?>
                                        <tr>
                                            <td><a href="javascript:openInNewTab('/app/purchase_order/show/<?php echo $po->id; ?>')"><?php echo $po->id; ?></a></td>
                                            <td align="right"><?php echo $po->status; ?></td>
                                        </tr>
                                        <?php endforeach; ?>
                                    </table>
                                </td>
                            </tr>
                            <?php endif; ?>
                            <tr>
                                <td colspan="3">
                                    <table class="table-condensed">
                                        <tr>
                                            <td><b>Mês</b></td>
                                            <td><b>Qtd</b></td>
                                            <td><b>Notas</b></td>
                                        </tr>
                                        <?php  $totalQttySale = 0; ?>
                                        <?php  $totalQttySaleInvoice = 0; ?>
                                        <?php foreach(getProductCompanySale($company->id,$productSaleList) as $productSale): ?>
                                            <?php  $totalQttySale = $totalQttySale + $productSale->total_qtty_sale; ?>
                                            <?php  $totalQttySaleInvoice = $totalQttySaleInvoice + $productSale->total_qtty_sale_invoice; ?>
                                            <tr>
                                                <td><?php echo OrderSysUtils::ftd($productSale->ref_date,'m/y'); ?></td>
                                                <td align="right"><?php echo OrderSysUtils::ftni($productSale->total_qtty_sale); ?></td>
                                                <td align="right"><?php echo OrderSysUtils::ftni($productSale->total_qtty_sale_invoice); ?></td>
                                            </tr>
                                        <?php endforeach; ?>
                                        <tr>
                                            <td></td>
                                            <td align="right"><b><?php echo OrderSysUtils::ftni($totalQttySale); ?></b></td>
                                            <td align="right"><b><?php echo OrderSysUtils::ftni($totalQttySaleInvoice); ?></b></td>
                                    </table>
                                </td>
                            </tr>
                        </table>
                    </div>
                </div>
            <?php endforeach; ?>
            </div>
            <div class="col-md-3">
                <div class="panel panel-info">
                    <div class="panel-heading">Similares</div>
                    <div class="panel-body">
                    <table class="table-condensed">
                        <tr>
                            <td><b>Nome</b></td>
                            <td><b>Est.</b></td>
                            <td style="width:5px"><b></b></td>
                            <td><b>Img</b></td>
                        </tr>
                        <?php foreach($productSimilarList as $productSimilar): ?>
                        <tr>
                            <td title='<?php echo $productSimilar->name; ?>'>
                                <font size="1" color="<?php echo $productSimilar->signal_hex_color; ?>"><a href="javascript:openProductAnalysisView(<?php echo $productSimilar->id; ?>)" target="_blank">
                                    <?php echo str_limit($productSimilar->name,20); ?>

                                </a></font>
                            </td>
                            <td align="right"><font size="1"><?php echo OrderSysUtils::ftni($productSimilar->stock); ?></font></td>
                            <?php echo HTML::signalHTMLTd('',$productSimilar->signal_hex_color); ?>

                            <?php echo HTML::productImgHTMLTd($productSimilar->id,$productSimilar->image); ?>

                        </tr>
                        <?php endforeach; ?>
                    </table>
                    </div>
                </div>
            </div>
            
            <div class="col-md-3">
                <div class="panel panel-info">
                    <div class="panel-heading">Mesmo fornecedor - <a href="/app/supplier/show/<?php echo $product->supplier_id; ?>" target="_blank"><?php echo $product->supplier_name; ?></a></div>
                    <div class="panel-body">
                    <table class="table-condensed">
                        <tr>
                            <td><b>Nome</b></td>
                            <td><b>Est.</b></td>
                            <td style="width:5px"><b></b></td>
                            <td><b>Img</b></td>
                        </tr>
                        <?php foreach($productSameSupplierList as $productSameSupplier): ?>
                            <?php if($productSameSupplier->id != $product->id): ?>
                                <tr>
                                    <td title='<?php echo $productSameSupplier->name; ?>'>
                                        <font size="1" color="<?php echo $productSameSupplier->signal_hex_color; ?>"><a href="javascript:openProductAnalysisView(<?php echo $productSameSupplier->id; ?>)" target="_blank">
                                            <?php echo str_limit($productSameSupplier->name,20); ?>

                                        </a></font>
                                    </td>
                                    <td align="right"><font size="1"><?php echo OrderSysUtils::ftni($productSameSupplier->stock); ?></font></td>
                                    <?php echo HTML::signalHTMLTd('',$productSameSupplier->signal_hex_color); ?>

                                    <?php echo HTML::productImgHTMLTd($productSameSupplier->id,$productSameSupplier->image); ?>

                                </tr>
                                <?php endif; ?>
                        <?php endforeach; ?>
                    </table>
                    </div>
                </div>
            </div>
            
        </div>
    </div>    
    
    <div class="modal fade" id="addOrderDialog" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
        <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" id="myModalLabel">Adicionar produto a um pedido</h4>
            </div>
            <div class="modal-body">
                 <div class="row">
                     <div class="col-md-6">
                         <?php echo Form::create(null, null,array("name"=>"addOrderForm","id"=>"addOrderForm")); ?>            
                            <?php echo Form::hidden('company_id',''); ?>

                            <?php echo Form::hidden('supplier_id',''); ?>

                            <?php echo Form::hidden('product_id',''); ?>

                            <?php echo Form::hidden('index',''); ?>

                            <?php echo Form::textField('company','Empresa','','readonly',''); ?>

                            <?php echo Form::textField('name','Nome','','readonly',$product->name); ?>

                            <?php echo Form::textField('product_price','Preço','','readonly',OrderSysUtils::ftn((!empty($product->local2) ? $product->local2 : $product->cost) ,4)); ?>

                            <?php echo Form::textField('product_quantity','Quantidade',' ','','',true); ?>

                            <?php echo Form::textField('product_quantity_per_box','Quantidade por caixa',' ','',1,true); ?>

                        <?php echo Form::close(); ?>                
                     </div>
                     <div class="col-md-6" id="pos_company_show">
                     </div>
                </div>
            </div>
            <div class="modal-footer">
                <button id="addOrder" type="button" class="btn btn-primary">Adicionar e Continuar</button>
                <button type="button" class="btn btn-default" data-dismiss="modal">Fechar</button>
            </div>
          </div>
        </div>
    </div>



    <script type="text/javascript">
        var addOrderDialogOpened = false;
        
        $(document).ready(function() {            
            $('#product_quantity').mask("#.##0.000", {reverse: true});
            $('#product_quantity_per_box').mask("#.##0.000", {reverse: true});
            $('#product_price').mask("#.##0,0000", {reverse: true});

            $("#product_quantity").keypress(wizardInputKeyPress);
            $("#product_quantity_per_box").keypress(wizardInputKeyPress);
            
            <?php foreach($companies as $company): ?>
                $('#pop_orders_<?php echo $company->id; ?>').popover({
                    html:true,
                    trigger: 'focus',
                    content: function() {
                        return $('#pos_company_id_<?php echo $company->id; ?>').clone();
                    }
                });
            <?php endforeach; ?>

            $(document).keypress(function (e) {
                if (e.which == 13 || event.keyCode == 13) {
                    if (!addOrderDialogOpened && !$("#btnAddOrder_1").is(":focus")) {
                        $("#spanAddOrder_1").trigger('click');
                    }
                }
            })
        });
        
        $('#addOrderDialog').on('hidden.bs.modal', function(e) {
            addOrderDialogOpened = false;
        });

        $('#addOrderDialog').on('shown.bs.modal', function(e) {            
            addOrderDialogOpened = true;

            var id = $(e.relatedTarget).data('company-id');
            $(e.currentTarget).find('input[name="company_id"]').val(id); 
            $('#pos_company_show').empty();
            $('#pos_company_show').append($('#pos_company_id_'+id).clone());
            
            var name = $(e.relatedTarget).data('company-name');
            $(e.currentTarget).find('input[name="company"]').val(name);
            
            var supplierId = $(e.relatedTarget).data('supplier-id');
            $(e.currentTarget).find('input[name="supplier_id"]').val(supplierId);    
            
            var productId = $(e.relatedTarget).data('product-id');
            $(e.currentTarget).find('input[name="product_id"]').val(productId); 

            var index = $(e.relatedTarget).data('index');
            $(e.currentTarget).find('input[name="index"]').val(index); 
            
            var qttEl = $(e.currentTarget).find('input[name="product_quantity"]');
            qttEl.val('');                        
            qttEl.focus();
            
            $(e.currentTarget).find('input[name="product_quantity_per_box"]').val('1');
        });
        
        function nextAddOrderWizardDialog(index) {
            if (index % 2 == 0) {
                $("#spanAddOrder_" + index).trigger('click');
            } else {
                if ($("#spanAddOrder_" + index).attr('id') === undefined) {
                    location.reload();
                }
            }
        }
        
        function wizardInputKeyPress(event) {    
            var keycode = (event.keyCode ? event.keyCode : event.which);
            if (keycode == '13') {
                $("button#addOrder").trigger("click");                
            }            
        };
        
        $("button#addOrder").click(function(e) {
            var index = Number($('input[name="index"]').val()) + 1;
            if (!$('#addOrderForm')[0].checkValidity()) {
                $("#addOrderDialog").modal('hide');
                setTimeout(function() {return nextAddOrderWizardDialog(index);} , 1000);
                
            } else {
                $('#addOrderDialog button').prop('disabled', true);
                removeMoneyMask($('#product_price'));
                removeMoneyMask($('#product_quantity'));
                removeMoneyMask($('#product_quantity_per_box'));
                $.ajax({
                    type: "POST",
                    url: "/app/purchase_order/add-working-purchase-order",
                    data: $('form#addOrderForm').serialize(),
                        complete: function(msg){
                            if (msg.responseText != 'true') {                            
                                alert('Erro ao tentar adicionar produto: ' + msg.responseText);
                            }
                            refreshMask($('#product_quantity'), "#.##0.000", {reverse: true});
                            refreshMask($('#product_quantity_per_box'), "#.##0.000", {reverse: true});
                            refreshMask($('#product_price'), "#.##0,0000", {reverse: true});
                            $("#addOrderDialog").modal('hide');
                            if (msg.responseText == 'true') {
                                setTimeout(function() {return nextAddOrderWizardDialog(index);} , 1000);
                            }
                        }
                });
                $('#addOrderDialog button').prop('disabled', false);
            }
        });        
        
        function openProductAnalysisView(productId) {
            openInNewTab('<?php echo action('ProductAnalysisController@getProductAnalysisView'); ?>?productId=' + productId);
        }
    </script>
    <br><br><br>
</body>
</html>


<?php
function getProductCompany($companyId,$productCompanyList) {
    foreach($productCompanyList as $item) {
        if ($companyId == $item->company_id) {
            return $item;
        }
    }
    return null;
}

function getProductCompanySale($companyId,$productSaleList) {
    $sales = array();
    foreach($productSaleList as $sale) {
        if ($companyId == $sale->company_id) {
            $sales[] = $sale;
        }
    }
    return $sales;
}

function getProductPO($companyId,$productPOList) {
    $poList = array();
    foreach($productPOList as $po) {
        if ($po->company_id == $companyId) {
            $poList[] = $po;
        }
    }
    return $poList;
}

?>
