"fa-truck", "02" => "fa-ship", "03" => "fa-plane", "04" => "fa-train" ); // public $tipo_operacion_cce = 2; // public $tipo_operacion_cce_label = "2 - Exportacion"; public function __construct($db, $fk_facture = 0){ $this->db = $db; $this->num_complementos = 0; $this->cfdi_rel = 0; $this->fac_global = 0; $this->fac_cce = 0; $this->fac_cce20 = 0; $this->fac_cp20 = 0; $this->fac_cp30 = 0; $this->fac_cp31 = 0; $this->fk_facture = $fk_facture; $this->info_cce20["facid"] = $fk_facture; $this->info_cp["facid"] = $fk_facture; $this->getComplemento(); } public function getComplemento(){ // CFDI Relacionados $sql = "SELECT count(*) AS cfdi_rel FROM ".MAIN_DB_PREFIX."cfdimx_cfdi_relacionados"; $sql .= " WHERE"; $sql .= " fk_facture = ".$this->fk_facture; // print 'sql::'.$sql.'::
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->cfdi_rel = $obj->cfdi_rel; if($obj->cfdi_rel == 1){ $this->num_complementos++; } } // Factura Global $sql = "SELECT count(*) AS fac_global FROM ".MAIN_DB_PREFIX."cfdimx_factura_global"; $sql .= " WHERE"; $sql .= " facid = ".$this->fk_facture; // print 'sql::'.$sql.'::
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->fac_global = $obj->fac_global; if($obj->fac_global == 1){ $this->num_complementos++; } } // Comercio Exterior $sql = "SELECT count(*) AS cce FROM ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero"; $sql .= " WHERE"; $sql .= " fk_facture = ".$this->fk_facture; // print 'sql::'.$sql.'::
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->fac_cce = $obj->cce; if($obj->cce == 1){ $this->num_complementos++; } } // Comercio Exterior 2.0 $sql = "SELECT count(*) AS cce FROM ".MAIN_DB_PREFIX."cfdimx_comercioexterior"; $sql .= " WHERE"; $sql .= " facid = ".$this->fk_facture; // print 'sql::'.$sql.'::
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->fac_cce20 = $obj->cce; if($obj->cce == 1){ $this->num_complementos++; } } // Carta Porte 2.0 $sql = "SELECT count(*) AS cp FROM ".MAIN_DB_PREFIX."cfdimx_facture_carta_porte"; $sql .= " WHERE"; $sql .= " facid = ".$this->fk_facture; // print 'sql::'.$sql.'::
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->fac_cp20 = $obj->cp; if($obj->cp == 1){ $this->num_complementos++; } } // Carta Porte 3.0 $sql = "SELECT count(*) AS cp FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte"; $sql .= " WHERE"; $sql .= " facid = ".$this->fk_facture; $sql .= " AND version = '3.0'"; // print 'sql::'.$sql.'::
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->fac_cp30 = $obj->cp; if($obj->cp == 1){ $this->num_complementos++; } } // $this->fac_cp30 = 1; // Carta Porte 3.1 $sql = "SELECT count(*) AS cp FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte"; $sql .= " WHERE"; $sql .= " facid = ".$this->fk_facture; $sql .= " AND version = '3.1'"; // print 'sql::'.$sql.'::
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->fac_cp31 = $obj->cp; if($obj->cp == 1){ $this->num_complementos++; } } // $this->fac_cp31 = 1; } public function estatusFactura($id){ $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx"; $sql .= " WHERE"; $sql .= " fk_facture = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); } return $num; } public function getValidaTabCCE($id){ global $conf; $ocultar_tab_cce = 0; $sql = "SELECT count(*) AS tabcce FROM ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero AS cce"; $sql .= " INNER JOIN ".MAIN_DB_PREFIX."cfdimx AS cfdi ON cfdi.fk_facture = cce.fk_facture"; $sql .= " WHERE"; $sql .= " cfdi.entity_id = ".$conf->entity; $sql .= " AND cfdi.uuid IS NOT NULL"; // print $sql.'
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $ocultar_tab_cce = $obj->tabcce; } return $ocultar_tab_cce; } public function getValidaTabCP30($id){ global $conf; $ocultar_tab_cp30 = 0; $sql = "SELECT count(*) AS tabcp30 FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte AS cp"; $sql .= " INNER JOIN ".MAIN_DB_PREFIX."cfdimx AS cfdi ON cfdi.fk_facture = cp.facid"; $sql .= " WHERE"; $sql .= " cfdi.entity_id = ".$conf->entity; $sql .= " AND cfdi.uuid IS NOT NULL"; $sql .= " AND cp.version = '3.1'"; // print $sql.'
'; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $ocultar_tab_cp30 = $obj->tabcp30; } return $ocultar_tab_cp30; } // Valores Iniciales Comecio Exterior 2.0 public function getValInitCCE($tipo, $filtro = ''){ $catalogo = array(); $sql = ""; switch($tipo){ case 1: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_comercioexterior_valores WHERE tipo = 1 ORDER BY code ASC"; break; } // print $sql; if($sql != ""){ $resql = $this->db->query($sql); if ($resql) { $i = 0; $num = $this->db->num_rows($resql); while($i < $num){ $obj = $this->db->fetch_object($resql); $id = $obj->code; $clave = $obj->code; $label = $obj->code." - ".$obj->label; if(strlen($label) > 40){ $label = substr($label, 0, 40); } $catalogo[$id] = $label; $i++; } } } return $catalogo; } // Valores Iniciales Carta Porte public function getValInit($tipo, $filtro = ''){ $catalogo = array(); $sql = ""; switch($tipo){ case 1: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_cartaporte_valores WHERE tipo = 0 ORDER BY code ASC"; break; case 2: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_cartaporte_valores WHERE tipo = 1 ORDER BY code ASC"; break; case 3: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_cartaporte_valores WHERE tipo = 2 ORDER BY code ASC"; break; case 4: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_cartaporte_valores WHERE tipo = 3 ORDER BY code ASC"; break; case 5: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_cartaporte_valores WHERE tipo = 4 ORDER BY code ASC"; break; case 6: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_cartaporte_valores WHERE tipo = 5 ORDER BY code ASC"; break; case 7: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_cartaporte_valores WHERE tipo = 6 ORDER BY code ASC"; break; } // print $sql; if($sql != ""){ $resql = $this->db->query($sql); if ($resql) { $i = 0; $num = $this->db->num_rows($resql); while($i < $num){ $obj = $this->db->fetch_object($resql); $id = $obj->code; $clave = $obj->code; $label = $obj->label; if(strlen($label) > 40){ $label = substr($label, 0, 40); } $catalogo[$id] = $label; $i++; } } } return $catalogo; } public function getCatalogo($tipo, $filtro = ''){ $catalogo = array(); $sql = ""; /** * Catalogos del 1 al 100 -> Factura Global * Catalogos del 1000 al 1020 -> Comercio Exterior (CCE) * Catalogos del 1100 al 2000 -> Comercio Exterior (CCE) 2.0 * Catalogos del 2001 al 3000 -> Carta Porte (CP) 3.0 */ switch ($tipo) { // Factura Global case 1: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_periodicidad WHERE active = 1 ORDER BY code ASC"; break; case 2: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_meses WHERE active = 1 ORDER BY code ASC"; break; // Comercio Exterior case 1000: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_motivo_traslado WHERE active = 1 ORDER BY code ASC"; break; case 1001: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_operacion WHERE active = 1 ORDER BY code ASC"; break; case 1002: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_pedimento WHERE active = 1 ORDER BY code ASC"; break; case 1003: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_incoterm WHERE active = 1 ORDER BY code ASC"; break; case 1004: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_unidad_aduana WHERE active = 1 ORDER BY code ASC"; break; case 1005: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_f_arancelaria WHERE active = 1 ORDER BY code ASC"; break; // Comercio Exterior 2.0 case 1100: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_motivo_traslado WHERE active = 1 ORDER BY code ASC"; break; case 1101: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_pedimento WHERE active = 1 ORDER BY code ASC"; break; case 1102: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_incoterm WHERE active = 1 ORDER BY code ASC"; break; case 1103: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_f_arancelaria WHERE active = 1 ORDER BY code ASC"; break; case 1104: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_unidad_aduana WHERE active = 1 ORDER BY code ASC"; break; // Carta Porte 3.0 case 2001: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_regimen_aduanero WHERE active = 1"; if($filtro != ""){ $lista_impoexpo = array( 'Entrada' => "'Entrada', 'Salida,Entrada'", 'Salida' => "'Salida', 'Salida,Entrada'" ); $sql .= " AND impoexpo IN(".$lista_impoexpo[$filtro].")"; } $sql .= " ORDER BY code ASC"; // print $sql; break; case 2002: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_pais WHERE active = 1 ORDER BY code ASC"; break; case 2003: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_transporte WHERE active = 1 ORDER BY code ASC"; break; case 2004: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_registro_istmo WHERE active = 1 ORDER BY code ASC"; break; case 2005: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_pais WHERE active = 1 ORDER BY code ASC"; break; case 2006: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_estaciones WHERE active = 1 "; if($filtro != ""){ $sql .= " AND clave_transporte = '".$filtro."'"; } $sql .= " ORDER BY code ASC"; break; case 2007: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_estacion WHERE active = 1 ORDER BY code ASC"; break; case 2008: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_unidad_peso WHERE active = 1 ORDER BY code ASC"; break; // mercancia case 2009: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_prodserv_cp WHERE active = 1 ORDER BY code ASC"; break; case 2010: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_unidad_medida WHERE active = 1 ORDER BY code ASC"; break; case 2011: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_material_peligroso WHERE active = 1 ORDER BY code ASC"; break; case 2012: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_embalaje WHERE active = 1 ORDER BY code ASC"; break; case 2013: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_sector_cofepris WHERE active = 1 ORDER BY code ASC"; break; case 2014: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_formafarmaceutica WHERE active = 1 ORDER BY code ASC"; break; case 2015: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_condicionesespeciales WHERE active = 1 ORDER BY code ASC"; break; // case 2016: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_moneda WHERE active = 1 ORDER BY code ASC"; break; case 2017: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_f_arancelaria WHERE active = 1 ORDER BY code ASC"; break; case 2018: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_materia WHERE active = 1 ORDER BY code ASC"; break; case 2019: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_documento_aduanero WHERE active = 1 ORDER BY code ASC"; break; case 2020: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_transporte WHERE active = 1 ORDER BY code ASC"; break; case 2021: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_unidad_peso WHERE active = 1 ORDER BY code ASC"; break; // Auto transporte case 2022: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_permiso WHERE active = 1 AND clave_transporte = '01' OR code = 'TPXX00' ORDER BY code ASC"; break; case 2023: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_config_autotransporte WHERE active = 1 ORDER BY code ASC"; break; case 2024: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_permiso WHERE active = 1 ORDER BY code ASC"; break; // Maritimo case 2025: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_permiso WHERE active = 1 AND clave_transporte = '02' OR code = 'TPXX00' ORDER BY code ASC"; break; case 2026: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_config_maritima WHERE active = 1 ORDER BY code ASC"; break; case 2027: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_pais WHERE active = 1 ORDER BY code ASC"; break; case 2028: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_tipo_carga WHERE active = 1 ORDER BY code ASC"; break; case 2029: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_numaut_naviero WHERE active = 1 ORDER BY code ASC"; break; case 2030: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_contenedor_mat WHERE active = 1 ORDER BY code ASC"; break; case 2031: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_subtipo_rem WHERE active = 1 ORDER BY code ASC"; break; // Aereo case 2032: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_permiso WHERE active = 1 AND clave_transporte = '03' OR code = 'TPXX00' ORDER BY code ASC"; break; case 2033: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_codtrans_aereo WHERE active = 1 ORDER BY code ASC"; break; case 2034: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_pais WHERE active = 1 ORDER BY code ASC"; break; // Transporte ferroviaro case 2035: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_servicio WHERE active = 1 ORDER BY code ASC"; break; case 2036: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_trafico WHERE active = 1 ORDER BY code ASC"; break; case 2037: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_derecho_paso WHERE active = 1 ORDER BY code ASC"; break; case 2038: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_carro WHERE active = 1 ORDER BY code ASC"; break; case 2039: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_contenedor_ferr WHERE active = 1 ORDER BY code ASC"; break; //Figura Transporte case 2040: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_tipo_figura_transporte WHERE active = 1 ORDER BY code ASC"; break; case 2041: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_pais WHERE active = 1 ORDER BY code ASC"; break; case 2042: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_parte_transporte WHERE active = 1 ORDER BY code ASC"; break; //Tipo Transporte case 3000: $sql = "SELECT * FROM ".MAIN_DB_PREFIX."c_cfdimx_clave_transporte WHERE active = 1 ORDER BY code ASC"; break; } if($sql != ""){ $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $id = $obj->code; $clave = $obj->code; $label = $obj->label; if(strlen($label) > 40 && !in_array($tipo , array(2001, 2023))){ $label = substr($label, 0, 40); } $catalogo[$id] = $clave." - ".$label; if($tipo == 2029){ $catalogo[$id] = $label; } $i++; } } } return $catalogo; } public function getIDCCP($id){ global $conf; $inicio = 3; $idccp_generado = $this->generaIDCPP(); $idccp = $this->clave_idccp."".substr($idccp_generado, $inicio); $sql = "SELECT count(*) AS valido FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte"; $sql .= " WHERE"; $sql .= " idccp = '".$idccp."'"; // print $sql; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); if($obj->valido == 0){ return $idccp; }else{ $this->getIDCCP($id); } } } public function generaIDCPP(){ if (function_exists('com_create_guid') === true) return trim(com_create_guid(), '{}'); $data = openssl_random_pseudo_bytes(16); $data[6] = chr(ord($data[6]) & 0x0f | 0x40); // set version to 0100 $data[8] = chr(ord($data[8]) & 0x3f | 0x80); // set bits 6-7 to 10 return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4)); } /** * Inicia Metodos para CFDI Relacionados * file: card_cfdirel.php */ public function fetchCFDIRelacionados($id, $uuid = ""){ $sql .= "SELECT"; $sql .= " cfdi_rel.*,"; $sql .= " cfdi.factura_seriefolio,"; $sql .= " cfdi.fk_facture AS fac_folio,"; $sql .= " cfdi.fecha_emision"; $sql .= " FROM ".MAIN_DB_PREFIX."cfdimx_cfdi_relacionados AS cfdi_rel"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."cfdimx AS cfdi ON cfdi.uuid = cfdi_rel.uuid"; $sql .= " WHERE"; $sql .= " cfdi_rel.fk_facture = ".$id; // print $sql; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); if($num > 0){ while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->lista_cfdirel[] = array( "id" => $obj->rowid, "uuid" => $obj->uuid, "ref_ext" => $obj->lista_cfdirel, "facid" => $obj->fac_folio ); $i++; } } } } public function updateTipoRelacion($id, $tipo_rel){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."facture_extrafields"; $sql .= " SET"; $sql .= " cfdidoctiporelacion='".$tipo_rel."'"; $sql .= "WHERE"; $sql .= " fk_object=".$id; $res = $this->db->query($sql); if(!$res){ $error = -1; } return $error; } public function limiteCFDIRel($fecha_ini, $fecha_fin){ $dias_limite = $conf->global->CFDIMX_FAC_DIAS_CFDI_REL; $fecha_limite = date("Y-m-d"); $fecha_inicio = date("Y-m-d", strtotime($fecha_limite."- ".$dias_limite." days")); } public function fetchFacturasRel($fecha_inicio, $fecha_final){ global $conf; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx"; $sql .= " WHERE"; $sql .= " entity_id = ".$conf->entity; $sql .= " AND fecha_timbrado BETWEEN '".$fecha_inicio."' AND '".$fecha_final."'"; // print $sql; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); while($i < $num){ $obj = $this->db->fetch_object($resql); $this->lista_factrel[$obj->uuid] = $obj->factura_seriefolio." - ".$obj->fecha_timbrado." - ".$obj->uuid; $i++; } } } public function valpatronUUID($uuid){ $tamanio_uuid = strlen($uuid); $validacion_uuid = 0; if($tamanio_uuid == 36){ $separar_uuid_segmentos = explode("-", $uuid); $cantidad_segmentos = count($separar_uuid_segmentos); if($cantidad_segmentos == 5){ $segmento1 = strlen($separar_uuid_segmentos[0]); $segmento2 = strlen($separar_uuid_segmentos[1]); $segmento3 = strlen($separar_uuid_segmentos[2]); $segmento4 = strlen($separar_uuid_segmentos[3]); $segmento5 = strlen($separar_uuid_segmentos[4]); if($segmento1 != 8) $validacion_uuid = 1; if($segmento2 != 4) $validacion_uuid = 1; if($segmento3 != 4) $validacion_uuid = 1; if($segmento4 != 4) $validacion_uuid = 1; if($segmento5 != 12) $validacion_uuid = 1; }else{ $validacion_uuid = 1; } }else{ $validacion_uuid = 1; } return $validacion_uuid; } public function addCFDIRel($id, $uuid){ $error = 1; $formato = $this->valpatronUUID($uuid); $this->errors[] = null; if($formato == 0){ // ##Se valida que el UUID no este asociado a la factura $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cfdi_relacionados WHERE fk_facture = ".$id." AND uuid='".$uuid."'"; $resql = $this->db->query($sql); $num = $this->db->num_rows($resql); if($num > 0){ // $color = '#f99696'; $error = -1; $this->errors[] = "Error 1001: No se puede agregar el UUID '".$uuid."', porque ya esta en la lista de UUID Relacionados."; }else{ $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cfdi_relacionados"; $sql .= "(fk_facture,uuid)"; $sql .= " VALUES"; $sql .= "("; $sql .= $id.","; $sql .= "'".$uuid."'"; $sql .= ")"; $res_cfdi_rel = $this->db->query($sql); if(!$res_cfdi_rel){ $error = -1; $this->errors[] = "Error 1002: No se puede agregar el UUID '".$uuid."'"; } } }else{ $error = -1; $this->errors[] = "Error 1003: El UUID (".$uuid.") no cumple con el patrón requerido."; } return $error; } public function deleteCFDIRel($id, $uuid, $id_cfdirel){ $error = 1; $this->errors[] = null; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cfdi_relacionados"; $sql .= " WHERE"; $sql .= " rowid = ".$id_cfdirel; $res_cfdi_rel = $this->db->query($sql); if(!$res_cfdi_rel){ $error = -1; $this->errors[] = "Error 1000: No se puede eliminar el UUID '".$uuid."'"; // $this->errors[] = $sql; } return $error; } public function updateCFDIRel($id, $uuid, $id_cfdirel){ $error = 1; $formato = $this->valpatronUUID($uuid); $this->errors[] = null; if($formato == 0){ // ##Se valida que el UUID no este asociado a la factura $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cfdi_relacionados WHERE fk_facture = ".$id." AND uuid='".$uuid."'"; $resql = $this->db->query($sql); $num = $this->db->num_rows($resql); if($num > 0){ // $color = '#f99696'; $error = -1; $this->errors[] = "Error 1001: No se puede actualizar el UUID '".$uuid."', porque ya esta en la lista de UUID Relacionados."; }else{ $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cfdi_relacionados"; $sql .= " SET"; $sql .= " uuid = '".$uuid."'"; $sql .= "WHERE"; $sql .= " rowid = ".$id_cfdirel; $res_cfdi_rel = $this->db->query($sql); if(!$res_cfdi_rel){ $error = -1; $this->errors[] = "Error 1002: No se puede actualizar el UUID '".$uuid."'"; } } // $error = -1; // $this->errors[] = "Error: El UUID (".$uuid.") no cumple con el patrón requerido."; }else{ $error = -1; $this->errors[] = "Error 1003: El UUID (".$uuid.") no cumple con el patrón requerido."; } return $error; } /** * Termina Metodos para CFDI Relacionados */ /** * Inicia Metodos para Factura Global * file: card_cfdirel.php */ public function addFacturaGlobal($id, $anio, $meses, $periodicidad){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_factura_global"; $sql .= " (entity, facid, anio, meses, periodicidad, estatus, numfactrel)"; $sql .= " VALUES"; $sql .= " ("; $sql .= "'".$conf->entity."',"; $sql .= "'".$id."',"; $sql .= "'".$anio."',"; $sql .= "'".$meses."',"; $sql .= "'".$periodicidad."',"; $sql .= "'0',"; $sql .= "'0'"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se puede guardar la Información de la Factura Global."; $this->errors[] = $sql; $error = -1; } return $error; } public function updateFacturaGlobal($id, $rowid, $anio, $meses, $periodicidad){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_factura_global"; $sql .= " SET"; $sql .= " anio = '".$anio."',"; $sql .= " meses = '".$meses."',"; $sql .= " periodicidad = '".$periodicidad."'"; $sql .= " WHERE"; $sql .= " rowid = ".$rowid; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se puede actualizar la Información de la Factura Global."; $this->errors[] = $sql; } return $error; } public function fetchFacturaGlobal($id){ global $conf; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_factura_global"; $sql .= " WHERE"; $sql .= " entity = ".$conf->entity; $sql .= " AND facid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_global = array( "rowid" => $obj->rowid, "anio" => $obj->anio, "meses" => $obj->meses, "periodicidad" => $obj->periodicidad ); $i++; } } } /** * Termina Metodos para Factura Global */ /** * Inicia Metodos para Comercio Exterior (CCE) * file: card_cce.php */ public function deleteCCE(){ $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero"; $sql .= " WHERE"; $sql .= " fk_facture = ".$this->fk_facture; if(is_numeric($this->fk_facture) && $this->fk_facture > 0){ // print $sql.'
'; $res = $this->db->query($sql); } $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero_mercancia"; $sql .= " WHERE"; $sql .= " fk_facture = ".$this->fk_facture; if(is_numeric($this->fk_facture) && $this->fk_facture > 0){ // print $sql.'
'; $res = $this->db->query($sql); } } public function createheadCCE(){ $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero"; $sql .= " ("; $sql .= " fk_facture, tipo_operacion, clv_pedimento, no_exportador, incoterm, observaciones, num_identificacion,"; $sql .= " tipocambio, certificadoorigen, subdivision, motivotraslado, numcertificadoorigen"; $sql .= " )"; $sql .= " VALUES"; $sql .= " ("; $sql .= "'".$this->fk_facture."',"; $sql .= "'".$this->info_cce["tipo_operacion"]."',"; $sql .= "'".$this->info_cce["clv_pedimento"]."',"; $sql .= "'".$this->info_cce["no_exportador"]."',"; $sql .= "'".$this->info_cce["incoterm"]."',"; $sql .= "'".$this->info_cce["observaciones"]."',"; $sql .= "'".$this->info_cce["num_identificacion"]."',"; $sql .= "'".$this->info_cce["tipocambio"]."',"; $sql .= "'".$this->info_cce["certificadoorigen"]."',"; $sql .= "'".$this->info_cce["subdivision"]."',"; $sql .= "'".$this->info_cce["motivotraslado"]."',"; $sql .= "'".$this->info_cce["numcertificadoorigen"]."'"; $sql .= " )"; // print $sql."

"; $resql = $this->db->query($sql); if(!$resql){ $error = -1; $this->errors[] = "Error 1001: No se puedo guardar correctamente la información del Comprobante."; $this->errors[] = $sql; } return $error; } public function fetchCCE($fk_facture){ $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero"; $sql .= " WHERE"; $sql .= " fk_facture = ".$this->fk_facture; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cce["tipo_operacion"] = $obj->tipo_operacion; $this->info_cce["clv_pedimento"] = $obj->clv_pedimento; $this->info_cce["no_exportador"] = $obj->no_exportador; $this->info_cce["incoterm"] = $obj->incoterm; $this->info_cce["observaciones"] = $obj->observaciones; $this->info_cce["num_identificacion"] = $obj->num_identificacion; $this->info_cce["tipocambio"] = $obj->tipocambio; $this->info_cce["certificadoorigen"] = $obj->certificadoorigen; $this->info_cce["subdivision"] = $obj->subdivision; $this->info_cce["motivotraslado"] = $obj->motivotraslado; $this->info_cce["numcertificadoorigen"] = $obj->numcertificadoorigen; $i++; } $sql = "SELECT cce.*, p.rowid AS idprod FROM ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero_mercancia AS cce"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facturedet AS fe ON fe.rowid = cce.fk_facturedet"; $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."product AS p ON p.rowid = fe.fk_product"; $sql .= " WHERE"; $sql .= " cce.fk_facture = ".$this->fk_facture; // print $sql; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $this->info_cce["productos"] = null; while ($i < $num) { $obj = $this->db->fetch_object($resql); $producto = array(); $producto["fk_product"] = $obj->idprod; $producto["fk_facture"] = $obj->fk_facture; $producto["fk_facturedet"] = $obj->fk_facturedet; $producto["preciousd"] = $obj->preciousd; $producto["noidentificacion"] = $obj->noidentificacion; $producto["unidadcext"] = $obj->unidadcext; $producto["fraccion_arancelaria"] = $obj->fraccion_arancelaria; $producto["valor_unitario"] = $obj->valor_unitario; $producto["cantidad_aduana"] = $obj->cantidad_aduana; $producto["marca"] = $obj->marca; $this->info_cce["productos"][] = $producto; $i++; } } } } public function createproductCCE(){ $error = 0; if(is_array($this->info_cce["productos"]) && count($this->info_cce["productos"]) > 0){ // print 'crear partidas de Productos
'; $total_usd_global = 0; foreach($this->info_cce["productos"] AS $key => $value){ // print '
';
                    //     print_r($value);
                    // print '
'; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero_mercancia"; $sql .= "("; $sql .= "fk_facture,"; $sql .= "fk_facturedet,"; $sql .= "preciousd,"; $sql .= "noidentificacion,"; $sql .= "unidadcext,"; $sql .= "fraccion_arancelaria,"; $sql .= "valor_unitario,"; $sql .= "cantidad_aduana,"; $sql .= "marca"; $sql .= ")"; $sql .= "VALUES"; $sql .= "("; $sql .= "'".$this->fk_facture."',"; $sql .= "'".$value["line_rowid"]."',"; $sql .= "'".$value["total_usd"]."',"; $sql .= "'".$value["nodo_identificacion"]."',"; $sql .= "'".$value["unidad_aduana"]."',"; $sql .= "'".$value["fraccionarancelaria"]."',"; $sql .= "'".$value["price_uni"]."',"; $sql .= "'".$value["cantidad_aduana"]."',"; $sql .= "'".$value["marca"]."'"; $sql .= ")"; // print $sql.'
'; $res = $this->db->query($sql); if($res){ $total_usd_global += $value["total_usd"]; } } $update = "UPDATE ".MAIN_DB_PREFIX."cfdimx_facture_comercio_extranjero"; $update .= " SET"; $update .= " totalusd = ".$total_usd_global; $update .= " WHERE"; $update .= " fk_facture = ".$this->fk_facture; // print $update.'
'; $res = $this->db->query($update); } return $error; } public function tipoCambio($fk_facture){ global $conf; if($conf->global->MAIN_MODULE_MULTICURRENCY){ $sql_divisa = "SELECT multicurrency_code AS divisa FROM ".MAIN_DB_PREFIX."facture WHERE rowid = ".$fk_facture; $res_sql_divisa = $this->db->query($sql_divisa); $obj_divisa = $this->db->fetch_object($res_sql_divisa); $divisa = $obj_divisa->divisa; }else{ $divisa = $conf->currency; } if($divisa!='USD'){ $divisa_2 = 'USD'; $sql_divisa_conversion = " SELECT * FROM ".MAIN_DB_PREFIX."multicurrency AS divisa INNER JOIN ".MAIN_DB_PREFIX."multicurrency_rate AS conversion ON conversion.fk_multicurrency = divisa.rowid WHERE conversion.entity = '".$conf->entity."' AND divisa.code = '".$divisa_2."' ORDER BY conversion.rowid DESC LIMIT 1 "; $res_sql_divisa_conversion = $this->db->query($sql_divisa_conversion); $num_sql_divisa_conversion = $this->db->num_rows($res_sql_divisa_conversion); if($num_sql_divisa_conversion > 0){ $obj_divisa_origen = $this->db->fetch_object($res_sql_divisa_conversion); } $tipocambio = $obj_divisa_origen->rate; $tipocambio=str_replace(",", "",number_format($tipocambio,2)); if($tipocambio2 == ""){ $sql_divisa_conversion = " SELECT * FROM ".MAIN_DB_PREFIX."multicurrency AS divisa INNER JOIN ".MAIN_DB_PREFIX."multicurrency_rate AS conversion ON conversion.fk_multicurrency = divisa.rowid WHERE conversion.entity = '".$conf->entity."' AND divisa.code = '".$divisa."' ORDER BY conversion.rowid DESC LIMIT 1 "; $res_sql_divisa_conversion = $this->db->query($sql_divisa_conversion); $num_sql_divisa_conversion = $this->db->num_rows($res_sql_divisa_conversion); if($num_sql_divisa_conversion > 0){ $obj_divisa_origen = $this->db->fetch_object($res_sql_divisa_conversion); } $tipocambio2 = $obj_divisa_origen->rate; $tipocambio2 = str_replace(",", "",number_format($tipocambio2,2)); } }else{ $tipocambio = 1; } return $tipocambio; } // Funcion para registro automatico de CCE public function registroAutoCCE($fk_facture){ global $conf; // print 'registroCCE
'; $this->fk_facture = $fk_facture; $this->deleteCCE(); $facture = new Facture($this->db); $facture->fetch($fk_facture); $societe = new SocieteCFDIMX($this->db); $societe->fetchHeadCCE($facture->socid); // print '
';
            // 	print_r($societe->info_head_cce);
            // print '
'; // print 'ref::'.$facture->ref.'
'; $this->info_cce["tipo_operacion"] = $societe->info_head_cce["tipo_operacion"]; $this->info_cce["clv_pedimento"] = $societe->info_head_cce["clv_pedimento"]; $this->info_cce["no_exportador"] = $societe->info_head_cce["no_exportador"]; $this->info_cce["incoterm"] = $societe->info_head_cce["incoterm"]; $this->info_cce["observaciones"] = $societe->info_head_cce["observaciones"]; $this->info_cce["num_identificacion"] = $societe->info_head_cce["num_identificacion"]; $this->info_cce["tipocambio"] = 99; $this->info_cce["certificadoorigen"] = $societe->info_head_cce["certificadoorigen"]; $this->info_cce["subdivision"] = $societe->info_head_cce["subdivision"]; $this->info_cce["motivotraslado"] = $societe->info_head_cce["motivo_traslado"]; $this->info_cce["numcertificadoorigen"] = $societe->info_head_cce["num_certificadoorigen"]; // print '
';
            // 	print_r($this->info_cce);
            // print '
'; // Llamar metodo create $res = $this->createheadCCE(); if(is_array($facture->lines) && count($facture->lines) > 0){ // $productos = array $tipocambio = $this->tipoCambio($fk_facture); // print 'tipocambio::'.$tipocambio.'::
'; foreach ($facture->lines as $key => $value) { // print '
';
                    //     print_r($value);
                    // print '
'; if($conf->global->MAIN_MODULE_MULTICURRENCY){ $precio_total = $value->multicurrency_total_ht; $subprice = $value->multicurrency_subprice; }else{ $precio_total = $value->total_ht; $subprice = $value->subprice; } $rowid_producto = $value->fk_product; $description_producto = $value->description; $nodo_identificacion = ""; $cantidad = $value->qty; // $precio_total = $object->lines[$i]->total_ht; // $subprice = $object->lines[$i]->subprice; $unidad_aduana = $value->array_options["options_uaduana"]; $fraccionarancelaria = $value->array_options["options_f_arancelaria"]; $cantidad_aduana = $cantidad; if(isset($value->array_options["options_marcaaduana"])){ $marca = $value->array_options["options_marcaaduana"]; }else{ $marca = $value->array_options["options_marca"]; } // $marca = ""; $total_usd = $precio_total*$tipocambio; $price_uni = $subprice*$tipocambio; $ref_producto = $value->ref; $label_producto = $value->label; // $description_static = $value->description; // print '
';
                    // 	print_r($value->array_options);
                    // print '
'; if(!is_null($value->fk_product) && $value->fk_product > 0){ $producto = new Product($this->db); $producto->fetch($value->fk_product); // print '$conf->global->CFDIMX_EXTRAFIELDS_CCE::'.$conf->global->CFDIMX_EXTRAFIELDS_CCE.'::
'; // if($conf->global->CFDIMX_EXTRAFIELDS_CCE == 1){ $unidad_aduana = $producto->array_options["options_uaduana"]; $fraccionarancelaria = $producto->array_options["options_f_arancelaria"]; // $price_uni = $producto->array_options["options_precio_usd"]; $total_usd = $price_uni * $cantidad_aduana; $nodo_identificacion = $producto->array_options["options_noidenticfdi"]; if(isset($producto->array_options["options_marcaaduana"])){ $marca = $producto->array_options["options_marcaaduana"]; }else{ $marca = $producto->array_options["options_marca"]; } // } }else{ $unidad_aduana = $value->array_options["options_uaduana"]; $fraccionarancelaria = $value->array_options["options_f_arancelaria"]; $total_usd = $price_uni * $cantidad_aduana; if(isset($value->array_options["options_marcaaduana"])){ $marca = $value->array_options["options_marcaaduana"]; }else{ $marca = $value->array_options["options_marca"]; } } $this->info_cce["productos"][] = array( "line_rowid" => $value->id, "fk_product" => $rowid_producto, "ref" => $ref_producto, "label" => $label_producto, "description" => $description_producto, "qty" => $cantidad, "total_ttc" => $value->total_ttc, "nodo_identificacion" => $nodo_identificacion, "unidad_aduana" => $unidad_aduana, "fraccionarancelaria" => $fraccionarancelaria, "cantidad_aduana" => $cantidad_aduana, "marca" => $marca, "total_usd" => $total_usd, "price_uni" => $price_uni ); } // print '
';
                //     print_r($this->info_cce["productos"]);
                // print '
