Example #1
0
 public static function agregar_adeudos($alumno)
 {
     //  Se obtiene los datos de el alumno desde el api por medio del id_persona
     //  ---->
     $commond = new Common_functions();
     $grado = $commond->obtener_infoAlumno_idPersona(array('id_persona' => $alumno));
     if (isset($grado[0]['grado'])) {
         $grado = $grado[0]['grado'];
     } else {
         $grado = null;
     }
     // <----
     //  Dependiendo de los subconceptos que se reciban son los adeudos que
     //  se generaran, se construye el array para la tabla
     //  ---->
     foreach (Adeudos::$custom_data["subconcepto"] as $subconcepto) {
         $adeudo = array("sub_concepto_id" => $subconcepto->id, "id_persona" => $alumno, "importe" => $subconcepto->importe, "fecha_limite" => $subconcepto->fecha_de_vencimiento, "periodo" => Adeudos::$custom_data["paquete"]->periodo, "paquete_id" => Adeudos::$custom_data["paquete"]->id, "recargo" => $subconcepto->recargo, "tipo_recargo" => $subconcepto->tipo_recargo, "subconcepto_paquete_id" => $subconcepto->idsub_paqueteplan, "digito_referencia" => $subconcepto->digito_referencia, "grado" => $grado, "status_adeudo" => 0, "descripcion_sc" => $subconcepto->descripcion_sc, "recargo_acumulado" => $subconcepto->recargo_acumulado, "aplica_beca" => $subconcepto->aplica_beca, "locker_manager" => $subconcepto->locker_manager);
         $adeudo = Adeudos::create($adeudo);
         //  Se gnera el registro de los tipos de pago que tendra el adeudo
         //  caja รณ por medio del banco, se reciben en json y se descodifican
         //  ---->
         foreach (json_decode($subconcepto->tipos_pago) as $key => $value) {
             $adeudo_tipopago['adeudos_id'] = $adeudo['id'];
             $adeudo_tipopago['tipo_pago_id'] = $value;
             Adeudos_tipopago::create($adeudo_tipopago);
         }
         // <----
     }
     // <----
 }
 /**
  * Display the specified resource.
  * GET /usuarios/{id}
  *
  * @param  string  $nocuenta
  * @param  string  $password
  * @return Response
  */
 public function login()
 {
     $sii = new Sii();
     $parametros = Input::get();
     $reglas = array('u' => 'required', 'p' => 'required');
     $validator = Validator::make($parametros, $reglas);
     if (!$validator->fails()) {
         $user = $sii->login($parametros['u'], $parametros['p']);
         if (isset($user['error'])) {
             $respuesta = json_encode(array('error' => true, 'mensaje' => 'User or password Incorrect', 'respuesta' => ''));
         } else {
             Session::put('user', $user);
             if (isset($user['persona']['alumno']) && intval($user['persona']['alumno']) == 1) {
                 $commond = new Common_functions();
                 $grado = $commond->obtener_infoAlumno_idPersona(array('id_persona' => $user['persona']['idpersonas']));
                 if (isset($grado[0])) {
                     $user['persona']['grado'] = $grado[0]['grado'];
                 } else {
                     $user['persona']['grado'] = null;
                 }
             }
             $respuesta = array("error" => false, 'message' => "Usuario autenticado", 'respuesta' => array(Session::all(), 200));
         }
     } else {
         $respuesta = json_encode(array('error' => true, 'mensaje' => 'No hay parametros o estan mal.', 'respuesta' => null));
     }
     $final_response = Response::make($respuesta, 200);
     $final_response->header('Content-Type', "application/json; charset=utf-8");
     return $final_response;
 }
 public function createSubconcepto()
 {
     $parametros = Input::get();
     $reglas = array('subconcepto_id' => 'required|integer', 'periodo' => 'required|integer', 'id_personas' => 'required|integer', 'fecha_limite' => 'date_format:Y-m-d', 'tipos_pago' => 'required|array', 'recargo_acumulado' => 'required|integer', 'aplica_beca' => 'integer', 'aplica_recargo' => 'integer');
     $commond = new Common_functions();
     $validator = Validator::make($parametros, $reglas);
     if (!$validator->fails()) {
         $periodo_actual = $commond->periodo_actual();
         $adeudos_no_pagados = Adeudos::where('id_persona', '=', $parametros['id_personas'])->where('periodo', '!=', $periodo_actual['idperiodo'])->where('status_adeudo', '=', 0)->count();
         $grado = $commond->obtener_infoAlumno_idPersona(array('id_persona' => $parametros['id_personas']));
         if (isset($grado[0]['grado'])) {
             $grado = $grado[0]['grado'];
         } else {
             $grado = null;
         }
         if ($adeudos_no_pagados == 0) {
             $subconcepto = Sub_conceptos::find($parametros['subconcepto_id']);
             $parametros['digito_referencia'] = intval(DB::table('subconcepto_paqueteplandepago')->where('sub_concepto_id', $parametros['subconcepto_id'])->max('digito_referencia'));
             if ($parametros['digito_referencia'] > 9) {
                 $parametros['digito_referencia'] = 8;
             }
             $adeudo = array('importe' => $subconcepto['importe'], 'sub_concepto_id' => $subconcepto['id'], 'fecha_limite' => $parametros['fecha_limite'], 'grado' => $grado, 'id_persona' => $parametros['id_personas'], 'periodo' => $parametros['periodo'], 'digito_referencia' => $parametros['digito_referencia'] + 1, 'recargo_acumulado' => $parametros['recargo_acumulado']);
             $adeudo_creado = Adeudos::create($adeudo);
             foreach ($parametros['tipos_pago'] as $key => $value) {
                 $adeudo_tipopago['adeudos_id'] = $adeudo_creado['id'];
                 $adeudo_tipopago['tipo_pago_id'] = $value;
                 Adeudos_tipopago::create($adeudo_tipopago);
             }
             $subconcepto_adeudo = Sub_conceptos::find($adeudo_creado['sub_concepto_id']);
             if (!is_array($subconcepto_adeudo)) {
                 $subconcepto_adeudo = $subconcepto_adeudo->toArray();
             }
             if (!is_array($adeudo_creado)) {
                 $adeudo_creado = $adeudo_creado->toArray();
             }
             $res = array_merge($adeudo_creado, $subconcepto_adeudo);
         }
         $respuesta = json_encode(array('error' => false, 'mensaje' => 'Subconceptos Agregados Correctamente a Paquete', 'respuesta' => $res));
     } else {
         $respuesta = json_encode(array('error' => true, 'mensaje' => 'No hay parametros o estan mal.', 'respuesta' => null));
     }
     $final_response = Response::make($respuesta, 200);
     $final_response->header('Content-Type', "application/json; charset=utf-8");
     return $final_response;
 }
 public function leer_archivo_banco()
 {
     $commond = new Common_functions();
     $file = Input::file('referencia_archivo');
     if (isset($file)) {
         $data_file = Archivo_referencias::leer($file);
         $data_file['infoFile']['nombre_archivo'] = Input::file('referencia_archivo')->getClientOriginalName();
         $infoarchivo = array('no_transacciones' => $data_file['infoFile']['TRANSACCIONES'], 'cobro_inmediato' => $data_file['infoFile']['COBROINMEDIATO'], 'comisiones_creadas' => $data_file['infoFile']['COMISIONESCOBRADAS'], 'remesas' => $data_file['infoFile']['REMESAS'], 'comisiones_remesas' => $data_file['infoFile']['COMISIONREMESAS'], 'abonado' => $data_file['infoFile']['ABONADO'], 'monto' => $data_file['infoFile']['ABONADO'], 'nombre_archivo' => $data_file['infoFile']['nombre_archivo'], 'fecha' => date('Y-m-d'));
         $personas = array();
         $i = 0;
         foreach ($data_file['referencias'] as $key => $value) {
             $adeudo = Referencia::with('adeudos')->where('referencia', '=', $value['referencia'])->first();
             if ($adeudo && !empty($adeudo)) {
                 $adeudo_up = Adeudos::obtener_adeudos_alumno(array('id' => $adeudo['adeudos']['id'], 'fecha_pago' => $value['fecha_de_pago'], 'id_persona' => $adeudo['id_persona'], 'periodo' => $adeudo['periodo']));
                 $referencia_info = Referencia::where('referencia', '=', $value['referencia'])->first();
                 if ($value['importe'] >= $adeudo_up[0]['importe']) {
                     if ($adeudo_up[0]['beca'] == "N/A") {
                         $adeudo_up[0]['beca'] = 0;
                     }
                     if ($value['importe'] >= intval($adeudo_up[0]['importe']) + 100) {
                         Devoluciones::create(array('periodo' => $adeudo['adeudo']['periodo'], 'fecha_devolucion' => date('Y-m-d'), 'importe' => $adeudo_up[0]['importe'] - $value['importe'], 'id_persona' => $id_persona, 'status_devolucion' => 0));
                     }
                     Adeudos::where('id', '=', $adeudo['adeudos']['id'])->update(array('beca_pago' => $adeudo_up[0]['beca'], 'recargo_pago' => $adeudo_up[0]['recargo_total'], 'importe_pago' => $adeudo_up[0]['importe'], 'status_adeudo' => 1, 'fecha_pago' => $value['fecha_de_pago']));
                 } else {
                     Adeudos::where('id', '=', $adeudo['adeudos']['id'])->update(array('beca_pago' => $adeudo_up[0]['beca'], 'recargo_pago' => $adeudo_up[0]['recargo_total'], 'importe_pago' => $adeudo_up[0]['importe'], 'importe' => floatval(floatval($value['importe'] - $adeudo_up[0]['importe'])), 'fecha_pago' => $value['fecha_de_pago']));
                 }
                 $referencia_pagada = array('id_referencia' => $referencia_info['id'], 'fecha_de_pago' => $value['fecha_de_pago'], 'importe' => $value['importe'], 'estado' => $value['estado']);
                 Referencia::create_referencia_pagada($referencia_pagada);
                 Ingresos::create(array('tipo_pago' => 1, 'importe' => $value['importe'], 'fecha_pago' => $value['fecha_de_pago']));
                 $personas['existe_referencia'][$i]['persona'] = $commond->obtener_infoAlumno_idPersona(array('id_persona' => $adeudo['adeudos']['id_persona']));
                 $personas['existe_referencia'][$i]['referencia'] = $value;
                 $i++;
             } else {
                 $personas['no_existe_referencia'][$i]['referencia'] = $value;
                 $i++;
             }
         }
         $res['data'] = $personas;
         Respuesta_bancaria::create($infoarchivo);
         $respuesta = json_encode(array('error' => false, 'mensaje' => '', 'respuesta' => $res));
     } else {
         $respuesta = json_encode(array('error' => true, 'mensaje' => 'No hay archivo o tiene errores.', 'respuesta' => ''));
     }
     $final_response = Response::make($respuesta, 200);
     $final_response->header('Content-Type', "application/json; charset=utf-8");
     return $final_response;
 }