Пример #1
0
 public function SavePaymentForRejectedCheque(Gyuser_Model_Cobranzas $obj)
 {
     list($Day, $Month, $Year) = explode('/', $obj->getDate_paid());
     $stampeddate = mktime(12, 0, 0, $Month, $Day, $Year);
     $Date_paid = date("Y-m-d", $stampeddate);
     $paymentType = $obj->getPayment_type();
     $data = array('client_id' => $obj->getClient_id(), 'operation_id' => $obj->getOperation_id(), 'cheque_id' => $obj->getCheque_id(), 'date_paid' => $Date_paid, 'paid_amount' => $obj->getPaid_amount(), 'previous_balance' => $obj->getPrevious_balance(), 'current_balance' => $obj->getCurrent_balance(), 'payment_type' => $obj->getPayment_type());
     $id = (int) $this->getDbTable()->insert($data);
     if ($id) {
         $chqMapper = new Gyuser_Model_ChequesDataMapper();
         $chqObj = new Gyuser_Model_Cheques();
         $chqObj->setBalance($obj->getCurrent_balance());
         $chqObj->setId($obj->getCheque_id());
         //$chqObj->setRejected_check_payment(1);
         $updateRes = $chqMapper->UpdateRejectedChequeBalance($chqObj);
         if ($paymentType == 2) {
             //cheque propio
             $newCheObj = $obj->getCheques_obj();
             $newCheRes = $chqMapper->InsertChequeForRejectedCheque($newCheObj);
             if (!$newCheRes) {
                 throw Exception('Error inserting cheque for rejected check on DB');
             }
         } elseif ($paymentType == 3) {
             //cheque de tercero
             $BankMapper = new Gyuser_Model_BankAccountsDataMapper();
             $newBankObj = $obj->getBank_accounts_obj();
             $newBankId = $BankMapper->save($newBankObj);
             if (!$newBankId) {
                 throw Exception('Error inserting bank account for rejected check on DB');
             }
             $newCheObj = $obj->getCheques_obj();
             $newCheObj->setRejected_bank_id($newBankId);
             $newCheRes = $chqMapper->InsertChequeForRejectedCheque($newCheObj);
             if (!$newCheRes) {
                 throw Exception('Error inserting cheque for rejected check on DB');
             }
         }
         if ($updateRes) {
             /// check if the operation has no pending checks, if it doesn't mark the whole operation as saldada
             $opMapper = new Gyuser_Model_OperationsDataMapper();
             $operationPayed = $opMapper->checkOperationSaldada($obj->getOperation_id());
             if ($operationPayed) {
                 $id = $opMapper->setOperationSaldada($obj->getOperation_id());
                 if (!$id) {
                     throw new Exception('There was an error updating the operation to operacion saldada');
                 }
             } else {
                 //op. not yet payed. Here we might have no checks in cobranza but we can still have pending checks because of date.
                 $operationInCobranza = $opMapper->checkOperationCobranza($obj->getOperation_id());
                 if (!$operationInCobranza) {
                     //no checks in cobranza
                     $id = $opMapper->setOperationEnCartera($obj->getOperation_id());
                     //get operation back to "cheques en cartera" state
                     if (!$id) {
                         throw new Exception('There was an error updating the operation to cheques en cartera');
                     }
                 }
             }
             /// check if the user has no more cobranzas ops, if it doesn't set it as active
             $clMapper = new Gyuser_Model_UserDataMapper();
             $cobranzasOp = $clMapper->checkCobranzasOp($obj->getClient_id());
             if (!$cobranzasOp) {
                 //FIX!! Gus asked to pass clients to active once they finish paying cobranzas
                 $id = $clMapper->setActiveClient($obj->getClient_id());
                 //$id = $clMapper->setPasiveClient($obj->getClient_id());
                 if ($id) {
                     $id = -1;
                 } else {
                     throw new Exception('There was an error setting the client to active');
                 }
             }
         } else {
             throw new Exception('There was an error updating the rejected check balance');
         }
     } else {
         throw new Exception('There was an error adding the new payment for rejected check');
     }
     return $id;
 }
 public function getchequesbycaveidfilterajaxAction()
 {
     try {
         $request = $this->getRequest();
         if ($this->getRequest()->isPost()) {
             $this->_helper->layout->disableLayout();
             $this->_helper->viewRenderer->setNoRender();
             $cave_id = (int) $request->cave_id;
             $pos = (int) $request->pos;
             $liqDate = $request->liqDate;
             if ($cave_id) {
                 $cObj = new Gyuser_Model_Cheques();
                 $cObj->setCave_id($cave_id);
                 $cMapper = new Gyuser_Model_ChequesDataMapper();
                 $result = $cMapper->GetChequeDetailsByCaveIdJson($cObj, $pos, $liqDate);
                 if ($result) {
                     echo json_encode($result);
                 } else {
                     echo 'f';
                 }
             }
         }
     } catch (Exception $e) {
         echo $e;
     }
 }
 public function GetCaveById(Gyuser_Model_OtherCaves $obj)
 {
     $table = $this->getDbTable();
     $select = $table->select();
     $select->setIntegrityCheck(false);
     $select->from(array('ocs' => 'other_caves'), array('id', 'name', 'email', 'balance', 'tasa_anual', 'impuesto_al_cheque', 'gastos_general', 'gastos_interior', 'gastos_denuncia', 'gastos_rechazo', 'acreditacion_capital', 'acreditacion_interior', 'gastos_menor_a_monto_1', 'gastos_menor_a_1', 'gastos_menor_a_monto_2', 'gastos_menor_a_2'));
     $select->joinLeft(array('ops' => 'operations'), 'ops.cave_id = ocs.id', array('cave_id', 'liquidacion_id'));
     $select->joinLeft(array('cqu' => 'cheques'), 'cqu.operation_id = ops.id ', array('sum(cqu.amount) as rej_amount', 'sum(cqu.rejected_cost) as rej_cost'));
     $select->where('cqu.status = ?', 3);
     $select->where('cqu.rejected_liquidacion_id is null');
     $select->where('ocs.status = ?', true);
     $select->where('ocs.id = ?', $obj->getId());
     $select->order('name ASC');
     $row = $table->fetchRow($select);
     if ($row) {
         $entry = new Gyuser_Model_OtherCaves();
         $entry->setId($row->id);
         $entry->setName($row->name);
         $entry->setEmail($row->email);
         $entry->setBalance($row->balance);
         $entry->setRej_check_amount(floatval($row->rej_amount) + floatval($row->rej_cost));
         $entry->setTasa_anual($row->tasa_anual);
         $entry->setImpuesto_al_cheque($row->impuesto_al_cheque);
         $entry->setGastos_general($row->gastos_general);
         $entry->setGastos_interior($row->gastos_interior);
         $entry->setGastos_denuncia($row->gastos_denuncia);
         $entry->setGastos_rechazo($row->gastos_rechazo);
         $entry->setAcreditacion_capital($row->acreditacion_capital);
         $entry->setAcreditacion_interior($row->acreditacion_interior);
         $entry->setGastos_cheque_menor_a_1($row->gastos_menor_a_monto_1);
         $entry->setGastos_cheque_a_1($row->gastos_menor_a_1);
         $entry->setGastos_cheque_menor_a_2($row->gastos_menor_a_monto_2);
         $entry->setGastos_cheque_a_2($row->gastos_menor_a_2);
         $cMapper = new Gyuser_Model_ChequesDataMapper();
         $cObj = new Gyuser_Model_Cheques();
         $cObj->setStatus(4);
         $cObj->setCave_id($row->cave_id);
         if (@$row->cave_id) {
             $cAmount = $cMapper->GetTotalAmountByCave($cObj);
             $entry->setPassed_amount($cAmount);
         }
         return $entry;
     } else {
         return null;
     }
 }
