Advertisement
Guest User

Untitled

a guest
May 24th, 2017
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.70 KB | None | 0 0
  1. protected function Asentar_transaccion_interdin($TramaPosProceso){
  2. $transaccion = false;
  3. try{
  4. $Plataforma = "WEB";
  5. if (!isset($TramaPosProceso)||strlen(trim($TramaPosProceso)) <= 0) {
  6. $permiso = false;
  7. }else{
  8. //si se enviò la trama, entonces la separamos.
  9. $TramaPP = explode("&", $TramaPosProceso);
  10. $permiso = true;
  11. }
  12.  
  13.  
  14.  
  15. if ($permiso) {
  16.  
  17. //////////////////// graba en la bitacora la trama pos_proceso de interdin //////////
  18. $dateTime = date("Y-m-d H:i:s");
  19.  
  20. $datos = explode("=", $TramaPP[0]); //Referencia 2 (dato enviado en el formulario de invocación)[id_compra]
  21. $aut = explode("=", $TramaPP[1]); //Número de autorización del pago(Generado por el CAO)
  22. $Cre = explode("=", $TramaPP[2]); //Tipo de Crédito (Configurado por cada establecimiento)
  23. $mes = explode("=", $TramaPP[3]); //Número de meses que se pagará la transacción
  24. $ttar = explode("=", $TramaPP[4]); //Tipo de Tarjeta
  25. $sub = explode("=", $TramaPP[5]); //Subtotal
  26. $Iva = explode("=", $TramaPP[6]); //Iva
  27. $Ice = explode("=", $TramaPP[7]); //Ice y/o otros impuestos
  28. $Int = explode("=", $TramaPP[8]); //Intereses
  29. $Tot = explode("=", $TramaPP[9]); //Total (incluyendo intereses)
  30. $tNo = explode("=", $TramaPP[10]); //Número de Orden del pago (TransaccionID)
  31. $cDt = explode("=", $TramaPP[11]); //Referencia 1 (dato opcional enviado en el formulario de invocación)[id_usuario]
  32. $Tipo = explode("=", $TramaPP[12]); //Parámetro que indica ‘P’ para indicar que el pago es exitoso y el valor ‘R’ cuando se realiza el reverso al no recibir la respuesta indicada en el post proceso.
  33. /////
  34. $idCompra = explode(":", $datos[1]);//$datos[1]: equivale a setReferencia2 en la encriptacion
  35.  
  36. //$idUsuario = explode(":", $cDt[1]);
  37. $cDtDetalle = explode("|", $cDt[1]); //$datos[1]: equivale a setReferencia1 en la encriptacion
  38. $idUsuario = explode(":", $cDtDetalle[0]);
  39. $Locatidad = explode(":", $cDtDetalle[1]);
  40.  
  41. if ($Locatidad[1] == 'W') {
  42. $Plataforma = "WEB";
  43. }elseif($Locatidad[1] == 'I'){
  44. $Plataforma = "IOS";
  45. }elseif($Locatidad[1] == 'A'){
  46. $Plataforma = "ANDROID";
  47. }
  48.  
  49.  
  50. $Subtotal_Cal = $sub[1]/100;
  51. $Iva_Cal = $Iva[1]/100;
  52.  
  53.  
  54.  
  55.  
  56. //////// Registramos los datos recibidos, en la bitacora
  57. $Bitacora = new Bitacora();
  58. $Bitacora->seg_codigo_alias = $tNo[1];
  59. $Bitacora->seg_codigo = new \MongoId($idCompra[1]);
  60. $Bitacora->usu_codigo = new \MongoId($idUsuario[1]);
  61. $Bitacora->car_codigo = NULL;//Codigo de Carrito al q está atado
  62. $Bitacora->pol_codigo = NULL;//Código de poliza q se generó
  63. $Bitacora->bit_createdat = new \MongoDate(strtotime($dateTime));
  64. $Bitacora->bit_updatedat = new \MongoDate(strtotime($dateTime));
  65. $Bitacora->bit_metodo_pago = "interdin";
  66. $Bitacora->bit_estado = "N";
  67. $Bitacora->bit_datos = $datos[1];
  68. $Bitacora->bit_aut = $aut[1];
  69. $Bitacora->bit_cre = $Cre[1];
  70. $Bitacora->bit_mes = $mes[1];
  71. $Bitacora->bit_ttar = $ttar[1];
  72. $Bitacora->bit_sub = $Subtotal_Cal;
  73. $Bitacora->bit_iva = $Iva_Cal;
  74. $Bitacora->bit_ice = $Ice[1]/100;
  75. $Bitacora->bit_int = $Int[1]/100;
  76. $Bitacora->bit_tot = $Tot[1]/100;
  77. $Bitacora->bit_cDt = $cDt[1];
  78. $Bitacora->bit_tipo = $Tipo[1];
  79. $Bitacora->bit_lsdata = $TramaPosProceso;
  80. $Bitacora->bit_plataforma = $Plataforma;
  81.  
  82. //Estos campos se actualizan cuanto interdin devuelve el control.
  83. $Bitacora->bit_procesoEND = false;//Indica q el proceso Todavía no acaba la etapa de PosProceso (etapa2)
  84. $Bitacora->bit_procesoDetalle = null;//Se utiliza para detallar el error en caso de existir
  85.  
  86.  
  87. //array se utiliza para guardar los datos del pago en el carrito
  88. $seg_pago = array(
  89. 'pag_metodo_pago' => 'interdin',
  90. 'seg_codigo' => new \MongoId($idCompra[1]),
  91. 'seg_codigo_alias' => $tNo[1],
  92. 'id_usuario' => $idUsuario[1],
  93. 'pag_createdat' => new \MongoDate(strtotime($dateTime)),
  94. 'pag_aut' => $aut[1],
  95. 'pag_cre' => $Cre[1],
  96. 'pag_mes' => $mes[1],
  97. 'pag_tipo_tarjeta' => $ttar[1],
  98. 'pag_subtotal' => $Subtotal_Cal,
  99. 'pag_iva' => $Iva_Cal,
  100. 'pag_ice' => $Ice[1]/100,
  101. 'pag_int' => $Int[1]/100,
  102. 'pag_tot' => $Tot[1]/100,
  103. 'pag_cDt' => $cDt[1],
  104. 'pag_estado' => $Tipo[1],
  105. );
  106.  
  107. if ($Bitacora->save()) {
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement