* @author Raul Guerrero * @link https://github.com/setdjod/myci-extension/ * @param ... * @return ... * */ class ExportXls extends CI_Controller { private $filaDocumentoGeneral = 2; private $filaDocumentoTech = 2; private $filaDocumentoAdd = 2; private $filaDocumentoLegal = 2; private $filaProjectLot = 2; public function __construct() { parent::__construct(); $this->load->library('excel'); $this->load->model("Xlsexport_model"); } public function exportDatosCompletos() { $licitacionesResult = $this->Xlsexport_model->getLicitaciones(); $result = array(); //$start = $this->starttime(); if ($licitacionesResult['num_rows'] > 0) { $result = $this->mapearDatos($licitacionesResult); } //echo ($this->endtime($start)); $objPHPExcel = new PHPExcel(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $objPHPExcel->createSheet(); $filaExcel = 1; foreach ($result as $dato) { if ($filaExcel == 1) { $objPHPExcel = $this->cabecerasOpenPlacspFirstSheet($objPHPExcel); $objPHPExcel = $this->cabecerasOpenPlacsBitacora($objPHPExcel, 1); $objPHPExcel = $this->cabeceraMediosComunicacion($objPHPExcel); $objPHPExcel = $this->cabeceraMediosComunicacionDocumentos($objPHPExcel); $objPHPExcel = $this->cabeceraTenderResult($objPHPExcel); $objPHPExcel = $this->cabeceraTenderingTerms($objPHPExcel); $objPHPExcel = $this->cabeceraTipoProcedimiento($objPHPExcel); $objPHPExcel = $this->cabeceraCriterioADjudicacion($objPHPExcel); $objPHPExcel = $this->cabeceraCriteriosFinancieros($objPHPExcel); $objPHPExcel = $this->cabeceraCriteriosTecnicos($objPHPExcel); $objPHPExcel = $this->cabeceraRequisitosParticipacion($objPHPExcel); $objPHPExcel = $this->cabecerasOpenPlacspDocumentos($objPHPExcel, 11); $objPHPExcel = $this->cabecerasOpenPlacspDocumentos($objPHPExcel, 12); $objPHPExcel = $this->cabecerasOpenPlacspDocumentos($objPHPExcel, 13); $objPHPExcel = $this->cabecerasOpenPlacspDocumentos($objPHPExcel, 14); } else { $objPHPExcel = $this->datosCompletosHojaLicitacion($objPHPExcel, $filaExcel, $dato); $objPHPExcel = $this->datosCompletosHojaBitacora($objPHPExcel, $dato); $objPHPExcel = $this->datosCompletosDocumentosGenerales($objPHPExcel, $dato); $objPHPExcel = $this->datosCompletosDocumentosTecnicos($objPHPExcel, $dato); $objPHPExcel = $this->datosCompletosDocumentosAdicionales($objPHPExcel, $dato); $objPHPExcel = $this->datosCompletosDocumentosLegales($objPHPExcel, $dato); } $objPHPExcel = $this->datosCompletosMediosPublicacion($objPHPExcel); $objPHPExcel = $this->datosMedioPublicacion($objPHPExcel); $objPHPExcel = $this->datosCompletosResultadoDelProcedimiento($objPHPExcel); $objPHPExcel = $this->datosCompletosOfertas($objPHPExcel); $objPHPExcel = $this->datosCriterioAdjudicacion($objPHPExcel); $objPHPExcel = $this->datosCriterioEvaluacionFinanciera($objPHPExcel); $objPHPExcel = $this->datosCriterioEvaluacionTecnica($objPHPExcel); $objPHPExcel = $this->datosRequisitosParticipacion($objPHPExcel); $objPHPExcel = $this->datosCompletosTipoProcedimiento($objPHPExcel); $filaExcel++; } $nombreAchivo = 'test.xlsx'; $ruta = base_url() . 'uploads/' . $nombreAchivo; // Write the Excel file to filename some_excel_file.xlsx in the current directory // Redirect output to a client’s web browser (Excel5) header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename=' . $nombreAchivo . ''); header('Pragma: cache'); header('Cache-Control: private'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save(FCPATH . 'uploads/' . $nombreAchivo); } public function starttime() { $r = explode(' ', microtime()); $r = $r[1] + $r[0]; return $r; } public function endtime($starttime) { $r = explode(' ', microtime()); $r = $r[1] + $r[0]; $r = round($r - $starttime, 4); return 'Execution Time: ' . $r . ' seconds
'; } public function mapearDatos($licitacionesResult): array { $result = array(); foreach ($licitacionesResult['datos'] as $licitacion) { $result[$licitacion->id_licitacion]['licitacion'] = $licitacion; $result[$licitacion->id_licitacion]['contract'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_contract_folder", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['locatedParty'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_located_contracting_party", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['party'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_party", $licitacion->id_licitacion); foreach ($result[$licitacion->id_licitacion]['party'] as $row) { $result[$licitacion->id_licitacion]['partyActivity'] = $this->Xlsexport_model->getDatosRelacionadosByTablaAndLicitacion("maestro_party_party_idenfitication", "id_ajena_party", $row['id']); } $result[$licitacion->id_licitacion]['project'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_procurement_project", $licitacion->id_licitacion); foreach ($result[$licitacion->id_licitacion]['project'] as $row) { $result[$licitacion->id_licitacion]['projectActivity'] = $this->Xlsexport_model->getDatosRelacionadosByTablaAndLicitacion("maestro_procurement_project_itemClass", "id_ajena_pp", $row['id']); } $result[$licitacion->id_licitacion]['projectLot'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_procurement_project_lot", $licitacion->id_licitacion); foreach ($result[$licitacion->id_licitacion]['projectLot'] as $row) { $result[$licitacion->id_licitacion]['projectLotActivity'] = $this->Xlsexport_model->getDatosRelacionadosByTablaAndLicitacion("maestro_procurement_project_lot_item", "id_ajena_ppl", $row['id']); } $result[$licitacion->id_licitacion]['tenderResult'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_tender_result", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['tenderProcess'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_tendering_process", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['tenderTerms'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_tendering_terms", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['validNoticeInfo'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_valid_notice_info", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['techDocs'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_technical_documents", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['legalDocs'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_legal_documents", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['generalDocs'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_general_documents", $licitacion->id_licitacion); $result[$licitacion->id_licitacion]['additDocs'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_additional_documents", $licitacion->id_licitacion); } return $result; } private function datosCompletosHojaLicitacion($objPHPExcel, $filaExcel, $datosLicitacion) { $objPHPExcel->setActiveSheetIndex(0); $objPHPExcel->getActiveSheet()->setTitle("Datos Licitación"); $styleArr = array( "font" => array( "bold" => true, "color" => array("rgb" => "22B9FF"), "size" => 13, ), ); $objPHPExcel->getActiveSheet()->getStyle("A1:AB1")->applyFromArray($styleArr); $objPHPExcel->getActiveSheet()->SetCellValue('A' . $filaExcel, $datosLicitacion['licitacion']->id_licitacion); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $filaExcel, $datosLicitacion['licitacion']->url_id_licitacion); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $filaExcel, $datosLicitacion['licitacion']->updated); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $filaExcel, ""); $objPHPExcel->getActiveSheet()->SetCellValue('E' . $filaExcel, "Primera publicación"); $objPHPExcel->getActiveSheet()->SetCellValue('F' . $filaExcel, $datosLicitacion['contract'][0]['contractFolderStatusCode']); $objPHPExcel->getActiveSheet()->SetCellValue('G' . $filaExcel, $datosLicitacion['contract'][0]['contractFolderID']); $objPHPExcel->getActiveSheet()->SetCellValue('H' . $filaExcel, $datosLicitacion['project'][0]['name']); $objPHPExcel->getActiveSheet()->SetCellValue('I' . $filaExcel, $datosLicitacion['project'][0]['estimatedOverallContractAmount']); $objPHPExcel->getActiveSheet()->SetCellValue('J' . $filaExcel, $datosLicitacion['project'][0]['taxExclusiveAmount']); $objPHPExcel->getActiveSheet()->SetCellValue('K' . $filaExcel, $datosLicitacion['project'][0]['totalAmount']); $cpvProject = ""; for ($i = 0; $i < count($datosLicitacion['projectActivity']); $i++) { $cpvProject .= $datosLicitacion['projectActivity'][$i]['itemClassification_value'] . ";"; } $cpvParty = ""; //TODO OBtener solo el DIR3 for ($i = 0; $i < count($datosLicitacion['partyActivity']); $i++) { $cpvParty .= $datosLicitacion['partyActivity'][$i]['idPartyIdent'] . ";"; } $objPHPExcel->getActiveSheet()->SetCellValue('L' . $filaExcel, $cpvProject); $objPHPExcel->getActiveSheet()->SetCellValue('M' . $filaExcel, $datosLicitacion['project'][0]['typeCode']); $objPHPExcel->getActiveSheet()->SetCellValue('N' . $filaExcel, $datosLicitacion['project'][0]['countrySubentityCode'] . " - " . $datosLicitacion['project'][0]['countrySubentity']); $objPHPExcel->getActiveSheet()->SetCellValue('O' . $filaExcel, $datosLicitacion['party'][0]['partyName']); $objPHPExcel->getActiveSheet()->SetCellValue('P' . $filaExcel, $datosLicitacion['party'][0]['partyName']); $objPHPExcel->getActiveSheet()->SetCellValue('Q' . $filaExcel, $datosLicitacion['locatedParty'][0]['contractingPartyTypeCode']); $objPHPExcel->getActiveSheet()->SetCellValue('R' . $filaExcel, $cpvParty); $objPHPExcel->getActiveSheet()->SetCellValue('S' . $filaExcel, $datosLicitacion['locatedParty'][0]['buyerProfileURIID']); //Buscar DIR3 $objPHPExcel->getActiveSheet()->SetCellValue('T' . $filaExcel, $datosLicitacion['locatedParty'][0]['contractingPartyTypeCode']); $objPHPExcel->getActiveSheet()->SetCellValue('U' . $filaExcel, $datosLicitacion['party'][0]['codpostal']); $objPHPExcel->getActiveSheet()->SetCellValue('V' . $filaExcel, $datosLicitacion['tenderProcess'][0]['procedureCode']); $objPHPExcel->getActiveSheet()->SetCellValue('W' . $filaExcel, $datosLicitacion['tenderProcess'][0]['contractingSystemCode']); $objPHPExcel->getActiveSheet()->SetCellValue('X' . $filaExcel, $datosLicitacion['tenderProcess'][0]['urgencyCode']); $objPHPExcel->getActiveSheet()->SetCellValue('Y' . $filaExcel, $datosLicitacion['tenderProcess'][0]['submissionMethodCode']); $objPHPExcel->getActiveSheet()->SetCellValue('Z' . $filaExcel, $datosLicitacion['tenderTerms'][0]['procurementLegislationDocumentReference']); $objPHPExcel->getActiveSheet()->SetCellValue('AA' . $filaExcel, $datosLicitacion['tenderTerms'][0]['allowedSubcontractTerms']); $objPHPExcel->getActiveSheet()->SetCellValue('AB' . $filaExcel, $datosLicitacion['project'][0]['durationMesure']); $objPHPExcel->getActiveSheet()->SetCellValue('AC' . $filaExcel, $datosLicitacion['project'][0]['medida']); $objPHPExcel->getActiveSheet()->SetCellValue('AD' . $filaExcel, $datosLicitacion['project'][0]['duracion_inicio']); $objPHPExcel->getActiveSheet()->SetCellValue('AE' . $filaExcel, $datosLicitacion['project'][0]['duracion_fin']); $objPHPExcel->getActiveSheet()->SetCellValue('AF' . $filaExcel, $datosLicitacion['project'][0]['contractExtension']); $objPHPExcel->getActiveSheet()->SetCellValue('AG' . $filaExcel, $datosLicitacion['party'][0]['websiteURI']); $objPHPExcel->getActiveSheet()->SetCellValue('AH' . $filaExcel, $datosLicitacion['party'][0]['city']); $objPHPExcel->getActiveSheet()->SetCellValue('AI' . $filaExcel, $datosLicitacion['party'][0]['direccion']); $objPHPExcel->getActiveSheet()->SetCellValue('AJ' . $filaExcel, $datosLicitacion['party'][0]['contact_name']); $objPHPExcel->getActiveSheet()->SetCellValue('AK' . $filaExcel, $datosLicitacion['party'][0]['contact_email']); return $objPHPExcel; } private function datosCompletosHojaBitacora($objPHPExcel, $datosLicitacion) { $objPHPExcel->setActiveSheetIndex(1); $objPHPExcel->getActiveSheet()->setTitle("Bitácora"); foreach ($datosLicitacion['projectLot'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $this->filaProjectLot, $datos['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $this->filaProjectLot, $datos['name']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $this->filaProjectLot, $datos['idProcurementLot']); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $this->filaProjectLot, $datos['totalAmount']); $objPHPExcel->getActiveSheet()->SetCellValue('E' . $this->filaProjectLot, $datos['taxExclusiveAmount']); $objPHPExcel->getActiveSheet()->SetCellValue('F' . $this->filaProjectLot, $datos['countrySubentity']); $objPHPExcel->getActiveSheet()->SetCellValue('G' . $this->filaProjectLot, $datos['countrySubentityCode']); $objPHPExcel->getActiveSheet()->SetCellValue('H' . $this->filaProjectLot, $datos['nameLocation']); $cpv = ""; $projectLotActivity = $this->Xlsexport_model->getProjectLotActivityByProjectLot($datos['id']); if ($projectLotActivity['num_rows'] > 0) { for ($i = 0; $i < count($projectLotActivity['datos']); $i++) { $cpv .= $projectLotActivity['datos'][$i]['idItem'] . ";"; } $objPHPExcel->getActiveSheet()->SetCellValue('I' . $this->filaProjectLot, $cpv); } $this->filaProjectLot++; } return $objPHPExcel; } private function datosCompletosMediosPublicacion($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(2); $objPHPExcel->getActiveSheet()->setTitle("Medios de publicación"); $datos = $this->Xlsexport_model->getValidNoticeInfoRelacion(); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['noticeTypeCode']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $aux, $datos['publicationMediaName']); $aux++; } } return $objPHPExcel; } private function datosMedioPublicacion($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(3); $objPHPExcel->getActiveSheet()->setTitle("Documentos Medios Comm"); $datos = $this->Xlsexport_model->getDatosRelacionadasTablaWithoutLicitacion("maestro_valid_notice_info_documento", "maestro_valid_notice_info", "id_ajena_vni"); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $row) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $row['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $row['documento']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $aux, $row['filename']); $aux++; } } return $objPHPExcel; } private function datosCompletosResultadoDelProcedimiento($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(4); $objPHPExcel->getActiveSheet()->setTitle("Resultado del Procedimiento"); $datos = $this->Xlsexport_model->getTenderResult("maestro_tender_result"); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['resultCode']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $aux, $datos['description']); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $aux, $datos['awardDate']); $objPHPExcel->getActiveSheet()->SetCellValue('E' . $aux, $datos['receivedTenderQuantity']); $objPHPExcel->getActiveSheet()->SetCellValue('F' . $aux, $datos['lowerTenderAmount']); $objPHPExcel->getActiveSheet()->SetCellValue('G' . $aux, $datos['higherTenderAmount']); $objPHPExcel->getActiveSheet()->SetCellValue('H' . $aux, $datos['startDate']); $objPHPExcel->getActiveSheet()->SetCellValue('I' . $aux, $datos['smeawardedIndicator']); $objPHPExcel->getActiveSheet()->SetCellValue('J' . $aux, $datos['contract_id']); $objPHPExcel->getActiveSheet()->SetCellValue('K' . $aux, $datos['contract_issueDate']); $objPHPExcel->getActiveSheet()->SetCellValue('L' . $aux, $datos['partyIdentification']); $objPHPExcel->getActiveSheet()->SetCellValue('M' . $aux, $datos['partyName']); $objPHPExcel->getActiveSheet()->SetCellValue('N' . $aux, $datos['TaxExclusiveAmount']); $objPHPExcel->getActiveSheet()->SetCellValue('O' . $aux, $datos['PayableAmount']); $aux++; } } return $objPHPExcel; } private function datosCompletosTipoProcedimiento($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(5); $objPHPExcel->getActiveSheet()->setTitle("Tipo Procedimiento"); $datos = $this->Xlsexport_model->getTenderProcessRelacion(); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['procedureCode']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $aux, $datos['urgencyCode']); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $aux, $datos['contractingSystemCode']); $objPHPExcel->getActiveSheet()->SetCellValue('E' . $aux, $datos['partPresentationCode']); $objPHPExcel->getActiveSheet()->SetCellValue('F' . $aux, $datos['submissionMethodCode']); $objPHPExcel->getActiveSheet()->SetCellValue('G' . $aux, $datos['maximumLotPresentationQuantity']); $objPHPExcel->getActiveSheet()->SetCellValue('H' . $aux, $datos['maximumTendererAwardedLotsQuantity']); $objPHPExcel->getActiveSheet()->SetCellValue('I' . $aux, $datos['lotsCombinationContractingAuthorityRights']); $objPHPExcel->getActiveSheet()->SetCellValue('J' . $aux, $datos['deadLineEndDate']); $objPHPExcel->getActiveSheet()->SetCellValue('K' . $aux, $datos['deadLineEndTime']); $objPHPExcel->getActiveSheet()->SetCellValue('L' . $aux, $datos['deadLineDescription']); $objPHPExcel->getActiveSheet()->SetCellValue('M' . $aux, $datos['auctionTerms']); $objPHPExcel->getActiveSheet()->SetCellValue('N' . $aux, $datos['documentAvailablePeriod_EndDate']); $objPHPExcel->getActiveSheet()->SetCellValue('O' . $aux, $datos['documentAvailablePeriod_EndTime']); $aux++; } } return $objPHPExcel; } private function datosCompletosOfertas($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(6); $objPHPExcel->getActiveSheet()->setTitle("Ofertas"); $datos = $this->Xlsexport_model->getTenderingTermsGarantia("maestro_tendering_terms"); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['requiredCurriculaIndicator']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $aux, $datos['variantConstraintIndicator']); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $aux, $datos['fundingProgramCode']); $objPHPExcel->getActiveSheet()->SetCellValue('E' . $aux, $datos['guaranteeTypeCode']); $objPHPExcel->getActiveSheet()->SetCellValue('F' . $aux, $datos['requiredFinancialGuarantee_Amount']); $objPHPExcel->getActiveSheet()->SetCellValue('G' . $aux, $datos['language']); $objPHPExcel->getActiveSheet()->SetCellValue('H' . $aux, $datos['allowedSubcontractTerms']); $objPHPExcel->getActiveSheet()->SetCellValue('I' . $aux, $datos['description']); $objPHPExcel->getActiveSheet()->SetCellValue('J' . $aux, $datos['personalSituation']); $objPHPExcel->getActiveSheet()->SetCellValue('K' . $aux, $datos['procurementLegislationDocumentReference']); $aux++; } } return $objPHPExcel; } private function datosCriterioAdjudicacion($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(7); $objPHPExcel->getActiveSheet()->setTitle("Criterio Adjudicación"); /*$datos = $this->Xlsexport_model->getDatosRelacionadasTablaWithoutLicitacion("maestro_tendering_terms_awarding_terms", "maestro_tendering_terms", "id_ajena_tt"); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_tt']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['evaluationCriteriaTypeCode']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['description']); $aux++; } }*/ return $objPHPExcel; } private function datosCriterioEvaluacionFinanciera($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(8); $objPHPExcel->getActiveSheet()->setTitle("CriteriosEvaluacionFinanciera"); $datos = $this->Xlsexport_model->getTenderingTermsCriteriosFinanciacion(); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['evaluationCriteriaTypeCode']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $aux, $datos['description']); $aux++; } } return $objPHPExcel; } private function datosCriterioEvaluacionTecnica($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(9); $objPHPExcel->getActiveSheet()->setTitle("Criterios Evaluación Técnica"); $datos = $this->Xlsexport_model->getTenderingTermsCriteriosTecnicos(); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['evaluationCriteriaTypeCode']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $aux, $datos['description']); $aux++; } } return $objPHPExcel; } private function datosRequisitosParticipacion($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(10); $objPHPExcel->getActiveSheet()->setTitle("Requisitos Participación"); $datos = $this->Xlsexport_model->getTenderingTermsRequisitos(); if ($datos['num_rows'] > 0) { $aux = 2; foreach ($datos['datos'] as $datos) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $aux, $datos['evaluationCriteriaTypeCode']); $aux++; } } return $objPHPExcel; } private function datosCompletosDocumentosGenerales($objPHPExcel, $datosLicitacion) { $objPHPExcel->setActiveSheetIndex(11); $objPHPExcel->getActiveSheet()->setTitle("Documentos Generales"); foreach ($datosLicitacion['generalDocs'] as $doc) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $this->filaDocumentoGeneral, $doc['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $this->filaDocumentoGeneral, $doc['attachment']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $this->filaDocumentoGeneral, $doc['fileName']); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $this->filaDocumentoGeneral, $doc['idDoc']); $this->filaDocumentoGeneral++; } return $objPHPExcel; } private function datosCompletosDocumentosAdicionales($objPHPExcel, $datosLicitacion) { $objPHPExcel->setActiveSheetIndex(12); $objPHPExcel->getActiveSheet()->setTitle("Documentos Adicionales"); foreach ($datosLicitacion['additDocs'] as $doc) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $this->filaDocumentoAdd, $doc['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $this->filaDocumentoAdd, $doc['attachment']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $this->filaDocumentoAdd, $doc['idDoc']); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $this->filaDocumentoAdd, $doc['documentHash']); $this->filaDocumentoAdd++; } return $objPHPExcel; } private function datosCompletosDocumentosTecnicos($objPHPExcel, $datosLicitacion) { $objPHPExcel->setActiveSheetIndex(13); $objPHPExcel->getActiveSheet()->setTitle("Documentos Técnicos"); foreach ($datosLicitacion['techDocs'] as $doc) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $this->filaDocumentoTech, $doc['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $this->filaDocumentoTech, $doc['attachment']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $this->filaDocumentoTech, $doc['idDoc']); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $this->filaDocumentoTech, $doc['documentHash']); $this->filaDocumentoTech++; } return $objPHPExcel; } private function datosCompletosDocumentosLegales($objPHPExcel, $datosLicitacion) { $objPHPExcel->setActiveSheetIndex(14); $objPHPExcel->getActiveSheet()->setTitle("Documentos Legales"); foreach ($datosLicitacion['legalDocs'] as $doc) { $objPHPExcel->getActiveSheet()->SetCellValue('A' . $this->filaDocumentoLegal, $doc['id_ajena_licitacion']); $objPHPExcel->getActiveSheet()->SetCellValue('B' . $this->filaDocumentoLegal, $doc['attachment']); $objPHPExcel->getActiveSheet()->SetCellValue('C' . $this->filaDocumentoLegal, $doc['idDoc']); $objPHPExcel->getActiveSheet()->SetCellValue('D' . $this->filaDocumentoLegal, $doc['documentHash']); $this->filaDocumentoLegal++; } return $objPHPExcel; } private function cabecerasOpenPlacspFirstSheet($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(0); $objPHPExcel->getActiveSheet()->SetCellValue('A1', "Identificador"); $objPHPExcel->getActiveSheet()->SetCellValue('B1', "Link licitación"); $objPHPExcel->getActiveSheet()->SetCellValue('C1', "Fecha actualización"); $objPHPExcel->getActiveSheet()->SetCellValue('D1', "Vigente/Anulada/Archivada"); $objPHPExcel->getActiveSheet()->SetCellValue('E1', "Primera publicación"); $objPHPExcel->getActiveSheet()->SetCellValue('F1', "Estado"); $objPHPExcel->getActiveSheet()->SetCellValue('G1', "Número de expediente"); $objPHPExcel->getActiveSheet()->SetCellValue('H1', "Objeto del Contrato"); $objPHPExcel->getActiveSheet()->SetCellValue('I1', "Valor estimado del contrato"); $objPHPExcel->getActiveSheet()->SetCellValue('J1', "Presupuesto base sin impuestos"); $objPHPExcel->getActiveSheet()->SetCellValue('K1', "Presupuesto base con impuestos"); $objPHPExcel->getActiveSheet()->SetCellValue('L1', "CPV"); $objPHPExcel->getActiveSheet()->SetCellValue('M1', "Tipo de contrato"); $objPHPExcel->getActiveSheet()->SetCellValue('N1', "Lugar de ejecución"); $objPHPExcel->getActiveSheet()->SetCellValue('O1', "Órgano de Contratación"); $objPHPExcel->getActiveSheet()->SetCellValue('P1', "ID OC en PLACSP"); $objPHPExcel->getActiveSheet()->SetCellValue('Q1', "NIF OC"); $objPHPExcel->getActiveSheet()->SetCellValue('R1', "DIR3"); $objPHPExcel->getActiveSheet()->SetCellValue('S1', "Enlace al Perfil de Contratante del OC"); $objPHPExcel->getActiveSheet()->SetCellValue('T1', "Tipo de Administración"); $objPHPExcel->getActiveSheet()->SetCellValue('U1', "Código Postal"); $objPHPExcel->getActiveSheet()->SetCellValue('V1', "Tipo de procedimiento"); $objPHPExcel->getActiveSheet()->SetCellValue('W1', "Sistema de contratación"); $objPHPExcel->getActiveSheet()->SetCellValue('X1', "Tramitación"); $objPHPExcel->getActiveSheet()->SetCellValue('Y1', "Forma de presentación de la oferta"); $objPHPExcel->getActiveSheet()->SetCellValue('Z1', "Directiva de aplicación"); $objPHPExcel->getActiveSheet()->SetCellValue('AA1', "Subcontratación permitida"); $objPHPExcel->getActiveSheet()->SetCellValue('AB1', "Duración Contrato"); $objPHPExcel->getActiveSheet()->SetCellValue('AC1', "Tipo de duración"); $objPHPExcel->getActiveSheet()->SetCellValue('AD1', "Inicio contrato"); $objPHPExcel->getActiveSheet()->SetCellValue('AE1', "Fin contrato"); $objPHPExcel->getActiveSheet()->SetCellValue('AF1', "Extension Contrato"); $objPHPExcel->getActiveSheet()->SetCellValue('AG1', "URL Organo Contratación"); $objPHPExcel->getActiveSheet()->SetCellValue('AH1', "Ciudad Organo Contratación"); $objPHPExcel->getActiveSheet()->SetCellValue('AI1', "Dirección Organo Contratación"); $objPHPExcel->getActiveSheet()->SetCellValue('AJ1', "Nombre Contacto Organo Contratación"); $objPHPExcel->getActiveSheet()->SetCellValue('AK1', "Email contacto Organo Contratación"); return $objPHPExcel; } //Cabeceras private function cabecerasOpenPlacspDocumentos($objPHPExcel, $hojaActiva) { $objPHPExcel->setActiveSheetIndex($hojaActiva); $objPHPExcel->getActiveSheet()->SetCellValue('A1', "Identificador"); $objPHPExcel->getActiveSheet()->SetCellValue('B1', "Link Documento"); $objPHPExcel->getActiveSheet()->SetCellValue('C1', "Nombre Documento"); $objPHPExcel->getActiveSheet()->SetCellValue('D1', "Hash Documento"); return $objPHPExcel; } private function cabecerasOpenPlacsBitacora($objPHPExcel, $hojaActiva) { $objPHPExcel->setActiveSheetIndex($hojaActiva); $objPHPExcel->getActiveSheet()->SetCellValue('A1', "Identificador"); $objPHPExcel->getActiveSheet()->SetCellValue('B1', "Objeto del lote"); $objPHPExcel->getActiveSheet()->SetCellValue('C1', "Número de lote"); $objPHPExcel->getActiveSheet()->SetCellValue('D1', "Importe sin Impuestos"); $objPHPExcel->getActiveSheet()->SetCellValue('E1', "Importe con Impuestos"); $objPHPExcel->getActiveSheet()->SetCellValue('F1', "Lugar de ejecución del lote"); $objPHPExcel->getActiveSheet()->SetCellValue('G1', "Codigo de ejecución del lote"); $objPHPExcel->getActiveSheet()->SetCellValue('H1', "Ciudad de ejecución del lote"); $objPHPExcel->getActiveSheet()->SetCellValue('I1', "CPV Project Lot"); return $objPHPExcel; } private function cabeceraMediosComunicacion($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(2); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Tipo de anuncio'); $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Medio de publicación'); return $objPHPExcel; } private function cabeceraMediosComunicacionDocumentos($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(3); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Documento'); $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Nombre Documento'); return $objPHPExcel; } private function cabeceraTenderResult($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(4); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Tipo de resultado'); $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Motivación adjudicación'); $objPHPExcel->getActiveSheet()->SetCellValue('D1', 'Fecha del acuerdo'); $objPHPExcel->getActiveSheet()->SetCellValue('E1', 'Número de licitadores participadores'); $objPHPExcel->getActiveSheet()->SetCellValue('F1', 'Importe Oferta mas baja'); $objPHPExcel->getActiveSheet()->SetCellValue('G1', 'Importe Oferta mas alta'); $objPHPExcel->getActiveSheet()->SetCellValue('H1', 'Fecha de entrada en vigor'); $objPHPExcel->getActiveSheet()->SetCellValue('I1', 'Identifica si es una PYME'); $objPHPExcel->getActiveSheet()->SetCellValue('J1', 'Identificador del contrato'); $objPHPExcel->getActiveSheet()->SetCellValue('K1', 'Fecha de formalización'); $objPHPExcel->getActiveSheet()->SetCellValue('L1', 'Adjudicatario CIF'); $objPHPExcel->getActiveSheet()->SetCellValue('M1', 'Nombre Adjudicatario'); $objPHPExcel->getActiveSheet()->SetCellValue('N1', 'Importe de adjudicación sin impuestos'); $objPHPExcel->getActiveSheet()->SetCellValue('O1', 'Importe de adjudicación con impuestos'); return $objPHPExcel; } private function cabeceraTipoProcedimiento($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(5); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Tipo de Procedimiento'); $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Tipo de Tramitación'); $objPHPExcel->getActiveSheet()->SetCellValue('D1', 'Sistema de Contratación'); $objPHPExcel->getActiveSheet()->SetCellValue('E1', 'Número de lotes a los que se debe ofertar'); $objPHPExcel->getActiveSheet()->SetCellValue('F1', 'Presentación de la oferta'); $objPHPExcel->getActiveSheet()->SetCellValue('G1', 'Número de lotes a los que se puede ofertar'); $objPHPExcel->getActiveSheet()->SetCellValue('H1', 'Número máximo de lotes que se puede adjudicar un licitador'); $objPHPExcel->getActiveSheet()->SetCellValue('I1', 'El poder adjudicador se reserva el derecho de adjudicar contratos que combinen lotes'); $objPHPExcel->getActiveSheet()->SetCellValue('J1', 'Fecha limite para la presentación de ofertas'); $objPHPExcel->getActiveSheet()->SetCellValue('K1', 'Tiempo limite para la presentación de ofertas'); $objPHPExcel->getActiveSheet()->SetCellValue('L1', 'Texto descriptivo de fecha limite de presentación de ofertas'); $objPHPExcel->getActiveSheet()->SetCellValue('M1', 'Usa subasta electronica'); $objPHPExcel->getActiveSheet()->SetCellValue('N1', 'Fecha límite para obtener los pliegos'); $objPHPExcel->getActiveSheet()->SetCellValue('O1', 'Hora límite para obtener los pliegos'); return $objPHPExcel; } private function cabeceraTenderingTerms($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(6); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Se requiere la presentación de Curriculum Vitae de las personas que realizarán el proyecto'); $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Indica que se pueden ofertar variantes'); $objPHPExcel->getActiveSheet()->SetCellValue('D1', 'Código descriptivo del tipo de programas que financian este contrato'); $objPHPExcel->getActiveSheet()->SetCellValue('E1', 'Tipo de garantia'); $objPHPExcel->getActiveSheet()->SetCellValue('F1', 'Porcentaje de la garantíaa'); $objPHPExcel->getActiveSheet()->SetCellValue('G1', 'Idioma'); $objPHPExcel->getActiveSheet()->SetCellValue('H1', 'Porcentaje de subcontratación máximo especificado para este contrato.'); $objPHPExcel->getActiveSheet()->SetCellValue('I1', 'Descripción del objeto de la subcontratación'); $objPHPExcel->getActiveSheet()->SetCellValue('J1', 'Descripción textual de los requisitos específicos del operador económico para poder participar en la licitación'); $objPHPExcel->getActiveSheet()->SetCellValue('K1', 'Contrato sujeto a regulación armonizadaF'); return $objPHPExcel; } private function cabeceraCriterioADjudicacion($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(7); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Tipo criterio de adjudicación'); $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Descripción textual del criterio de adjudicación'); return $objPHPExcel; } private function cabeceraCriteriosFinancieros($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(8); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Tipo criterio de evaluación financiera'); $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Descripción textual del criterio de evaluación financiera'); return $objPHPExcel; } private function cabeceraCriteriosTecnicos($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(9); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Tipo criterio de evaluación técnica'); $objPHPExcel->getActiveSheet()->SetCellValue('C1', 'Descripción textual del criterio de evaluación técnica'); return $objPHPExcel; } private function cabeceraRequisitosParticipacion($objPHPExcel) { $objPHPExcel->setActiveSheetIndex(10); $objPHPExcel->getActiveSheet()->SetCellValue('A1', 'Identificador'); $objPHPExcel->getActiveSheet()->SetCellValue('B1', 'Tipo Requisitos Participacion'); return $objPHPExcel; } } /* End of file ExportXls.php */ /* Location: ./application/controllers/ExportXls.php */