'; $this->createproductCCE(); } } public function registoCCE(){ $error = 1; // Se elimina la informacion actual $this->deleteCCE(); $error = $this->createheadCCE(); $this->createproductCCE(); return $error; } /** * Termina Metodos para Comercio Exterior (CCE) */ /** * Inicia Metodos para Comercio Exterior 2.0 */ public function createHeadCCE20(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_comercioexterior"; $sql .= " (entity,facid,version,motivotraslado,clavedepedimento,certificadoorigen,numcertificadoorigen,numeroexportadorconfiable,"; $sql .= " incoterm,observaciones,tipocambiousd,totalusd,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cce20["facid"]."',"; $sql .= "'".$this->info_cce20["version"]."',"; $sql .= "'".$this->info_cce20["motivotraslado"]."',"; $sql .= "'".$this->info_cce20["clavedepedimento"]."',"; $sql .= "'".$this->info_cce20["certificadoorigen"]."',"; $sql .= "'".$this->info_cce20["numcertificadoorigen"]."',"; $sql .= "'".$this->info_cce20["numeroexportadorconfiable"]."',"; $sql .= "'".$this->info_cce20["incoterm"]."',"; $sql .= "'".$this->info_cce20["observaciones"]."',"; $sql .= "'".$this->info_cce20["tipocambiousd"]."',"; $sql .= "'".$this->info_cce20["totalusd"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información de Comercio Exterior"; $this->errors[] = $sql; $error = -1; } $this->createProductCCE20($this->info_cce20["facid"]); return $error; } public function fetchHeadCCE20($facid){ global $conf; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_comercioexterior"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $sql .= " AND entity = ".$conf->entity; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->info_cce20["rowid"] = $obj->rowid; $this->info_cce20["facid"] = $obj->facid; $this->info_cce20["version"] = $obj->version; $this->info_cce20["motivotraslado"] = $obj->motivotraslado; $this->info_cce20["clavedepedimento"] = $obj->clavedepedimento; $this->info_cce20["certificadoorigen"] = $obj->certificadoorigen; $this->info_cce20["numcertificadoorigen"] = $obj->numcertificadoorigen; $this->info_cce20["numeroexportadorconfiable"] = $obj->numeroexportadorconfiable; $this->info_cce20["incoterm"] = $obj->incoterm; $this->info_cce20["observaciones"] = $obj->observaciones; $this->info_cce20["tipocambiousd"] = $obj->tipocambiousd; $this->info_cce20["totalusd"] = $obj->totalusd; } } public function updateHeadCCE20(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_comercioexterior"; $sql .= " SET"; $sql .= " version = '".$this->info_cce20["version"]."',"; $sql .= " motivotraslado = '".$this->info_cce20["motivotraslado"]."',"; $sql .= " clavedepedimento = '".$this->info_cce20["clavedepedimento"]."',"; $sql .= " certificadoorigen = '".$this->info_cce20["certificadoorigen"]."',"; $sql .= " numcertificadoorigen = '".$this->info_cce20["numcertificadoorigen"]."',"; $sql .= " numeroexportadorconfiable = '".$this->info_cce20["numeroexportadorconfiable"]."',"; $sql .= " incoterm = '".$this->info_cce20["incoterm"]."',"; $sql .= " observaciones = '".$this->info_cce20["observaciones"]."',"; $sql .= " tipocambiousd = '".$this->info_cce20["tipocambiousd"]."',"; $sql .= " totalusd = '".$this->info_cce20["totalusd"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cce20["rowid"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información de Comercio Exterior"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteHeadCCE20(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_comercioexterior"; $sql .= " WHERE"; $sql .= " facid = ".$this->info_cce20["facid"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la informaicón del comprobante"; $this->errors[] = $sql; $error = -1; } $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercancia"; $sql .= " WHERE"; $sql .= " facid = ".$this->info_cce20["facid"]; $resql = $this->db->query($sql); $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercanciadescripcionesespecificas"; $sql .= " WHERE"; $sql .= " facid = ".$this->info_cce20["facid"]; $resql = $this->db->query($sql); return $error; } public function getInfoCCE($fk_facture){ global $conf; // print 'fk_facture::'.$fk_facture.'::
'; // print 'fk_soc::'.$fk_soc.'::
'; $facture = new Facture($this->db); $facture->fetch($fk_facture); $societe = new SocieteCFDIMX($this->db); $societe->fetchHeadCCE($facture->socid); // print '
';
            // 	print_r($societe->info_head_cce);
            // print '
'; $this->info_cce20["motivotraslado"] = $societe->info_head_cce["motivo_traslado"]; $this->info_cce20["clavedepedimento"] = $societe->info_head_cce["clv_pedimento"]; $this->info_cce20["certificadoorigen"] = $societe->info_head_cce["certificadoorigen"]; $this->info_cce20["numcertificadoorigen"] = $societe->info_head_cce["num_certificadoorigen"]; $this->info_cce20["numeroexportadorconfiable"] = $societe->info_head_cce["no_exportador"]; $this->info_cce20["incoterm"] = $societe->info_head_cce["incoterm"]; $this->info_cce20["observaciones"] = $societe->info_head_cce["observaciones"]; $this->info_cce20["tipocambiousd"] = $this->tipoCambio($fk_facture); $this->info_cce20["totalusd"] = 0; } public function getLabelHeadCCE20($facid){ $label = ""; $this->info_cp = null; $this->fetchHeadCCE20($facid); $lista_motivotraslado = $this->getCatalogo(1100); $lista_clavedepedimento = $this->getCatalogo(1101); $lista_certificadoorigen = $this->getValInitCCE(1); $lista_incoterm = $this->getCatalogo(1102); $label .= "".$this->info_cce20["version"]."
"; $label .= "".$lista_motivotraslado[$this->info_cce20["motivotraslado"]]."
"; $label .= "".$lista_clavedepedimento[$this->info_cce20["clavedepedimento"]]."
"; $label .= "".$lista_certificadoorigen[$this->info_cce20["certificadoorigen"]]."
"; $label .= "".$this->info_cce20["numcertificadoorigen"]."
"; $label .= "".$this->info_cce20["numeroexportadorconfiable"]."
"; $label .= "".$lista_incoterm[$this->info_cce20["incoterm"]]."
"; $label .= "".$this->info_cce20["observaciones"]."
"; $label .= "".$this->info_cce20["tipocambiousd"]."
"; $label .= "".$this->info_cce20["totalusd"]; return $label; } public function createProductCCE20($fk_facture){ global $conf, $user; $error = 0; $facture = new Facture($this->db); $facture->fetch($fk_facture); if(is_array($facture->lines) && count($facture->lines) > 0){ // $productos = array $tipocambio = $this->tipoCambio($fk_facture); // print 'tipocambio::'.$tipocambio.'::
'; foreach ($facture->lines as $key => $value) { // print '
';
                    //     print_r($value);
                    // print '
'; $producto = new Product($this->db); $factor_equivalencia = 1; if(!is_null($value->fk_product) && $value->fk_product > 0){ $producto->fetch($value->fk_product); $factor_equivalencia = (trim($producto->array_options["options_fact_equiv"]) != "" ? $producto->array_options["options_fact_equiv"] : 1); } if($conf->global->MAIN_MODULE_MULTICURRENCY){ $precio_total = $value->multicurrency_total_ht; $subprice = $value->multicurrency_subprice; }else{ $precio_total = $value->total_ht; $subprice = $value->subprice; } $rowid_producto = $value->fk_product; $description_producto = $value->description; $nodo_identificacion = ""; $cantidad = $value->qty; // $precio_total = $object->lines[$i]->total_ht; // $subprice = $object->lines[$i]->subprice; $unidad_aduana = $value->array_options["options_uaduana"]; $fraccionarancelaria = $value->array_options["options_f_arancelaria"]; $cantidad_aduana = $cantidad; if(isset($value->array_options["options_marcaaduana"])){ $marca = $value->array_options["options_marcaaduana"]; }else{ $marca = $value->array_options["options_marca"]; } // Nuevo Precio $subprice = $value->multicurrency_total_ttc / $cantidad_aduana; $total_usd = $precio_total*$tipocambio; $price_uni = $subprice*$tipocambio; $ref_producto = $value->ref; $label_producto = $value->label; // $description_static = $value->description; // print '
';
                    // 	print_r($value->array_options);
                    // print '
'; if(!is_null($value->fk_product) && $value->fk_product > 0){ // $producto = new Product($this->db); // $producto->fetch($value->fk_product); // print '$conf->global->CFDIMX_EXTRAFIELDS_CCE::'.$conf->global->CFDIMX_EXTRAFIELDS_CCE.'::
'; // if($conf->global->CFDIMX_EXTRAFIELDS_CCE == 1){ $unidad_aduana = $producto->array_options["options_uaduana"]; $fraccionarancelaria = $producto->array_options["options_f_arancelaria"]; // $price_uni = $producto->array_options["options_precio_usd"]; $total_usd = $price_uni * $cantidad_aduana; $nodo_identificacion = $producto->array_options["options_noidenticfdi"]; if(isset($producto->array_options["options_marcaaduana"])){ $marca = $producto->array_options["options_marcaaduana"]; }else{ $marca = $producto->array_options["options_marca"]; } // } }else{ $unidad_aduana = $value->array_options["options_uaduana"]; $fraccionarancelaria = $value->array_options["options_f_arancelaria"]; $total_usd = $price_uni * $cantidad_aduana; if(isset($value->array_options["options_marcaaduana"])){ $marca = $value->array_options["options_marcaaduana"]; }else{ $marca = $value->array_options["options_marca"]; } } // Ajuste para Comercio Exterior con el Factor de Equivalencia $cantidad = $cantidad * $factor_equivalencia; $price_uni = $total_usd / $cantidad; $this->info_cce20["productos"][] = array( "line_rowid" => $value->id, "fk_product" => $rowid_producto, "ref" => $ref_producto, "label" => $label_producto, "description" => $description_producto, "qty" => $cantidad, "total_ttc" => $value->total_ttc, "nodo_identificacion" => $nodo_identificacion, "unidad_aduana" => $unidad_aduana, "fraccionarancelaria" => $fraccionarancelaria, "cantidad_aduana" => str_replace(",", "", number_format($cantidad_aduana, 3)), "marca" => $marca, "total_usd" => $total_usd, "price_uni" => str_replace(",", "", number_format($price_uni, 6)) ); } // print '
';
                //     print_r($this->info_cce["productos"]);
                // print '
'; // $this->createproductCCE20($fk_facture); } if(is_array($this->info_cce20["productos"]) && count($this->info_cce20["productos"]) > 0){ // print 'crear partidas de Productos
'; $total_usd_global = 0; foreach($this->info_cce20["productos"] AS $key => $value){ // print '
';
                    //     print_r($value);
                    // print '
'; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercancia"; $sql .= "("; $sql .= "entity,"; $sql .= "facid,"; $sql .= "fk_line,"; $sql .= "fk_product,"; $sql .= "noidentificacion,"; $sql .= "fraccionarancelaria,"; $sql .= "cantidadaduana,"; $sql .= "unidadaduana,"; $sql .= "valorunitarioaduana,"; $sql .= "valordolares,"; $sql .= "fk_user_create,"; $sql .= "date_create"; $sql .= ")"; $sql .= "VALUES"; $sql .= "("; $sql .= "'".$conf->entity."',"; $sql .= "'".$fk_facture."',"; $sql .= "'".$value["line_rowid"]."',"; $sql .= "'".$value["fk_product"]."',"; $sql .= "'".$value["nodo_identificacion"]."',"; $sql .= "'".$value["fraccionarancelaria"]."',"; $sql .= "'".$value["cantidad_aduana"]."',"; $sql .= "'".$value["unidad_aduana"]."',"; $sql .= "'".$value["price_uni"]."',"; $sql .= "'".$value["total_usd"]."',"; $sql .= "'".$user->id."',"; $sql .= "now()"; $sql .= ")"; // print $sql.'
'; $res = $this->db->query($sql); if($res){ $total_usd_global += $value["total_usd"]; if(!is_null(trim($value["marca"])) && trim($value["marca"]) != ""){ $fk_mercancia = $this->db->last_insert_id(MAIN_DB_PREFIX.'cfdimx_comercioexterior_mercancia'); $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercanciadescripcionesespecificas"; $sql .= "("; $sql .= "entity,"; $sql .= "facid,"; $sql .= "fk_mercancia,"; $sql .= "marca,"; // $sql .= "modelo,"; // $sql .= "submodelo,"; // $sql .= "numeroserie,"; $sql .= "fk_user_create,"; $sql .= "date_create"; $sql .= ")"; $sql .= "VALUES"; $sql .= "("; $sql .= "'".$conf->entity."',"; $sql .= "'".$fk_facture."',"; $sql .= "'".$fk_mercancia."',"; $sql .= "'".$value["marca"]."',"; $sql .= "'".$user->id."',"; $sql .= "now()"; $sql .= ")"; $res_marca = $this->db->query($sql); } } } $update = "UPDATE ".MAIN_DB_PREFIX."cfdimx_comercioexterior"; $update .= " SET"; $update .= " totalusd = ".$total_usd_global; $update .= " WHERE"; $update .= " facid = ".$fk_facture; // print $update.'
'; $res = $this->db->query($update); } return $error; } public function fetchProductCCE20($id_mercancia){ $num = 0; $this->info_cce20["mercancia"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercancia"; $sql .= " WHERE"; $sql .= " rowid = ".$id_mercancia; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cce20["mercancia"] = array( "rowid" => $obj->rowid, "facid" => $obj->facid, "fk_line" => $obj->fk_line, "fk_product" => $obj->fk_product, "noidentificacion" => $obj->noidentificacion, "fraccionarancelaria" => $obj->fraccionarancelaria, "cantidadaduana" => $obj->cantidadaduana, "unidadaduana" => $obj->unidadaduana, "valorunitarioaduana" => $obj->valorunitarioaduana, "valordolares" => $obj->valordolares, "mercancias_especificas" => $this->fetchMercanciasEspecificasCCE20($obj->rowid) ); $i++; } } return $num; } public function fetchProductsCCE20($facid){ $num = 0; $this->info_cce20["mercancias"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercancia"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cce20["mercancias"][] = array( "rowid" => $obj->rowid, "facid" => $obj->facid, "fk_line" => $obj->fk_line, "fk_product" => $obj->fk_product, "noidentificacion" => $obj->noidentificacion, "fraccionarancelaria" => $obj->fraccionarancelaria, "cantidadaduana" => $obj->cantidadaduana, "unidadaduana" => $obj->unidadaduana, "valorunitarioaduana" => $obj->valorunitarioaduana, "valordolares" => $obj->valordolares, "mercancias_especificas" => $this->fetchMercanciasEspecificasCCE20($obj->rowid) ); $i++; } } return $num; } public function fetchMercanciasEspecificasCCE20($id_mercancia){ $mercancias_especificas = array(); $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercanciadescripcionesespecificas"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$id_mercancia; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $mercancias_especificas[] = $obj; $i++; } } return $mercancias_especificas; } public function updateProductCCE20(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercancia"; $sql .= " SET"; $sql .= " noidentificacion = '".$this->info_cce20["mercancia"]["noidentificacion"]."',"; $sql .= " fraccionarancelaria = '".$this->info_cce20["mercancia"]["fraccionarancelaria"]."',"; $sql .= " cantidadaduana = '".$this->info_cce20["mercancia"]["cantidadaduana"]."',"; $sql .= " unidadaduana = '".$this->info_cce20["mercancia"]["unidadaduana"]."',"; $sql .= " valorunitarioaduana = '".$this->info_cce20["mercancia"]["valorunitarioaduana"]."',"; $sql .= " valordolares = '".$this->info_cce20["mercancia"]["valordolares"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cce20["mercancia"]["rowid_mercancia"]; $resql = $this->db->query($sql); if(!$resql){ $error = -1; $this->errors[] = "Error: No se pudo actualizar la Información de la Mercancia."; $this->errors[] = $sql; } if($error == 1 && $this->info_cce20["mercancia"]["rowid_marca"] > 0){ $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_comercioexterior_mercanciadescripcionesespecificas"; $sql .= " SET"; $sql .= " marca = '".$this->info_cce20["mercancia"]["marca"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cce20["mercancia"]["rowid_marca"]; $resql = $this->db->query($sql); if(!$resql){ $error = -1; $this->errors[] = "Error: No se pudo actualizar la Información de la Marca de la Mercancia."; $this->errors[] = $sql; } } return $error; } /** * Termina Metodos para Comercio Exterior 2.0 */ /** * Inicia Metodos para Carta Porte (CP) 3.0, 3.1 */ public function createHeadCP(User $user){ global $conf; // $error = 1; $error = $this->validateHeadCP(); if($error == 1){ $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte"; $sql .= "(entity, facid, version, idccp, transpinternac, regimenaduanero, entradasalidamerc, paisorigendestino, viaentradasalida,"; $sql .= " totaldistrec, registroistmo, ubicacionpoloorigen, ubicacionpolodestino, fk_user_create, date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= $this->info_cp["facid"].","; $sql .= "'".$this->info_cp["version"]."',"; $sql .= "'".$this->info_cp["idccp"]."',"; $sql .= "'".$this->info_cp["transpinternac"]."',"; $sql .= "'".$this->info_cp["regimenaduanero"]."',"; $sql .= "'".$this->info_cp["entradasalidamerc"]."',"; $sql .= "'".$this->info_cp["paisorigendestino"]."',"; $sql .= "'".$this->info_cp["viaentradasalida"]."',"; $sql .= "'".$this->info_cp["totaldistrec"]."',"; $sql .= "'".$this->info_cp["registroistmo"]."',"; $sql .= "'".$this->info_cp["ubicacionpoloorigen"]."',"; $sql .= "'".$this->info_cp["ubicacionpolodestino"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo guardar la información de Carta Porte"; $this->errors[] = $sql; $error = -1; } }else{ $this->errors[] = "Error 1001: No se pudo guardar la información de Carta Porte, porque falta llenar campos obligatorios."; $error = -1; } return $error; } public function validateHeadCP(){ $validate = 1; if($this->info_cp["transpinternac"] != 1){ $this->info_cp["entradasalidamerc"] = -1; $this->info_cp["paisorigendestino"] = -1; $this->info_cp["viaentradasalida"] = -1; } // Validate TotalDistRec if($this->info_cp["registroistmo"] != 1){ $this->info_cp["ubicacionpoloorigen"] = -1; $this->info_cp["ubicacionpolodestino"] = -1; } if(trim($this->info_cp["version"]) == ""){ $validate = -1; } if(trim($this->info_cp["idccp"]) == ""){ $validate = -1; } if($this->info_cp["transpinternac"] == -1){ $validate = -1; } return $validate; } public function fetchHeadCP($facid){ global $conf; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $sql .= " AND entity = ".$conf->entity; $resql = $this->db->query($sql); if($resql){ $obj = $this->db->fetch_object($resql); $this->info_cp["rowid"] = $obj->rowid; $this->info_cp["version"] = $obj->version; $this->info_cp["idccp"] = $obj->idccp; $this->info_cp["transpinternac"] = $obj->transpinternac; $this->info_cp["regimenaduanero"] = $obj->regimenaduanero; $this->info_cp["entradasalidamerc"] = $obj->entradasalidamerc; $this->info_cp["paisorigendestino"] = $obj->paisorigendestino; $this->info_cp["viaentradasalida"] = $obj->viaentradasalida; $this->info_cp["totaldistrec"] = $obj->totaldistrec; $this->info_cp["registroistmo"] = $obj->registroistmo; $this->info_cp["ubicacionpoloorigen"] = $obj->ubicacionpoloorigen; $this->info_cp["ubicacionpolodestino"] = $obj->ubicacionpolodestino; } } public function updateHeadCP(User $user){ global $conf; // $error = 1; $error = $this->validateHeadCP(); if($error == 1){ $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte"; $sql .= " SET"; $sql .= " version = '".$this->info_cp["version"]."',"; // $sql .= " idccp = '".$this->info_cp["idccp"]."',"; $sql .= " transpinternac = '".$this->info_cp["transpinternac"]."',"; $sql .= " regimenaduanero = '".$this->info_cp["regimenaduanero"]."',"; $sql .= " entradasalidamerc = '".$this->info_cp["entradasalidamerc"]."',"; $sql .= " paisorigendestino = '".$this->info_cp["paisorigendestino"]."',"; $sql .= " viaentradasalida = '".$this->info_cp["viaentradasalida"]."',"; $sql .= " totaldistrec = '".$this->info_cp["totaldistrec"]."',"; $sql .= " registroistmo = '".$this->info_cp["registroistmo"]."',"; $sql .= " ubicacionpoloorigen = '".$this->info_cp["ubicacionpoloorigen"]."',"; $sql .= " ubicacionpolodestino = '".$this->info_cp["ubicacionpolodestino"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["rowid"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la información de Carta Porte"; $this->errors[] = $sql; $error = -1; } }else{ $this->errors[] = "Error 1001: No se pudo actualizar la información de Carta Porte, porque falta llenar campos obligatorios."; $error = -1; } return $error; } public function deleteHeadCP(User $user){ $error = 1; $lista_tables_cp = array( "cfdimx_cartaporte", "cfdimx_cartaporte_regimenes_aduaneros", "cfdimx_cartaporte_autotransporte", "cfdimx_cartaporte_autotransporte_identificacionvehicular", "cfdimx_cartaporte_autotransporte_remolques", "cfdimx_cartaporte_autotransporte_seguros", "cfdimx_cartaporte_figuratransporte", "cfdimx_cartaporte_figuratransporte_domicilio", "cfdimx_cartaporte_figuratransporte_partestransporte", "cfdimx_cartaporte_mercancia", "cfdimx_cartaporte_mercancia_cantidadtransporta", "cfdimx_cartaporte_mercancia_detallemercancia", "cfdimx_cartaporte_mercancia_documentacionaduanera", "cfdimx_cartaporte_mercancia_guiasidentificacion", "cfdimx_cartaporte_mercancias", "cfdimx_cartaporte_transporte_aereo", "cfdimx_cartaporte_transporte_ferroviario", "cfdimx_cartaporte_transporte_ferroviario_carro", "cfdimx_cartaporte_transporte_ferroviario_carro_contenedor", "cfdimx_cartaporte_transporte_ferroviario_derechospaso", "cfdimx_cartaporte_transporte_maritimo", "cfdimx_cartaporte_transporte_maritimo_contenedores", "cfdimx_cartaporte_transporte_maritimo_remolques", "cfdimx_cartaporte_ubicacion", "cfdimx_cartaporte_ubicacion_domicilio" ); foreach ($lista_tables_cp as $key => $value) { // print 'value::'.$value.'
'; $sql = "DELETE FROM ".MAIN_DB_PREFIX.$value; $sql .= " WHERE"; $sql .= " facid = ".$this->info_cp["facid"]; // print $sql.'
'; $res = $this->db->query($sql); if(!$res){ $error = -1; $this->errors = "No se pudo eliminar la Información de Carta Porte.
"; $this->errors .= $sql."
"; } } return $error; } public function getLabelHeadCP($facid){ $label = ""; $this->info_cp = null; $this->fetchHeadCP($facid); $lista_transpinternac = $this->getValInit(1); // $lista_regimenaduanero = $this->getCatalogo(2001); $lista_entradasalidamerc = $this->getValInit(2); $lista_paisorigendestino = $this->getCatalogo(2002); $lista_viaentradasalida = $this->getCatalogo(2003); $lista_registoistmo = $this->getValInit(5); $lista_ubicacion_poloorigen = $this->getCatalogo(2004); $lista_ubicacion_polodestino = $this->getCatalogo(2004); $label .= "".$this->info_cp["version"]."
"; $label .= "".$this->info_cp["idccp"]."
"; $label .= "".$lista_transpinternac[$this->info_cp["transpinternac"]]."
"; // $label .= "".$lista_regimenaduanero[$this->info_cp["regimenaduanero"]]."
"; $label .= "".$lista_entradasalidamerc[$this->info_cp["entradasalidamerc"]]."
"; $label .= img_picto('', 'globe-americas', 'style="color: black;"')." ".$lista_paisorigendestino[$this->info_cp["paisorigendestino"]]."
"; $label .=''; $label .= " ".$lista_viaentradasalida[$this->info_cp["viaentradasalida"]]."
"; $label .= "".$this->info_cp["totaldistrec"]."
"; $label .= "".$lista_registoistmo[$this->info_cp["registroistmo"]]."
"; $label .= img_picto('', 'globe-americas', 'style="color: black;"')." ".$lista_ubicacion_poloorigen[$this->info_cp["ubicacionpoloorigen"]]."
"; $label .= img_picto('', 'globe-americas', 'style="color: black;"')." ".$lista_ubicacion_polodestino[$this->info_cp["ubicacionpolodestino"]]; return $label; } public function createRegimenAduaneroCP(User $user){ global $conf; $error = $this->validateRegimenAduaneroCP(); if($error == 1){ $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_regimenes_aduaneros"; $sql .= "(entity, facid, regimenaduanero, fk_user_create, date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= $this->info_cp["facid"].","; $sql .= "'".$this->info_cp["regimen_aduanero"]["regimenaduanero"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo guardar la información del Régimen Aduanero"; $this->errors[] = $sql; $error = -1; } }else{ $this->errors[] = "Error 1001: No se pudo guardar la información del Régimen Aduanero, porque falta llenar campos obligatorios."; $error = -1; } return $error; } public function validateRegimenAduaneroCP(){ $validate = 1; if($this->info_cp["regimen_aduanero"]["regimenaduanero"] == -1){ $validate = -1; } return $validate; } public function updateRegimenAduaneroCP(User $user){ global $conf; $error = $this->validateRegimenAduaneroCP(); if($error == 1){ $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_regimenes_aduaneros"; $sql .= " SET"; $sql .= " regimenaduanero = '".$this->info_cp["regimen_aduanero"]["regimenaduanero"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_create = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["regimen_aduanero"]["rowid_regimen_aduanero"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la información del Régimen Aduanero"; $this->errors[] = $sql; $error = -1; } }else{ $this->errors[] = "Error 1001: No se pudo actualizar la información del Régimen Aduanero, porque falta llenar campos obligatorios."; $error = -1; } return $error; } public function fetchRegimenAduaneroCP($facid){ global $conf; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_regimenes_aduaneros"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $sql .= " AND entity = ".$conf->entity; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["regimen_aduanero"]["rowid_regimen_aduanero"] = $obj->rowid; $this->info_cp["regimen_aduanero"]["regimenaduanero"] = $obj->regimenaduanero; $i++; } } } public function fetchRegimenesAduanerosCP($facid){ global $conf; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_regimenes_aduaneros"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $sql .= " AND entity = ".$conf->entity; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $regimenes_aduaneros = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $regimenes_aduaneros[] = array( "rowid_regimen_aduanero" => $obj->rowid, "facid" => $obj->facid, "regimenaduanero" => $obj->regimenaduanero, "fk_user_create" => $obj->fk_user_create, "date_create" => $obj->date_create, "fk_user_update" => $obj->fk_user_update, "date_update" => $obj->date_update, // "label_view" => $this->getLabelUbicacionCP($obj->rowid), "label_view" => "" ); $i++; } $this->info_cp["regimenes_aduaneros"] = $regimenes_aduaneros; } } public function deleteRegimenAduaneroCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_regimenes_aduaneros"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["regimen_aduanero"]["rowid_regimen_aduanero"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar el Régimen Aduanero"; $this->errors[] = $sql; $error = -1; } return $error; } public function createUbicacionCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion"; $sql .= "(entity,facid,tipoubicacion,idubicacion,rfcremitentedestinatario,nombreremitentedestinatario,numregidtrib,"; $sql .= " residenciafiscal,numestacion,nombreestacion,navegaciontrafico,fechasalidallegada,horasalidallegada,"; $sql .= " tipoestacion,distanciarecorrida,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["ubicacion"]["facid"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["tipoubicacion"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["idubicacion"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["rfcremitentedestinatario"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["nombreremitentedestinatario"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["numregidtrib"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["residenciafiscal"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["numestacion"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["nombreestacion"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["navegaciontrafico"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["fechasalidallegada"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["horasalidallegada"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["tipoestacion"]."',"; $sql .= "'".$this->info_cp["ubicacion"]["distanciarecorrida"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo guardar la información de la Ubicación"; $this->errors[] = $sql; $error = -1; } return $error; } // validateUbicacionCP public function fetchUbicacionCP($rowid = 0, $facid = 0){ global $conf; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion"; $sql .= " WHERE"; $sql .= " rowid = ".$rowid; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $ubicacion = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $ubicacion = array( "rowid" => $obj->rowid, "facid" => $obj->facid, "tipoubicacion" => $obj->tipoubicacion, "idubicacion" => $obj->idubicacion, "rfcremitentedestinatario" => $obj->rfcremitentedestinatario, "nombreremitentedestinatario" => $obj->nombreremitentedestinatario, "numregidtrib" => $obj->numregidtrib, "residenciafiscal" => $obj->residenciafiscal, "numestacion" => $obj->numestacion, "nombreestacion" => $obj->nombreestacion, "navegaciontrafico" => $obj->navegaciontrafico, "fechasalidallegada" => $obj->fechasalidallegada, "horasalidallegada" => $obj->horasalidallegada, "tipoestacion" => $obj->tipoestacion, "distanciarecorrida" => $obj->distanciarecorrida, "fk_user_create" => $obj->fk_user_create, "date_create" => $obj->date_create, "fk_user_update" => $obj->fk_user_update, "date_update" => $obj->date_update, // "label_view" => $this->getLabelUbicacionCP($obj->rowid) ); $i++; } $this->info_cp["ubicacion"] = $ubicacion; } } public function fetchUbicacionesCP($facid){ global $conf; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $sql .= " AND entity = ".$conf->entity; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $ubicaciones = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $ubicaciones[] = array( "rowid" => $obj->rowid, "facid" => $obj->facid, "tipoubicacion" => $obj->tipoubicacion, "idubicacion" => $obj->idubicacion, "rfcremitentedestinatario" => $obj->rfcremitentedestinatario, "nombreremitentedestinatario" => $obj->nombreremitentedestinatario, "numregidtrib" => $obj->numregidtrib, "residenciafiscal" => $obj->residenciafiscal, "numestacion" => $obj->numestacion, "nombreestacion" => $obj->nombreestacion, "navegaciontrafico" => $obj->navegaciontrafico, "fechasalidallegada" => $obj->fechasalidallegada, "horasalidallegada" => $obj->horasalidallegada, "tipoestacion" => $obj->tipoestacion, "distanciarecorrida" => $obj->distanciarecorrida, "fk_user_create" => $obj->fk_user_create, "date_create" => $obj->date_create, "fk_user_update" => $obj->fk_user_update, "date_update" => $obj->date_update, "label_view" => $this->getLabelUbicacionCP($obj->rowid), "num_domicilio" => $this->fetchDomicilioUbicacionCP($obj->rowid) ); $i++; } $this->info_cp["ubicaciones"] = $ubicaciones; } } public function updateUbicacionCP(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion"; $sql .= " SET"; $sql .= " tipoubicacion = '".$this->info_cp["ubicacion"]["tipoubicacion"]."',"; $sql .= " idubicacion = '".$this->info_cp["ubicacion"]["idubicacion"]."',"; $sql .= " rfcremitentedestinatario = '".$this->info_cp["ubicacion"]["rfcremitentedestinatario"]."',"; $sql .= " nombreremitentedestinatario = '".$this->info_cp["ubicacion"]["nombreremitentedestinatario"]."',"; $sql .= " numregidtrib = '".$this->info_cp["ubicacion"]["numregidtrib"]."',"; $sql .= " residenciafiscal = '".$this->info_cp["ubicacion"]["residenciafiscal"]."',"; $sql .= " numestacion = '".$this->info_cp["ubicacion"]["numestacion"]."',"; $sql .= " nombreestacion = '".$this->info_cp["ubicacion"]["nombreestacion"]."',"; $sql .= " navegaciontrafico = '".$this->info_cp["ubicacion"]["navegaciontrafico"]."',"; $sql .= " fechasalidallegada = '".$this->info_cp["ubicacion"]["fechasalidallegada"]."',"; $sql .= " horasalidallegada = '".$this->info_cp["ubicacion"]["horasalidallegada"]."',"; $sql .= " tipoestacion = '".$this->info_cp["ubicacion"]["tipoestacion"]."',"; $sql .= " distanciarecorrida = '".$this->info_cp["ubicacion"]["distanciarecorrida"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["ubicacion"]["rowid_ubicacion"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la información de la Ubicación"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteUbicacionCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["ubicacion"]["rowid_ubicacion"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la ubicación"; $this->errors[] = $sql; $error = -1; } $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion_domicilio"; $sql .= " WHERE"; $sql .= " fk_ubicacion = ".$this->info_cp["ubicacion"]["rowid_ubicacion"]; $resql = $this->db->query($sql); return $error; } public function getLabelUbicacionCP($id){ $label = ""; $this->info_cp["ubicacion"] = null; $this->fetchUbicacionCP($id); $lista_tipoubicacion = $this->getValInit(4); $lista_residencia_fiscal = $this->getCatalogo(2005); $lista_numestacion = $this->getCatalogo(2006, $this->info_cp["viaentradasalida"]); $lista_navegaciontrafico = $this->getValInit(3); $lista_tipoestacion = $this->getCatalogo(2007); $label .= "".$lista_tipoubicacion[$this->info_cp["ubicacion"]["tipoubicacion"]]."
"; $label .= "".$this->info_cp["ubicacion"]["idubicacion"]."
"; $label .= "".$this->info_cp["ubicacion"]["rfcremitentedestinatario"]."
"; $label .= "".$this->info_cp["ubicacion"]["nombreremitentedestinatario"]."
"; $label .= "".$this->info_cp["ubicacion"]["numregidtrib"]."
"; $label .= "".$lista_residencia_fiscal[$this->info_cp["ubicacion"]["residenciafiscal"]]."
"; $label .= "".$lista_numestacion[$this->info_cp["ubicacion"]["numestacion"]]."
"; $label .= "".$this->info_cp["ubicacion"]["nombreestacion"]."
"; $label .= "".$lista_navegaciontrafico[$this->info_cp["ubicacion"]["navegaciontrafico"]]."
"; $label .= "".$this->info_cp["ubicacion"]["fechasalidallegada"]."
"; $label .= "".$this->info_cp["ubicacion"]["horasalidallegada"]."
"; $label .= "".$lista_tipoestacion[$this->info_cp["ubicacion"]["tipoestacion"]]."
"; $label .= "".$this->info_cp["ubicacion"]["distanciarecorrida"]; return $label; } public function createDomicilioUbicacionCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion_domicilio"; $sql .= "(entity, facid, fk_ubicacion, calle, numeroexterior, numerointerior, colonia, localidad, referencia, municipio, estado, pais, codigopostal,"; $sql .= " fk_user_create, date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["domicilioubi"]["facid"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["rowid_ubicacion"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["calle"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["numeroexterior"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["numerointerior"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["colonia"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["localidad"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["referencia"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["municipio"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["estado"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["pais"]."',"; $sql .= "'".$this->info_cp["domicilioubi"]["codigopostal"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar el Domicilio a la Ubicación"; $this->errors[] = $sql; $error = -1; } return $error; } // validateDomicilioUbicacionCP public function updateDomicilioUbicacionCP(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion_domicilio"; $sql .= " SET"; $sql .= " calle = '".$this->info_cp["domicilioubi"]["calle"]."',"; $sql .= " numeroexterior = '".$this->info_cp["domicilioubi"]["numeroexterior"]."',"; $sql .= " numerointerior = '".$this->info_cp["domicilioubi"]["numerointerior"]."',"; $sql .= " colonia = '".$this->info_cp["domicilioubi"]["colonia"]."',"; $sql .= " localidad = '".$this->info_cp["domicilioubi"]["localidad"]."',"; $sql .= " referencia = '".$this->info_cp["domicilioubi"]["referencia"]."',"; $sql .= " municipio = '".$this->info_cp["domicilioubi"]["municipio"]."',"; $sql .= " estado = '".$this->info_cp["domicilioubi"]["estado"]."',"; $sql .= " pais = '".$this->info_cp["domicilioubi"]["pais"]."',"; $sql .= " codigopostal = '".$this->info_cp["domicilioubi"]["codigopostal"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["domicilioubi"]["rowid_domicilio_ubi"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la información del Domicilio"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteDomicilioUbicacionCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion_domicilio"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["domicilioubi"]["rowid_domicilio_ubi"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar el Domicilio"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchDomicilioUbicacionCP($fk_ubicacion = 0, $id = 0, $facid = 0){ $num = 0; $condiciones = array(); $this->info_cp["domicilioubi"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion_domicilio"; if($id > 0){ $condiciones[] = " rowid = ".$id; } if($fk_ubicacion > 0){ $condiciones[] = " fk_ubicacion = ".$fk_ubicacion; } if($facid > 0){ $condiciones[] = " facid = ".$facid; } if(is_array($condiciones) && count($condiciones) > 0){ $sql .= " WHERE"; $sql .= implode("AND", $condiciones); // print $sql; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["domicilioubi"]["facid"] = $obj->facid; $this->info_cp["domicilioubi"]["rowid_ubicacion"] = $obj->fk_ubicacion; $this->info_cp["domicilioubi"]["rowid_domicilio_ubi"] = $obj->rowid; $this->info_cp["domicilioubi"]["calle"] = $obj->calle; $this->info_cp["domicilioubi"]["numeroexterior"] = $obj->numeroexterior; $this->info_cp["domicilioubi"]["numerointerior"] = $obj->numerointerior; $this->info_cp["domicilioubi"]["colonia"] = $obj->colonia; $this->info_cp["domicilioubi"]["localidad"] = $obj->localidad; $this->info_cp["domicilioubi"]["referencia"] = $obj->referencia; $this->info_cp["domicilioubi"]["municipio"] = $obj->municipio; $this->info_cp["domicilioubi"]["estado"] = $obj->estado; $this->info_cp["domicilioubi"]["pais"] = $obj->pais; $this->info_cp["domicilioubi"]["codigopostal"] = $obj->codigopostal; $i++; } } } return $num; } public function fetchDomiciliosUbicacionesCP($facid){ global $conf; $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_ubicacion_domicilio"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $sql .= " ORDER BY fk_ubicacion ASC"; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $ubicaciones_domicilios = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); // print '
'; print_r($obj); print '
'; // $ubicaciones_domicilios[] = $obj; $ubicaciones_domicilios[] = array( "facid" => $obj->facid, "rowid_ubicacion" => $obj->fk_ubicacion, "rowid_domicilio_ubi" => $obj->rowid, "calle" => $obj->calle, "numeroexterior" => $obj->numeroexterior, "numerointerior" => $obj->numerointerior, "colonia" => $obj->colonia, "localidad" => $obj->localidad, "referencia" => $obj->referencia, "municipio" => $obj->municipio, "estado" => $obj->estado, "pais" => $obj->pais, "codigopostal" => $obj->codigopostal, "label_view" => $this->getLabelDomicilioUbicacionCP($obj->fk_ubicacion) ); $i++; } $this->info_cp["ubicaciones_domicilios"] = $ubicaciones_domicilios; } return $num; } public function getLabelDomicilioUbicacionCP($fk_ubicacion){ $label = ""; $this->info_cp["domicilioubi"] = null; $this->fetchDomicilioUbicacionCP($fk_ubicacion); $lista_pais = $this->getCatalogo(2002); $label .= "".$this->info_cp["domicilioubi"]["calle"]."
"; $label .= "".$this->info_cp["domicilioubi"]["numeroexterior"]."
"; $label .= "".$this->info_cp["domicilioubi"]["numerointerior"]."
"; $label .= "".$this->info_cp["domicilioubi"]["colonia"]."
"; $label .= "".$this->info_cp["domicilioubi"]["localidad"]."
"; $label .= "".$this->info_cp["domicilioubi"]["referencia"]."
"; $label .= "".$this->info_cp["domicilioubi"]["municipio"]."
"; $label .= "".$this->info_cp["domicilioubi"]["estado"]."
"; $label .= "".$lista_pais[$this->info_cp["domicilioubi"]["pais"]]."
"; $label .= "".$this->info_cp["domicilioubi"]["codigopostal"]; return $label; } public function createMercanciasCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancias"; $sql .= " (entity,facid,pesobrutototal,unidadpeso,pesonetototal,numtotalmercancias,cargoportasacion,logisticainversarecolcciondevolucion,"; $sql .= " fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["mercancias"]["facid"]."',"; $sql .= "'".$this->info_cp["mercancias"]["pesobrutototal"]."',"; $sql .= "'".$this->info_cp["mercancias"]["unidadpeso"]."',"; $sql .= "'".$this->info_cp["mercancias"]["pesonetototal"]."',"; $sql .= "'".$this->info_cp["mercancias"]["numtotalmercancias"]."',"; $sql .= "'".$this->info_cp["mercancias"]["cargoportasacion"]."',"; $sql .= "'".$this->info_cp["mercancias"]["logisticainversarecolcciondevolucion"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información General de las Mercancias"; $this->errors[] = $sql; $error = -1; } // Crear metodo para PesoNetoTotal // Atributo condicional para registrar la suma de los valores indicados en el atributo “PesoNeto” del nodo “DetalleMercancia”. // NumTotalMercancias // Atributo requerido para registrar el número total de los bienes y/o mercancías que se trasladan en los distintos medios de transporte, identificándose por cada nodo "Mercancia" registrado en el complemento. return $error; } // validateMercanciasCP public function fetchMercanciasCP($facid){ $this->info_cp["mercancias"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancias"; $sql .= " WHERE"; $sql .= " facid = ".$facid; // print $sql; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); while($i < $num){ $obj = $this->db->fetch_object($resql); $this->info_cp["mercancias"]["rowid"] = $obj->rowid; $this->info_cp["mercancias"]["pesobrutototal"] = $obj->pesobrutototal; $this->info_cp["mercancias"]["unidadpeso"] = $obj->unidadpeso; $this->info_cp["mercancias"]["pesonetototal"] = $obj->pesonetototal; $this->info_cp["mercancias"]["numtotalmercancias"] = $obj->numtotalmercancias; $this->info_cp["mercancias"]["cargoportasacion"] = $obj->cargoportasacion; $this->info_cp["mercancias"]["logisticainversarecolcciondevolucion"] = $obj->logisticainversarecolcciondevolucion; $i++; } } } public function updateMercanciasCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancias"; $sql .= " SET"; $sql .= " pesobrutototal = '".$this->info_cp["mercancias"]["pesobrutototal"]."',"; $sql .= " unidadpeso = '".$this->info_cp["mercancias"]["unidadpeso"]."',"; $sql .= " pesonetototal = '".$this->info_cp["mercancias"]["pesonetototal"]."',"; $sql .= " numtotalmercancias = '".$this->info_cp["mercancias"]["numtotalmercancias"]."',"; $sql .= " cargoportasacion = '".$this->info_cp["mercancias"]["cargoportasacion"]."',"; $sql .= " logisticainversarecolcciondevolucion = '".$this->info_cp["mercancias"]["logisticainversarecolcciondevolucion"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancias"]["rowid_mercancias"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualziar la Información General de las Mercancias"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteMercanciasCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancias"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancias"]["rowid_mercancias"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información General de las Mercancias"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelMercanciasCP($facid){ $label = ""; $this->info_cp["mercancias"] = null; $this->fetchMercanciasCP($facid); $lista_unidad_pesos = $this->getCatalogo(2008); $lista_logistica = $this->getValInit(6); $label .= "".$this->info_cp["mercancias"]["pesobrutototal"]."
"; $label .= "".$lista_unidad_pesos[$this->info_cp["mercancias"]["unidadpeso"]]."
"; $label .= "".$this->info_cp["mercancias"]["pesonetototal"]."
"; $label .= "".$this->info_cp["mercancias"]["numtotalmercancias"]."
"; $label .= "".$this->info_cp["mercancias"]["cargoportasacion"]."
"; $label .= "".$lista_logistica[$this->info_cp["mercancias"]["logisticainversarecolcciondevolucion"]]; return $label; } public function productsSelCP($facid){ $ids_lines = array(); $sql = "SELECT fk_line_facture FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); if(!in_array($obj->fk_line_facture, $ids_lines)){ $ids_lines[] = $obj->fk_line_facture; } $i++; } } return $ids_lines; } public function getProductosMercancias($facid){ global $conf; $productos = array(); $sql = "SELECT rowid FROM ".MAIN_DB_PREFIX."product"; $sql .= " WHERE"; $sql .= " entity = ".$conf->entity; $sql .= " AND fk_product_type = 0"; // print $sql; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $product = new Product($this->db); $product->fetch($obj->rowid); $icono = img_picto('', 'product'); // $label = $product->ref." - ".$product->label; $label = $product->ref; $id = $obj->rowid; $productos[$id] = $icono." ".$label; $i++; } } return $productos; } public function getProductos($facid, $proceso = 0){ $this->info_cp["productos"] = null; $lines_facture = $this->productsSelCP($facid); // print '
';
			// 	print_r($lines_facture);
			// print '
'; $facture = new Facture($this->db); $facture->fetch($facid); if(count($facture->lines) > 0){ $productos = array(); foreach ($facture->lines as $key => $value) { $line_id = $value->id; $product_id = 0; $label = $value->desc; $icono = img_picto('', 'bill'); if($proceso == 1){ if(!in_array($line_id, $lines_facture)){ if(!is_null($value->fk_product) && $value->fk_product > 0){ $product_id = $value->fk_product; $product = new Product($this->db); $product->fetch($value->fk_product); $icono = img_picto('', 'product'); $label = $product->ref." - ".$product->label; } if(strlen($label) > 70){ $label = dol_substr($label, 0, 70); } $id = $value->id; $productos[$id] = $icono." - ".$label; } }else{ if($this->info_cp["mercancia"]["producto"] == $value->id){ if(!is_null($value->fk_product) && $value->fk_product > 0){ $product_id = $value->fk_product; $product = new Product($this->db); $product->fetch($value->fk_product); $icono = img_picto('', 'product'); $label = $product->ref." - ".$product->label; } if(strlen($label) > 70){ $label = dol_substr($label, 0, 70); } $id = $value->id; $productos[$id] = $icono." - ".$label; break; } } } $this->info_cp["productos"] = $productos; } return $productos; } public function getInfoProducto($facid, $line_id){ $label_producto = ""; $informacion = array(); $facture = new Facture($this->db); $facture->fetch($facid); if(count($facture->lines) > 0){ foreach ($facture->lines as $key => $value) { if($value->id == $line_id){ $fk_product = 0; $descripcion = $value->desc; $clave_unidad = $value->array_options["options_umed"]; if(!is_null($value->fk_product) && $value->fk_product > 0){ $fk_product = $value->fk_product; $product = new Product($this->db); $product->fetch($value->fk_product); $descripcion = $product->ref." - ".$product->label; $clave_unidad = $product->array_options["options_umed"]; } $informacion = array( "fk_product" => $fk_product, "id_line" => $line_id, "descripcion" => $descripcion, "cantidad" => $value->qty, "claveunidad" => $clave_unidad ); break; } } } return $informacion; } public function autoInfoMercanciaCP($info_mercancia){ if(trim($this->info_cp["mercancia"]["descripcion"]) == ""){ $this->info_cp["mercancia"]["descripcion"] = $info_mercancia["descripcion"]; } if(trim($this->info_cp["mercancia"]["cantidad"]) == "" || $this->info_cp["mercancia"]["cantidad"] != $info_mercancia["cantidad"]){ $this->info_cp["mercancia"]["cantidad"] = $info_mercancia["cantidad"]; } if(trim($this->info_cp["mercancia"]["claveunidad"]) == -1){ $this->info_cp["mercancia"]["claveunidad"] = $info_mercancia["claveunidad"]; } } public function createMercanciaCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia"; $sql .= " (entity, facid, fk_product, fk_line_facture, bienestransp, clavestcc, descripcion, cantidad, claveunidad, unidad, dimensiones, materialpeligroso,"; $sql .= " cvematerialpeligroso, embalaje, descripembalaje, sectorcofepris, nombreingredienteactivo, nomquimico, denominaciongenericaprod,"; $sql .= " denominaciondistintivaprod, fabricante, fechacaducidad, lotemedicamento, formafarmaceutica, condicionesesptransp,registrosanitariofolioautorizacion,"; $sql .= " permisoimportacion, folioimpovucem, numcas, razonsocialempimp, numregsanplagcofepris, datosfabricante, datosformulador, datosmaquilador,"; $sql .= " usoautorizado, pesoenkg, valormercancia, moneda, fraccionarancelaria, uuidcomercioext, tipomateria, descripcionmateria, fk_user_create, date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["mercancia"]["facid"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_product"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_line_facture"]."',"; $sql .= "'".$this->info_cp["mercancia"]["bienestransp"]."',"; $sql .= "'".$this->info_cp["mercancia"]["clavestcc"]."',"; $sql .= "'".$this->info_cp["mercancia"]["descripcion"]."',"; $sql .= "'".$this->info_cp["mercancia"]["cantidad"]."',"; $sql .= "'".$this->info_cp["mercancia"]["claveunidad"]."',"; $sql .= "'".$this->info_cp["mercancia"]["unidad"]."',"; $sql .= "'".$this->info_cp["mercancia"]["dimensiones"]."',"; $sql .= "'".$this->info_cp["mercancia"]["materialpeligroso"]."',"; $sql .= "'".$this->info_cp["mercancia"]["cvematerialpeligroso"]."',"; $sql .= "'".$this->info_cp["mercancia"]["embalaje"]."',"; $sql .= "'".$this->info_cp["mercancia"]["descripembalaje"]."',"; $sql .= "'".$this->info_cp["mercancia"]["sectorcofepris"]."',"; $sql .= "'".$this->info_cp["mercancia"]["nombreingredienteactivo]"]."',"; $sql .= "'".$this->info_cp["mercancia"]["nomquimico"]."',"; $sql .= "'".$this->info_cp["mercancia"]["denominaciongenericaprod"]."',"; $sql .= "'".$this->info_cp["mercancia"]["denominaciondistintivaprod"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fabricante"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fechacaducidad"]."',"; $sql .= "'".$this->info_cp["mercancia"]["lotemedicamento"]."',"; $sql .= "'".$this->info_cp["mercancia"]["formafarmaceutica"]."',"; $sql .= "'".$this->info_cp["mercancia"]["condicionesesptransp"]."',"; $sql .= "'".$this->info_cp["mercancia"]["registrosanitariofolioautorizacion"]."',"; $sql .= "'".$this->info_cp["mercancia"]["permisoimportacion"]."',"; $sql .= "'".$this->info_cp["mercancia"]["folioimpovucem"]."',"; $sql .= "'".$this->info_cp["mercancia"]["numcas"]."',"; $sql .= "'".$this->info_cp["mercancia"]["razonsocialempimp"]."',"; $sql .= "'".$this->info_cp["mercancia"]["numregsanplagcofepris"]."',"; $sql .= "'".$this->info_cp["mercancia"]["datosfabricante"]."',"; $sql .= "'".$this->info_cp["mercancia"]["datosformulador"]."',"; $sql .= "'".$this->info_cp["mercancia"]["datosmaquilador"]."',"; $sql .= "'".$this->info_cp["mercancia"]["usoautorizado"]."',"; $sql .= "'".$this->info_cp["mercancia"]["pesoenkg"]."',"; $sql .= "'".$this->info_cp["mercancia"]["valormercancia"]."',"; $sql .= "'".$this->info_cp["mercancia"]["moneda"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fraccionarancelaria"]."',"; $sql .= "'".$this->info_cp["mercancia"]["uuidcomercioext"]."',"; $sql .= "'".$this->info_cp["mercancia"]["tipomateria"]."',"; $sql .= "'".$this->info_cp["mercancia"]["descripcionmateria"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información de la Mercancia."; $this->errors[] = $sql; $error = -1; } return $error; } // validateMercanciaCP public function fetchMercanciaCP($id){ $this->info_cp["mercancia"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $info_detail = $this->getInfoProducto($obj->facid, $obj->fk_line_facture); $label_producto = $info_detail["descripcion"]; // if($obj->fk_product > 0){ // $product_static = new Product($this->db); // $product_static->fetch($obj->fk_product); // $label_producto = $product_static->getNomUrl(1); // } $mercancia = array( "rowid_mercancia" => $obj->rowid, "fk_product" => $obj->fk_product, "fk_line_facture" => $obj->fk_line_facture, "producto" => $obj->fk_line_facture, "info_detail" => $label_producto, "bienestransp" => $obj->bienestransp, "clavestcc" => $obj->clavestcc, "descripcion" => dol_substr($obj->descripcion, 0, 40)."...", "descripcion_origen" => $obj->descripcion, "cantidad" => $obj->cantidad, "claveunidad" => $obj->claveunidad, "unidad" => $obj->unidad, "dimensiones" => $obj->dimensiones, "materialpeligroso" => $obj->materialpeligroso, "cvematerialpeligroso" => $obj->cvematerialpeligroso, "embalaje" => $obj->embalaje, "descripembalaje" => $obj->descripembalaje, "sectorcofepris" => $obj->sectorcofepris, "nombreingredienteactivo" => $obj->nombreingredienteactivo, "nomquimico" => $obj->nomquimico, "denominaciongenericaprod" => $obj->denominaciongenericaprod, "denominaciondistintivaprod" => $obj->denominaciondistintivaprod, "fabricante" => $obj->fabricante, "fechacaducidad" => $obj->fechacaducidad, "lotemedicamento" => $obj->lotemedicamento, "formafarmaceutica" => $obj->formafarmaceutica, "condicionesesptransp" => $obj->condicionesesptransp, "registrosanitariofolioautorizacion" => $obj->registrosanitariofolioautorizacion, "permisoimportacion" => $obj->permisoimportacion, "folioimpovucem" => $obj->folioimpovucem, "numcas" => $obj->numcas, "razonsocialempimp" => $obj->razonsocialempimp, "numregsanplagcofepris" => $obj->numregsanplagcofepris, "datosfabricante" => $obj->datosfabricante, "datosformulador" => $obj->datosformulador, "datosmaquilador" => $obj->datosmaquilador, "usoautorizado" => $obj->usoautorizado, "pesoenkg" => $obj->pesoenkg, "valormercancia" => $obj->valormercancia, "moneda" => $obj->moneda, "fraccionarancelaria" => $obj->fraccionarancelaria, "uuidcomercioext" => $obj->uuidcomercioext, "tipomateria" => $obj->tipomateria, "descripcionmateria" => $obj->descripcionmateria ); $i++; } $this->info_cp["mercancia"] = $mercancia; } } public function fetchMercanciaListCP($facid){ $num = 0; $this->info_cp["mercancia"]["mercancias"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $mercancias = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $mercancias[] = array( "rowid_mercancia" => $obj->rowid, "fk_product" => $obj->fk_product, "fk_line_facture" => $obj->fk_line_facture, "bienestransp" => $obj->bienestransp, "clavestcc" => $obj->clavestcc, "descripcion" => dol_substr($obj->descripcion, 0, 40)."...", "descripcion_origen" => $obj->descripcion, "cantidad" => $obj->cantidad, "claveunidad" => $obj->claveunidad, "unidad" => $obj->unidad, "dimensiones" => $obj->dimensiones, "materialpeligroso" => $obj->materialpeligroso, "cvematerialpeligroso" => $obj->cvematerialpeligroso, "embalaje" => $obj->embalaje, "descripembalaje" => $obj->descripembalaje, "sectorcofepris" => $obj->sectorcofepris, "nombreingredienteactivo" => $obj->nombreingredienteactivo, "nomquimico" => $obj->nomquimico, "denominaciongenericaprod" => $obj->denominaciongenericaprod, "denominaciondistintivaprod" => $obj->denominaciondistintivaprod, "fabricante" => $obj->fabricante, "fechacaducidad" => $obj->fechacaducidad, "lotemedicamento" => $obj->lotemedicamento, "formafarmaceutica" => $obj->formafarmaceutica, "condicionesesptransp" => $obj->condicionesesptransp, "registrosanitariofolioautorizacion" => $obj->registrosanitariofolioautorizacion, "permisoimportacion" => $obj->permisoimportacion, "folioimpovucem" => $obj->folioimpovucem, "numcas" => $obj->numcas, "razonsocialempimp" => $obj->razonsocialempimp, "numregsanplagcofepris" => $obj->numregsanplagcofepris, "datosfabricante" => $obj->datosfabricante, "datosformulador" => $obj->datosformulador, "datosmaquilador" => $obj->datosmaquilador, "usoautorizado" => $obj->usoautorizado, "pesoenkg" => $obj->pesoenkg, "valormercancia" => $obj->valormercancia, "moneda" => $obj->moneda, "fraccionarancelaria" => $obj->fraccionarancelaria, "uuidcomercioext" => $obj->uuidcomercioext, "tipomateria" => $obj->tipomateria, "descripcionmateria" => $obj->descripcionmateria, "num_documentacion_aduanera" => $this->fetchMercanciaDocumentacionAduaneraCP($obj->rowid), "num_guias_identificacion" => $this->fetchMercanciaGuiasIdentificacion($obj->rowid), "num_cantidad_transporta" => $this->fetchMercanciaCantidadTransportaCP($obj->rowid), "num_detalle_mercancia" => $this->fetchMercanciaDetalleMercanciaCP($obj->rowid) ); $i++; } $this->info_cp["mercancia"]["mercancias"] = $mercancias; } return $num; } public function updateMercanciaCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia"; $sql .= " SET"; $sql .= " bienestransp = '".$this->info_cp["mercancia"]["bienestransp"]."',"; $sql .= " clavestcc = '".$this->info_cp["mercancia"]["clavestcc"]."',"; $sql .= " descripcion = '".$this->info_cp["mercancia"]["descripcion"]."',"; $sql .= " cantidad = '".$this->info_cp["mercancia"]["cantidad"]."',"; $sql .= " claveunidad = '".$this->info_cp["mercancia"]["claveunidad"]."',"; $sql .= " unidad = '".$this->info_cp["mercancia"]["unidad"]."',"; $sql .= " dimensiones = '".$this->info_cp["mercancia"]["dimensiones"]."',"; $sql .= " materialpeligroso = '".$this->info_cp["mercancia"]["materialpeligroso"]."',"; $sql .= " cvematerialpeligroso = '".$this->info_cp["mercancia"]["cvematerialpeligroso"]."',"; $sql .= " embalaje = '".$this->info_cp["mercancia"]["embalaje"]."',"; $sql .= " descripembalaje = '".$this->info_cp["mercancia"]["descripembalaje"]."',"; $sql .= " sectorcofepris = '".$this->info_cp["mercancia"]["sectorcofepris"]."',"; $sql .= " nombreingredienteactivo = '".$this->info_cp["mercancia"]["nombreingredienteactivo]"]."',"; $sql .= " nomquimico = '".$this->info_cp["mercancia"]["nomquimico"]."',"; $sql .= " denominaciongenericaprod = '".$this->info_cp["mercancia"]["denominaciongenericaprod"]."',"; $sql .= " denominaciondistintivaprod = '".$this->info_cp["mercancia"]["denominaciondistintivaprod"]."',"; $sql .= " fabricante = '".$this->info_cp["mercancia"]["fabricante"]."',"; $sql .= " fechacaducidad = '".$this->info_cp["mercancia"]["fechacaducidad"]."',"; $sql .= " lotemedicamento = '".$this->info_cp["mercancia"]["lotemedicamento"]."',"; $sql .= " formafarmaceutica = '".$this->info_cp["mercancia"]["formafarmaceutica"]."',"; $sql .= " condicionesesptransp = '".$this->info_cp["mercancia"]["condicionesesptransp"]."',"; $sql .= " registrosanitariofolioautorizacion = '".$this->info_cp["mercancia"]["registrosanitariofolioautorizacion"]."',"; $sql .= " permisoimportacion = '".$this->info_cp["mercancia"]["permisoimportacion"]."',"; $sql .= " folioimpovucem = '".$this->info_cp["mercancia"]["folioimpovucem"]."',"; $sql .= " numcas = '".$this->info_cp["mercancia"]["numcas"]."',"; $sql .= " razonsocialempimp = '".$this->info_cp["mercancia"]["razonsocialempimp"]."',"; $sql .= " numregsanplagcofepris = '".$this->info_cp["mercancia"]["numregsanplagcofepris"]."',"; $sql .= " datosfabricante = '".$this->info_cp["mercancia"]["datosfabricante"]."',"; $sql .= " datosformulador = '".$this->info_cp["mercancia"]["datosformulador"]."',"; $sql .= " datosmaquilador = '".$this->info_cp["mercancia"]["datosmaquilador"]."',"; $sql .= " usoautorizado = '".$this->info_cp["mercancia"]["usoautorizado"]."',"; $sql .= " pesoenkg = '".$this->info_cp["mercancia"]["pesoenkg"]."',"; $sql .= " valormercancia = '".$this->info_cp["mercancia"]["valormercancia"]."',"; $sql .= " moneda = '".$this->info_cp["mercancia"]["moneda"]."',"; $sql .= " fraccionarancelaria = '".$this->info_cp["mercancia"]["fraccionarancelaria"]."',"; $sql .= " uuidcomercioext = '".$this->info_cp["mercancia"]["uuidcomercioext"]."',"; $sql .= " tipomateria = '".$this->info_cp["mercancia"]["tipomateria"]."',"; $sql .= " descripcionmateria = '".$this->info_cp["mercancia"]["descripcionmateria"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_mercancia"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información de la Mercancia."; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteMercanciaCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_mercancia"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información de la Mercancia"; $this->errors[] = $sql; $error = -1; } $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_documentacionaduanera"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$this->info_cp["mercancia"]["rowid_mercancia"]; $resql = $this->db->query($sql); $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_guiasidentificacion"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$this->info_cp["mercancia"]["rowid_mercancia"]; $resql = $this->db->query($sql); $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_cantidadtransporta"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$this->info_cp["mercancia"]["rowid_mercancia"]; $resql = $this->db->query($sql); $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_detallemercancia"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$this->info_cp["mercancia"]["rowid_mercancia"]; $resql = $this->db->query($sql); return $error; } public function getLabelMercanciaCP($id, $tipo_operacion = 0){ $label = ""; $this->fetchMercanciaCP($id); $lista_bienetransp = $this->getCatalogo(2009); $lista_claveunidad = $this->getCatalogo(2010); $lista_materialpeligroso = $this->getValInit(7); $lista_clavematerialpeligroso = $this->getCatalogo(2011); $lista_tipoembalaje = $this->getCatalogo(2012); $lista_sectorcofepris = $this->getCatalogo(2013); $lista_formafarmaceutica = $this->getCatalogo(2014); $lista_condicionesesptransp = $this->getCatalogo(2015); $lista_moneda = $this->getCatalogo(2016); $lista_f_arancelaria = $this->getCatalogo(2017); $lista_tipomateria = $this->getCatalogo(2018); $label .= ''.$this->info_cp["mercancia"]["info_detail"].'
'; $label .= ''.$lista_bienetransp[$this->info_cp["mercancia"]["bienestransp"]].'
'; $label .= ''.$this->info_cp["mercancia"]["clavestcc"].'
'; $label .= ''.$this->info_cp["mercancia"]["descripcion_origen"].'
'; $label .= ''.$this->info_cp["mercancia"]["cantidad"].'
'; $label .= ''.$lista_claveunidad[$this->info_cp["mercancia"]["claveunidad"]].'
'; $label .= ''.$this->info_cp["mercancia"]["unidad"].'
'; $label .= ''.$this->info_cp["mercancia"]["dimensiones"].'
'; $label .= ''.$lista_materialpeligroso[$this->info_cp["mercancia"]["materialpeligroso"]].'
'; $label .= ''.$lista_clavematerialpeligroso[$this->info_cp["mercancia"]["cvematerialpeligroso"]].'
'; $label .= ''.$lista_tipoembalaje[$this->info_cp["mercancia"]["embalaje"]].'
'; $label .= ''.$this->info_cp["mercancia"]["descripembalaje"].'
'; $label .= ''.$lista_sectorcofepris[$this->info_cp["mercancia"]["sectorcofepris"]].'
'; $label .= ''.$this->info_cp["mercancia"]["nombreingredienteactivo]"].'
'; $label .= ''.$this->info_cp["mercancia"]["nomquimico"].'
'; $label .= ''.$this->info_cp["mercancia"]["denominaciongenericaprod"].'
'; $label .= ''.$this->info_cp["mercancia"]["denominaciondistintivaprod"].'
'; $label .= ''.$this->info_cp["mercancia"]["fabricante"].'
'; $label .= ''.$this->info_cp["mercancia"]["fechacaducidad"].'
'; $label .= ''.$this->info_cp["mercancia"]["lotemedicamento"].'
'; $label .= ''.$lista_formafarmaceutica[$this->info_cp["mercancia"]["formafarmaceutica"]].'
'; $label .= ''.$lista_condicionesesptransp[$this->info_cp["mercancia"]["condicionesesptransp"]].'
'; $label .= ''.$this->info_cp["mercancia"]["registrosanitariofolioautorizacion"].'
'; $label .= ''.$this->info_cp["mercancia"]["permisoimportacion"].'
'; $label .= ''.$this->info_cp["mercancia"]["folioimpovucem"].'
'; $label .= ''.$this->info_cp["mercancia"]["numcas"].'
'; $label .= ''.$this->info_cp["mercancia"]["razonsocialempimp"].'
'; $label .= ''.$this->info_cp["mercancia"]["numregsanplagcofepris"].'
'; $label .= ''.$this->info_cp["mercancia"]["datosfabricante"].'
'; $label .= ''.$this->info_cp["mercancia"]["datosformulador"].'
'; $label .= ''.$this->info_cp["mercancia"]["datosmaquilador"].'
'; $label .= ''.$this->info_cp["mercancia"]["usoautorizado"].'
'; $label .= ''.$this->info_cp["mercancia"]["pesoenkg"].'
'; $label .= ''.$this->info_cp["mercancia"]["valormercancia"].'
'; $label .= ''.$lista_moneda[$this->info_cp["mercancia"]["moneda"]].'
'; $label .= ''.$lista_f_arancelaria[$this->info_cp["mercancia"]["fraccionarancelaria"]].'
'; $label .= ''.$this->info_cp["mercancia"]["uuidcomercioext"].'
'; $label .= ''.$lista_tipomateria[$this->info_cp["mercancia"]["tipomateria"]].'
'; $label .= ''.$this->info_cp["mercancia"]["descripcionmateria"]; return $label; } public function createMercanciaDocumentacionAduaneraCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_documentacionaduanera"; $sql .= " (entity,fk_mercancia,facid,fk_product,fk_line_facture,tipodocumento,numpedimento,identdocaduanero,rfcimpo,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["mercancia"]["rowid_mercancia"]."',"; $sql .= "'".$this->info_cp["mercancia"]["facid"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_product"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_line_facture"]."',"; // $sql .= "'".$this->info_cp["mercancia"]["rowid_documentacionaduanera"]."',"; $sql .= "'".$this->info_cp["mercancia"]["tipodocumento"]."',"; $sql .= "'".$this->info_cp["mercancia"]["numpedimento"]."',"; $sql .= "'".$this->info_cp["mercancia"]["identdocaduanero"]."',"; $sql .= "'".$this->info_cp["mercancia"]["rfcimpo"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información Aduanera"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchDocumentacionAduaneraCP($id){ $num = 0; // $this->info_cp["mercancia"]["documentaciones_aduanera"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_documentacionaduanera"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; // $documentacion_aduanera = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $documentacion_aduanera = array( "rowid_documentacionaduanera" => $obj->rowid, "tipodocumento" => $obj->tipodocumento, "numpedimento" => $obj->numpedimento, "identdocaduanero" => $obj->identdocaduanero, "rfcimpo" => $obj->rfcimpo ); $i++; } $this->info_cp["mercancia"] = $documentacion_aduanera; } return $num; } public function fetchMercanciaDocumentacionAduaneraCP($fk_mercancia){ $num = 0; $this->info_cp["mercancia"]["documentaciones_aduanera"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_documentacionaduanera"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$fk_mercancia; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $documentacion_aduanera = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $documentacion_aduanera[] = array( "rowid_documentacionaduanera" => $obj->rowid, "tipodocumento" => $obj->tipodocumento, "numpedimento" => $obj->numpedimento, "identdocaduanero" => $obj->identdocaduanero, "rfcimpo" => $obj->rfcimpo, "label_view" => $this->getLabelDocumentacionAduanera($obj->rowid) ); $i++; } $this->info_cp["mercancia"]["documentaciones_aduanera"] = $documentacion_aduanera; } return $num; } public function updateMercanciaDocumentacionAduaneraCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_documentacionaduanera"; $sql .= " SET"; $sql .= " tipodocumento = '".$this->info_cp["mercancia"]["tipodocumento"]."',"; $sql .= " numpedimento = '".$this->info_cp["mercancia"]["numpedimento"]."',"; $sql .= " identdocaduanero = '".$this->info_cp["mercancia"]["identdocaduanero"]."',"; $sql .= " rfcimpo = '".$this->info_cp["mercancia"]["rfcimpo"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_documentacionaduanera"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información Aduanera"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteMercanciaDocumentacionAduaneraCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_documentacionaduanera"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_documentacionaduanera"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información Aduanera"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelDocumentacionAduanera($id){ $label = ""; $this->fetchDocumentacionAduaneraCP($id); $lista_tipodocumento = $this->getCatalogo(2019); $label .= ''.$lista_tipodocumento[$this->info_cp["mercancia"]["tipodocumento"]].'
'; $label .= ''.$this->info_cp["mercancia"]["numpedimento"].'
'; $label .= ''.$this->info_cp["mercancia"]["identdocaduanero"].'
'; $label .= ''.$this->info_cp["mercancia"]["rfcimpo"]; return $label; } public function createMercanciaGuiasIdentificacionCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_guiasidentificacion"; $sql .= "(entity,fk_mercancia,facid,fk_product,fk_line_facture,numeroguiaidentificacion,descripguiaidentificacion,pesoguiaidentificacion,"; $sql .= " fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["mercancia"]["rowid_mercancia"]."',"; $sql .= "'".$this->info_cp["mercancia"]["facid"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_product"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_line_facture"]."',"; $sql .= "'".$this->info_cp["mercancia"]["numeroguiaidentificacion"]."',"; $sql .= "'".$this->info_cp["mercancia"]["descripguiaidentificacion"]."',"; $sql .= "'".$this->info_cp["mercancia"]["pesoguiaidentificacion"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar Guías de Identificación"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchMercanciaGuiaIdentificacion($id){ // $num = 0; // $this->info_cp["mercancia"]["guiaidentificacion"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_guiasidentificacion"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $guia_identificacion = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $guia_identificacion = array( "rowid_guiaidentificacion" => $obj->rowid, "numeroguiaidentificacion" => $obj->numeroguiaidentificacion, "descripguiaidentificacion" => $obj->descripguiaidentificacion, "pesoguiaidentificacion" => $obj->pesoguiaidentificacion, ); $i++; } $this->info_cp["mercancia"] = $guia_identificacion; } // return $num; } public function fetchMercanciaGuiasIdentificacion($fk_mercancia){ $num = 0; $this->info_cp["mercancia"]["guiasidentificacion"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_guiasidentificacion"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$fk_mercancia; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $guias_identificacion = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $guias_identificacion[] = array( "rowid_guiaidentificacion" => $obj->rowid, "numeroguiaidentificacion" => $obj->numeroguiaidentificacion, "descripguiaidentificacion" => $obj->descripguiaidentificacion, "pesoguiaidentificacion" => $obj->pesoguiaidentificacion, "label_view" => $this->getLabelGuiaIdentificacion($obj->rowid) ); $i++; } $this->info_cp["mercancia"]["guiasidentificacion"] = $guias_identificacion; } return $num; } public function updateMercanciaGuiasIdentificacionCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_guiasidentificacion"; $sql .= " SET"; $sql .= " numeroguiaidentificacion = '".$this->info_cp["mercancia"]["numeroguiaidentificacion"]."',"; $sql .= " descripguiaidentificacion = '".$this->info_cp["mercancia"]["descripguiaidentificacion"]."',"; $sql .= " pesoguiaidentificacion = '".$this->info_cp["mercancia"]["pesoguiaidentificacion"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_guiaidentificacion"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información de Guías de Identificación"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteMercanciaGuiasIdentificacionCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_guiasidentificacion"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_guiaidentificacion"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información de Guías de Identificación"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelGuiaIdentificacion($id){ $label = ""; $this->fetchMercanciaGuiaIdentificacion($id); $label .= ''.$this->info_cp["mercancia"]["numeroguiaidentificacion"].'
'; $label .= ''.$this->info_cp["mercancia"]["descripguiaidentificacion"].'
'; $label .= ''.$this->info_cp["mercancia"]["pesoguiaidentificacion"]; return $label; } public function createMercanciaCantidadTransportaCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_cantidadtransporta"; $sql .= " (entity,fk_mercancia,facid,fk_product,fk_line_facture,cantidad,idorigen,iddestino,cvestransporte,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["mercancia"]["rowid_mercancia"]."',"; $sql .= "'".$this->info_cp["mercancia"]["facid"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_product"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_line_facture"]."',"; // $sql .= "'".$this->info_cp["mercancia"]["rowid_cantidatransporta"]."',"; $sql .= "'".$this->info_cp["mercancia"]["cantidad"]."',"; $sql .= "'".$this->info_cp["mercancia"]["idorigen"]."',"; $sql .= "'".$this->info_cp["mercancia"]["iddestino"]."',"; $sql .= "'".$this->info_cp["mercancia"]["cvestransporte"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información de Cantidad Transporta"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchCantidadTransportaCP($id){ $num = 0; // $this->info_cp["mercancia"]["cantidad_transporta"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_cantidadtransporta"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $cantidad_transporta = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $cantidad_transporta = array( "rowid_cantidatransporta" => $obj->rowid, "cantidad" => $obj->cantidad, "idorigen" => $obj->idorigen, "iddestino" => $obj->iddestino, "cvestransporte" => $obj->cvestransporte ); $i++; } $this->info_cp["mercancia"] = $cantidad_transporta; } } public function fetchMercanciaCantidadTransportaCP($fk_mercancia){ $num = 0; $this->info_cp["mercancia"]["cantidad_transporta"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_cantidadtransporta"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$fk_mercancia; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $cantidad_transporta = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $cantidad_transporta[] = array( "rowid_cantidatransporta" => $obj->rowid, "cantidad" => $obj->cantidad, "idorigen" => $obj->idorigen, "iddestino" => $obj->iddestino, "cvestransporte" => $obj->cvestransporte, "label_view" => $this->getLabelCantidadTransporta($obj->rowid) ); $i++; } $this->info_cp["mercancia"]["cantidad_transporta"] = $cantidad_transporta; } return $num; } public function updateMercanciaCantidadTransportaCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_cantidadtransporta"; $sql .= " SET"; $sql .= " cantidad = '".$this->info_cp["mercancia"]["cantidad"]."',"; $sql .= " idorigen = '".$this->info_cp["mercancia"]["idorigen"]."',"; $sql .= " iddestino = '".$this->info_cp["mercancia"]["iddestino"]."',"; $sql .= " cvestransporte = '".$this->info_cp["mercancia"]["cvestransporte"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_cantidatransporta"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información de Cantidad Transporta"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteMercanciaCantidadTransportaCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_cantidadtransporta"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_cantidatransporta"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información de Cantidad Transporta"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelCantidadTransporta($id){ $label = ""; $this->fetchCantidadTransportaCP($id); $lista_clavetansporte = $this->getCatalogo(2020); $label .= ''.$this->info_cp["mercancia"]["cantidad"].'
'; $label .= ''.$this->info_cp["mercancia"]["idorigen"].'
'; $label .= ''.$this->info_cp["mercancia"]["iddestino"].'
'; $label .= ''.$lista_clavetansporte[$this->info_cp["mercancia"]["cvestransporte"]]; return $label; } public function createMercanciaDetalleMercanciaCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_detallemercancia"; $sql .= " (entity,fk_mercancia,facid,fk_product,fk_line_facture,unidadpesomerc,pesobruto,pesoneto,pesotara,numpiezas,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["mercancia"]["rowid_mercancia"]."',"; $sql .= "'".$this->info_cp["mercancia"]["facid"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_product"]."',"; $sql .= "'".$this->info_cp["mercancia"]["fk_line_facture"]."',"; // $sql .= "'".$this->info_cp["mercancia"]["rowid_cantidatransporta"]."',"; $sql .= "'".$this->info_cp["mercancia"]["unidadpesomerc"]."',"; $sql .= "'".$this->info_cp["mercancia"]["pesobruto"]."',"; $sql .= "'".$this->info_cp["mercancia"]["pesoneto"]."',"; $sql .= "'".$this->info_cp["mercancia"]["pesotara"]."',"; $sql .= "'".$this->info_cp["mercancia"]["numpiezas"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar el Detalle Mercancia"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchMercanciaDetalleMercanciaCP($fk_mercancia){ $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_detallemercancia"; $sql .= " WHERE"; $sql .= " fk_mercancia = ".$fk_mercancia; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["mercancia"]["rowid_detallemercancia"] = $obj->rowid; $this->info_cp["mercancia"]["unidadpesomerc"] = $obj->unidadpesomerc; $this->info_cp["mercancia"]["pesobruto"] = $obj->pesobruto; $this->info_cp["mercancia"]["pesoneto"] = $obj->pesoneto; $this->info_cp["mercancia"]["pesotara"] = $obj->pesotara; $this->info_cp["mercancia"]["numpiezas"] = $obj->numpiezas; $i++; } } return $num; } public function updateMercanciaDetalleMercanciaCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_detallemercancia"; $sql .= " SET"; $sql .= " unidadpesomerc = '".$this->info_cp["mercancia"]["unidadpesomerc"]."',"; $sql .= " pesobruto = '".$this->info_cp["mercancia"]["pesobruto"]."',"; $sql .= " pesoneto = '".$this->info_cp["mercancia"]["pesoneto"]."',"; $sql .= " pesotara = '".$this->info_cp["mercancia"]["pesotara"]."',"; $sql .= " numpiezas = '".$this->info_cp["mercancia"]["numpiezas"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_detallemercancia"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar el Detalle Mercancia"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteMercanciaDetalleMercanciaCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_mercancia_detallemercancia"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["mercancia"]["rowid_detallemercancia"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información de Detalle Mercancia"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelDetalleMercanciaCP($fk_mercancia){ $label = ""; $this->fetchMercanciaDetalleMercanciaCP($fk_mercancia); $lista_unidadpeso = $this->getCatalogo(2022); $label .= ''.$lista_unidadpeso[$this->info_cp["mercancia"]["unidadpesomerc"]].'
'; $label .= ''.$this->info_cp["mercancia"]["pesobruto"].'
'; $label .= ''.$this->info_cp["mercancia"]["pesoneto"].'
'; $label .= ''.$this->info_cp["mercancia"]["pesotara"].'
'; $label .= ''.$this->info_cp["mercancia"]["numpiezas"]; return $label; } // public function createTipoTransporteCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_tipotransporte"; $sql .= " (entity,facid,clave_transporte,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["tipotransporte"]["facid"]."',"; $sql .= "'".$this->info_cp["tipotransporte"]["clave_transporte"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar el Tipo de Transporte"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchTipoTransporteCP($facid){ global $conf; $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_tipotransporte"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; unset($this->info_cp["tipotransporte"]); $this->info_cp["tipotransporte"]["autotransporte"] = 0; $this->info_cp["tipotransporte"]["id_autotransporte"] = 0; $this->info_cp["tipotransporte"]["maritimo"] = 0; $this->info_cp["tipotransporte"]["id_maritimo"] = 0; $this->info_cp["tipotransporte"]["aereo"] = 0; $this->info_cp["tipotransporte"]["id_aereo"] = 0; $this->info_cp["tipotransporte"]["ferroviario"] = 0; $this->info_cp["tipotransporte"]["id_ferroviario"] = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); switch ($obj->clave_transporte) { case '01': $this->info_cp["tipotransporte"]["autotransporte"] = 1; $this->info_cp["tipotransporte"]["id_autotransporte"] = $obj->rowid; break; case '02': $this->info_cp["tipotransporte"]["maritimo"] = 1; $this->info_cp["tipotransporte"]["id_maritimo"] = $obj->rowid; break; case '03': $this->info_cp["tipotransporte"]["aereo"] = 1; $this->info_cp["tipotransporte"]["id_aereo"] = $obj->rowid; break; case '04': $this->info_cp["tipotransporte"]["ferroviario"] = 1; $this->info_cp["tipotransporte"]["id_ferroviario"] = $obj->rowid; break; } $i++; } } return $num; } public function createAutoTransporteCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte"; $sql .= " (entity,facid,permsct,numpermisosct,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["autotransporte"]["facid"]."',"; // $sql .= "'".$this->info_cp["auotransporte"]["rowid_autotransporte"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["permsct"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["numpermisosct"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información de Auto Transporte"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchAutoTransporteCP($facid){ $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["autotransporte"]["rowid_autotransporte"] = $obj->rowid; $this->info_cp["autotransporte"]["permsct"] = $obj->permsct; $this->info_cp["autotransporte"]["numpermisosct"] = $obj->numpermisosct; $i++; } } return $num; } public function updateAutoTransporteCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte"; $sql .= " SET"; $sql .= " permsct = '".$this->info_cp["autotransporte"]["permsct"]."',"; $sql .= " numpermisosct = '".$this->info_cp["autotransporte"]["numpermisosct"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["autotransporte"]["rowid_autotransporte"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información de Auto Transporte"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteAutoTransporteCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["autotransporte"]["rowid_autotransporte"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información de Auto Transporte"; $this->errors[] = $sql; $error = -1; } // identificacion vehicular $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_identificacionvehicular"; $sql .= " WHERE"; $sql .= " fk_autotransporte = ".$this->info_cp["autotransporte"]["rowid_autotransporte"]; $resql = $this->db->query($sql); // Seguros $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_seguros"; $sql .= " WHERE"; $sql .= " fk_autotransporte = ".$this->info_cp["autotransporte"]["rowid_autotransporte"]; $resql = $this->db->query($sql); // Remolques $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_remolques"; $sql .= " WHERE"; $sql .= " fk_autotransporte = ".$this->info_cp["autotransporte"]["rowid_autotransporte"]; $resql = $this->db->query($sql); return $error; } public function getLabelAutoTransporteCP($facid){ $label = ""; $this->fetchAutoTransporteCP($facid); $lista_permisosct = $this->getCatalogo(2022); $label .= ''.$lista_permisosct[$this->info_cp["autotransporte"]["permsct"]]."
"; $label .= ''.$this->info_cp["autotransporte"]["numpermisosct"]; return $label; } public function createAutoTransporteIdentificacionVehicularCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_identificacionvehicular"; $sql .= " (entity,fk_autotransporte,facid,configvehicular,pesobrutovehicular,placavm,aniomodelovm,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["autotransporte"]["rowid_autotransporte"]."',"; // $sql .= "'".$this->info_cp["autotransporte"]["rowid_autotransporte_iv"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["facid"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["configvehicular"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["pesobrutovehicular"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["placavm"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["aniomodelovm"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información de Identificación Vehicular"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchAutoTransporteIdentificacionVehicularCP($fk_autotransporte){ $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_identificacionvehicular"; $sql .= " WHERE"; $sql .= " fk_autotransporte = ".$fk_autotransporte; // print $sql; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["autotransporte"]["rowid_autotransporte_iv"] = $obj->rowid; $this->info_cp["autotransporte"]["configvehicular"] = $obj->configvehicular; $this->info_cp["autotransporte"]["pesobrutovehicular"] = $obj->pesobrutovehicular; $this->info_cp["autotransporte"]["placavm"] = $obj->placavm; $this->info_cp["autotransporte"]["aniomodelovm"] = $obj->aniomodelovm; $i++; } } return $num; } public function updateAutoTransporteIdentificacionVehicularCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_identificacionvehicular"; $sql .= " SET"; $sql .= " configvehicular = '".$this->info_cp["autotransporte"]["configvehicular"]."',"; $sql .= " pesobrutovehicular = '".$this->info_cp["autotransporte"]["pesobrutovehicular"]."',"; $sql .= " placavm = '".$this->info_cp["autotransporte"]["placavm"]."',"; $sql .= " aniomodelovm = '".$this->info_cp["autotransporte"]["aniomodelovm"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["autotransporte"]["rowid_autotransporte_iv"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información de Identificación Vehicular"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteAutoTransporteIdentificacionVehicularCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_identificacionvehicular"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["autotransporte"]["rowid_autotransporte_iv"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información de Identificación Vehicular"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelAutoTransporteIdentificacionVehicularCP($fk_autotransporte){ $label = ""; $this->fetchAutoTransporteIdentificacionVehicularCP($fk_autotransporte); $label_config_autotransporte = $this->getCatalogo(2023); $label .= ''.$label_config_autotransporte[$this->info_cp["autotransporte"]["configvehicular"]]."
"; $label .= ''.$this->info_cp["autotransporte"]["pesobrutovehicular"]."
"; $label .= ''.$this->info_cp["autotransporte"]["placavm"]."
"; $label .= ''.$this->info_cp["autotransporte"]["aniomodelovm"]; return $label; } public function createAutoTransporteSegurosCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_seguros"; $sql .= " (entity,fk_autotransporte,facid,asegurarespcivil,polizarespcivil,aseguramedambiente,polizamedambiente,aseguracarga,polizacarga,"; $sql .= " primaseguro,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["autotransporte"]["rowid_autotransporte"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["facid"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["asegurarespcivil"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["polizarespcivil"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["aseguramedambiente"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["polizamedambiente"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["aseguracarga"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["polizacarga"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["primaseguro"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información de Seguros"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchAutoTransporteSegurosCP($fk_autotransporte){ $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_seguros"; $sql .= " WHERE"; $sql .= " fk_autotransporte = ".$fk_autotransporte; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["autotransporte"]["rowid_autotransporte_seguro"] = $obj->rowid; $this->info_cp["autotransporte"]["asegurarespcivil"] = $obj->asegurarespcivil; $this->info_cp["autotransporte"]["polizarespcivil"] = $obj->polizarespcivil; $this->info_cp["autotransporte"]["aseguramedambiente"] = $obj->aseguramedambiente; $this->info_cp["autotransporte"]["polizamedambiente"] = $obj->polizamedambiente; $this->info_cp["autotransporte"]["aseguracarga"] = $obj->aseguracarga; $this->info_cp["autotransporte"]["polizacarga"] = $obj->polizacarga; $this->info_cp["autotransporte"]["primaseguro"] = $obj->primaseguro; $i++; } } return $num; } public function updateAutoTransporteSegurosCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_seguros"; $sql .= " SET"; $sql .= " asegurarespcivil = '".$this->info_cp["autotransporte"]["asegurarespcivil"]."',"; $sql .= " polizarespcivil = '".$this->info_cp["autotransporte"]["polizarespcivil"]."',"; $sql .= " aseguramedambiente = '".$this->info_cp["autotransporte"]["aseguramedambiente"]."',"; $sql .= " polizamedambiente = '".$this->info_cp["autotransporte"]["polizamedambiente"]."',"; $sql .= " aseguracarga = '".$this->info_cp["autotransporte"]["aseguracarga"]."',"; $sql .= " polizacarga = '".$this->info_cp["autotransporte"]["polizacarga"]."',"; $sql .= " primaseguro = '".$this->info_cp["autotransporte"]["primaseguro"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["autotransporte"]["rowid_autotransporte_seguro"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información de Seguros"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteAutoTransporteSegurosCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_seguros"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["autotransporte"]["rowid_autotransporte_seguro"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información de Seguros"; $this->errors[] = $sql; $error = -1; } } public function getLabelAutoTransporteSegurosCP($fk_autotransporte){ $label = ""; $this->fetchAutoTransporteSegurosCP($fk_autotransporte); $label .= ''.$this->info_cp["autotransporte"]["asegurarespcivil"]."
"; $label .= ''.$this->info_cp["autotransporte"]["polizarespcivil"]."
"; $label .= ''.$this->info_cp["autotransporte"]["aseguramedambiente"]."
"; $label .= ''.$this->info_cp["autotransporte"]["polizamedambiente"]."
"; $label .= ''.$this->info_cp["autotransporte"]["aseguracarga"]."
"; $label .= ''.$this->info_cp["autotransporte"]["polizacarga"]."
"; $label .= ''.$this->info_cp["autotransporte"]["primaseguro"]; return $label; } public function createAutoTransporteRemolqueCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_remolques"; $sql .= "(entity,fk_autotransporte,facid,subtiporem,placa,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["autotransporte"]["rowid_autotransporte"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["facid"]."',"; // $sql .= "'".$this->info_cp["transporte_maritimo"]["rowid_remolque_mat"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["subtiporem"]."',"; $sql .= "'".$this->info_cp["autotransporte"]["placa"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información del Remolque"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchAutoTransporteRemolqueCP($fk_autotransporte){ $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_remolques"; $sql .= " WHERE"; $sql .= " fk_autotransporte = ".$fk_autotransporte; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["autotransporte"]["rowid_remolque_at"] = $obj->rowid; $this->info_cp["autotransporte"]["subtiporem"] = $obj->subtiporem; $this->info_cp["autotransporte"]["placa"] = $obj->placa; $i++; } } return $num; } public function updateAutoTransporteRemolqueCP(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_remolques"; $sql .= " SET"; $sql .= " subtiporem = '".$this->info_cp["autotransporte"]["subtiporem"]."',"; $sql .= " placa = '".$this->info_cp["autotransporte"]["placa"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["autotransporte"]["rowid_remolque_at"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información del Remolque"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteAutoTransporteRemolqueCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_autotransporte_remolques"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["autotransporte"]["rowid_remolque_at"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información del Remolque"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelAutoTransporteRemolqueCP($fk_autotransporte){ $label = ""; $this->fetchAutoTransporteRemolqueCP($fk_autotransporte); $lista_subtiporem = $this->getCatalogo(2031); $label .= ''.$lista_subtiporem[$this->info_cp["autotransporte"]["subtiporem"]]."
"; $label .= ''.$this->info_cp["autotransporte"]["placa"]; return $label; } public function createTransporteMaritimoCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo"; $sql .= " (entity,facid,permsct,numpermisosct,nombreaseg,numpolizaseguro,tipoembarcacion,matricula,numeroomi,anioembarcacion,nombreembarc,"; $sql .= " nacionalidadembarc,unidadesdearqbruto,tipocarga,eslora,manga,calado,puntal,lineanaviera,nombreagentenaviero,numautorizacionnaviero,"; $sql .= " numviaje,numconocembarc,permisotempnavegacion,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["transporte_maritimo"]["facid"]."',"; // $sql .= "'".$this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["permsct"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["numpermisosct"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["nombreaseg"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["numpolizaseguro"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["tipoembarcacion"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["matricula"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["numeroomi"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["anioembarcacion"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["nombreembarc"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["nacionalidadembarc"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["unidadesdearqbruto"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["tipocarga"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["eslora"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["manga"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["calado"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["puntal"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["lineanaviera"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["nombreagentenaviero"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["numautorizacionnaviero"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["numviaje"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["numconocembarc"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["permisotempnavegacion"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información del Transporte Maritimo"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchTransporteMaritimo($facid){ $num = 0; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while($i < $num){ $obj = $this->db->fetch_object($resql); $this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"] = $obj->rowid; $this->info_cp["transporte_maritimo"]["permsct"] = $obj->permsct; $this->info_cp["transporte_maritimo"]["numpermisosct"] = $obj->numpermisosct; $this->info_cp["transporte_maritimo"]["nombreaseg"] = $obj->nombreaseg; $this->info_cp["transporte_maritimo"]["numpolizaseguro"] = $obj->numpolizaseguro; $this->info_cp["transporte_maritimo"]["tipoembarcacion"] = $obj->tipoembarcacion; $this->info_cp["transporte_maritimo"]["matricula"] = $obj->matricula; $this->info_cp["transporte_maritimo"]["numeroomi"] = $obj->numeroomi; $this->info_cp["transporte_maritimo"]["anioembarcacion"] = $obj->anioembarcacion; $this->info_cp["transporte_maritimo"]["nombreembarc"] = $obj->nombreembarc; $this->info_cp["transporte_maritimo"]["nacionalidadembarc"] = $obj->nacionalidadembarc; $this->info_cp["transporte_maritimo"]["unidadesdearqbruto"] = $obj->unidadesdearqbruto; $this->info_cp["transporte_maritimo"]["tipocarga"] = $obj->tipocarga; $this->info_cp["transporte_maritimo"]["eslora"] = $obj->eslora; $this->info_cp["transporte_maritimo"]["manga"] = $obj->manga; $this->info_cp["transporte_maritimo"]["calado"] = $obj->calado; $this->info_cp["transporte_maritimo"]["puntal"] = $obj->puntal; $this->info_cp["transporte_maritimo"]["lineanaviera"] = $obj->lineanaviera; $this->info_cp["transporte_maritimo"]["nombreagentenaviero"] = $obj->nombreagentenaviero; $this->info_cp["transporte_maritimo"]["numautorizacionnaviero"] = $obj->numautorizacionnaviero; $this->info_cp["transporte_maritimo"]["numviaje"] = $obj->numviaje; $this->info_cp["transporte_maritimo"]["numconocembarc"] = $obj->numconocembarc; $this->info_cp["transporte_maritimo"]["permisotempnavegacion"] = $obj->permisotempnavegacion; $this->info_cp["transporte_maritimo"]["num_contenedores"] = $this->fetchTransporteMaritimoContenedores($obj->rowid); // $this->info_cp["transporte_maritimo"]["num_remolques"] = $this->fetchTransporteMaritimoRemolquesCP($obj->rowid); $i++; } } return $num; } public function updateTransporteMaritimoCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo"; $sql .= " SET"; $sql .= " permsct = '".$this->info_cp["transporte_maritimo"]["permsct"]."',"; $sql .= " numpermisosct = '".$this->info_cp["transporte_maritimo"]["numpermisosct"]."',"; $sql .= " nombreaseg = '".$this->info_cp["transporte_maritimo"]["nombreaseg"]."',"; $sql .= " numpolizaseguro = '".$this->info_cp["transporte_maritimo"]["numpolizaseguro"]."',"; $sql .= " tipoembarcacion = '".$this->info_cp["transporte_maritimo"]["tipoembarcacion"]."',"; $sql .= " matricula = '".$this->info_cp["transporte_maritimo"]["matricula"]."',"; $sql .= " numeroomi = '".$this->info_cp["transporte_maritimo"]["numeroomi"]."',"; $sql .= " anioembarcacion = '".$this->info_cp["transporte_maritimo"]["anioembarcacion"]."',"; $sql .= " nombreembarc = '".$this->info_cp["transporte_maritimo"]["nombreembarc"]."',"; $sql .= " nacionalidadembarc = '".$this->info_cp["transporte_maritimo"]["nacionalidadembarc"]."',"; $sql .= " unidadesdearqbruto = '".$this->info_cp["transporte_maritimo"]["unidadesdearqbruto"]."',"; $sql .= " tipocarga = '".$this->info_cp["transporte_maritimo"]["tipocarga"]."',"; $sql .= " eslora = '".$this->info_cp["transporte_maritimo"]["eslora"]."',"; $sql .= " manga = '".$this->info_cp["transporte_maritimo"]["manga"]."',"; $sql .= " calado = '".$this->info_cp["transporte_maritimo"]["calado"]."',"; $sql .= " puntal = '".$this->info_cp["transporte_maritimo"]["puntal"]."',"; $sql .= " lineanaviera = '".$this->info_cp["transporte_maritimo"]["lineanaviera"]."',"; $sql .= " nombreagentenaviero = '".$this->info_cp["transporte_maritimo"]["nombreagentenaviero"]."',"; $sql .= " numautorizacionnaviero = '".$this->info_cp["transporte_maritimo"]["numautorizacionnaviero"]."',"; $sql .= " numviaje = '".$this->info_cp["transporte_maritimo"]["numviaje"]."',"; $sql .= " numconocembarc = '".$this->info_cp["transporte_maritimo"]["numconocembarc"]."',"; $sql .= " permisotempnavegacion = '".$this->info_cp["transporte_maritimo"]["permisotempnavegacion"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información del Transporte Maritimo"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteTransporteMaritimoCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información del Transporte Maritimo"; $this->errors[] = $sql; $error = -1; } // Contenedores $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_contenedores"; $sql .= " WHERE"; $sql .= " fk_transporte_maritimo = ".$this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"]; $resql = $this->db->query($sql); // Remolques $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_remolques"; $sql .= " WHERE"; $sql .= " fk_transporte_maritimo = ".$this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"]; $resql = $this->db->query($sql); return $error; } public function getLabelTransporteMaritimoCP($facid){ $label = ""; $this->fetchTransporteMaritimo($facid); $lista_permisosct = $this->getCatalogo(2025); $lista_tipoembarcacion = $this->getCatalogo(2026); $lista_nacionalidadembarc = $this->getCatalogo(2027); $lista_tipocarga = $this->getCatalogo(2028); $lista_numaut = $this->getCatalogo(2029); $label .= ''.$lista_permisosct[$this->info_cp["transporte_maritimo"]["permsct"]]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["numpermisosct"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["nombreaseg"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["numpolizaseguro"]."
"; $label .= ''.$lista_tipoembarcacion[$this->info_cp["transporte_maritimo"]["tipoembarcacion"]]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["matricula"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["numeroomi"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["anioembarcacion"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["nombreembarc"]."
"; $label .= ''.$lista_nacionalidadembarc[$this->info_cp["transporte_maritimo"]["nacionalidadembarc"]]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["unidadesdearqbruto"]."
"; $label .= ''.$lista_tipocarga[$this->info_cp["transporte_maritimo"]["tipocarga"]]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["eslora"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["manga"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["calado"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["puntal"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["lineanaviera"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["nombreagentenaviero"]."
"; $label .= ''.$lista_numaut[$this->info_cp["transporte_maritimo"]["numautorizacionnaviero"]]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["numviaje"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["numconocembarc"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["permisotempnavegacion"]; return $label; } public function createTransporteMaritimoContenedorCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_contenedores"; $sql .= " (entity,fk_transporte_maritimo,facid,tipocontenedor,matriculacontenedor,numprecinto,idccprelacionado,placavmccp,fechacertificacionccp,"; $sql .= " horacertificacionccp,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["facid"]."',"; // $sql .= "'".$this->info_cp["transporte_maritimo"]["rowid_contenedor_mat"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["tipocontenedor"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["matriculacontenedor"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["numprecinto"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["idccprelacionado"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["placavmccp"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["fechacertificacionccp"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["horacertificacionccp"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información del Contenedor Maritimo"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchTransporteMaritimoContenedor($id){ // $this->info_cp["transporte_maritimo"]["contenedores"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_contenedores"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; // $contenedores = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["transporte_maritimo"]["rowid_contenedor_mat"] = $obj->rowid; $this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"] = $obj->fk_transporte_maritimo; $this->info_cp["transporte_maritimo"]["facid"] = $obj->facid; $this->info_cp["transporte_maritimo"]["tipocontenedor"] = $obj->tipocontenedor; $this->info_cp["transporte_maritimo"]["matriculacontenedor"] = $obj->matriculacontenedor; $this->info_cp["transporte_maritimo"]["numprecinto"] = $obj->numprecinto; $this->info_cp["transporte_maritimo"]["idccprelacionado"] = $obj->idccprelacionado; $this->info_cp["transporte_maritimo"]["placavmccp"] = $obj->placavmccp; $this->info_cp["transporte_maritimo"]["fechacertificacionccp"] = $obj->fechacertificacionccp; $this->info_cp["transporte_maritimo"]["horacertificacionccp"] = $obj->horacertificacionccp; $i++; } // $this->info_cp["transporte_maritimo"]["contenedores"] = $contenedores; } } public function fetchTransporteMaritimoContenedores($fk_transporte_maritimo){ $num = 0; $this->info_cp["transporte_maritimo"]["contenedores"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_contenedores"; $sql .= " WHERE"; $sql .= " fk_transporte_maritimo = ".$fk_transporte_maritimo; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $contenedores = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $contenedores[] = array( "rowid" => $obj->rowid, "tipocontenedor" => $obj->tipocontenedor, "matriculacontenedor" => $obj->matriculacontenedor, "numprecinto" => $obj->numprecinto, "idccprelacionado" => $obj->idccprelacionado, "placavmccp" => $obj->placavmccp, "fechacertificacionccp" => $obj->fechacertificacionccp, "horacertificacionccp" => $obj->horacertificacionccp, "label_view" => $this->getLabelTransporteMaritimoContenedorCP($obj->rowid), "num_remolques" => $this->fetchTransporteMaritimoRemolquesCP($fk_transporte_maritimo, $obj->rowid) ); $i++; } $this->info_cp["transporte_maritimo"]["contenedores"] = $contenedores; } return $num; } public function updateTransporteMaritimoContenedorCP(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_contenedores"; $sql .= " SET"; $sql .= " tipocontenedor = '".$this->info_cp["transporte_maritimo"]["tipocontenedor"]."',"; $sql .= " matriculacontenedor = '".$this->info_cp["transporte_maritimo"]["matriculacontenedor"]."',"; $sql .= " numprecinto = '".$this->info_cp["transporte_maritimo"]["numprecinto"]."',"; $sql .= " idccprelacionado = '".$this->info_cp["transporte_maritimo"]["idccprelacionado"]."',"; $sql .= " placavmccp = '".$this->info_cp["transporte_maritimo"]["placavmccp"]."',"; $sql .= " fechacertificacionccp = '".$this->info_cp["transporte_maritimo"]["fechacertificacionccp"]."',"; $sql .= " horacertificacionccp = '".$this->info_cp["transporte_maritimo"]["horacertificacionccp"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_maritimo"]["rowid_contenedor_mat"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información del Contenedor Maritimo"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteTransporteMaritimContenedoroCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_contenedores"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_maritimo"]["rowid_contenedor_mat"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información del Contenedor Maritimo"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelTransporteMaritimoContenedorCP($id){ $label = ""; $this->fetchTransporteMaritimoContenedor($id); $lista_contenedor_mat = $this->getCatalogo(2030); $label .= ''.$lista_contenedor_mat[$this->info_cp["transporte_maritimo"]["tipocontenedor"]]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["matriculacontenedor"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["numprecinto"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["idccprelacionado"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["placavmccp"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["fechacertificacionccp"]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["horacertificacionccp"]; return $label; } public function createTransporteMaritimoRemolqueCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_remolques"; $sql .= "(entity,facid,fk_transporte_maritimo,fk_contenedor,subtiporemccp,placaccp,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["transporte_maritimo"]["facid"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["rowid_transporte_maritimo"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["fk_contenedor"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["subtiporemccp"]."',"; $sql .= "'".$this->info_cp["transporte_maritimo"]["placaccp"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; // print $sql; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información del Remolque"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchTransporteMaritimoRemolqueCP($id){ $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_remolques"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["transporte_maritimo"]["rowid_remolque_mat"] = $obj->rowid; $this->info_cp["transporte_maritimo"]["subtiporemccp"] = $obj->subtiporemccp; $this->info_cp["transporte_maritimo"]["placaccp"] = $obj->placaccp; $i++; } } } public function fetchTransporteMaritimoRemolquesCP($fk_transporte_maritimo, $fk_contenedor){ $num = 0; $this->info_cp["transporte_maritimo"]["remolques"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_remolques"; $sql .= " WHERE"; $sql .= " fk_transporte_maritimo = ".$fk_transporte_maritimo; $sql .= " AND fk_contenedor = ".$fk_contenedor; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $remolques = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $remolques[] = array( "rowid" => $obj->rowid, "fk_contendor" => $obj->fk_contenedor, "subtiporemccp" => $obj->subtiporemccp, "placaccp" => $obj->placaccp, "label_view" => $this->getLabelTransporteMaritimoRemolqueCP($obj->rowid) ); $i++; } $this->info_cp["transporte_maritimo"]["remolques"] = $remolques; } return $num; } public function updateTransporteMaritimoRemolqueCP(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_remolques"; $sql .= " SET"; $sql .= " subtiporemccp = '".$this->info_cp["transporte_maritimo"]["subtiporemccp"]."',"; $sql .= " placaccp = '".$this->info_cp["transporte_maritimo"]["placaccp"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_maritimo"]["rowid_remolque_mat"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información del Remolque"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteTransporteMaritimoRemolqueCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_maritimo_remolques"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_maritimo"]["rowid_remolque_mat"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información del Remolque"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelTransporteMaritimoRemolqueCP($id){ $label = ""; $this->fetchTransporteMaritimoRemolqueCP($id); $lista_subtiporem = $this->getCatalogo(2031); $label .= ''.$lista_subtiporem[$this->info_cp["transporte_maritimo"]["subtiporemccp"]]."
"; $label .= ''.$this->info_cp["transporte_maritimo"]["placaccp"]; return $label; } public function createTransporteAereoCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_aereo"; $sql .= " (entity,facid,permsct,numpermisosct,matriculaaeronave,nombreaseg,numpolizaseguro,numeroguia,lugarcontrato,codigotransportista,"; $sql .= " rfcembarcador,numregidtribembarc,residenciafiscalembarc,nombreembarcador,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ( "; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["transporte_aereo"]["facid"]."',"; // $object->info_cp["transporte_aereo"]["rowid_transporte_aereo"] = GETPOST("rowid_transporte_aereo"); $sql .= "'".$this->info_cp["transporte_aereo"]["permsct"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["numpermisosct"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["matriculaaeronave"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["nombreaseg"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["numpolizaseguro"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["numeroguia"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["lugarcontrato"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["codigotransportista"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["rfcembarcador"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["numregidtribembarc"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["residenciafiscalembarc"]."',"; $sql .= "'".$this->info_cp["transporte_aereo"]["nombreembarcador"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= ")"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información del Transporte Aereo"; $this->errors[] = $sql; $error = -1; } return $error; } public function updateTransporteAereoCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_aereo"; $sql .= " SET"; $sql .= " permsct = '".$this->info_cp["transporte_aereo"]["permsct"]."',"; $sql .= " numpermisosct = '".$this->info_cp["transporte_aereo"]["numpermisosct"]."',"; $sql .= " matriculaaeronave = '".$this->info_cp["transporte_aereo"]["matriculaaeronave"]."',"; $sql .= " nombreaseg = '".$this->info_cp["transporte_aereo"]["nombreaseg"]."',"; $sql .= " numpolizaseguro = '".$this->info_cp["transporte_aereo"]["numpolizaseguro"]."',"; $sql .= " numeroguia = '".$this->info_cp["transporte_aereo"]["numeroguia"]."',"; $sql .= " lugarcontrato = '".$this->info_cp["transporte_aereo"]["lugarcontrato"]."',"; $sql .= " codigotransportista = '".$this->info_cp["transporte_aereo"]["codigotransportista"]."',"; $sql .= " rfcembarcador = '".$this->info_cp["transporte_aereo"]["rfcembarcador"]."',"; $sql .= " numregidtribembarc = '".$this->info_cp["transporte_aereo"]["numregidtribembarc"]."',"; $sql .= " residenciafiscalembarc = '".$this->info_cp["transporte_aereo"]["residenciafiscalembarc"]."',"; $sql .= " nombreembarcador = '".$this->info_cp["transporte_aereo"]["nombreembarcador"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_aereo"]["rowid_transporte_aereo"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información del Transporte Aereo"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchTransporteAereo($facid){ $num = 0; $this->info_cp["transporte_aereo"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_aereo"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["transporte_aereo"]["rowid_transporte_aereo"] = $obj->rowid; $this->info_cp["transporte_aereo"]["facid"] = $obj->facid; $this->info_cp["transporte_aereo"]["permsct"] = $obj->permsct; $this->info_cp["transporte_aereo"]["numpermisosct"] = $obj->numpermisosct; $this->info_cp["transporte_aereo"]["matriculaaeronave"] = $obj->matriculaaeronave; $this->info_cp["transporte_aereo"]["nombreaseg"] = $obj->nombreaseg; $this->info_cp["transporte_aereo"]["numpolizaseguro"] = $obj->numpolizaseguro; $this->info_cp["transporte_aereo"]["numeroguia"] = $obj->numeroguia; $this->info_cp["transporte_aereo"]["lugarcontrato"] = $obj->lugarcontrato; $this->info_cp["transporte_aereo"]["codigotransportista"] = $obj->codigotransportista; $this->info_cp["transporte_aereo"]["rfcembarcador"] = $obj->rfcembarcador; $this->info_cp["transporte_aereo"]["numregidtribembarc"] = $obj->numregidtribembarc; $this->info_cp["transporte_aereo"]["residenciafiscalembarc"] = $obj->residenciafiscalembarc; $this->info_cp["transporte_aereo"]["nombreembarcador"] = $obj->nombreembarcador; // $this->info_cp["transporte_aereo"]["label_view"] = $this->getLabelTransporteAereoCP(); $i++; } } return $num; } public function deleteTransporteAereoCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_aereo"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_aereo"]["rowid_transporte_aereo"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información General de las Mercancias"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelTransporteAereoCP($facid){ $label = ""; $this->info_cp["transporte_aereo"] = null; $this->fetchTransporteAereo($facid); $lista_permisosct = $this->getCatalogo(2032); $lista_codigo_trans = $this->getCatalogo(2033); $lista_residencia_fiscal_embarc = $this->getCatalogo(2034); $label .= "".$lista_permisosct[$this->info_cp["transporte_aereo"]["permsct"]]."
"; $label .= "".$this->info_cp["transporte_aereo"]["numpermisosct"]."
"; $label .= "".$this->info_cp["transporte_aereo"]["matriculaaeronave"]."
"; $label .= "".$this->info_cp["transporte_aereo"]["nombreaseg"]."
"; $label .= "".$this->info_cp["transporte_aereo"]["numpolizaseguro"]."
"; $label .= "".$this->info_cp["transporte_aereo"]["numeroguia"]."
"; $label .= "".$this->info_cp["transporte_aereo"]["lugarcontrato"]."
"; $label .= "".$lista_codigo_trans[$this->info_cp["transporte_aereo"]["codigotransportista"]]."
"; $label .= "".$this->info_cp["transporte_aereo"]["rfcembarcador"]."
"; $label .= "".$this->info_cp["transporte_aereo"]["numregidtribembarc"]."
"; $label .= "".$lista_residencia_fiscal_embarc[$this->info_cp["transporte_aereo"]["residenciafiscalembarc"]]."
"; $label .= "".$lista_residencia_fiscal_embarc[$this->info_cp["transporte_aereo"]["nombreembarcador"]]; return $label; } public function createTransporteFerroviarioCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario"; $sql .= "(entity,facid,tipodeservicio,tipodetrafico,nombreaseg,numpolizaseguro,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["transporte_ferroviario"]["facid"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["tipodeservicio"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["tipodetrafico"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["nombreaseg"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["numpolizaseguro"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información del Transporte Ferroviario."; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchTransporteFerroviarioCP($facid){ $num = 0; $this->info_cp["transporte_ferroviario"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["transporte_ferroviario"]["rowid_transporte_f"] = $obj->rowid; $this->info_cp["transporte_ferroviario"]["facid"] = $obj->facid; $this->info_cp["transporte_ferroviario"]["tipodeservicio"] = $obj->tipodeservicio; $this->info_cp["transporte_ferroviario"]["tipodetrafico"] = $obj->tipodetrafico; $this->info_cp["transporte_ferroviario"]["nombreaseg"] = $obj->nombreaseg; $this->info_cp["transporte_ferroviario"]["numpolizaseguro"] = $obj->numpolizaseguro; $this->info_cp["transporte_ferroviario"]["num_derechospaso"] = $this->fetchDerechosDePasoCP($obj->rowid); $this->info_cp["transporte_ferroviario"]["num_carros"] = $this->fetchTransporteFerroviarioCarrosCP($obj->rowid); $i++; } } return $num; } public function updateTransporteFerroviarioCP(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario"; $sql .= " SET"; $sql .= " tipodeservicio = '".$this->info_cp["transporte_ferroviario"]["tipodeservicio"]."',"; $sql .= " tipodetrafico = '".$this->info_cp["transporte_ferroviario"]["tipodetrafico"]."',"; $sql .= " nombreaseg = '".$this->info_cp["transporte_ferroviario"]["nombreaseg"]."',"; $sql .= " numpolizaseguro = '".$this->info_cp["transporte_ferroviario"]["numpolizaseguro"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información del Transporte Ferroviario."; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteTransporteFerroviarioCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información del Transporte Ferroviario"; $this->errors[] = $sql; $error = -1; } // $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_derechospaso"; $sql .= " WHERE"; $sql .= " fk_transporte_ferroviario = ".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]; $resql = $this->db->query($sql); // $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro"; $sql .= " WHERE"; $sql .= " fk_transporte_ferroviario = ".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]; $resql = $this->db->query($sql); // $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro_contenedor"; $sql .= " WHERE"; $sql .= " fk_transporte_ferroviario = ".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]; $resql = $this->db->query($sql); return $error; } public function getLabelTransporteFerroviarioCP($facid){ $label = ""; $this->info_cp["transporte_ferroviario"] = null; $this->fetchTransporteFerroviarioCP($facid); $lista_tiposervicio = $this->getCatalogo(2035); $lista_tipotrafico = $this->getCatalogo(2036); $label .= "".$lista_tiposervicio[$this->info_cp["transporte_ferroviario"]["tipodeservicio"]]."
"; $label .= "".$lista_tipotrafico[$this->info_cp["transporte_ferroviario"]["tipodetrafico"]]."
"; $label .= "".$this->info_cp["transporte_ferroviario"]["nombreaseg"]."
"; $label .= "".$this->info_cp["transporte_ferroviario"]["numpolizaseguro"]; return $label; } public function createTransporteFerroviarioDerechosPasoCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_derechospaso"; $sql .= " (entity,fk_transporte_ferroviario,facid,tipoderechodepaso,kilometrajepagado,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["facid"]."',"; // $sql .= "'".$this->info_cp["transporte_ferroviario"]["rowid_derechospaso"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["tipoderechodepaso"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["kilometrajepagado"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar los Derechos de Paso"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchDerechosPasoCP($id){ $num = 0; // $this->info_cp["transporte_ferroviario"]["derechosdepaso"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_derechospaso"; $sql .= " WHERE"; $sql .= " rowid = ".$id; // print $sql; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($sql); $i = 0; $derechospaso = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["transporte_ferroviario"]["rowid_derechospaso"] = $obj->rowid; $this->info_cp["transporte_ferroviario"]["rowid_transporte_f"] = $obj->fk_transporte_ferroviario; $this->info_cp["transporte_ferroviario"]["facid"] = $obj->facid; $this->info_cp["transporte_ferroviario"]["tipoderechodepaso"] = $obj->tipoderechodepaso; $this->info_cp["transporte_ferroviario"]["kilometrajepagado"] = $obj->kilometrajepagado; $i++; } // $this->info_cp["transporte_ferroviario"]["derechospaso"] = $derechospaso; } return $num; } public function fetchDerechosDePasoCP($fk_transporte_ferroviario){ $num = 0; $this->info_cp["transporte_ferroviario"]["derechosdepaso"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_derechospaso"; $sql .= " WHERE"; $sql .= " fk_transporte_ferroviario = ".$fk_transporte_ferroviario; // print $sql; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($sql); $i = 0; $derechospaso = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $derechospaso[] = array( "rowid" => $obj->rowid, "facid" => $obj->facid, "fk_transporte_ferroviario" => $obj->fk_transporte_ferroviario, "tipoderechodepaso" => $obj->tipoderechodepaso, "kilometrajepagado" => $obj->kilometrajepagado, "label_view" => $this->getLabelDerechosPasoCP($obj->rowid) ); $i++; } $this->info_cp["transporte_ferroviario"]["derechosdepaso"] = $derechospaso; } return $num; } public function updateTransporteFerroviarioDerechosPasoCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_derechospaso"; $sql .= " SET"; $sql .= " fk_transporte_ferroviario = '".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]."',"; $sql .= " tipoderechodepaso = '".$this->info_cp["transporte_ferroviario"]["tipoderechodepaso"]."',"; $sql .= " kilometrajepagado = '".$this->info_cp["transporte_ferroviario"]["kilometrajepagado"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_ferroviario"]["rowid_derechospaso"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar los Derechos de Paso"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteTransporteFerroviarioDerechosPasoCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_derechospaso"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_ferroviario"]["rowid_derechospaso"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información de los Derechos de Paso"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelDerechosPasoCP($id){ $label = ""; // $this->info_cp["figuratransporte"] = null; $this->fetchDerechosPasoCP($id); $lista_tipoderecho = $this->getCatalogo(2037); $label .= "".$lista_tipoderecho[$this->info_cp["transporte_ferroviario"]["tipoderechodepaso"]]."
"; $label .= "".$this->info_cp["transporte_ferroviario"]["kilometrajepagado"]; return $label; } public function createTransporteFerroviarioCarroCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro"; $sql .= " (entity,fk_transporte_ferroviario,facid,tipocarro,matriculacarro,guiacarro,toneladasnetascarro,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["facid"]."',"; // $object->info_cp["transporte_ferroviario"]["rowid_carro_f"] = GETPOST("rowid_carro_f"); $sql .= "'".$this->info_cp["transporte_ferroviario"]["tipocarro"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["matriculacarro"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["guiacarro"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["toneladasnetascarro"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Información del Carro de Transporte Ferroviario"; $this->errors[] = $sql; $error = -1; } return $error; } public function updateTransporteFerroviarioCarroCP(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro"; $sql .= " SET"; $sql .= " tipocarro = '".$this->info_cp["transporte_ferroviario"]["tipocarro"]."',"; $sql .= " matriculacarro = '".$this->info_cp["transporte_ferroviario"]["matriculacarro"]."',"; $sql .= " guiacarro = '".$this->info_cp["transporte_ferroviario"]["guiacarro"]."',"; $sql .= " toneladasnetascarro = '".$this->info_cp["transporte_ferroviario"]["toneladasnetascarro"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_ferroviario"]["rowid_carro_f"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información del Carro de Transporte Ferroviario"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchTransporteFerroviarioCarroCP($id){ $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($sql); $i = 0; // $carros = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["transporte_ferroviario"]["tipocarro"] = $obj->tipocarro; $this->info_cp["transporte_ferroviario"]["matriculacarro"] = $obj->matriculacarro; $this->info_cp["transporte_ferroviario"]["guiacarro"] = $obj->guiacarro; $this->info_cp["transporte_ferroviario"]["toneladasnetascarro"] = $obj->toneladasnetascarro; $i++; } // $this->info_cp["transporte_ferroviario"]["carros"] = $carros; } } public function fetchTransporteFerroviarioCarrosCP($fk_transporte_ferroviario){ $num = 0; $this->info_cp["transporte_ferroviario"]["carros"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro"; $sql .= " WHERE"; $sql .= " fk_transporte_ferroviario = ".$fk_transporte_ferroviario; // print $sql; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($sql); $i = 0; $carros = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $carros[] = array( "rowid" => $obj->rowid, "tipocarro" => $obj->tipocarro, "matriculacarro" => $obj->matriculacarro, "guiacarro" => $obj->guiacarro, "toneladasnetascarro" => $obj->toneladasnetascarro, "label_view" => $this->getLabelTransporteFerroviarioCarroCP($obj->rowid), "num_contenedores" => $this->fetchTransporteFerroviarioContenedoresCP($obj->rowid) ); $i++; } $this->info_cp["transporte_ferroviario"]["carros"] = $carros; } return $num; } public function deleteTransporteFerroviarioCarroCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_ferroviario"]["rowid_carro_f"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información del Caro de Transporte Ferroviario"; $this->errors[] = $sql; $error = -1; } $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro_contenedor"; $sql .= " WHERE"; $sql .= " fk_carro = ".$this->info_cp["transporte_ferroviario"]["rowid_carro_f"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Información del Caro de Transporte Ferroviario"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelTransporteFerroviarioCarroCP($id){ $label = ""; // $this->info_cp["figuratransporte"] = null; $this->fetchTransporteFerroviarioCarroCP($id); $lista_tipocarro = $this->getCatalogo(2038); $label .= "".$lista_tipocarro[$this->info_cp["transporte_ferroviario"]["tipocarro"]]."
"; $label .= "".$this->info_cp["transporte_ferroviario"]["matriculacarro"]."
"; $label .= "".$this->info_cp["transporte_ferroviario"]["guiacarro"]."
"; $label .= "".$this->info_cp["transporte_ferroviario"]["toneladasnetascarro"]; return $label; } public function createTransporteFerroviarioContenedorCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro_contenedor"; $sql .= " (entity,fk_transporte_ferroviario,fk_carro,facid,tipocontenedor,pesocontenedorvacio,pesonetomercancia,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["transporte_ferroviario"]["rowid_transporte_f"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["rowid_carro_f"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["facid"]."',"; // $sql .= "'".$this->info_cp["transporte_ferroviario"]["rowid_contenedor_f"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["tipocontenedor"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["pesocontenedorvacio"]."',"; $sql .= "'".$this->info_cp["transporte_ferroviario"]["pesonetomercancia"]."',"; $sql .= $user->id.","; $sql .= " now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar el Contenedor al Carro."; $this->errors[] = $sql; $error = -1; } return $error; } public function updateTransporteFerroviarioContenedorCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro_contenedor"; $sql .= " SET"; $sql .= " tipocontenedor = '".$this->info_cp["transporte_ferroviario"]["tipocontenedor"]."',"; $sql .= " pesocontenedorvacio = '".$this->info_cp["transporte_ferroviario"]["pesocontenedorvacio"]."',"; $sql .= " pesonetomercancia = '".$this->info_cp["transporte_ferroviario"]["pesonetomercancia"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_ferroviario"]["rowid_contenedor_f"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la información del Contenedor."; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchTransporteFerroviarioContenedorCP($id){ $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro_contenedor"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; // $contenedores = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["transporte_ferroviario"]["tipocontenedor"] = $obj->tipocontenedor; $this->info_cp["transporte_ferroviario"]["pesocontenedorvacio"] = $obj->pesocontenedorvacio; $this->info_cp["transporte_ferroviario"]["pesonetomercancia"] = $obj->pesonetomercancia; $i++; } // $this->info_cp["transporte_ferroviario"]["contenedores"] = $contenedores; } } public function fetchTransporteFerroviarioContenedoresCP($fk_carro){ $num = 0; $this->info_cp["transporte_ferroviario"]["contenedores"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro_contenedor"; $sql .= " WHERE"; $sql .= " fk_carro = ".$fk_carro; $resql = $this->db->query($sql); if($resql){ $num = $this->db->num_rows($resql); $i = 0; $contenedores = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $contenedores[] = array( "rowid" => $obj->rowid, "tipocontenedor" => $obj->tipocontenedor, "pesocontenedorvacio" => $obj->pesocontenedorvacio, "pesonetomercancia" => $obj->pesonetomercancia, "label_view" => $this->getLabelTransporteFerroviarioContenedorCP($obj->rowid) ); $i++; } $this->info_cp["transporte_ferroviario"]["contenedores"] = $contenedores; } return $num; } public function deleteTransporteFerroviarioContenedorCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_transporte_ferroviario_carro_contenedor"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["transporte_ferroviario"]["rowid_contenedor_f"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar el Contenedor del Carro"; $this->errors[] = $sql; $error = -1; } return $error; } public function getLabelTransporteFerroviarioContenedorCP($id){ $label = ""; // $this->info_cp["figuratransporte"] = null; $this->fetchTransporteFerroviarioContenedorCP($id); $lista_contenedor_f = $this->getCatalogo(2039); $label .= "".$lista_contenedor_f[$this->info_cp["transporte_ferroviario"]["tipocontenedor"]]."
"; $label .= "".$this->info_cp["transporte_ferroviario"]["pesocontenedorvacio"]."
"; $label .= "".$this->info_cp["transporte_ferroviario"]["pesonetomercancia"]; return $label; } public function createFiguraTransporteCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte"; $sql .= "(entity,facid,tipofigura,rfcfigura,numlicencia,nombrefigura,numregidtribfigura,residenciafiscalfigura,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["figuratransporte"]["facid"]."',"; $sql .= "'".$this->info_cp["figuratransporte"]["tipofigura"]."',"; $sql .= "'".$this->info_cp["figuratransporte"]["rfcfigura"]."',"; $sql .= "'".$this->info_cp["figuratransporte"]["numlicencia"]."',"; $sql .= "'".$this->info_cp["figuratransporte"]["nombrefigura"]."',"; $sql .= "'".$this->info_cp["figuratransporte"]["numregidtribfigura"]."',"; $sql .= "'".$this->info_cp["figuratransporte"]["residenciafiscalfigura"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= ")"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Figura Transporte"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchFiguraTransporteCP($id){ $this->info_cp["figuratransporte"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $figuras = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $figuras = array( "rowid" => $obj->rowid, "rowid_figuratransporte" => $obj->rowid, "tipofigura" => $obj->tipofigura, "rfcfigura" => $obj->rfcfigura, "numlicencia" => $obj->numlicencia, "nombrefigura" => $obj->nombrefigura, "numregidtribfigura" => $obj->numregidtribfigura, "residenciafiscalfigura" => $obj->residenciafiscalfigura ); $i++; } $this->info_cp["figuratransporte"] = $figuras; } } public function fetchFigurasTransporteCP($facid){ $this->info_cp["figurastransporte"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $figuras = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $figuras[] = array( "rowid" => $obj->rowid, "tipofigura" => $obj->tipofigura, "rfcfigura" => $obj->rfcfigura, "numlicencia" => $obj->numlicencia, "nombrefigura" => $obj->nombrefigura, "numregidtribfigura" => $obj->numregidtribfigura, "residenciafiscalfigura" => $obj->residenciafiscalfigura, "label_view" => $this->getLabelFiguraTransporteCP($obj->rowid), "num_partestransporte" => $this->fetchPartesTransporteCP($obj->rowid), "num_domicilio" => $this->fetchDomicilioFiguraCP($obj->rowid) ); $i++; } $this->info_cp["figurastransporte"] = $figuras; } } public function updateFiguraTransporteCP(User $user){ global $conf; $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte"; $sql .= " SET"; $sql .= " tipofigura = '".$this->info_cp["figuratransporte"]["tipofigura"]."',"; $sql .= " rfcfigura = '".$this->info_cp["figuratransporte"]["rfcfigura"]."',"; $sql .= " numlicencia = '".$this->info_cp["figuratransporte"]["numlicencia"]."',"; $sql .= " nombrefigura = '".$this->info_cp["figuratransporte"]["nombrefigura"]."',"; $sql .= " numregidtribfigura = '".$this->info_cp["figuratransporte"]["numregidtribfigura"]."',"; $sql .= " residenciafiscalfigura = '".$this->info_cp["figuratransporte"]["residenciafiscalfigura"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= "WHERE"; $sql .= " rowid = ".$this->info_cp["figuratransporte"]["rowid_figuratransporte"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la informacón de la Figura Transporte"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteFiguraTransporteCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["figuratransporte"]["rowid_figuratransporte"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar la Figura Transporte"; $this->errors[] = $sql; $error = -1; } $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_partestransporte"; $sql .= " WHERE"; $sql .= " fk_figuratransporte = ".$this->info_cp["figuratransporte"]["rowid_figuratransporte"]; $resql = $this->db->query($sql); $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_domicilio"; $sql .= " WHERE"; $sql .= " fk_figuratransporte = ".$this->info_cp["figuratransporte"]["rowid_figuratransporte"]; $resql = $this->db->query($sql); return $error; } public function getLabelFiguraTransporteCP($id){ $label = ""; $this->info_cp["figuratransporte"] = null; $this->fetchFiguraTransporteCP($id); $lista_tipofigura = $this->getCatalogo(2040); $lista_residenciafiscal = $this->getCatalogo(2041); $label .= "".$lista_tipofigura[$this->info_cp["figuratransporte"]["tipofigura"]]."
"; $label .= "".$this->info_cp["figuratransporte"]["rfcfigura"]."
"; $label .= "".$this->info_cp["figuratransporte"]["numlicencia"]."
"; $label .= "".$this->info_cp["figuratransporte"]["nombrefigura"]."
"; $label .= "".$this->info_cp["figuratransporte"]["numregidtribfigura"]."
"; $label .= "".$lista_residenciafiscal[$this->info_cp["figuratransporte"]["residenciafiscalfigura"]]; return $label; } public function createParteTransporteCP(User $user){ global $conf; $error = 1; $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_partestransporte"; $sql .= " (entity,fk_figuratransporte,facid,partetransporte,fk_user_create,date_create)"; $sql .= " VALUES"; $sql .= "("; $sql .= "'".$conf->entity."',"; $sql .= "'".$this->info_cp["figuratransporte"]["rowid_figuratransporte"]."',"; $sql .= "'".$this->info_cp["figuratransporte"]["facid"]."',"; $sql .= "'".$this->info_cp["figuratransporte"]["partetransporte"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= ")"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar la Parte Transporte"; $this->errors[] = $sql; $error = -1; } return $error; } public function validateParteTransporteCP(){ $validate = 1; if($this->info_cp["figuratransporte"]["partetransporte"] == -1){ $this->errors[] = "Error 1001:"; $validate = -1; } return $validate; } public function fetchParteTransporteCP($id){ $num = 0; $this->info_cp["figuratransporte"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_partestransporte"; $sql .= " WHERE"; $sql .= " rowid = ".$id; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $partestransporte = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $partestransporte = array( "rowid" => $obj->rowid, "fk_figuratransporte" => $obj->fk_figuratransporte, "partetransporte" => $obj->partetransporte ); $i++; } $this->info_cp["figuratransporte"] = $partestransporte; } return $num; } public function fetchPartesTransporteCP($fk_figuratransporte){ $num = 0; $this->info_cp["partestransporte"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_partestransporte"; $sql .= " WHERE"; $sql .= " fk_figuratransporte = ".$fk_figuratransporte; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $partestransporte = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $partestransporte[] = array( "rowid" => $obj->rowid, "fk_figuratransporte" => $obj->fk_figuratransporte, "partetransporte" => $obj->partetransporte ); $i++; } $this->info_cp["partestransporte"] = $partestransporte; } return $num; } public function fetchFTPartesTransportesCP($facid){ $num = 0; $this->info_cp["ft_partestransportes"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_partestransporte"; $sql .= " WHERE"; $sql .= " facid = ".$facid; $sql .= " ORDER BY fk_figuratransporte ASC"; // print $sql; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $partestransportes = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $partestransportes[] = array( "rowid" => $obj->rowid, "fk_figuratransporte" => $obj->fk_figuratransporte, "partetransporte" => $obj->partetransporte ); $i++; } $this->info_cp["ft_partestransportes"] = $partestransportes; } return $num; } public function updateParteTransporteCP(User $user){ $error = 1; $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_partestransporte"; $sql .= " SET"; $sql .= " partetransporte = '".$this->info_cp["figuratransporte"]["partetransporte"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["figuratransporte"]["rowid_partetransporte"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la Información de Parte Transporte"; $this->errors[] = $sql; $error = -1; } return $error; } public function deleteParteTransporteCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_partestransporte"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["figuratransporte"]["rowid_partetransporte"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo elminar la Parte Transporte"; $this->errors[] = $sql; $error = -1; } return $error; } public function createDomicilioFiguraCP(User $user){ global $conf; $error = $this->validateDomicilioFiguraCP(); if($error == 1){ $sql = "INSERT INTO ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_domicilio"; $sql .= "(entity, fk_figuratransporte, facid, calle, numeroexterior, numerointerior, colonia, localidad, referencia, municipio, estado, pais, codigopostal, fk_user_create, date_create)"; $sql .= " VALUES"; $sql .= " ("; $sql .= $conf->entity.","; $sql .= "'".$this->info_cp["domiciliofigura"]["rowid_figuratransporte"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["facid"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["calle"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["numeroexterior"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["numerointerior"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["colonia"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["localidad"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["referencia"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["municipio"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["estado"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["pais"]."',"; $sql .= "'".$this->info_cp["domiciliofigura"]["codigopostal"]."',"; $sql .= $user->id.","; $sql .= "now()"; $sql .= " )"; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo agregar el Domicilio a la Figura Transporte"; $this->errors[] = $sql; $error = -1; } } return $error; } public function validateDomicilioFiguraCP(){ $validate = 1; if(trim($this->info_cp["domiciliofigura"]["estado"]) == ""){ $this->errors[] = "Error 1001: El Campo Estado es obligatorio y esta vacio o contiene un valor no permitido."; $validate = -1; } if(strlen(trim($this->info_cp["domiciliofigura"]["estado"])) > 30){ $this->errors[] = "Error 1002: El Campo Estado es obligatorio pero supera el número máximo de caracteres permitido (30)."; $validate = -1; } if($this->info_cp["domiciliofigura"]["pais"] == -1){ $this->errors[] = "Error 1003: El Campo Pais es obligatorio y esta vacio o contiene un valor no permitido."; $validate = -1; } if(trim($this->info_cp["domiciliofigura"]["codigopostal"]) == ""){ $this->errors[] = "Error 1004: El Campo Código Postal es obligatorio y esta vacio o contiene un valor no permitido."; $validate = -1; } if(strlen(trim($this->info_cp["domiciliofigura"]["codigopostal"])) > 12){ $this->errors[] = "Error 1005: El Campo Código Postal es obligatorio pero supera el número máximo de caracteres permitido (30)."; $validate = -1; } return $validate; } public function updateDomicilioFiguraCP(User $user){ global $conf; $error = $this->validateDomicilioFiguraCP(); if($error == 1){ $sql = "UPDATE ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_domicilio"; $sql .= " SET"; $sql .= " calle = '".$this->info_cp["domiciliofigura"]["calle"]."',"; $sql .= " numeroexterior = '".$this->info_cp["domiciliofigura"]["numeroexterior"]."',"; $sql .= " numerointerior = '".$this->info_cp["domiciliofigura"]["numerointerior"]."',"; $sql .= " colonia = '".$this->info_cp["domiciliofigura"]["colonia"]."',"; $sql .= " localidad = '".$this->info_cp["domiciliofigura"]["localidad"]."',"; $sql .= " referencia = '".$this->info_cp["domiciliofigura"]["referencia"]."',"; $sql .= " municipio = '".$this->info_cp["domiciliofigura"]["municipio"]."',"; $sql .= " estado = '".$this->info_cp["domiciliofigura"]["estado"]."',"; $sql .= " pais = '".$this->info_cp["domiciliofigura"]["pais"]."',"; $sql .= " codigopostal = '".$this->info_cp["domiciliofigura"]["codigopostal"]."',"; $sql .= " fk_user_update = ".$user->id.","; $sql .= " date_update = now()"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["domiciliofigura"]["rowid_domicilio_figura"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo actualizar la información del Domicilio"; $this->errors[] = $sql; $error = -1; } } return $error; } public function deleteDomicilioFiguraCP(User $user){ $error = 1; $sql = "DELETE FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_domicilio"; $sql .= " WHERE"; $sql .= " rowid = ".$this->info_cp["domiciliofigura"]["rowid_domicilio_figura"]; $resql = $this->db->query($sql); if(!$resql){ $this->errors[] = "Error 1001: No se pudo eliminar el Domicilio"; $this->errors[] = $sql; $error = -1; } return $error; } public function fetchDomicilioFiguraCP($fk_figuratransporte = 0, $id = 0, $facid = 0){ $num = 0; $condiciones = array(); $this->info_cp["domiciliofigura"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_domicilio"; if($id > 0){ $condiciones[] = " rowid = ".$id; } if($fk_figuratransporte > 0){ $condiciones[] = " fk_figuratransporte = ".$fk_figuratransporte; } if($facid > 0){ $condiciones[] = " facid = ".$facid; } if(is_array($condiciones) && count($condiciones) > 0){ $sql .= " WHERE"; $sql .= implode("AND", $condiciones); // print $sql; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); while ($i < $num) { $obj = $this->db->fetch_object($resql); $this->info_cp["domiciliofigura"]["facid"] = $obj->facid; $this->info_cp["domiciliofigura"]["rowid_domicilio_figura"] = $obj->rowid; $this->info_cp["domiciliofigura"]["rowid_figuratransporte"] = $obj->fk_figuratransporte; $this->info_cp["domiciliofigura"]["calle"] = $obj->calle; $this->info_cp["domiciliofigura"]["numeroexterior"] = $obj->numeroexterior; $this->info_cp["domiciliofigura"]["numerointerior"] = $obj->numerointerior; $this->info_cp["domiciliofigura"]["colonia"] = $obj->colonia; $this->info_cp["domiciliofigura"]["localidad"] = $obj->localidad; $this->info_cp["domiciliofigura"]["referencia"] = $obj->referencia; $this->info_cp["domiciliofigura"]["municipio"] = $obj->municipio; $this->info_cp["domiciliofigura"]["estado"] = $obj->estado; $this->info_cp["domiciliofigura"]["pais"] = $obj->pais; $this->info_cp["domiciliofigura"]["codigopostal"] = $obj->codigopostal; $i++; } } } return $num; } public function fetchFigurasTransporteDomiciliosCP($facid){ $num = 0; $this->info_cp["ft_domicilios"] = null; $sql = "SELECT * FROM ".MAIN_DB_PREFIX."cfdimx_cartaporte_figuratransporte_domicilio"; $sql .= " WHERE"; $sql .= " facid = ".$facid; // print $sql; $resql = $this->db->query($sql); if($resql){ $i = 0; $num = $this->db->num_rows($resql); $domicilios = array(); while ($i < $num) { $obj = $this->db->fetch_object($resql); $domicilios[] = array( "facid" => $obj->facid, "rowid_domicilio_figura" => $obj->rowid, "rowid_figuratransporte" => $obj->fk_figuratransporte, "calle" => $obj->calle, "numeroexterior" => $obj->numeroexterior, "numerointerior" => $obj->numerointerior, "colonia" => $obj->colonia, "localidad" => $obj->localidad, "referencia" => $obj->referencia, "municipio" => $obj->municipio, "estado" => $obj->estado, "pais" => $obj->pais, "codigopostal" => $obj->codigopostal, "label_view" => $this->getLabelDomicilioFiguraCP($obj->fk_figuratransporte) ); $i++; } $this->info_cp["ft_domicilios"] = $domicilios; } return $num; } public function getLabelDomicilioFiguraCP($fk_figuratransporte){ $label = ""; $this->info_cp["domiciliofigura"] = null; $this->fetchDomicilioFiguraCP($fk_figuratransporte); $lista_pais = $this->getCatalogo(2041); $label .= "".$this->info_cp["domiciliofigura"]["calle"]."
"; $label .= "".$this->info_cp["domiciliofigura"]["numeroexterior"]."
"; $label .= "".$this->info_cp["domiciliofigura"]["numerointerior"]."
"; $label .= "".$this->info_cp["domiciliofigura"]["colonia"]."
"; $label .= "".$this->info_cp["domiciliofigura"]["localidad"]."
"; $label .= "".$this->info_cp["domiciliofigura"]["referencia"]."
"; $label .= "".$this->info_cp["domiciliofigura"]["municipio"]."
"; $label .= "".$this->info_cp["domiciliofigura"]["estado"]."
"; $label .= "".$lista_pais[$this->info_cp["domiciliofigura"]["pais"]]."
"; $label .= "".$this->info_cp["domiciliofigura"]["codigopostal"]; return $label; } /** * Termina Metodos para Carta Porte (CP) */ } ?>