Пример #4
0
    public function sendPedidoInformesOpTerceros($opId)
    {
        try {
            $mapper = new Gyuser_Model_ChequesDataMapper();
            $chequesList = $mapper->GetChequeDetailsByOpId($opId);
            $html = <<<EOT
                            <style type="text/css">      
                                .liq-table {
                                    border:1px solid #777;
                                }
                                .liq-table td, .liq-table th {                                
                                    border-top: 0px;
                                    border-right: 1px solid #e5e5e5;
                                    border-bottom: 1px solid #e5e5e5;
                                    border-left: 0px;
                                    border:1px solid #ccc;
                                    padding:3px 7px;
                                    font:12px Geneva, sans-serif;
                                    background-color:#fff;    
                                    white-space:nowrap;
                                }
                                td.liq-header {
                                    background-color:#777; 
                                    text-align:center;
                                    color:#fff;
                                    font:bold 13px Geneva, sans-serif;
                                    text-transform:uppercase;
                                    border-width:0;
                                    white-space:nowrap;
                                }
                                .liq-header2 td, .liq-header2 th{
                                    background-color:#f7f7f7;
                                }
                                .liq-header3 td, .liq-header3 th{
                                    background-color:#e3e3e3;
                                }
                                .liq-header2 td, .liq-header2 th, .liq-header3 td, .liq-header3 th{                                    
                                    font:bold 12px Geneva, arial, sans-serif;
                                    text-transform: uppercase
                                    white-space:nowrap;
                                }
                                .liq-footer td{
                                    background-color:#e3e3e3;
                                    font-weight:bold; 
                                    border-top:1px solid #333;
                                    white-space:nowrap;
                                }
                            </style>
EOT;
            $html .= <<<EOT
                    <h1 style="font:bold 26px arial, sans-serif">Pedidos de Informe</h1>
                     <table cellpadding="0" cellspacing="0" border="1" class="liq-table">
                        <thead>
                                <tr>
                                    <td colspan="12" class="liq-header">CHEQUES</td>
                                </tr>
                                <tr class="liq-header2">
                                        <th>TITULAR</th>
                                        <th>FECHA</th>
                                        <th>N. CHEQUE</th>
                                        <th>IMPORTE</th>
                                        <th>DNI</th>
                                        <th>CUIL</th>
                                        <th>EMPRESA</th>
                                        <th>N. CUENTA</th>
                                        <th>BANCO</th>
                                        <th>SUCURSAL</th>
                                        <th>C.P.</th>
                                        <th>FECHA APERTURA</th>
                                </tr>
                        </thead>
                           <tbody class="gridtbody">'
EOT;
            foreach ($chequesList as $cheque) {
                $chequeAmt = '$ ' . number_format($cheque['amount'], 2, ',', '.');
                $html .= "<tr>                            \n                            <td>{$cheque['first_name']} {$cheque['last_name']}</td>\n                            <td>{$cheque['date']}</td>\n                            <td>{$cheque['check_n']}</td>\n                            <td>{$chequeAmt}</td>\n                            <td>{$cheque['DNI']}</td>\n                            <td>{$cheque['CUIL']}</td>\n                            <td>{$cheque['business']}</td>\n                            <td>{$cheque['account_n']}</td>\n                            <td>{$cheque['bank_name']}</td>\n                            <td>{$cheque['branch']}</td>\n                            <td>{$cheque['zip_code']}</td>\n                            <td>{$cheque['opening_date']}</td>\n                        </tr>";
            }
            $html .= '</tbody>
                        </table><br />';
            //$param = array();
            //if ($status) {
            //    $param = array('compress' => 0, 'Attachment' => 0);
            //}
            $mail = new Zend_Mail('utf-8');
            /*
                        $at = new Zend_Mime_Part($html);
                        $at->type = 'application/vnd.ms-excel';
                        $at->disposition = Zend_Mime::DISPOSITION_INLINE;
                        $at->encoding = Zend_Mime::ENCODING_BASE64;
                        $at->filename = $filename.'.xls';
            * 
            */
            $adminSettings = $this->getAdminSettings();
            $mail->addTo($adminSettings->getMail_informes());
            //$mail->addAttachment($at);
            $mail->setSubject('Cheques para aprobación');
            $mail->setBodyHtml($html);
            $mail->send();
            return 'success';
        } catch (Exception $e) {
        }
    }
