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; } }
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) { } }
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; } }
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"> </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"> </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; } }
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; }