"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)
*/
}
?>