Пример #5
0
 public function gettercerosopdetailsajaxAction()
 {
     try {
         $this->_helper->layout->disableLayout();
         $this->_helper->viewRenderer->setNoRender();
         $request = $this->getRequest();
         if ($this->getRequest()->isPost()) {
             //$liqId = (int) $request->liquidaciones_id;
             //if ($liqId) {
             /*
                                 $lMapper = new Gyuser_Model_LiquidacionesDataMapper();
                                 $lObj = new Gyuser_Model_Liquidaciones();
                                 $lObj->setId($liqId);
                                 $lqList = $lMapper->GetLiquidacionesById($lObj);
                                 
                                 $liquidacion = array(
                'id' => $lqList['id'],
                'date' => $lqList['date'],
                'committed' => $lqList['committed'],                        
                'acreditacion' => $lqList['acreditacion'],
                'checks_qty' => $lqList['checks_qty'],
                'average_days' => $lqList['average_days'],
                'total_bruto' => $lqList['total_bruto'],
                'impuesto_al_cheque_amt' => $lqList['impuesto_al_cheque_amt'],
                'intereses' => $lqList['intereses'],
                'gastos_interior_fee' => $lqList['gastos_interior_fee'],
                'gastos_general_fee' => $lqList['gastos_general_fee'],                        
                'gastos_varios' => $lqList['gastos_varios'],
                'total_neto' => $lqList['total_neto']
                                 );
                                 
                                 $status = $lqList['committed'];                    
                                 if($status == 0) { //not committed, get provider data for today 
                                 
                $pMapper = new Gyuser_Model_ProvidersDataMapper();
                $provData = $pMapper->GetProviderByIdSimple($lqList['provider_id']);
                $provDataJson = array(
                    'id' => $provData->getId(),                            
                    'tasa_anual' => $provData->getTasa_anual(),
                    'impuesto_al_cheque' => $provData->getImpuesto_al_cheque(),
                    'gastos_general' => $provData->getGastos_general(),
                    'gastos_interior' => $provData->getGastos_interior(),
                    'acreditacion_capital' => $provData->getAcreditacion_capital(),
                    'acreditacion_interior' => $provData->getAcreditacion_interior(),
                    'gastos_menor_a_monto_1' => $provData->getGastos_cheque_menor_a_1(),
                    'gastos_menor_a_1' => $provData->getGastos_cheque_a_1(),
                    'gastos_menor_a_monto_2' => $provData->getGastos_cheque_menor_a_2(),
                    'gastos_menor_a_2' => $provData->getGastos_cheque_a_2()
                );
                                 }
                                 else { //if committed or en camino, get prov data stored in liquidacion at delivery time                        
                $provDataJson = array(                            
                    'id' => $lqList['id'],                            
                    'tasa_anual' => $lqList['tasa_anual'],
                    'impuesto_al_cheque' => $lqList['impuesto_al_cheque'],
                    'gastos_general' => $lqList['gastos_general'],
                    'gastos_interior' => $lqList['gastos_interior'],
                    'acreditacion_capital' => $lqList['acreditacion_capital'],
                    'acreditacion_interior' => $lqList['acreditacion_interior'],
                    'gastos_menor_a_monto_1' => $lqList['gastos_menor_a_monto_1'],
                    'gastos_menor_a_1' => $lqList['gastos_menor_a_1'],
                    'gastos_menor_a_monto_2' => $lqList['gastos_menor_a_monto_2'],
                    'gastos_menor_a_2' => $lqList['gastos_menor_a_2']     
                );
                $provData = $lMapper->getProvData($liqId);
                                 }
                                 if($status == 2 || $status == 1) 
                $liqDate = $lqList['date'];
                                 else //is 0 = not committed. Set date as today
                $liqDate = date('Y-m-d');
             * 
             */
             //$chequesList = $cMapper->GetChequeDetailsByLiquidacionIdJson($liqId, $provData, $liqDate);
             $opId = (int) $request->operation_id;
             $cMapper = new Gyuser_Model_ChequesDataMapper();
             $chequesList = $cMapper->GetChequesByOpIdJson($opId);
             $result = array('chequesList' => $chequesList);
             if ($result) {
                 echo json_encode($result);
             } else {
                 echo 'f';
             }
         }
     } catch (Exception $e) {
         echo $e;
     }
 }
