PageRenderTime 29ms CodeModel.GetById 26ms RepoModel.GetById 0ms app.codeStats 0ms

/application/models/casos_m.php

https://github.com/brass3a4/idheasMac
PHP | 1868 lines | 1003 code | 463 blank | 402 comment | 128 complexity | 9f0011c01baa6f81cd205fbb7b19b80d MD5 | raw file
Possible License(s): GPL-2.0, LGPL-2.1

Large files files are truncated, but you can click here to view the full file

  1. <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
  2. /*
  3. *
  4. Copyright 2013, i(dh)eas, Litigio Estratégico en Derechos Humanos A.C
  5. This file is part of bd(i).
  6. bd(i) is free software: you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation, either version 3 of the License, or
  9. (at your option) any later version.
  10. bd(i) is distributed in the hope that it will be useful,
  11. but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. GNU General Public License for more details.
  14. You should have received a copy of the GNU General Public License
  15. along with bd(i). If not, see <http://www.gnu.org/licenses/>.
  16. * */
  17. class Casos_m extends CI_Model {
  18. function __construct() {
  19. parent::__construct();
  20. $this->load->database();
  21. }
  22. /* Este modelo agrega un caso a la base de datos
  23. * @Param $datosCaso
  24. * */
  25. public function mAgregarCaso($datosCaso){
  26. /* inserta el array casos en la tabla casos de la BD */
  27. $this->db->insert('casos', $datosCaso['tablas']['casos']);
  28. /* Obtine el Id del último caso insertado*/
  29. $this->db->select_max('casoId');
  30. $consulta = $this->db->get('casos');
  31. /* Recorre el array $consulta para traer la cadena del actorId */
  32. if($consulta->num_rows() > 0){
  33. foreach ($consulta->result_array() as $row) {
  34. $ultimoCasoId = $row['casoId'];
  35. }
  36. }
  37. /* Agrega el casoId al arreglo en el campo casos_casoId en las tablas...*/
  38. foreach($datosCaso['tablas'] as $key => $value){
  39. if($key != 'casos'){
  40. $datosCaso['tablas'][$key]['casos_casoId'] = $ultimoCasoId;
  41. }
  42. }
  43. /* Inserta en la BD los arrays */
  44. foreach($datosCaso['tablas'] as $key => $value){
  45. if($key != 'casos'){
  46. $this->db->insert($key,$datosCaso['tablas'][$key]);
  47. }
  48. }
  49. return $ultimoCasoId;
  50. }/* Fin de mAgregarCaso() */
  51. /* Este modelo trae los datos de un caso dependiendo de su id
  52. * @Param casoId
  53. * */
  54. public function mTraerDatosCaso($casoId){
  55. /* Trae todos los datos de casos*/
  56. $this->db->select('*');
  57. $this->db->from('casos');
  58. $this->db->where('casoId',$casoId);
  59. $consulta = $this->db->get();
  60. if ($consulta->num_rows() > 0){
  61. /* Pasa la consulta a un cadena */
  62. foreach ($consulta->result_array() as $row) {
  63. $datos['casos'] = $row;
  64. }
  65. }
  66. /* Trae todos los datos de infoCaso*/
  67. $this->db->select('*');
  68. $this->db->from('infoCaso');
  69. $this->db->where('casos_casoId',$casoId);
  70. $consulta = $this->db->get();
  71. if ($consulta->num_rows() > 0){
  72. /* Pasa la consulta a un cadena */
  73. foreach ($consulta->result_array() as $row) {
  74. $datos['infoCaso'] = $row;
  75. }
  76. }
  77. /* Trae todos los datos de fichas*/
  78. $this->db->select('*');
  79. $this->db->from('fichas');
  80. $this->db->where('casos_casoId',$casoId);
  81. $consulta = $this->db->get();
  82. if ($consulta->num_rows() > 0){
  83. /* Pasa la consulta a un cadena */
  84. foreach ($consulta->result_array() as $row) {
  85. $datos['fichas'][$row['fichaId']] = $row;
  86. $this->db->select('*');
  87. $this->db->from('registro');
  88. $this->db->where('fichas_fichaId',$row['fichaId']);
  89. $consultaRegistros = $this->db->get();
  90. //print_r($consultaRegistros->result_array());
  91. if ($consultaRegistros->num_rows() > 0){
  92. foreach ($consultaRegistros->result_array() as $row2) {
  93. $datos['fichas'][$row['fichaId']]['registros'][$row2['registroId']] = $row2;
  94. }
  95. }
  96. }
  97. }
  98. /* Trae todos los datos de lugares*/
  99. $this->db->select('*');
  100. $this->db->from('lugares');
  101. $this->db->where('casos_casoId',$casoId);
  102. $consulta = $this->db->get();
  103. if ($consulta->num_rows() > 0){
  104. /* Pasa la consulta a un cadena */
  105. foreach ($consulta->result_array() as $row) {
  106. $datos['lugares'][$row['lugarId']] = $row;
  107. }
  108. }
  109. /* Trae todos los datos de relacionCasos*/
  110. $this->db->select('*');
  111. $this->db->from('relacionCasos');
  112. $this->db->where('casos_casoId',$casoId);
  113. $consulta = $this->db->get();
  114. if ($consulta->num_rows() > 0){
  115. /* Pasa la consulta a un cadena */
  116. foreach ($consulta->result_array() as $row) {
  117. $datos['relacionCasos'][$row['relacionId']] = $row;
  118. $datos['relacionCasos'][$row['relacionId']]['casoIdB'] = $row['casoIdB'];
  119. $this->db->select('nombre,fechaInicial,fechaTermino');
  120. $this->db->from('casos');
  121. $this->db->where('casoId', $row['casoIdB']);
  122. $consultaCaso = $this->db->get();
  123. if ($consultaCaso->num_rows() > 0){
  124. foreach ($consultaCaso->result_array() as $row3) {
  125. $nombreCaso = $row3;
  126. }
  127. $datos['relacionCasos'][$row['relacionId']]['nombreCasoIdB'] = $nombreCaso['nombre'];
  128. $datos['relacionCasos'][$row['relacionId']]['fechaIncial'] = $nombreCaso['fechaInicial'];
  129. $datos['relacionCasos'][$row['relacionId']]['fechaTermino'] = $nombreCaso['fechaTermino'];
  130. }
  131. }
  132. }/* fin else */
  133. /* Trae todos los datos de intervenciones*/
  134. $this->db->select('*');
  135. $this->db->from('intervenciones');
  136. $this->db->where('casos_casoId',$casoId);
  137. $consulta = $this->db->get();
  138. if ($consulta->num_rows() > 0){
  139. /* Pasa la consulta a un cadena */
  140. foreach ($consulta->result_array() as $row) {
  141. $datos['intervenciones'][$row['intervencionId']] = $row;
  142. /*Trae los casos relacionados directamente a un interventor */
  143. $this->db->select('*');
  144. $this->db->from('casos_has_actores');
  145. $this->db->where('actores_actorId',$row['interventorId']);
  146. $consultaCasosActor = $this->db->get();
  147. if($consultaCasosActor->num_rows() > 0){
  148. foreach ($consultaCasosActor->result_array() as $valor) {
  149. $datos['intervenciones'][$row['intervencionId']]['casosActorInterventor'][$valor['casoActorId']]=$valor;
  150. }
  151. }
  152. /*Trae los casos relacionados directamente a un receptor */
  153. $this->db->select('*');
  154. $this->db->from('casos_has_actores');
  155. $this->db->where('actores_actorId',$row['receptorId']);
  156. $consultaCasosActor = $this->db->get();
  157. if($consultaCasosActor->num_rows() > 0){
  158. foreach ($consultaCasosActor->result_array() as $valor) {
  159. $datos['intervenciones'][$row['intervencionId']]['casosActorReceptor'][$valor['casoActorId']]=$valor;
  160. }
  161. }
  162. }
  163. foreach ($datos['intervenciones'] as $row) {
  164. /*Trae los intervenidos de una intervención*/
  165. $this->db->select('*');
  166. $this->db->from('intervenidos');
  167. $this->db->where('intervenciones_intervencionId',$row['intervencionId']);
  168. $this->db->order_by("intervenidoId", "desc");
  169. $consultaIntervenidos = $this->db->get();
  170. if ($consultaIntervenidos->num_rows() > 0) {
  171. foreach ($consultaIntervenidos->result_array() as $row4) {
  172. $datos['intervenciones'][$row['intervencionId']]['intervenidos'][$row4['intervenidoId']]=$row4;
  173. /*Trae los casos relacionados directamente a un intervenido */
  174. $this->db->select('*');
  175. $this->db->from('casos_has_actores');
  176. $this->db->where('actores_actorId',$row4['actorIntervenidoId']);
  177. $consultaCasosActor = $this->db->get();
  178. if($consultaCasosActor->num_rows() > 0){
  179. foreach ($consultaCasosActor->result_array() as $valor) {
  180. $datos['intervenciones'][$row['intervencionId']]['intervenidos'][$row4['intervenidoId']]['casosActorIntervenido'][$valor['casoActorId']]=$valor;
  181. }
  182. }
  183. }
  184. }
  185. $this->db->select('actorId');
  186. $this->db->from('actorReportado');
  187. $this->db->where('intervenciones_intervencionId', $row['intervencionId']);
  188. $consulta = $this->db->get();
  189. if ($consulta->num_rows() > 0){
  190. /* Pasa la consulta a un cadena */
  191. foreach ($consulta->result_array() as $row2) {
  192. //$datos['actorReportado'][$row['actorId']] = $row;
  193. $this->db->select('actorId,nombre,apellidosSiglas');
  194. $this->db->from('actores');
  195. $this->db->where('actorId', $row2['actorId']);
  196. $consultaActorReportado = $this->db->get();
  197. if ($consultaActorReportado->num_rows() > 0){
  198. foreach ($consultaActorReportado->result_array() as $row3) {
  199. $datos['intervenciones'][$row['intervencionId']]['actorReportado'][$row3['actorId']] =$row3;
  200. $this->db->select('*');
  201. $this->db->from('casos_has_actores');
  202. $this->db->where('actores_actorId',$row3['actorId']);
  203. $consultaCasosActor = $this->db->get();
  204. if($consultaCasosActor->num_rows() > 0){
  205. foreach ($consultaCasosActor->result_array() as $valor) {
  206. //print_r($valor);
  207. $datos['intervenciones'][$row['intervencionId']]['actorReportado'][$row3['actorId']]['casosActor'][$valor['casoActorId']]=$valor;
  208. }
  209. }
  210. }
  211. }/*fin if consultaActorReportado*/
  212. }/*fin foreach consulta de intervenciones */
  213. }/* fin de if consulta intervenciones*/
  214. }
  215. }
  216. /* Trae todos los datos de actos*/
  217. $this->db->select('*');
  218. $this->db->from('actos');
  219. $this->db->where('casos_casoId',$casoId);
  220. $consulta = $this->db->get();
  221. if ($consulta->num_rows() > 0){
  222. /* Pasa la consulta a un cadena */
  223. foreach ($consulta->result_array() as $row) {
  224. $datos['actos'][$row['actoId']] = $row;
  225. }
  226. foreach ($datos['actos'] as $row) {
  227. $this->db->select('*');
  228. $this->db->from('derechoAfectado');
  229. $this->db->where('derechoAfectadoCasoId', $row['derechoAfectado_derechoAfectadoCasoId']);
  230. $consulta = $this->db->get();
  231. if ($consulta->num_rows() > 0){
  232. /* Pasa la consulta a un cadena */
  233. foreach ($consulta->result_array() as $row) {
  234. $datos['derechoAfectado'][$row['derechoAfectadoCasoId']] = $row;
  235. }
  236. }
  237. }/* Fin foreach de derechoAfectado*/
  238. foreach ($datos['actos'] as $row) {
  239. //print_r($row);
  240. $this->db->select('*');
  241. $this->db->from('victimas');
  242. $this->db->where('actos_actoId', $row['actoId']);
  243. $consulta = $this->db->get();
  244. if ($consulta->num_rows() > 0){
  245. /* Pasa la consulta a un cadena */
  246. foreach ($consulta->result_array() as $row2) {
  247. $datos['actos'][$row['actoId']]['victimas'][$row2['victimaId']] = $row2;
  248. foreach ($datos['actos'] as $row3) {
  249. //echo "<pre>"; print_r($row3); echo "</pre>";
  250. if (isset($row3['victimas']) && (isset($row3['victimas'][$row2['victimaId']]['victimaId'])) ) {
  251. $this->db->select('*');
  252. $this->db->from('perpetradores');
  253. $this->db->where('victimas_victimaId', $row3['victimas'][$row2['victimaId']]['victimaId']);
  254. $consulta = $this->db->get();
  255. if ($consulta->num_rows() > 0){
  256. /* Pasa la consulta a un cadena */
  257. foreach ($consulta->result_array() as $row4) {
  258. $datos['actos'][$row['actoId']]['victimas'][$row2['victimaId']]['perpetradores'][$row4['perpetradorVictimaId']] = $row4;
  259. }
  260. }
  261. }
  262. }/*Fin foreach Victimas*/
  263. }
  264. }
  265. }/*Fin foreach actos*/
  266. }
  267. /* Trae todos los datos de fuenteInfoPersonal*/
  268. $this->db->select('*');
  269. $this->db->from('fuenteInfoPersonal');
  270. $this->db->where('casos_casoId',$casoId);
  271. $consulta = $this->db->get();
  272. if ($consulta->num_rows() > 0){
  273. /* Pasa la consulta a un cadena */
  274. foreach ($consulta->result_array() as $row) {
  275. $datos['fuenteInfoPersonal'][$row['fuenteInfoPersonalId']] = $row;
  276. //print_r($row);
  277. if(isset($row['actorReportado'])){
  278. $this->db->select('actorId,nombre,apellidosSiglas');
  279. $this->db->from('actores');
  280. $this->db->where('actorId',$row['actorReportado']);
  281. $consultaActorReportado = $this->db->get();
  282. if ($consultaActorReportado->num_rows() > 0){
  283. foreach ($consultaActorReportado->result_array() as $row2) {
  284. $datosActorReportado = $row2;
  285. }
  286. $datos['fuenteInfoPersonal'][$row['fuenteInfoPersonalId']]['actorReportadoNombre'] = $datosActorReportado['nombre'];
  287. $datos['fuenteInfoPersonal'][$row['fuenteInfoPersonalId']]['actorReportadoApellidosSiglas'] = $datosActorReportado['apellidosSiglas'];
  288. }
  289. }
  290. $this->db->select('*');
  291. $this->db->from('casos_has_actores');
  292. $this->db->where('actores_actorId',$row['actorReportado']);
  293. $consultaCasosActor = $this->db->get();
  294. if($consultaCasosActor->num_rows() > 0){
  295. foreach ($consultaCasosActor->result_array() as $valor) {
  296. //print_r($valor);
  297. $datos['fuenteInfoPersonal'][$row['fuenteInfoPersonalId']]['casosActorReportado'][$valor['casoActorId']]=$valor;
  298. }
  299. }
  300. $this->db->select('*');
  301. $this->db->from('casos_has_actores');
  302. $this->db->where('actores_actorId',$row['actorId']);
  303. $consultaCasosActor = $this->db->get();
  304. if($consultaCasosActor->num_rows() > 0){
  305. foreach ($consultaCasosActor->result_array() as $valor) {
  306. //print_r($valor);
  307. $datos['fuenteInfoPersonal'][$row['fuenteInfoPersonalId']]['casosActor'][$valor['casoActorId']]=$valor;
  308. }
  309. }
  310. }/*fin foreach consulta de fuenteInfoPersonal */
  311. }
  312. /* Trae todos los datos de fuenteInfoDocumental*/
  313. $this->db->select('*');
  314. $this->db->from('tipoFuenteDocumental');
  315. $this->db->where('casos_casoId',$casoId);
  316. $consulta = $this->db->get();
  317. if ($consulta->num_rows() > 0){
  318. /* Pasa la consulta a un cadena */
  319. foreach ($consulta->result_array() as $row) {
  320. $datos['tipoFuenteDocumental'][$row['tipoFuenteDocumentalId']] = $row;
  321. //print_r($row);
  322. if(isset($row['actorReportado'])){
  323. $this->db->select('actorId,nombre,apellidosSiglas');
  324. $this->db->from('actores');
  325. $this->db->where('actorId',$row['actorReportado']);
  326. $consultaActorReportado = $this->db->get();
  327. if ($consultaActorReportado->num_rows() > 0){
  328. foreach ($consultaActorReportado->result_array() as $row2) {
  329. $datosActorReportado = $row2;
  330. }
  331. $datos['tipoFuenteDocumental'][$row['tipoFuenteDocumentalId']]['actorReportadoNombre'] = $datosActorReportado['nombre'];
  332. $datos['tipoFuenteDocumental'][$row['tipoFuenteDocumentalId']]['actorReportadoApellidosSiglas'] = $datosActorReportado['apellidosSiglas'];
  333. }
  334. }
  335. $this->db->select('*');
  336. $this->db->from('casos_has_actores');
  337. $this->db->where('actores_actorId',$row['actorReportado']);
  338. $consultaCasosActor = $this->db->get();
  339. if($consultaCasosActor->num_rows() > 0){
  340. foreach ($consultaCasosActor->result_array() as $valor) {
  341. //print_r($valor);
  342. $datos['tipoFuenteDocumental'][$row['tipoFuenteDocumentalId']]['casosActor'][$valor['casoActorId']]=$valor;
  343. }
  344. }/*Fin if de consultaCasosActor*/
  345. }
  346. }
  347. if (isset($datos)) {
  348. return $datos;
  349. }else{
  350. return $mensaje = 'No hay datos en la base de datos';
  351. }
  352. }/* Fin de mTraer DatosCaso*/
  353. /* Ese modelo lista los casos */
  354. public function mListaCasos(){
  355. $this->db->select('*');
  356. $this->db->from('casos');
  357. $this->db->where('estadoActivo', 1);
  358. $this->db->order_by('nombre','asc');
  359. $casos = $this->db->get();
  360. //Pasa la consulta a un cadena */
  361. if($casos->num_rows() != 0){
  362. foreach($casos->result_array() as $key => $value){
  363. $listaCasos[$value['casoId']] = $value;
  364. }
  365. /* Regresa la cadena al controlador */
  366. return $listaCasos;
  367. }else{
  368. return ($listaCasos['mensaje'] = 'Aún no tienes casos en la base de datos');
  369. }
  370. }/* Fin de mListaCasos*/
  371. /* Este modelo actualiza los datos de un caso
  372. * @param ($casoId, $datosCaso)
  373. * */
  374. public function mActualizaDatosCaso($casoId,$datosCaso){
  375. $this->db->where('casoId', $casoId);
  376. if($this->db->update('casos',$datosCaso['tablas']['casos'])){
  377. foreach($datosCaso['tablas'] as $key => $value){
  378. if($key != 'casos'){
  379. $this->db->where('casos_casoId', $casoId);
  380. $this->db->update($key,$datosCaso['tablas'][$key]);
  381. }
  382. }
  383. /* Regresa la cadena al controlador*/
  384. return ($mensaje = 'Hecho');
  385. }else{
  386. $mensaje['error'] = $this->db->_error_message();
  387. /* Regresa la cadena al controlador*/
  388. return $mensaje;
  389. }
  390. }/* Fin de mActualisaDatosCaso */
  391. /* Este modelo cambia el estado de un caso a inactivo, en lugar de eliminarlo de la base de datos
  392. * @param ($casoId)
  393. * */
  394. public function mCambiaEstadoActivoCaso($casoId){
  395. $estado = array('estadoActivo' => 0);
  396. $this->db->select('nombre');
  397. $this->db->from('casos');
  398. $this->db->where('casoId',$casoId);
  399. $consulta = $this->db->get();
  400. if($consulta->num_rows() > 0){
  401. $this->db->where('casoId', $casoId);
  402. $this->db->update('casos',$estado);
  403. $mensaje = $casoId.$estado;
  404. /* Regresa la cadena al controlador*/
  405. return ($mensaje = $mensaje .'Hecho');
  406. }else{
  407. return '0';
  408. }
  409. }/* Fin de mCambiaEstadoActivoCaso */
  410. /* Este modelo edita una ficha
  411. *@ $datos = array(
  412. 'titulo' => 'ficha 1 actualizado',
  413. 'fecha' => '1988-04-07',
  414. 'comentarios' => 'comentarios ficha 1' ,
  415. );
  416. *@ $fichaId [INT]
  417. * */
  418. public function mActualizaDatosFicha($datos,$fichaId){
  419. $this->db->where('fichaId', $fichaId);
  420. if($this->db->update('fichas',$datos)){
  421. /* Regresa la cadena al controlador*/
  422. return ($mensaje = 'Hecho');
  423. }else{
  424. $mensaje['error'] = $this->db->_error_message();
  425. /* Regresa la cadena al controlador*/
  426. return $mensaje;
  427. }
  428. }/* Fin de mActualizaDatosLugar*/
  429. /* Este modelo elimina una ficha relacionada a un caso
  430. * @param ($fichaId)
  431. * */
  432. public function mEliminaFicha($fichaId){
  433. /*Eliminamos los registros asociados a una ficha */
  434. $this->db->where('fichas_fichaId', $fichaId);
  435. $this->db->delete('registro');
  436. /*Elimina la ficha asociada al $fichaId*/
  437. $this->db->where('fichaId', $fichaId);
  438. if($this->db->delete('fichas')){
  439. /* Regresa la cadena al controlador*/
  440. return ($mensaje = 'Hecho');
  441. }else{
  442. $mensaje['error'] = $this->db->_error_message();
  443. /* Regresa la cadena al controlador*/
  444. return $mensaje;
  445. }
  446. }/*Fin de mEliminaFichas*/
  447. /* Este modelo elimina la relacion en un caso de una intervención
  448. * @param ($intervencionId)
  449. * */
  450. public function mEliminaIntervenciones($intervencionId){
  451. $this->db->where('intervenciones_intervencionId', $intervencionId);
  452. if($this->db->delete('intervenidos')){
  453. $this->db->where('intervencionId', $intervencionId);
  454. if($this->db->delete('intervenciones')){
  455. /* Regresa la cadena al controlador*/
  456. return ($mensaje = 'Hecho');
  457. }else{
  458. $mensaje['error'] = $this->db->_error_message();
  459. /* Regresa la cadena al controlador*/
  460. return $mensaje;
  461. }
  462. }else{
  463. $mensaje['error'] = $this->db->_error_message();
  464. /* Regresa la cadena al controlador*/
  465. return $mensaje;
  466. }
  467. }/*Fin de mEliminaIntervenciones*/
  468. /* Este modelo elimina la relacion en un caso de un perpetrador
  469. * @param ($actoId)
  470. * */
  471. public function mEliminaActo($actoId){
  472. $this->db->where('actoId', $actoId);
  473. if($this->db->delete('actos')){
  474. /* Regresa la cadena al controlador*/
  475. return ($mensaje = 'Hecho');
  476. }else{
  477. $mensaje['error'] = $this->db->_error_message();
  478. /* Regresa la cadena al controlador*/
  479. return $mensaje;
  480. }
  481. }/*Fin de mEliminaActo*/
  482. /*Este modelo relaciona dos actores
  483. * @param $datos
  484. * */
  485. public function mRelacionaCasos($datos){
  486. if($this->db->insert('relacionCasos',$datos)){
  487. /* Regresa la cadena al controlador*/
  488. return ($mensaje = 'Hecho');
  489. }else{
  490. $mensaje['error'] = $this->db->_error_message();
  491. /* Regresa la cadena al controlador*/
  492. return $mensaje;
  493. }
  494. }/* Fin de mRelacionaActores */
  495. /*Este modelo elimina todas las relaciones caso-caso
  496. * @param $relacionId
  497. * */
  498. public function mEliminaRelacionCasos($relacionId){
  499. $this->db->where('relacionId', $relacionId);
  500. if($this->db->delete('relacionCasos')){
  501. /* Regresa la cadena al controlador*/
  502. return ($mensaje = 'Hecho');
  503. }else{
  504. $mensaje['error'] = $this->db->_error_message();
  505. /* Regresa la cadena al controlador*/
  506. return $mensaje;
  507. }
  508. }/* Fin de mEliminaRelacionCasos */
  509. /* Este modelo trae todas las relaciones caso-caso
  510. * @param $casoId
  511. * */
  512. public function mTraeRelacionesCaso($casoId){
  513. /*Trae datos relacion directa*/
  514. $this->db->select('*');
  515. $this->db->from('relacionCasos');
  516. $this->db->where('casos_casoId',$casoId);
  517. $consulta = $this->db->get();
  518. if ($consulta->num_rows() > 0){
  519. /* Pasa la consulta a un cadena */
  520. foreach ($consulta->result_array() as $row) {
  521. $relaciones[$row['casoIdB']] = $row;
  522. //$relaciones[$casoId]['casoIdB'] = $this->db->select('*')->from('casos')->where('casoId', $row['casoIdB'])->get()->result_array();
  523. $this->db->select('nombre,fechaInicial,fechaTermino');
  524. $this->db->from('casos');
  525. $this->db->where('casoId', $row['casoIdB']);
  526. $consultaCaso = $this->db->get();
  527. // echo 'hola';
  528. // print_r($consultaCaso->resul_array());
  529. if ($consultaCaso->num_rows() > 0){
  530. foreach ($consultaCaso->result_array() as $row3) {
  531. $nombreCaso = $row3;
  532. }
  533. $relaciones[$row['casoIdB']]['nombreCasoIdB'] = $nombreCaso['nombre'];
  534. $relaciones[$row['casoIdB']]['fechaIncial'] = $nombreCaso['fechaInicial'];
  535. $relaciones[$row['casoIdB']]['fechaTermino'] = $nombreCaso['fechaTermino'];
  536. }
  537. }
  538. }
  539. /*Trae datos relacion citada*/
  540. $this->db->select('*');
  541. $this->db->from('relacionCasos');
  542. $this->db->where('casoIdB',$casoId);
  543. $consulta = $this->db->get();
  544. if ($consulta->num_rows() > 0){
  545. /* Pasa la consulta a un cadena */
  546. foreach ($consulta->result_array() as $row) {
  547. $relacionesIdB[$casoId] = $row;
  548. //$relacionesIdB[$casoId]['casoIdB'] = $this->db->select('*')->from('casos')->where('casoId', $row['casos_casoId'])->get()->result_array();
  549. $this->db->select('nombre,fechaInicial,fechaTermino');
  550. $this->db->from('casos');
  551. $this->db->where('casoId', $row['casos_casoId']);
  552. $consultaCaso = $this->db->get();
  553. if ($consultaCaso->num_rows() > 0){
  554. foreach ($consultaCaso->result_array() as $row3) {
  555. $nombreCaso = $row3;
  556. }
  557. }
  558. $relacionesIdB[$casoId]['nombreCasoId'] = $nombreCaso['nombre'];
  559. $relacionesIdB[$casoId]['fechaIncialCasoId'] = $nombreCaso['fechaInicial'];
  560. $relacionesIdB[$casoId]['fechaTerminoCasoId'] = $nombreCaso['fechaTermino'];
  561. }
  562. }
  563. if(isset($relaciones) && isset($relacionesIdB)){
  564. $lista = array_merge($relaciones, $relacionesIdB);
  565. return $lista;
  566. }else{
  567. if (isset($relaciones)) {
  568. return $relaciones;
  569. } elseif (isset($relacionesIdB)) {
  570. return $relacionesIdB;
  571. }else{
  572. return 0;
  573. }
  574. }/*fin else*/
  575. }/* Fin de mTraeRelacionesCaso */
  576. /* Actualiza los datos de una relacion caso-caso
  577. * @param $relacionId $datosRelacion
  578. * */
  579. public function mActualizaDatosRelacionCaso($relacionId,$datosRelacion){
  580. $this->db->where('relacionId', $relacionId);
  581. if($this->db->update('relacionCasos',$datosRelacion)){
  582. /* Regresa la cadena al controlador*/
  583. return ($mensaje = 'Hecho');
  584. }else{
  585. $mensaje['error'] = $this->db->_error_message();
  586. /* Regresa la cadena al controlador*/
  587. return $mensaje;
  588. }
  589. }/* Fin de mActualizaDatosRelacionCaso */
  590. /*Este modelo lista los modelos por una cadena en el campo nombre */
  591. public function mBuscarCasosNombre($cadena){
  592. $this->db->select('casoId, nombre');
  593. $this->db->from('casos');
  594. $this->db->like('nombre', $cadena);
  595. $this->db->where('estadoActivo',1);
  596. $consulta = $this->db->get();
  597. if($consulta->num_rows() > 0){
  598. /* Pasa la consulta a un cadena */
  599. foreach ($consulta->result_array() as $key => $value) {
  600. $datos[$value['casoId']] = $value;
  601. }
  602. /* Regresa la cadena al controlador*/
  603. return $datos;
  604. }else{
  605. return ($mensaje = '0');
  606. }
  607. }/* Fin de mBuscarCasosNombre() */
  608. /* Este modelo Agrega la informacion de Derechos Afectado
  609. * @param:
  610. * $datos = array (derechoAfectado => array (
  611. * fechaInicial => '1879-12-01',...
  612. * ),
  613. * actos => array (
  614. * actoVilolatorioId => 1,
  615. * actoViolatorioNivel => 2,....
  616. * ));
  617. * */
  618. public function mAgregarDerechosAfectados($datos){
  619. $this->db->insert('derechoAfectado', $datos['derechoAfectado']);
  620. $obtener_id = $this->db->select_max('derechoAfectadoCasoId')->from('derechoAfectado')->get();
  621. if($obtener_id->num_rows() > 0){
  622. foreach ($obtener_id->result_array() as $row) {
  623. $derechoAfectadoCasoId = $row['derechoAfectadoCasoId'];
  624. }
  625. }/* Fin de obtener_id */
  626. foreach($datos as $tabla => $campo){
  627. if($tabla != 'derechoAfectado' && (!empty($tabla))){
  628. $datos[$tabla]['derechoAfectado_derechoAfectadoCasoId'] = $derechoAfectadoCasoId;
  629. $this->db->insert($tabla, $datos[$tabla]);
  630. }
  631. }/* Fin foreach tabla */
  632. return $derechoAfectadoCasoId;
  633. }/* Fin de mAgregarDerechosAfectados */
  634. /* Este modelo elimina un derecho afectado antes borrando actos, victimas, perpetradores asociados a un acto, si existen */
  635. public function mEliminaDerechoAfectadoCaso($derechoAfectadoCasoId)
  636. {
  637. /* Trae los actos asociados asociados a un derecho afectado */
  638. $this->db->select('actoId');
  639. $this->db->from('actos');
  640. $this->db->where('derechoAfectado_derechoAfectadoCasoId',$derechoAfectadoCasoId);
  641. $consultaActos = $this->db->get();
  642. if($consultaActos->num_rows() > 0){
  643. /* Pasa la consulta a un cadena */
  644. foreach ($consultaActos->result_array() as $row){
  645. //$datos['actos'][$row['actoId']] = $row;
  646. /* Trae las victimas asociadas a un acto */
  647. $this->db->select('victimaId');
  648. $this->db->from('victimas');
  649. $this->db->where('actos_actoId',$row['actoId']);
  650. $consultaVictimas = $this->db->get();
  651. if($consultaVictimas->num_rows() > 0){
  652. /* Pasa la consulta a un cadena */
  653. foreach ($consultaVictimas->result_array() as $row2){
  654. //$datos['victmas'][$row2['victimaId']] = $row2;
  655. /* Elimina un perpetrador asiciado a una victima */
  656. $this->mEliminaPerpetradoresVictima($row2['victimaId']);
  657. }
  658. }/* fin de if consultaVictimas */
  659. /* Elimina una victima asociada a un acto */
  660. $this->mEliminaVictimasActo($row['actoId']);
  661. }/* fin foreach consultaActos */
  662. /* Elimina un acto asociado a un derecho Afectado */
  663. $this->mEliminaActosDerechoAfectado($derechoAfectadoCasoId);
  664. /* Elimina un derecho afectado asociado a un caso */
  665. }
  666. $this->db->where('derechoAfectadoCasoId', $derechoAfectadoCasoId);
  667. if($this->db->delete('derechoAfectado')){
  668. /* Regresa la cadena al controlador*/
  669. return ($mensaje = 'Hecho');
  670. }else{
  671. $mensaje['error'] = $this->db->_error_message();
  672. /* Regresa la cadena al controlador*/
  673. return $mensaje;
  674. }
  675. }/*fin de mEliminaDerechoAfectadoCaso */
  676. public function mEliminaActosPerpetrador($perpetradorVictimaId){
  677. $this->db->where('perpetradores_perpetradorVictimaId', $perpetradorVictimaId);
  678. if($this->db->delete('actosPerpetrador')){
  679. /* Regresa la cadena al controlador*/
  680. return ($mensaje = 'Hecho');
  681. }else{
  682. $mensaje['error'] = $this->db->_error_message();
  683. /* Regresa la cadena al controlador*/
  684. return $mensaje;
  685. }
  686. }/* fin de mEliminaActosPerpetrador*/
  687. /* Este modelo edita un DerechoAfectado
  688. *@ $datos = array(
  689. 'fecha' => '1988-04-07',
  690. 'fechaAcceso' => '1988-06-10',
  691. 'observaciones' => 'obs',
  692. 'actorReportado' => 1 ,
  693. );
  694. *@ $tipoFuenteDocumentalId [INT]
  695. * */
  696. public function mActualizaDatosDerechoAfectado($datos,$derechoAfectadoCasoId){
  697. $this->db->where('derechoAfectadoCasoId', $derechoAfectadoCasoId);
  698. if($this->db->update('derechoAfectado',$datos)){
  699. /* Regresa la cadena al controlador*/
  700. return ($mensaje = 'Hecho');
  701. }else{
  702. $mensaje['error'] = $this->db->_error_message();
  703. /* Regresa la cadena al controlador*/
  704. return $mensaje;
  705. }
  706. }/* Fin de mActualizaDatosDerechoAfectado */
  707. /*Este modelo Agrega un acto a un derecho afectado
  708. * @param
  709. *
  710. * */
  711. public function mAgregarActoDerechoAfectado($datos){
  712. if($this->db->insert('actos', $datos)){
  713. return ($mensaje = 'Hecho');
  714. }else{
  715. $mensaje['error'] = $this->db->_error_message();
  716. /* Regresa la cadena al controlador*/
  717. return $mensaje;
  718. }
  719. }/* Fin de mAgregarActoDerechoAfectado */
  720. /* Este modelo edita un Acto
  721. *@ $datos = array(
  722. 'actoViolatorioId' => 1,
  723. 'actoViolatorioNivel' => 2
  724. );
  725. *@ $actoId [INT]
  726. * */
  727. public function mActualizaDatosActo($datos,$actoId){
  728. $this->db->where('actoId', $actoId);
  729. if($this->db->update('actos',$datos)){
  730. /* Regresa la cadena al controlador*/
  731. return ($mensaje = 'Hecho');
  732. }else{
  733. $mensaje['error'] = $this->db->_error_message();
  734. /* Regresa la cadena al controlador*/
  735. return $mensaje;
  736. }
  737. }/* Fin de mActualizaDatosActo */
  738. /* Este modelo elimina los actos de un derechoAfectado
  739. * @param
  740. * $derechoAfectadoCasoId [INT]
  741. * */
  742. public function mEliminaActosDerechoAfectado($derechoAfectadoCasoId){
  743. $this->db->where('derechoAfectado_derechoAfectadoCasoId', $derechoAfectadoCasoId);
  744. if($this->db->delete('actos')){
  745. /* Regresa la cadena al controlador*/
  746. return ($mensaje = 'Hecho');
  747. }else{
  748. $mensaje['error'] = $this->db->_error_message();
  749. /* Regresa la cadena al controlador*/
  750. return $mensaje;
  751. }
  752. }/* fin de mEliminaActosDerechoAfectado */
  753. /* Este modelo elimina una acto a un derechoAfectado
  754. * @param
  755. * $actoId [INT]
  756. * */
  757. public function mEliminaActoDerechoAfectado($actoId){
  758. /* Trae las victimas asociadas a un acto */
  759. $this->db->select('victimaId');
  760. $this->db->from('victimas');
  761. $this->db->where('actos_actoId',$actoId);
  762. $consultaVictimas = $this->db->get();
  763. if($consultaVictimas->num_rows() > 0){
  764. /* Pasa la consulta a un cadena */
  765. foreach ($consultaVictimas->result_array() as $row2){
  766. //$datos['victmas'][$row2['victimaId']] = $row2;
  767. /* Trae los perpetradores asociados a una victima */
  768. $this->db->select('perpetradorVictimaId');
  769. $this->db->from('perpetradores');
  770. $this->db->where('victimas_victimaId',$row2['victimaId']);
  771. $consultaPerpetradores = $this->db->get();
  772. if($consultaPerpetradores->num_rows() > 0){
  773. /* Pasa la consulta a un cadena */
  774. foreach ($consultaPerpetradores->result_array() as $row3){
  775. //$datos['perpetradores'][$row3['perpetradorVictimaId']] = $row3;
  776. /* Elimina la relacion de un perpetrador con un acto */
  777. $this->mEliminaActosPerpetrador($row3['perpetradorVictimaId']);
  778. }/* fin foreach consultaPerpetradores*/
  779. }/*fin de if consultaPerpetradores */
  780. /* Elimina un perpetrador asiciado a una victima */
  781. $this->mEliminaPerpetradoresVictima($row2['victimaId']);
  782. }
  783. }/* fin de if consultaVictimas */
  784. /* Elimina una victima asociada a un acto */
  785. $this->mEliminaVictimasActo($actoId);
  786. $this->db->where('actoId', $actoId);
  787. if($this->db->delete('actos')){
  788. /* Regresa la cadena al controlador*/
  789. return ($mensaje = 'Hecho');
  790. }else{
  791. $mensaje['error'] = $this->db->_error_message();
  792. /* Regresa la cadena al controlador*/
  793. return $mensaje;
  794. }
  795. }/* fin de mEliminaActoDerechoAfectado */
  796. /*Este modelo Agrega una victima a un acto
  797. * @param
  798. * $datos = array(
  799. 'actorId' => 1,
  800. 'estatusVictimaId' =>1,
  801. 'actos_actoId' => 1
  802. );
  803. * */
  804. public function mAgregarVictimaActo($datos){
  805. if($this->db->insert('victimas', $datos)){
  806. $obtener_id = $this->db->select_max('victimaId')->from('victimas')->get();
  807. if($obtener_id->num_rows() > 0){
  808. foreach ($obtener_id->result_array() as $row) {
  809. $victimaId = $row['victimaId'];
  810. }
  811. }
  812. return $victimaId;
  813. }else{
  814. $mensaje['error'] = $this->db->_error_message();
  815. /* Regresa la cadena al controlador*/
  816. return $mensaje;
  817. }
  818. }/* Fin de mAgregarVictimaCaso */
  819. /* Este modelo edita una Victima
  820. *@ $datos = array(
  821. 'actorId' => 1,
  822. 'estatusVictimaId' => 2
  823. );
  824. *@ $victimaId [INT]
  825. * */
  826. public function mActualizaDatosVictima($datos,$victimaId){
  827. $this->db->where('victimaId', $victimaId);
  828. if($this->db->update('victimas',$datos)){
  829. /* Regresa la cadena al controlador*/
  830. return ($mensaje = 'Hecho');
  831. }else{
  832. $mensaje['error'] = $this->db->_error_message();
  833. /* Regresa la cadena al controlador*/
  834. return $mensaje;
  835. }
  836. }/* Fin de mActualizaDatosVictima */
  837. /* Este modelo elimina todas las victimas de un acto
  838. * @param
  839. * $actoId [INT]
  840. * */
  841. public function mEliminaVictimasActo($actoId){
  842. $this->db->where('actos_actoId', $actoId);
  843. if($this->db->delete('victimas')){
  844. /* Regresa la cadena al controlador*/
  845. return ($mensaje = 'Hecho');
  846. }else{
  847. $mensaje['error'] = $this->db->_error_message();
  848. /* Regresa la cadena al controlador*/
  849. return $mensaje;
  850. }
  851. }/* fin de mEliminaVictimasActo*/
  852. /* Este modelo elimina una victma a un acto
  853. * @param
  854. * $victimaId [INT]
  855. * */
  856. public function mEliminaVictimaActo($victimaId){
  857. $this->db->where('victimas_victimaId',$victimaId);
  858. $this->db->delete('perpetradores');
  859. $this->db->where('victimaId', $victimaId);
  860. if($this->db->delete('victimas')){
  861. /* Regresa la cadena al controlador*/
  862. return ($mensaje = 'Hecho');
  863. }else{
  864. $mensaje['error'] = $this->db->_error_message();
  865. /* Regresa la cadena al controlador*/
  866. return $mensaje;
  867. }
  868. }/* fin de mEliminaVictimasActo*/
  869. /*Este modelo Agrega una perpetrador a una victima
  870. * @param
  871. *
  872. * */
  873. public function mAgregarPerpetradorVictima($datos){
  874. if($this->db->insert('perpetradores', $datos)){
  875. return ($mensaje = 'Hecho');
  876. }else{
  877. $mensaje['error'] = $this->db->_error_message();
  878. /* Regresa la cadena al controlador*/
  879. return $mensaje;
  880. }
  881. }/* Fin de mAgregarPerpetradorVictima */
  882. /* Este modelo edita un perpetrador
  883. *@
  884. *@ $perpetradorId [INT]
  885. * */
  886. public function mActualizaDatosPerpetrador($datos,$perpetradorId){
  887. $this->db->where('perpetradorVictimaId', $perpetradorId);
  888. if($this->db->update('perpetradores',$datos)){
  889. /* Regresa la cadena al controlador*/
  890. return ($mensaje = 'Hecho');
  891. }else{
  892. $mensaje['error'] = $this->db->_error_message();
  893. /* Regresa la cadena al controlador*/
  894. return $mensaje;
  895. }
  896. }/* Fin de mActualizaDatosPerpetrador */
  897. /* Este modelo elimina un perpetrador a un avictima
  898. * @param
  899. * $victimaId [INT]
  900. * */
  901. public function mEliminaPerpetradoresVictima($victimaId){
  902. $this->db->where('victimas_victimaId', $victimaId);
  903. if($this->db->delete('perpetradores')){
  904. /* Regresa la cadena al controlador*/
  905. return ($mensaje = 'Hecho');
  906. }else{
  907. $mensaje['error'] = $this->db->_error_message();
  908. /* Regresa la cadena al controlador*/
  909. return $mensaje;
  910. }
  911. }/* fin de mEliminaPerpetradorVictima */
  912. /* Este modelo elimina un perpetrador a un avictima
  913. * @param
  914. * $perpetradorVictimaId [INT]
  915. * */
  916. public function mEliminaPerpetradorVictima($perpetradorVictimaId){
  917. /* Elimina el la relacion entre un acto y un perpetrador */
  918. //$this->mEliminaActosPerpetrador($perpetradorVictimaId);
  919. $this->db->where('perpetradorVictimaId',$perpetradorVictimaId);
  920. if($this->db->delete('perpetradores')){
  921. /* Regresa la cadena al controlador*/
  922. return ($mensaje = 'Hecho');
  923. }else{
  924. $mensaje['error'] = $this->db->_error_message();
  925. /* Regresa la cadena al controlador*/
  926. return $mensaje;
  927. }
  928. }/* fin de mEliminaPerpetradorVictima */
  929. /* Este modelo Agrega la informacion de una intervencion
  930. *
  931. *
  932. * */
  933. public function mAgregarIntervenciones($datos){
  934. if($this->db->insert('intervenciones', $datos['intervencion'])){
  935. $obtener_id = $this->db->select_max('intervencionId')->from('intervenciones')->get();
  936. if($obtener_id->num_rows() > 0){
  937. foreach ($obtener_id->result_array() as $row) {
  938. $intervencionId = $row['intervencionId'];
  939. }
  940. }/* Fin de obtener_id */
  941. return $intervencionId;
  942. }else{
  943. $mensaje['error'] = $this->db->_error_message();
  944. /* Regresa la cadena al controlador*/
  945. return $mensaje;
  946. }
  947. }/* fin de mAgregarIntervenciones */
  948. /* Este modelo edita una intervencion
  949. *@ $datos = array(
  950. 'tipoIntervencionId' => 1,
  951. 'IntervencionNId' => 2
  952. );
  953. *@ $intervencionId [INT]
  954. * */
  955. public function mActualizaDatosIntervencion($datos,$intervencionId){
  956. $this->db->where('intervencionId', $intervencionId);
  957. if($this->db->update('intervenciones',$datos)){
  958. /* Regresa la cadena al controlador*/
  959. return ($mensaje = 'Hecho');
  960. }else{
  961. $mensaje['error'] = $this->db->_error_message();
  962. /* Regresa la cadena al controlador*/
  963. return $mensaje;
  964. }
  965. }/* Fin de mActualizaDatosintervencion */
  966. /* Este modelo agrega un intervenido a una intervencion
  967. * @param:
  968. *
  969. * $datosIntervenido = array (
  970. * relacionId => 1,
  971. * tipoRelacionId => 1,
  972. * comentarios => '',
  973. * observacines => '',
  974. * intervenciones_intervencionId => 1
  975. * );
  976. *
  977. * */
  978. public function mAgregarIntervenidoIntervenciones($datosIntervenidos){
  979. /* inserta el array $datosIntervenidos en la tabla de intervenidos de la BD */
  980. if($this->db->insert('intervenidos', $datosIntervenidos)){
  981. /* Regresa la cadena al controlador*/
  982. return $mensaje='Hecho';
  983. }else{
  984. $mensaje['error'] = $this->db->_error_message();
  985. /* Regresa la cadena al controlador*/
  986. return $mensaje;
  987. }
  988. }
  989. /*Este modelo elimina un intervenido*/
  990. public function mEliminarIntervenido($intervenidoId) {
  991. $this->db->where('intervenidoId', $intervenidoId);
  992. if($this->db->delete('intervenidos')){
  993. /* Regresa la cadena al controlador*/
  994. return ($mensaje = 'Hecho');
  995. }else{
  996. $mensaje['error'] = $this->db->_error_message();
  997. /* Regresa la cadena al controlador*/
  998. return $mensaje;
  999. }
  1000. }
  1001. /* Este modelo edita una intervencion
  1002. *@ $datos = array(
  1003. 'relacionId' => 1,
  1004. 'tipoRelacionId' => 2
  1005. );
  1006. *@ $intervenidoId [INT]
  1007. * */
  1008. public function mActualizaDatosIntervenido($datos,$intervenidoId){
  1009. $this->db->where('intervenidoId', $intervenidoId);
  1010. if($this->db->update('intervenidos',$datos)){
  1011. /* Regresa la cadena al controlador*/
  1012. return ($mensaje = 'Hecho');
  1013. }else{
  1014. $mensaje['error'] = $this->db->_error_message();
  1015. /* Regresa la cadena al controlador*/
  1016. return $mensaje;
  1017. }
  1018. }/* Fin de mActualizaDatosintervencion */
  1019. /* Este modelo trae los id's de los casos relaciones con un actor*/
  1020. public function mTraerActoresRelacionadosCaso($casoId){
  1021. $this->db->select('actores_actorId');
  1022. $this->db->from('casos_has_actores');
  1023. $this->db->where('casos_casoId',$casoId);
  1024. $consulta = $this->db->get();
  1025. if ($consulta->num_rows() > 0){
  1026. foreach ($consulta->result_array() as $row) {
  1027. $actores[$row['actores_actorId']]=$row;
  1028. }
  1029. return $actores;
  1030. }else{
  1031. return '0';
  1032. }
  1033. }/* Fin de mTraeCasosRelacionadosActor */
  1034. /*
  1035. * Este modelo edita un lugar
  1036. *@ $datos = array(
  1037. 'paisesCatalogo_paisId' => '2',
  1038. 'estadosCatalogo_estadoId' => '3',
  1039. 'municipiosCatalogo_municipioId' => '4' ,
  1040. );
  1041. *@ $luagarId [INT]
  1042. * */
  1043. public function mActualizaDatosLugar($datos,$lugarId){
  1044. $this->db->where('lugarId', $lugarId);
  1045. if($this->db->update('lugares',$datos)){
  1046. /* Regresa la cadena al controlador*/
  1047. return ($mensaje = 'Hecho');
  1048. }else{
  1049. $mensaje['error'] = $this->db->_error_message();
  1050. /* Regresa la cadena al controlador*/
  1051. return $mensaje;
  1052. }
  1053. }/* Fin de mActualizaDatosLugar*/
  1054. public function mEliminaLugar($lugarId){
  1055. $this->db->where('lugarId', $lugarId);
  1056. if($this->db->delete('lugares')){
  1057. /* Regresa la cadena al controlador*/
  1058. return ($mensaje = 'Hecho');
  1059. }else{
  1060. $mensaje['error'] = $this->db->_error_message();
  1061. /* Regresa la cadena al controlador*/
  1062. return $mensaje;
  1063. }
  1064. }/* Fin de mEliminaLugar*/
  1065. /* Este modelo edita un fuenteInfoPersonal
  1066. *@ $datos4 = array(
  1067. 'actorId' => 1,
  1068. 'fecha' => '1988-04-07',
  1069. 'actorReportado' => 1 ,
  1070. );
  1071. *@ $fuenteInfoPersonalId [INT]
  1072. * */
  1073. public function mActualizaDatosFuenteInfoPersonal($datos,$fuenteInfoPersonalId){
  1074. $this->db->where('fuenteInfoPersonalId', $fuenteInfoPersonalId);
  1075. if($this->db->update('fuenteInfoPersonal',$datos)){
  1076. /* Regresa la cadena al controlador*/
  1077. return ($mensaje = 'Hecho');
  1078. }else{
  1079. $mensaje['error'] = $this->db->_error_message();
  1080. /* Regresa la cadena al controlador*/
  1081. return $mensaje;
  1082. }
  1083. }/* Fin de mActualizaDatosFuenteInfoPersonal */
  1084. /* Este modelo elimina una fuenteInfoPersonal
  1085. * @param
  1086. * $fuenteInfoPersonalId [INT]
  1087. * */
  1088. public function mEliminaFuenteInfoPersonal($fuenteInfoPersonalId){
  1089. $this->db->where('fuenteInfoPersonalId', $fuenteInfoPersonalId);
  1090. if($this->db->delete('fuenteInfoPersonal')){
  1091. /* Regresa la cadena al controlador*/
  1092. return ($mensaje = 'Hecho');
  1093. }else{
  1094. $mensaje['error'] = $this->db->_error_message();
  1095. /* Regresa la cadena al controlador*/
  1096. return $mensaje;
  1097. }
  1098. }/* Fin de mEliminaFuenteInfoPersonal */
  1099. /* Este modelo edita un tipoFuenteDocumental
  1100. *@ $datos = array(
  1101. 'fecha' => '1988-04-07',
  1102. 'fechaAcceso' => '1988-06-10',
  1103. 'observaciones' => 'obs',
  1104. 'actorReportado' => 1 ,
  1105. );
  1106. *@ $tipoFuenteDocumentalId [INT]
  1107. * */
  1108. public function mActualizaDatosTipoFuenteDocumental($datos,$tipoFuenteDocumentalId){
  1109. $this->db->where('tipoFuenteDocumentalId', $tipoFuenteDocumentalId);
  1110. if($this->db->update('tipoFuenteDocumental',$datos)){
  1111. /* Regresa la cadena al controlador*/
  1112. return ($mensaje = 'Hecho');
  1113. }else{
  1114. $mensaje['error'] = $this->db->_error_message();
  1115. /* Regresa la cadena al controlador*/
  1116. return $mensaje;
  1117. }
  1118. }/* Fin de mActualizaDatosFuenteInfoPersonal */
  1119. /* Este modelo elimina una TipoFuenteDocumental
  1120. * @param
  1121. * $ftipoFuenteDocumentalId [INT]
  1122. * */
  1123. public function mEliminaTipoFuenteDocumental($tipoFuenteDocumentalId){
  1124. $this->db->where('tipoFuenteDocumentalId', $tipoFuenteDocumentalId);
  1125. if($this->db->delete('tipoFuenteDocumental')){
  1126. /* Regresa la cadena al controlador*/
  1127. return ($mensaje = 'Hecho');
  1128. }else{
  1129. $mensaje['error'] = $this->db->_error_message();
  1130. /* Regresa la cadena al controlador*/
  1131. return $mensaje;
  1132. }
  1133. }/* Fin de mEliminaFuenteInfoPersonal */
  1134. /* Este modelo trae las victimas de un acto y los perpetradores de cada acto
  1135. * @param:
  1136. * $actoId [INT]
  1137. * */
  1138. public function mTraerVictimasActo($actoId){
  1139. $this->db->select('actorId,victimaId,estatusVictimaId,comentarios');
  1140. $this->db->from('victimas');
  1141. $this->db->where('actos_actoId', $actoId);
  1142. $consultaVictimas = $this->db->get();
  1143. if($consultaVictimas->num_rows() > 0){
  1144. foreach ($consultaVictimas->result_array() as $victimas) {
  1145. $this->db->select('actorId,nombre,apellidosSiglas,foto');
  1146. $this->db->from('actores');
  1147. $this->db->where('actorId', $victimas['actorId']);
  1148. $consultaActores = $this->db->get();
  1149. if($consultaActores->num_rows() > 0){
  1150. foreach ($consultaActores->result_array() as $datosActores) {
  1151. $datos['victimas'][$victimas['victimaId']] = $datosActores;
  1152. $datos['victimas'][$victimas['victimaId']]['victimaId'] = $victimas['victimaId'];
  1153. $datos['victimas'][$victimas['victimaId']]['estatusVictimaId'] = $victimas['estatusVictimaId'];
  1154. $datos['victimas'][$victimas['victimaId']]['comentarios'] = $victimas['comentarios'];
  1155. $this->db->select('*');
  1156. $this->db->from('perpetradores');
  1157. $this->db->where('victimas_victimaId', $victimas['victimaId']);
  1158. $consultaPerpetradores = $this->db->get();
  1159. if($consultaPerpetradores->num_rows() > 0){
  1160. foreach ($consultaPerpetradores->result_array() as $datosPerpetradores) {
  1161. $datos['victimas'][$victimas['victimaId']]['perpetradores'][$datosPerpetradores['perpetradorVictimaId']]=$datosPerpetradores;
  1162. $this->db->select('*');
  1163. $this->db->from('casos_has_actores');
  1164. $this->db->where('actores_actorId',$datosPerpetradores['perpetradorId']);
  1165. $consultaCasosActor = $this->db->get();
  1166. if($consultaCasosActor->num_rows() > 0){
  1167. foreach ($consultaCasosActor->result_array() as $valor) {
  1168. //print_r($valor);
  1169. $datos['victimas'][$victimas['victimaId']]['perpetradores'][$datosPerpetradores['perpetradorVictimaId']]['casosActor'][$valor['casoActorId']]=$valor;
  1170. }
  1171. }
  1172. }
  1173. }/* fin if $consultaPerpetradores */
  1174. $this->db->select('*');
  1175. $this->db->from('casos_has_actores');
  1176. $this->db->where('actores_actorId',$victimas['actorId']);
  1177. $consultaCasosActor = $this->db->get();
  1178. if($consultaCasosActor->num_rows() > 0){
  1179. foreach ($consultaCasosActor->result_array() as $valor) {
  1180. //print_r($valor);
  1181. $datos['victimas'][$victimas['victimaId']]['casosActor'][$valor['casoActorId']]=$valor;
  1182. }
  1183. }
  1184. }
  1185. }/* fin if consultaActores*/
  1186. }/*fin for each consultaVictimas */
  1187. return $datos;
  1188. }else{
  1189. $mensaje= '0';
  1190. /* Regresa la cadena al controlador*/
  1191. return $mensaje;
  1192. }
  1193. }/* fin de mTraerVictimasActo */
  1194. /* Este modelo Trae los actos relacionados a un derecho afectado por niveles
  1195. * @param
  1196. *
  1197. * $datosArrray = array (
  1198. * [nivel] = [idNivel]
  1199. * [1] = 1,
  1200. * [2] = 3,
  1201. * [3] = 5,
  1202. * [4] = 10
  1203. * )
  1204. *
  1205. *
  1206. * */
  1207. public function mTraerActoDerechoAfectado($datosArray){
  1208. $this->db->select('actosN1Catalogo_actoId');
  1209. $this->db->from('actosN1Catalogo_has_derechosAfactadosN1Catalogo');
  1210. $this->db->where('derechosAfactadosN1Catalogo_derechoAfectadoN1Id',$datosArray[1]);
  1211. $consultaActosN1 = $this->db->get();
  1212. if ($consultaActosN1->num_rows() > 0) {
  1213. foreach ($consultaActosN1->result_array() as $row) {
  1214. $this->db->select('*');
  1215. $this->db->from('actosN1Catalogo');
  1216. $this->db->where('actoId',$row['actosN1Catalogo_actoId']);
  1217. $consultaActoN1 = $this->db->get();
  1218. if ($consultaActoN1->num_rows() > 0) {
  1219. foreach ($consultaActoN1->result_array() as $row2) {
  1220. $datos['actosN1'][$row2['actoId']] = $row2;
  1221. if(isset($datosArray[2]) && isset($row2)){
  1222. $this->db->select('*');
  1223. $this->db->from('actosN2Catalogo');
  1224. $this->db->where('actosN1Catalogo_actoId',$row2['actoId']);
  1225. $this->db->where('derechosAfectadosN2Catalogo_derechoAfectadoN2Id',$datosArray[2]);
  1226. $consultaActoN2 = $this->db->get();
  1227. if ($consultaActoN2->num_rows() > 0) {
  1228. foreach ($consultaActoN2->result_array() as $row3) {
  1229. $datos['actosN2'][$row2['actoId']] = $row3;
  1230. if(isset($datosArray[3]) && isset($row3)){
  1231. $this->db->select('*');
  1232. $this->db->from('actosN3Catalogo');
  1233. $this->db->where('actosN2Catalogo_actoN2Id',$row3['actoN2Id']);
  1234. $this->db->where('derechosAfectadosN3Catalogo_derechoAfectadoN3Id',$datosArray[3]);
  1235. $consultaActoN3 = $this->db->get();
  1236. if ($consultaActoN3->num_rows() > 0) {
  1237. foreach ($consultaActoN3->result_array() as $row4) {
  1238. $datos['actosN3'][$row4['actoN3Id']] = $row4;
  1239. if(isset($datosArray[4]) && isset($row4)){
  1240. $this->db->select('*');
  1241. $this->db->from('actosN4Catalogo');
  1242. $this->db->where('actosN3Catalogo_actoN3Id',$row4['actoN3Id']);
  1243. $this->db->where('derechosAfectadosN4Catalogo_derechoAfectadoN4Id',$datosArray[4]);
  1244. $consultaActoN4 = $this->db->get();
  1245. if ($consultaActoN4->num_rows() > 0) {
  1246. foreach ($consultaActoN4->result_array() as $row5) {
  1247. $datos['actosN4'][$row5['actoN4Id']] = $row5;
  1248. }
  1249. }
  1250. }else{
  1251. $this->db->select('*');
  1252. $this->db->from('actosN4Catalogo');
  1253. $this->db->where('actosN3Catalogo_actoN3Id',$row4['actoN3Id']);
  1254. $consultaActoN4 = $this->db->get();
  1255. if ($con

Large files files are truncated, but you can click here to view the full file