Пример #6
0
 public function getProviders()
 {
     $table = $this->getDbTable();
     $select = $table->select();
     $select->setIntegrityCheck(false);
     $select->from('providers', array('id', 'name', 'email', 'balance', 'tasa_anual', 'impuesto_al_cheque', 'gastos_general', 'gastos_interior', 'gastos_denuncia', 'gastos_rechazo', 'acreditacion_capital', 'acreditacion_interior', 'gastos_menor_a_monto_1', 'gastos_menor_a_1', 'gastos_menor_a_monto_2', 'gastos_menor_a_2'));
     $select->joinLeft(array('cqu' => 'cheques'), 'cqu.provider_id = providers.id and cqu.status = 3 and cqu.rejected_liquidacion_id IS NULL', array('sum(amount) as rej_amount', 'sum(rejected_cost) as rej_cost'));
     //$select->where('cqu.status = ?', 3);
     //$select->where('cqu.rejected_liquidacion_id IS NULL');
     $select->where('providers.status = ?', true);
     $select->group('providers.id');
     $select->order('id ASC');
     $resultset = $table->fetchAll($select);
     $entires = array();
     foreach ($resultset as $row) {
         //$entry = new Gyuser_Model_SupplierOperations();
         $entry = new Gyuser_Model_Providers();
         $entry->setId($row->id);
         $entry->setName($row->name);
         $entry->setEmail($row->email);
         $entry->setBalance($row->balance);
         $entry->setTasa_anual($row->tasa_anual);
         $entry->setImpuesto_al_cheque($row->impuesto_al_cheque);
         $entry->setGastos_general($row->gastos_general);
         $entry->setGastos_interior($row->gastos_interior);
         $entry->setGastos_denuncia($row->gastos_denuncia);
         $entry->setGastos_rechazo($row->gastos_rechazo);
         $entry->setAcreditacion_capital($row->acreditacion_capital);
         $entry->setAcreditacion_interior($row->acreditacion_interior);
         $entry->setGastos_cheque_menor_a_1($row->gastos_menor_a_monto_1);
         $entry->setGastos_cheque_a_1($row->gastos_menor_a_1);
         $entry->setGastos_cheque_menor_a_2($row->gastos_menor_a_monto_2);
         $entry->setGastos_cheque_a_2($row->gastos_menor_a_2);
         $entry->setRej_check_amount(floatval($row->rej_amount) + floatval($row->rej_cost));
         $cMapper = new Gyuser_Model_ChequesDataMapper();
         $cObj = new Gyuser_Model_Cheques();
         $cObj->setStatus(4);
         $cObj->setProvider_id($row->id);
         $cAmount = $cMapper->GetTotalAmountByStats($cObj);
         $entry->setPassed_amount($cAmount);
         $entires[] = $entry;
     }
     return $entires;
 }
    public function CreatePDF(Gyuser_Model_User $obj, $typeid, $status, $operationid)
    {
        $clietid = $obj->getId();
        $param = array();
        if ($status) {
            $param = array('compress' => 0, 'Attachment' => 0);
        }
        switch ($typeid) {
            case 1:
                $mapper = new Gyuser_Model_UserDataMapper();
                $result = $mapper->ClientDetailsById($obj);
                $fn = $result->getFirst_name();
                $ln = $result->getLast_name();
                $dni = $result->GetDNI();
                $html = '<html><body>' . '<table style="font-size:30px;font-weight:bold;font-family:Helvetica,Arial;">' . '<tr>' . '<td>Nombre</td>' . '<td>: </td>' . "<td>{$fn}</td>" . '</tr>' . '<tr>' . '<td>Apellido</td>' . '<td>: </td>' . "<td>{$ln}</td>" . '</tr>' . '<tr>' . '<td>DNI</td>' . '<td>: </td>' . "<td>{$dni}</td>" . '</tr>' . '</table>' . '</body></html>';
                $dompdf = new DOMPDF();
                $dompdf->load_html($html);
                $dompdf->render();
                $dompdf->stream("Mutuo-1.pdf", $param);
                break;
            case 2:
                $mapper = new Gyuser_Model_UserDataMapper();
                $result = $mapper->ClientDetailsById($obj);
                $fn = $result->getFirst_name();
                $ln = $result->getLast_name();
                $dni = $result->GetDNI();
                $chequeObj = new Gyuser_Model_Cheques();
                $chequeObj->setOperation_id($operationid);
                $chequeMapper = new Gyuser_Model_ChequesDataMapper();
                $chequesList = $chequeMapper->GetChequeDetailsByUserId($chequeObj);
                $html = '<html>
					  <style>
                                        .cheques{
                                            width:100%;
                                            border:1px solid #ccc;
                                        }
                                            .cheques td,.cheques th{
                                                    border:2px solid #ccc;
                                                    font-family:Helvetica,Arial;
                                                    padding:10px;
        				}
        				.cheques th{
        					font-size:20px;
        					font-weight:bold;
        				}
        				.h1Txt{
        					text-decoration:underline;
        					font-family:Helvetica,Arial;
        				}
					  </style>

					  <body>' . '<table style="font-size:30px;font-weight:bold;font-family:Helvetica,Arial;">' . '<tr>' . '<td>Nombre</td>' . '<td>: </td>' . "<td>{$fn}</td>" . '</tr>' . '<tr>' . '<td>Apellido</td>' . '<td>: </td>' . "<td>{$ln}</td>" . '</tr>' . '<tr>' . '<td>DNI</td>' . '<td>: </td>' . "<td>{$dni}</td>" . '</tr>' . '</table><br/><br/>';
                if ($chequesList) {
                    $html .= '<table class="cheques"><tr><th>Fecha</th><th>Numero De Cheque</th><th>Importe</th></tr>';
                    foreach ($chequesList as $cheque) {
                        $html .= '<tr>';
                        $html .= '<td >' . $cheque['date'] . '</td>';
                        $html .= '<td >' . $cheque['check_n'] . '</td>';
                        $html .= '<td >' . $cheque['amount'] . '</td>';
                        $html .= '</tr>';
                    }
                    $html .= '</table>';
                }
                $html .= '</body></html>';
                $dompdf = new DOMPDF();
                $dompdf->load_html($html);
                $dompdf->render();
                $dompdf->stream("Mutuo-2.pdf", $param);
                break;
            case 3:
                $mapper = new Gyuser_Model_UserDataMapper();
                $result = $mapper->ClientDetailsById($obj);
                $fn = $result->getFirst_name();
                $ln = $result->getLast_name();
                $dni = $result->GetDNI();
                $telc = $result->getTel_cell_code() . ' ' . $result->getTel_cell();
                $tell = $result->getTel_lab_code() . ' ' . $result->getTel_lab();
                $telo = $result->getTel_otro_code() . ' ' . $result->getTel_otro();
                $telp = $result->getTel_part_code() . ' ' . $result->getTel_part();
                $chequeObj = new Gyuser_Model_Cheques();
                $chequeObj->setOperation_id($operationid);
                $chequeMapper = new Gyuser_Model_ChequesDataMapper();
                $chequesList = $chequeMapper->GetChequeDetailsByUserId($chequeObj);
                $addressMapper = new Gyuser_Model_AddressDataMapper();
                $addressObj = new Gyuser_Model_Address();
                $addressObj->setClient_id($clietid);
                $address = $addressMapper->GetDeliveryAddressByClientId($addressObj);
                $html = '<html>
					  <style>
					    .cheques{
					    	width:100%;
					    	border:1px solid #ccc;
					    }
					  	.cheques td,.cheques th{
					  		border:2px solid #ccc;
					  		font-family:Helvetica,Arial;
					  		padding:10px;
        				}
        				.cheques th{
        					font-size:20px;
        					font-weight:bold;
        				}
        				.address td{
        					font-family:Helvetica,Arial;
					  		padding:10px;
					  		font-size:20px;
        				}
					  </style>

					  <body>' . '<table style="font-size:30px;font-weight:bold;font-family:Helvetica,Arial;">' . '<tr>' . '<td>Nombre</td>' . '<td>: </td>' . "<td>{$fn}</td>" . '</tr>' . '<tr>' . '<td>Apellido</td>' . '<td>: </td>' . "<td>{$ln}</td>" . '</tr>' . '<tr>' . '<td>DNI</td>' . '<td>: </td>' . "<td>{$dni}</td>" . '</tr>' . '</table><br/><br/><h1 class="h1Txt">Cheques</h1>';
                if ($chequesList) {
                    $html .= '<table class="cheques"><tr><th>Fecha</th><th>Numero De Cheque</th><th>Importe</th></tr>';
                    foreach ($chequesList as $cheque) {
                        $html .= '<tr>';
                        $html .= '<td >' . $cheque['date'] . '</td>';
                        $html .= '<td >' . $cheque['check_n'] . '</td>';
                        $html .= '<td >' . $cheque['amount'] . '</td>';
                        $html .= '</tr>';
                    }
                    $html .= '</table>';
                }
                $html .= '<br/><br/><h1 class="h1Txt">Domicilios</h1>';
                if ($address) {
                    $str = '';
                    $jsonData = $address;
                    $id = $jsonData['id'];
                    $street = $jsonData['street'];
                    $city = $jsonData['city'];
                    $state = $jsonData['state'];
                    $state_name = $jsonData['state_name'];
                    $country = $jsonData['country'];
                    $html .= '<table class="address">' . '<tr>' . '<td width="100">Domicilio</td><td> : </td><td>' . $street . '</td>' . '</tr>' . '<tr>' . '<td>Barrio / Ciudad</td><td> : </td><td>' . $city . '</td>' . '</tr>' . '<tr>' . '<td>Provincia</td><td> : </td><td>' . $state_name . '</td>' . '</tr>' . '<tr>' . '<td>Tel�fono</td><td> : </td><td>' . $telc . '<br/>' . $tell . '<br/>' . $telo . '<br/>' . $telp . '<br/></td>' . '</tr>' . '</table>';
                }
                $html .= '</body></html>';
                $dompdf = new DOMPDF();
                $dompdf->load_html($html);
                $dompdf->render();
                $dompdf->stream("Mutuo-3.pdf", $param);
                break;
            default:
                break;
        }
    }
    public function getLiquidacionesForPrint($liqId)
    {
        if ($liqId) {
            $lMapper = new Gyuser_Model_LiquidacionesDataMapper();
            $lObj = new Gyuser_Model_Liquidaciones();
            $lObj->setId($liqId);
            $lqList = $lMapper->GetLiquidacionesById($lObj);
            $html = '';
            $html .= '<h1>Liquidacion ' . $lqList['id'] . '</h1>
                        <table cellpadding="0" cellspacing="0" border="1">
                                <thead>
                                    <tr>
                                        <th>Id</th>
                                        <th>FECHA</th>
                                        <th>DEBE</th>
                                        <th>ACREDITACIONES</th>
                                        <th>IMPORTE PAGADO</th>
                                        <th>SALDO</th>
                                    </tr>
                                </thead>
                                   <tbody>';
            $html .= "<tr>\n                            <td>{$lqList['id']}</td>\n                            <td>{$lqList['date']}</td>\n                            <td>{$lqList['amount_debt']}</td>\n                            <td>{$lqList['acreditacion']}</td>\n                            <td>{$lqList['amount_payed']}</td>\n                            <td>{$lqList['current_account_balance']}</td>\n                    </tr>";
            $html .= '</tbody></table><br/>';
            $html .= '
                        <table cellpadding="0" cellspacing="0" border="1" >
                        <thead>
                                <tr>
                                    <td colspan="6" style="text-align:center">OPERACIONES COMPARTIDAS</td>
                                </tr>
                                <tr>
                                        <th>FECHA OP.</th>
                                        <th>NOMBRE</th>
                                        <th>TOTAL</th>
                                        <th>GY</th>
                                        <th>COMISIONES</th>
                                        <th>SALDO</th>
                                </tr>
                        </thead>
                           <tbody class="gridtbody">';
            $oMapper = new Gyuser_Model_OperationsDataMapper();
            $cObj = new Gyuser_Model_Operations();
            $cObj->setLiquidacion_id($liqId);
            $opertationsList = $oMapper->GetOperationsByLiquidacionIdJson($cObj);
            $pArr = $opertationsList;
            $strBld = '';
            $pay_final_amount = 0;
            if (count($pArr)) {
                foreach ($pArr as $pRow) {
                    $pay_final_amount += $pRow['prov_payment'];
                    $halfAmt = number_format($pRow['amount'] / 2, 2, '.', '');
                    $html .= "<tr >\n                                    <td>{$pRow['date']}</td>\n                                    <td>{$pRow['first_name']} {$pRow['last_name']}</td>\n                                    <td>{$pRow['amount']}</td>\n                                    <td>{$halfAmt}</td>                                   \n                                    <td>{$pRow['comision_amt']}</td>\n                                    <td>{$pRow['prov_payment']}</td>\n                            </tr>";
                }
            }
            $html .= '</tbody>
                            <tfoot>
                                <tr style="font-weight:bold"><td colspan="4">&nbsp;</td><td>TOTAL</td><td><span class="operationsTotal_span">' . $pay_final_amount . '/span></td></tr>
                            </tfoot>
                        </table><br />';
            $html .= '<table cellpadding="0" cellspacing="0" border="1" >
                        <thead>
                                <tr>
                                    <td colspan="6" style="text-align:center">CHEQUES RECHAZADOS</td>
                                </tr>
                                <tr>
                                        <th>TITULAR</th>
                                        <th>FECHA</th>
                                        <th>N. CHEQUE</th>
                                        <th>RECHAZOS</th>
                                        <th>GASTOS</th>
                                        <th>SALDO</th>
                                </tr>
                        </thead>
                        <tbody class="gridtbody">';
            $cMapper = new Gyuser_Model_ChequesDataMapper();
            $cObj = new Gyuser_Model_Cheques();
            $cObj->setLiquidacion_id($liqId);
            $cObj->setProvider_id($lqList['provider_id']);
            $pArr = $cMapper->RejectedChequeByLiquidacionesIdForProv($cObj);
            $strBld = '';
            $sName = '';
            $rejectedTotal = 0;
            //$rejectedChequesFee = number_format($rejectedChequesFee,2,'.','');
            if (count($pArr)) {
                foreach ($pArr as $pRow) {
                    $cObj->setRejected_type($pRow['rejected_type']);
                    $rejectedChequesFee = (int) $cMapper->GetRejectionCostForProv($cObj);
                    $amount = $pRow['amount'];
                    $rChequeWithFee = $amount + $rejectedChequesFee;
                    $rChequeWithFee = number_format($rChequeWithFee, 2, '.', '');
                    $rejectedTotal += $rChequeWithFee;
                    $pay_final_amount += $rChequeWithFee;
                    $rejectedChequesFee = number_format($rejectedChequesFee, 2, '.', '');
                    $strBld .= <<<EOT
                    <tr id="RejectedCheque_{$pRow['id']}" style="background:#E3E3E3;">
                        <td class="user_operation_id">{$pRow['first_name']} {$pRow['last_name']}</td>
                        <td class="user_check_n">{$pRow['date']}</td>
                        <td class="user_bank_name">{$pRow['check_n']}</td>
                        <td class="user_amount">{$amount}</td>
                        <td class="user_rejected_cheque_fee">{$rejectedChequesFee}</td>                                            
                        <td class="pay_amount_cls">{$rChequeWithFee}</td>
                    </tr>
EOT;
                }
            }
            $pay_final_amountInv = $pay_final_amount * -1;
            $pre_val = $pre_val * -1;
            $html .= $strBld;
            $html .= '  </tbody>
                        <tfoot>
                            <tr style="font-weight:bold"><td colspan="4">&nbsp;</td><td>TOTAL</td><td><span class="rejectedTotal_span">' . $rejectedTotal . '</span></td></tr>
                        </tfoot>
                    </table><br />';
            $html .= '<table id="operationGridADDst" class="totals-table">
                            <tr id="Acreditacion">
                                <td>Acreditaciones:</td>
                                <td>
                                    $ <input type="text" name="acreditacion" class="pay_amount_cls" value="" size="5" style="height:11px" />                                        
                                </td>
                            </tr>
                            <tr id="operationGridADDend">
                                <td>Importe a Liquidar:</td>
                                <td>
                                    <span class="pay_final_amount_span">' . $pay_final_amount . '</span>     
                                    <input type="hidden" id="pay_final_amount" value="' . $pay_final_amountInv . '" />
                                </td>
                            </tr>
                        </table><br />';
            /*
                        $rejectedCheques = $cMapper->RejectedChequeByLiquidacionesIdForProv($cObj);
                        $pArr = $rejectedCheques;
                        $rejectedChequesFee = 60.00;
                        $rejectedChequesFee = number_format($rejectedChequesFee, 2, '.', '');
            
                        if (count($pArr)) {
               $html .= '<tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>-</td></tr>';
               foreach ($pArr as $pRow) 
               {
                   //$pRow	=	new Gyuser_Model_Cheques();
                   $amount = $pRow['amount'];
                   $rChequeWithFee = $amount + $rejectedChequesFee;
                   $rChequeWithFee = number_format($rChequeWithFee, 2, '.', '');
                   $pay_final_amount += $rChequeWithFee;
                   $html .= "<tr  style='background:#E3E3E3;'>
            					<td class='user_operation_id'>{$pRow['first_name']}<input type='hidden' value='}' name='operation_id'/></td>
            					<td class='user_date'></td>
            					<td class='user_check_n'></td>
            					<td class='user_bank_name'></td>
            					<td class='user_amount'>{$amount}</td>
            					<td class='user_rejected_cheque_fee'>{$rejectedChequesFee}</td>
            					<td class='user_bank_name'></td>
            					<td class='user_bank_name'>$rChequeWithFee</td>
            				</tr>";
               }                
               if (count($pArr)) 
               {
                   $html .= '<tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>-</td></tr>';
                   $html .= '<tr><td style="height:20px"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr>';
                   $pay_final_amount = number_format($pay_final_amount, 2, '.', '');
                   $html .= "<tr><td></td><td></td><td></td><td></td><td></td><td></td><td style='background:#E3E3E3;'>SALDO EN CHEQUES</td><td style='background:#CCCCCC;'><b>$pay_final_amount</b><input type='hidden' id='pay_final_amount' value='$pay_final_amount' /></td></tr>";
                   $html .= "<tr><td></td><td></td><td></td><td></td><td></td><td></td><td><input type='button' class='chooseChequesBtn jqButton' value='Choose Cheques'/></td><td></td></tr>";
               }
                        }
                        $html .= '</tbody></table>';
            * 
            * 
            */
            $html .= '<br /><br />
    <h1>CALCULO DE DESCUENTO - <span class="currentDate"></span></h1>
    <table  cellpadding="0" cellspacing="0" border="1" >
	<thead>
		<tr>
			<th>TITULAR</th>
			<th>EMPRESA</th>
			<th>FECHA</th>
			<th>N. CHEQUE</th>
			<th>IMPORTE</th>
			<th>CANT. DIAS</th>
			<th>IMP. AL CHEQUE</th>
			<th>DESCUENTO</th>
			<th>SALDO A HOY</th>
		</tr>
	</thead>
	   <tbody class="gridtbody">';
            $cMapper = new Gyuser_Model_ChequesDataMapper();
            $cObj = new Gyuser_Model_Cheques();
            $cObj->setLiquidacion_id($liqId);
            $chequesList = $cMapper->GetChequeDetailsByLiquidacionIdJson($liqId, $provData, $liqDate);
            $totalFinalAmount = 0;
            foreach ($chequesList as $cheques) {
                $item = $cheques;
                $cave_name = $item['first_name'];
                $amount = floatval($item['amount']);
                $check_n = $item['check_n'];
                $bank_name = $item['bank_name'];
                $date = $item['date'];
                $l_date = $item['liquidacion_date'];
                $acreditacion_hr = (int) $item['acreditacion_hrs'];
                $date = $item['date'];
                $date_arc = add_days_by_hr($date, $acreditacion_hr);
                $date_diff = dateDiff($l_date, $date_arc);
                $chqPer = $amount * 2.1 / 100;
                $discount = $amount * 0.17 / 100 * $date_diff;
                $finalAmount = $amount - $chqPer - $discount;
                $finalAmount = number_format($finalAmount, 2, '.', '');
                $amount = number_format($amount, 2, '.', '');
                $chqPer = number_format($chqPer, 2, '.', '');
                $discount = number_format($discount, 2, '.', '');
                $commision = number_format($commision, 2, '.', '');
                $totalFinalAmount += $finalAmount;
                $html .= "<tr>  \n                            <td>{$cave_name}</td>\n                            <td>{$date}</td>\n                            <td>{$amount}</td>\n                            <td>{$check_n}</td>\n                            <td>{$bank_name}</td>\n                            <td>{$date_diff}</td>\n                            <td>{$chqPer}</td>\n                            <td>{$discount}</td>\n                            <td>{$finalAmount}</td>\n                         </tr>";
            }
            $html .= '<tr><td style="height:20px"></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr>';
            $html .= "<tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td style='background:#E3E3E3;'>SALDO A LIQUIDAR</td><td style='background:#CCCCCC;'><b>{$totalFinalAmount}</b><input type='hidden' id='pay_final_amount' value='{$totalFinalAmount}' /></td></tr>";
            $html .= "<tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td><input type='button' class='chooseChequesBtn jqButton' value='Choose Cheques'/></td><td></td></tr>";
            $html .= '</tbody></table>';
            echo $html;
        }
    }
Пример #9
0
 public function updateOpAmount($opId)
 {
     $totAmount = 0;
     $chequesMapper = new Gyuser_Model_ChequesDataMapper();
     $chequesList = $chequesMapper->getApprovedCheckDetails($opId);
     foreach ($chequesList as $cheque) {
         $totAmount += $cheque->getAmount();
     }
     $data = array('amount' => $totAmount);
     $id = $this->getDbTable()->update($data, array('id = ?' => $opId));
     return $id;
 }