ExportXls.php 42KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763
  1. <?php
  2. defined('BASEPATH') or exit('No direct script access allowed');
  3. use PhpOffice\PhpSpreadsheet\Spreadsheet;
  4. use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
  5. class ExportXls extends CI_Controller
  6. {
  7. private $filaDocumentoGeneral = 2;
  8. private $filaDocumentoTech = 2;
  9. private $filaDocumentoAdd = 2;
  10. private $filaDocumentoLegal = 2;
  11. private $filaProjectLot = 2;
  12. public function __construct()
  13. {
  14. parent::__construct();
  15. $this->load->model("Xlsexport_model");
  16. }
  17. public function exportDatosCompletos()
  18. {
  19. $licitacionesResult = $this->Xlsexport_model->getLicitaciones();
  20. $result = array();
  21. //$start = $this->starttime();
  22. if ($licitacionesResult['num_rows'] > 0) {
  23. $result = $this->mapearDatos($licitacionesResult);
  24. }
  25. $spreadsheet = new Spreadsheet();
  26. //$sheet = $spreadsheet->getActiveSheet();
  27. //$sheet->setCellValue('A1', 'Hello World !');
  28. $spreadsheet->createSheet();
  29. $spreadsheet->createSheet();
  30. $spreadsheet->createSheet();
  31. $spreadsheet->createSheet();
  32. $spreadsheet->createSheet();
  33. $spreadsheet->createSheet();
  34. $spreadsheet->createSheet();
  35. $spreadsheet->createSheet();
  36. $spreadsheet->createSheet();
  37. $spreadsheet->createSheet();
  38. $spreadsheet->createSheet();
  39. $spreadsheet->createSheet();
  40. $spreadsheet->createSheet();
  41. $spreadsheet->createSheet();
  42. $filaExcel = 1;
  43. foreach ($result as $dato) {
  44. if ($filaExcel == 1) {
  45. $spreadsheet = $this->cabecerasOpenPlacspFirstSheet($spreadsheet);
  46. /*$spreadsheet = $this->cabecerasOpenPlacsBitacora($spreadsheet, 1);
  47. $spreadsheet = $this->cabeceraMediosComunicacion($spreadsheet);
  48. $spreadsheet = $this->cabeceraMediosComunicacionDocumentos($spreadsheet);
  49. $spreadsheet = $this->cabeceraTenderResult($spreadsheet);
  50. $spreadsheet = $this->cabeceraTenderingTerms($spreadsheet);
  51. $spreadsheet = $this->cabeceraTipoProcedimiento($spreadsheet);
  52. $spreadsheet = $this->cabeceraCriterioADjudicacion($spreadsheet);
  53. $spreadsheet = $this->cabeceraCriteriosFinancieros($spreadsheet);
  54. $spreadsheet = $this->cabeceraCriteriosTecnicos($spreadsheet);
  55. $spreadsheet = $this->cabeceraRequisitosParticipacion($spreadsheet);
  56. $spreadsheet = $this->cabecerasOpenPlacspDocumentos($spreadsheet, 11);
  57. $spreadsheet = $this->cabecerasOpenPlacspDocumentos($spreadsheet, 12);
  58. $spreadsheet = $this->cabecerasOpenPlacspDocumentos($spreadsheet, 13);
  59. $spreadsheet = $this->cabecerasOpenPlacspDocumentos($spreadsheet, 14);*/
  60. } else {
  61. $spreadsheet = $this->datosCompletosHojaLicitacion($spreadsheet, $filaExcel, $dato);
  62. /*$spreadsheet = $this->datosCompletosHojaBitacora($spreadsheet, $dato);
  63. $spreadsheet = $this->datosCompletosDocumentosGenerales($spreadsheet, $dato);
  64. $spreadsheet = $this->datosCompletosDocumentosTecnicos($spreadsheet, $dato);
  65. $spreadsheet = $this->datosCompletosDocumentosAdicionales($spreadsheet, $dato);
  66. $spreadsheet = $this->datosCompletosDocumentosLegales($spreadsheet, $dato);*/
  67. }
  68. //$spreadsheet = $this->datosCompletosMediosPublicacion($spreadsheet);
  69. //$spreadsheet = $this->datosMedioPublicacion($spreadsheet);
  70. /*$spreadsheet = $this->datosCompletosResultadoDelProcedimiento($spreadsheet);
  71. $spreadsheet = $this->datosCompletosOfertas($spreadsheet);
  72. $spreadsheet = $this->datosCriterioAdjudicacion($spreadsheet);
  73. $spreadsheet = $this->datosCriterioEvaluacionFinanciera($spreadsheet);
  74. $spreadsheet = $this->datosCriterioEvaluacionTecnica($spreadsheet);
  75. $spreadsheet = $this->datosRequisitosParticipacion($spreadsheet);
  76. $spreadsheet = $this->datosCompletosTipoProcedimiento($spreadsheet);*/
  77. $filaExcel++;
  78. }
  79. $nombreAchivo = 'test.xlsx';
  80. $ruta = FCPATH . 'uploads/' . $nombreAchivo;
  81. $writer = new Xlsx($spreadsheet);
  82. $writer->save($ruta);
  83. // Write the Excel file to filename some_excel_file.xlsx in the current directory
  84. // Redirect output to a client’s web browser (Excel5)
  85. header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
  86. header('Content-Disposition: attachment;filename=' . $nombreAchivo . '');
  87. header('Pragma: cache');
  88. header('Cache-Control: private');
  89. //$objWriter = PHPExcel_IOFactory::createWriter($spreadsheet, 'Excel2007');
  90. //$objWriter->save(FCPATH . 'uploads/' . $nombreAchivo);*/
  91. }
  92. public function starttime()
  93. {
  94. $r = explode(' ', microtime());
  95. $r = $r[1] + $r;
  96. return $r;
  97. }
  98. public function endtime($starttime)
  99. {
  100. $r = explode(' ', microtime());
  101. $r = $r[1] + $r;
  102. $r = round($r - $starttime, 4);
  103. return '<strong>Execution Time</strong>: ' . $r . ' seconds<br />';
  104. }
  105. public function mapearDatos($licitacionesResult): array
  106. {
  107. $result = array();
  108. foreach ($licitacionesResult['datos'] as $licitacion) {
  109. $result[$licitacion->id_licitacion]['licitacion'] = array(
  110. 'id_licitacion' => $licitacion->id_licitacion,
  111. "link_uri" => $licitacion->link_uri,
  112. "updated" => $licitacion->updated,
  113. );
  114. $result[$licitacion->id_licitacion]['contract'] = array(
  115. "descripcion" => $licitacion->contrato_status,
  116. "contractFolderStatusCode" => $licitacion->contractFolderStatusCode,
  117. "contractFolderID" => $licitacion->contractFolderID,
  118. );
  119. $result[$licitacion->id_licitacion]['locatedParty'] = array(
  120. "contractingPartyTypeCode" => $licitacion->contractingPartyTypeCode,
  121. "buyerProfileURIID" => $licitacion->buyerProfileURIID,
  122. "tipo_administracion" => $licitacion->tipo_administracion,
  123. );
  124. $result[$licitacion->id_licitacion]['party'] = array(
  125. "partyName" => $licitacion->partyName,
  126. "codpostal" => $licitacion->codpostal,
  127. "websiteURI" => $licitacion->websiteURI,
  128. "city" => $licitacion->city,
  129. "direccion" => $licitacion->direccion,
  130. "contact_name" => $licitacion->contact_name,
  131. "contact_email" => $licitacion->contact_email,
  132. );
  133. /*foreach ($result[$licitacion->id_licitacion]['party'] as $row) {
  134. $result[$licitacion->id_licitacion]['partyActivity'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_party_party_idenfitication", "id_ajena_licitacion", $row['id']);
  135. }*/
  136. $result[$licitacion->id_licitacion]['project'] = array(
  137. "name" => $licitacion->name,
  138. "estimatedOverallContractAmount" => $licitacion->estimatedOverallContractAmount,
  139. "taxExclusiveAmount" => $licitacion->taxExclusiveAmount,
  140. "totalAmount" => $licitacion->totalAmount,
  141. "tipo_contrato" => $licitacion->tipo_contrato,
  142. "countrySubentityCode" => $licitacion->countrySubentityCode,
  143. "countrySubentity" => $licitacion->countrySubentity,
  144. "durationMesure" => $licitacion->durationMesure,
  145. "medida" => $licitacion->medida,
  146. "duracion_inicio" => $licitacion->duracion_inicio,
  147. "duracion_fin" => $licitacion->duracion_fin,
  148. "contractExtension" => $licitacion->contractExtension,
  149. );
  150. $result[$licitacion->id_licitacion]['tenderProcess'] = array(
  151. "tipoTender" => $licitacion->tipoTender,
  152. "contrato_sistema" => $licitacion->contrato_sistema,
  153. "urgency" => $licitacion->urgency,
  154. "submision" => $licitacion->submision,
  155. );
  156. $result[$licitacion->id_licitacion]['tenderTerms'] = array(
  157. "procurementLegislationDocumentReference" => $licitacion->procurementLegislationDocumentReference,
  158. "allowedSubcontractTerms" => $licitacion->allowedSubcontractTerms,
  159. );
  160. /*foreach ($result[$licitacion->id_licitacion]['project'] as $row) {
  161. //$result[$licitacion->id_licitacion]['projectActivity'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_procurement_project_itemClass", "id_ajena_licitacion", $row['id']);
  162. }*/
  163. /*$result[$licitacion->id_licitacion]['projectLot'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_procurement_project_lot", $licitacion->id_licitacion);
  164. foreach ($result[$licitacion->id_licitacion]['projectLot'] as $row) {
  165. //$result[$licitacion->id_licitacion]['projectLotActivity'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_procurement_project_lot_item", "id_ajena_licitacion", $row['id']);
  166. }*/
  167. /*$result[$licitacion->id_licitacion]['tenderResult'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_tender_result", $licitacion->id_licitacion);
  168. $result[$licitacion->id_licitacion]['tenderProcess'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_tendering_process", $licitacion->id_licitacion);
  169. $result[$licitacion->id_licitacion]['tenderTerms'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_tendering_terms", $licitacion->id_licitacion);
  170. $result[$licitacion->id_licitacion]['validNoticeInfo'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_valid_notice_info", $licitacion->id_licitacion);
  171. $result[$licitacion->id_licitacion]['techDocs'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_technical_documents", $licitacion->id_licitacion);
  172. $result[$licitacion->id_licitacion]['legalDocs'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_legal_documents", $licitacion->id_licitacion);
  173. $result[$licitacion->id_licitacion]['generalDocs'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_general_documents", $licitacion->id_licitacion);
  174. $result[$licitacion->id_licitacion]['additDocs'] = $this->Xlsexport_model->getDatosByTablaAndLicitacion("maestro_additional_documents", $licitacion->id_licitacion);*/
  175. }
  176. return $result;
  177. }
  178. private function datosCompletosHojaLicitacion($spreadsheet, $filaExcel, $datosLicitacion)
  179. {
  180. $sheet = $spreadsheet->getSheet(0);
  181. $sheet->setTitle("Datos Licitación");
  182. $styleArr = array(
  183. "font" => array(
  184. "bold" => true,
  185. "color" => array("rgb" => "22B9FF"),
  186. "size" => 13,
  187. ),
  188. );
  189. $updatedFormat = new DateTime($datosLicitacion['licitacion']['updated']);
  190. $updated = \PhpOffice\PhpSpreadsheet\Shared\Date::PHPToExcel($updatedFormat);
  191. $sheet->getStyle("A1:AB1")->applyFromArray($styleArr);
  192. $sheet->setCellValue('A' . $filaExcel, $datosLicitacion['licitacion']['id_licitacion']);
  193. $sheet->setCellValue('B' . $filaExcel, $datosLicitacion['licitacion']['link_uri']);
  194. $sheet->setCellValue('C' . $filaExcel, $updated);
  195. $sheet->getStyle('C' . $filaExcel)
  196. ->getNumberFormat()
  197. ->setFormatCode(\PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_DATE_DATETIME);
  198. $sheet->setCellValue('E' . $filaExcel, "");
  199. $sheet->setCellValue('F' . $filaExcel, $datosLicitacion['contract']['descripcion']);
  200. $sheet->setCellValue('G' . $filaExcel, $datosLicitacion['contract']['contractFolderID']);
  201. $sheet->setCellValue('H' . $filaExcel, $datosLicitacion['project']['name']);
  202. $sheet->setCellValue('I' . $filaExcel, $datosLicitacion['project']['estimatedOverallContractAmount']);
  203. $sheet->setCellValue('J' . $filaExcel, $datosLicitacion['project']['taxExclusiveAmount']);
  204. $sheet->setCellValue('K' . $filaExcel, $datosLicitacion['project']['totalAmount']);
  205. /*$cpvProject = "";
  206. for ($i = 0; $i < count($datosLicitacion['projectActivity']); $i++) {
  207. $cpvProject .= $datosLicitacion['projectActivity'][$i]['itemClassification_value'] . ";";
  208. }*/
  209. /*$cpvParty = "";
  210. //TODO OBtener solo el DIR3
  211. for ($i = 0; $i < count($datosLicitacion['partyActivity']); $i++) {
  212. $cpvParty .= $datosLicitacion['partyActivity'][$i]['idPartyIdent'] . ";";
  213. }*/
  214. $sheet->setCellValue('L' . $filaExcel, ""); //$cpvProject);
  215. $sheet->setCellValue('M' . $filaExcel, $datosLicitacion['project']['tipo_contrato']);
  216. $sheet->setCellValue('N' . $filaExcel, $datosLicitacion['project']['countrySubentityCode'] . " - " . $datosLicitacion['project']['countrySubentity']);
  217. $sheet->setCellValue('O' . $filaExcel, $datosLicitacion['party']['partyName']);
  218. $sheet->setCellValue('P' . $filaExcel, "");
  219. $sheet->setCellValue('Q' . $filaExcel, $datosLicitacion['locatedParty']['contractingPartyTypeCode']);
  220. $sheet->setCellValue('R' . $filaExcel, ""); //$cpvParty);
  221. $sheet->setCellValue('S' . $filaExcel, $datosLicitacion['locatedParty']['buyerProfileURIID']); //Buscar DIR3
  222. $sheet->setCellValue('T' . $filaExcel, $datosLicitacion['locatedParty']['tipo_administracion']);
  223. $sheet->setCellValue('U' . $filaExcel, $datosLicitacion['party']['codpostal']);
  224. $sheet->setCellValue('V' . $filaExcel, $datosLicitacion['tenderProcess']['tipoTender']);
  225. $sheet->setCellValue('W' . $filaExcel, $datosLicitacion['tenderProcess']['contrato_sistema']);
  226. $sheet->setCellValue('X' . $filaExcel, $datosLicitacion['tenderProcess']['urgency']);
  227. $sheet->setCellValue('Y' . $filaExcel, $datosLicitacion['tenderProcess']['submision']);
  228. $sheet->setCellValue('Z' . $filaExcel, $datosLicitacion['tenderTerms']['procurementLegislationDocumentReference']);
  229. $sheet->setCellValue('AA' . $filaExcel, $datosLicitacion['tenderTerms']['allowedSubcontractTerms']);
  230. $sheet->setCellValue('AB' . $filaExcel, $datosLicitacion['project']['durationMesure']);
  231. $sheet->setCellValue('AC' . $filaExcel, $datosLicitacion['project']['medida']);
  232. $sheet->setCellValue('AD' . $filaExcel, $datosLicitacion['project']['duracion_inicio']);
  233. $sheet->setCellValue('AE' . $filaExcel, $datosLicitacion['project']['duracion_fin']);
  234. $sheet->setCellValue('AF' . $filaExcel, $datosLicitacion['project']['contractExtension']);
  235. $sheet->setCellValue('AG' . $filaExcel, $datosLicitacion['party']['websiteURI']);
  236. $sheet->setCellValue('AH' . $filaExcel, $datosLicitacion['party']['city']);
  237. $sheet->setCellValue('AI' . $filaExcel, $datosLicitacion['party']['direccion']);
  238. $sheet->setCellValue('AJ' . $filaExcel, $datosLicitacion['party']['contact_name']);
  239. $sheet->setCellValue('AK' . $filaExcel, $datosLicitacion['party']['contact_email']);
  240. return $spreadsheet;
  241. }
  242. private function datosCompletosHojaBitacora($spreadsheet, $datosLicitacion)
  243. {
  244. $spreadsheet->setActiveSheetIndex(1);
  245. $spreadsheet->getActiveSheet()->setTitle("Bitácora");
  246. foreach ($datosLicitacion['projectLot'] as $datos) {
  247. $spreadsheet->getActiveSheet()->SetCellValue('A' . $this->filaProjectLot, $datos['id_ajena_licitacion']);
  248. $spreadsheet->getActiveSheet()->SetCellValue('B' . $this->filaProjectLot, $datos['name']);
  249. $spreadsheet->getActiveSheet()->SetCellValue('C' . $this->filaProjectLot, $datos['idProcurementLot']);
  250. $spreadsheet->getActiveSheet()->SetCellValue('D' . $this->filaProjectLot, $datos['totalAmount']);
  251. $spreadsheet->getActiveSheet()->SetCellValue('E' . $this->filaProjectLot, $datos['taxExclusiveAmount']);
  252. $spreadsheet->getActiveSheet()->SetCellValue('F' . $this->filaProjectLot, $datos['countrySubentity']);
  253. $spreadsheet->getActiveSheet()->SetCellValue('G' . $this->filaProjectLot, $datos['countrySubentityCode']);
  254. $spreadsheet->getActiveSheet()->SetCellValue('H' . $this->filaProjectLot, $datos['nameLocation']);
  255. $cpv = "";
  256. $projectLotActivity = $this->Xlsexport_model->getProjectLotActivityByProjectLot($datos['id']);
  257. if ($projectLotActivity['num_rows'] > 0) {
  258. for ($i = 0; $i < count($projectLotActivity['datos']); $i++) {
  259. $cpv .= $projectLotActivity['datos'][$i]['idItem'] . ";";
  260. }
  261. $spreadsheet->getActiveSheet()->SetCellValue('I' . $this->filaProjectLot, $cpv);
  262. }
  263. $this->filaProjectLot++;
  264. }
  265. return $spreadsheet;
  266. }
  267. private function datosCompletosMediosPublicacion($spreadsheet)
  268. {
  269. $spreadsheet->setActiveSheetIndex(2);
  270. $spreadsheet->getActiveSheet()->setTitle("Medios de publicación");
  271. $datos = $this->Xlsexport_model->getValidNoticeInfoRelacion();
  272. if ($datos['num_rows'] > 0) {
  273. $aux = 2;
  274. foreach ($datos['datos'] as $datos) {
  275. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']);
  276. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['noticeTypeCode']);
  277. $spreadsheet->getActiveSheet()->SetCellValue('C' . $aux, $datos['publicationMediaName']);
  278. $aux++;
  279. }
  280. }
  281. return $spreadsheet;
  282. }
  283. private function datosMedioPublicacion($spreadsheet)
  284. {
  285. $spreadsheet->setActiveSheetIndex(3);
  286. $spreadsheet->getActiveSheet()->setTitle("Documentos Medios Comm");
  287. $datos = $this->Xlsexport_model->getDatosRelacionadasTablaWithoutLicitacion("maestro_valid_notice_info_documento", "maestro_valid_notice_info", "id_ajena_vni");
  288. if ($datos['num_rows'] > 0) {
  289. $aux = 2;
  290. foreach ($datos['datos'] as $row) {
  291. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $row['id_ajena_licitacion']);
  292. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $row['documento']);
  293. $spreadsheet->getActiveSheet()->SetCellValue('C' . $aux, $row['filename']);
  294. $aux++;
  295. }
  296. }
  297. return $spreadsheet;
  298. }
  299. private function datosCompletosResultadoDelProcedimiento($spreadsheet)
  300. {
  301. $spreadsheet->setActiveSheetIndex(4);
  302. $spreadsheet->getActiveSheet()->setTitle("Resultado del Procedimiento");
  303. $datos = $this->Xlsexport_model->getTenderResult("maestro_tender_result");
  304. if ($datos['num_rows'] > 0) {
  305. $aux = 2;
  306. foreach ($datos['datos'] as $datos) {
  307. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']);
  308. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['resultCode']);
  309. $spreadsheet->getActiveSheet()->SetCellValue('C' . $aux, $datos['description']);
  310. $spreadsheet->getActiveSheet()->SetCellValue('D' . $aux, $datos['awardDate']);
  311. $spreadsheet->getActiveSheet()->SetCellValue('E' . $aux, $datos['receivedTenderQuantity']);
  312. $spreadsheet->getActiveSheet()->SetCellValue('F' . $aux, $datos['lowerTenderAmount']);
  313. $spreadsheet->getActiveSheet()->SetCellValue('G' . $aux, $datos['higherTenderAmount']);
  314. $spreadsheet->getActiveSheet()->SetCellValue('H' . $aux, $datos['startDate']);
  315. $spreadsheet->getActiveSheet()->SetCellValue('I' . $aux, $datos['smeawardedIndicator']);
  316. $spreadsheet->getActiveSheet()->SetCellValue('J' . $aux, $datos['contract_id']);
  317. $spreadsheet->getActiveSheet()->SetCellValue('K' . $aux, $datos['contract_issueDate']);
  318. $spreadsheet->getActiveSheet()->SetCellValue('L' . $aux, $datos['partyIdentification']);
  319. $spreadsheet->getActiveSheet()->SetCellValue('M' . $aux, $datos['partyName']);
  320. $spreadsheet->getActiveSheet()->SetCellValue('N' . $aux, $datos['TaxExclusiveAmount']);
  321. $spreadsheet->getActiveSheet()->SetCellValue('O' . $aux, $datos['PayableAmount']);
  322. $aux++;
  323. }
  324. }
  325. return $spreadsheet;
  326. }
  327. private function datosCompletosTipoProcedimiento($spreadsheet)
  328. {
  329. $spreadsheet->setActiveSheetIndex(5);
  330. $spreadsheet->getActiveSheet()->setTitle("Tipo Procedimiento");
  331. $datos = $this->Xlsexport_model->getTenderProcessRelacion();
  332. if ($datos['num_rows'] > 0) {
  333. $aux = 2;
  334. foreach ($datos['datos'] as $datos) {
  335. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']);
  336. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['procedureCode']);
  337. $spreadsheet->getActiveSheet()->SetCellValue('C' . $aux, $datos['urgencyCode']);
  338. $spreadsheet->getActiveSheet()->SetCellValue('D' . $aux, $datos['contractingSystemCode']);
  339. $spreadsheet->getActiveSheet()->SetCellValue('E' . $aux, $datos['partPresentationCode']);
  340. $spreadsheet->getActiveSheet()->SetCellValue('F' . $aux, $datos['submissionMethodCode']);
  341. $spreadsheet->getActiveSheet()->SetCellValue('G' . $aux, $datos['maximumLotPresentationQuantity']);
  342. $spreadsheet->getActiveSheet()->SetCellValue('H' . $aux, $datos['maximumTendererAwardedLotsQuantity']);
  343. $spreadsheet->getActiveSheet()->SetCellValue('I' . $aux, $datos['lotsCombinationContractingAuthorityRights']);
  344. $spreadsheet->getActiveSheet()->SetCellValue('J' . $aux, $datos['deadLineEndDate']);
  345. $spreadsheet->getActiveSheet()->SetCellValue('K' . $aux, $datos['deadLineEndTime']);
  346. $spreadsheet->getActiveSheet()->SetCellValue('L' . $aux, $datos['deadLineDescription']);
  347. $spreadsheet->getActiveSheet()->SetCellValue('M' . $aux, $datos['auctionTerms']);
  348. $spreadsheet->getActiveSheet()->SetCellValue('N' . $aux, $datos['documentAvailablePeriod_EndDate']);
  349. $spreadsheet->getActiveSheet()->SetCellValue('O' . $aux, $datos['documentAvailablePeriod_EndTime']);
  350. $aux++;
  351. }
  352. }
  353. return $spreadsheet;
  354. }
  355. private function datosCompletosOfertas($spreadsheet)
  356. {
  357. $spreadsheet->setActiveSheetIndex(6);
  358. $spreadsheet->getActiveSheet()->setTitle("Ofertas");
  359. $datos = $this->Xlsexport_model->getTenderingTermsGarantia("maestro_tendering_terms");
  360. if ($datos['num_rows'] > 0) {
  361. $aux = 2;
  362. foreach ($datos['datos'] as $datos) {
  363. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']);
  364. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['requiredCurriculaIndicator']);
  365. $spreadsheet->getActiveSheet()->SetCellValue('C' . $aux, $datos['variantConstraintIndicator']);
  366. $spreadsheet->getActiveSheet()->SetCellValue('D' . $aux, $datos['fundingProgramCode']);
  367. $spreadsheet->getActiveSheet()->SetCellValue('E' . $aux, $datos['guaranteeTypeCode']);
  368. $spreadsheet->getActiveSheet()->SetCellValue('F' . $aux, $datos['requiredFinancialGuarantee_Amount']);
  369. $spreadsheet->getActiveSheet()->SetCellValue('G' . $aux, $datos['language']);
  370. $spreadsheet->getActiveSheet()->SetCellValue('H' . $aux, $datos['allowedSubcontractTerms']);
  371. $spreadsheet->getActiveSheet()->SetCellValue('I' . $aux, $datos['description']);
  372. $spreadsheet->getActiveSheet()->SetCellValue('J' . $aux, $datos['personalSituation']);
  373. $spreadsheet->getActiveSheet()->SetCellValue('K' . $aux, $datos['procurementLegislationDocumentReference']);
  374. $aux++;
  375. }
  376. }
  377. return $spreadsheet;
  378. }
  379. private function datosCriterioAdjudicacion($spreadsheet)
  380. {
  381. $spreadsheet->setActiveSheetIndex(7);
  382. $spreadsheet->getActiveSheet()->setTitle("Criterio Adjudicación");
  383. /*$datos = $this->Xlsexport_model->getDatosRelacionadasTablaWithoutLicitacion("maestro_tendering_terms_awarding_terms", "maestro_tendering_terms", "id_ajena_tt");
  384. if ($datos['num_rows'] > 0) {
  385. $aux = 2;
  386. foreach ($datos['datos'] as $datos) {
  387. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_tt']);
  388. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['evaluationCriteriaTypeCode']);
  389. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['description']);
  390. $aux++;
  391. }
  392. }*/
  393. return $spreadsheet;
  394. }
  395. private function datosCriterioEvaluacionFinanciera($spreadsheet)
  396. {
  397. $spreadsheet->setActiveSheetIndex(8);
  398. $spreadsheet->getActiveSheet()->setTitle("CriteriosEvaluacionFinanciera");
  399. $datos = $this->Xlsexport_model->getTenderingTermsCriteriosFinanciacion();
  400. if ($datos['num_rows'] > 0) {
  401. $aux = 2;
  402. foreach ($datos['datos'] as $datos) {
  403. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']);
  404. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['evaluationCriteriaTypeCode']);
  405. $spreadsheet->getActiveSheet()->SetCellValue('C' . $aux, $datos['description']);
  406. $aux++;
  407. }
  408. }
  409. return $spreadsheet;
  410. }
  411. private function datosCriterioEvaluacionTecnica($spreadsheet)
  412. {
  413. $spreadsheet->setActiveSheetIndex(9);
  414. $spreadsheet->getActiveSheet()->setTitle("Criterios Evaluación Técnica");
  415. $datos = $this->Xlsexport_model->getTenderingTermsCriteriosTecnicos();
  416. if ($datos['num_rows'] > 0) {
  417. $aux = 2;
  418. foreach ($datos['datos'] as $datos) {
  419. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']);
  420. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['evaluationCriteriaTypeCode']);
  421. $spreadsheet->getActiveSheet()->SetCellValue('C' . $aux, $datos['description']);
  422. $aux++;
  423. }
  424. }
  425. return $spreadsheet;
  426. }
  427. private function datosRequisitosParticipacion($spreadsheet)
  428. {
  429. $spreadsheet->setActiveSheetIndex(10);
  430. $spreadsheet->getActiveSheet()->setTitle("Requisitos Participación");
  431. $datos = $this->Xlsexport_model->getTenderingTermsRequisitos();
  432. if ($datos['num_rows'] > 0) {
  433. $aux = 2;
  434. foreach ($datos['datos'] as $datos) {
  435. $spreadsheet->getActiveSheet()->SetCellValue('A' . $aux, $datos['id_ajena_licitacion']);
  436. $spreadsheet->getActiveSheet()->SetCellValue('B' . $aux, $datos['evaluationCriteriaTypeCode']);
  437. $aux++;
  438. }
  439. }
  440. return $spreadsheet;
  441. }
  442. private function datosCompletosDocumentosGenerales($spreadsheet, $datosLicitacion)
  443. {
  444. $spreadsheet->setActiveSheetIndex(11);
  445. $spreadsheet->getActiveSheet()->setTitle("Documentos Generales");
  446. foreach ($datosLicitacion['generalDocs'] as $doc) {
  447. $spreadsheet->getActiveSheet()->SetCellValue('A' . $this->filaDocumentoGeneral, $doc['id_ajena_licitacion']);
  448. $spreadsheet->getActiveSheet()->SetCellValue('B' . $this->filaDocumentoGeneral, $doc['attachment']);
  449. $spreadsheet->getActiveSheet()->SetCellValue('C' . $this->filaDocumentoGeneral, $doc['fileName']);
  450. $spreadsheet->getActiveSheet()->SetCellValue('D' . $this->filaDocumentoGeneral, $doc['idDoc']);
  451. $this->filaDocumentoGeneral++;
  452. }
  453. return $spreadsheet;
  454. }
  455. private function datosCompletosDocumentosAdicionales($spreadsheet, $datosLicitacion)
  456. {
  457. $spreadsheet->setActiveSheetIndex(12);
  458. $spreadsheet->getActiveSheet()->setTitle("Documentos Adicionales");
  459. foreach ($datosLicitacion['additDocs'] as $doc) {
  460. $spreadsheet->getActiveSheet()->SetCellValue('A' . $this->filaDocumentoAdd, $doc['id_ajena_licitacion']);
  461. $spreadsheet->getActiveSheet()->SetCellValue('B' . $this->filaDocumentoAdd, $doc['attachment']);
  462. $spreadsheet->getActiveSheet()->SetCellValue('C' . $this->filaDocumentoAdd, $doc['idDoc']);
  463. $spreadsheet->getActiveSheet()->SetCellValue('D' . $this->filaDocumentoAdd, $doc['documentHash']);
  464. $this->filaDocumentoAdd++;
  465. }
  466. return $spreadsheet;
  467. }
  468. private function datosCompletosDocumentosTecnicos($spreadsheet, $datosLicitacion)
  469. {
  470. $spreadsheet->setActiveSheetIndex(13);
  471. $spreadsheet->getActiveSheet()->setTitle("Documentos Técnicos");
  472. foreach ($datosLicitacion['techDocs'] as $doc) {
  473. $spreadsheet->getActiveSheet()->SetCellValue('A' . $this->filaDocumentoTech, $doc['id_ajena_licitacion']);
  474. $spreadsheet->getActiveSheet()->SetCellValue('B' . $this->filaDocumentoTech, $doc['attachment']);
  475. $spreadsheet->getActiveSheet()->SetCellValue('C' . $this->filaDocumentoTech, $doc['idDoc']);
  476. $spreadsheet->getActiveSheet()->SetCellValue('D' . $this->filaDocumentoTech, $doc['documentHash']);
  477. $this->filaDocumentoTech++;
  478. }
  479. return $spreadsheet;
  480. }
  481. private function datosCompletosDocumentosLegales($spreadsheet, $datosLicitacion)
  482. {
  483. $spreadsheet->setActiveSheetIndex(14);
  484. $spreadsheet->getActiveSheet()->setTitle("Documentos Legales");
  485. foreach ($datosLicitacion['legalDocs'] as $doc) {
  486. $spreadsheet->getActiveSheet()->SetCellValue('A' . $this->filaDocumentoLegal, $doc['id_ajena_licitacion']);
  487. $spreadsheet->getActiveSheet()->SetCellValue('B' . $this->filaDocumentoLegal, $doc['attachment']);
  488. $spreadsheet->getActiveSheet()->SetCellValue('C' . $this->filaDocumentoLegal, $doc['idDoc']);
  489. $spreadsheet->getActiveSheet()->SetCellValue('D' . $this->filaDocumentoLegal, $doc['documentHash']);
  490. $this->filaDocumentoLegal++;
  491. }
  492. return $spreadsheet;
  493. }
  494. private function cabecerasOpenPlacspFirstSheet($spreadsheet)
  495. {
  496. $spreadsheet->setActiveSheetIndex(0);
  497. $spreadsheet->getActiveSheet()->SetCellValue('A1', "Identificador");
  498. $spreadsheet->getActiveSheet()->SetCellValue('B1', "Link licitación");
  499. $spreadsheet->getActiveSheet()->SetCellValue('C1', "Fecha actualización");
  500. $spreadsheet->getActiveSheet()->SetCellValue('D1', "Vigente/Anulada/Archivada");
  501. $spreadsheet->getActiveSheet()->SetCellValue('E1', "Primera publicación");
  502. $spreadsheet->getActiveSheet()->SetCellValue('F1', "Estado");
  503. $spreadsheet->getActiveSheet()->SetCellValue('G1', "Número de expediente");
  504. $spreadsheet->getActiveSheet()->SetCellValue('H1', "Objeto del Contrato");
  505. $spreadsheet->getActiveSheet()->SetCellValue('I1', "Valor estimado del contrato");
  506. $spreadsheet->getActiveSheet()->SetCellValue('J1', "Presupuesto base sin impuestos");
  507. $spreadsheet->getActiveSheet()->SetCellValue('K1', "Presupuesto base con impuestos");
  508. $spreadsheet->getActiveSheet()->SetCellValue('L1', "CPV");
  509. $spreadsheet->getActiveSheet()->SetCellValue('M1', "Tipo de contrato");
  510. $spreadsheet->getActiveSheet()->SetCellValue('N1', "Lugar de ejecución");
  511. $spreadsheet->getActiveSheet()->SetCellValue('O1', "Órgano de Contratación");
  512. $spreadsheet->getActiveSheet()->SetCellValue('P1', "ID OC en PLACSP");
  513. $spreadsheet->getActiveSheet()->SetCellValue('Q1', "NIF OC");
  514. $spreadsheet->getActiveSheet()->SetCellValue('R1', "DIR3");
  515. $spreadsheet->getActiveSheet()->SetCellValue('S1', "Enlace al Perfil de Contratante del OC");
  516. $spreadsheet->getActiveSheet()->SetCellValue('T1', "Tipo de Administración");
  517. $spreadsheet->getActiveSheet()->SetCellValue('U1', "Código Postal");
  518. $spreadsheet->getActiveSheet()->SetCellValue('V1', "Tipo de procedimiento");
  519. $spreadsheet->getActiveSheet()->SetCellValue('W1', "Sistema de contratación");
  520. $spreadsheet->getActiveSheet()->SetCellValue('X1', "Tramitación");
  521. $spreadsheet->getActiveSheet()->SetCellValue('Y1', "Forma de presentación de la oferta");
  522. $spreadsheet->getActiveSheet()->SetCellValue('Z1', "Directiva de aplicación");
  523. $spreadsheet->getActiveSheet()->SetCellValue('AA1', "Subcontratación permitida");
  524. $spreadsheet->getActiveSheet()->SetCellValue('AB1', "Duración Contrato");
  525. $spreadsheet->getActiveSheet()->SetCellValue('AC1', "Tipo de duración");
  526. $spreadsheet->getActiveSheet()->SetCellValue('AD1', "Inicio contrato");
  527. $spreadsheet->getActiveSheet()->SetCellValue('AE1', "Fin contrato");
  528. $spreadsheet->getActiveSheet()->SetCellValue('AF1', "Extension Contrato");
  529. $spreadsheet->getActiveSheet()->SetCellValue('AG1', "URL Organo Contratación");
  530. $spreadsheet->getActiveSheet()->SetCellValue('AH1', "Ciudad Organo Contratación");
  531. $spreadsheet->getActiveSheet()->SetCellValue('AI1', "Dirección Organo Contratación");
  532. $spreadsheet->getActiveSheet()->SetCellValue('AJ1', "Nombre Contacto Organo Contratación");
  533. $spreadsheet->getActiveSheet()->SetCellValue('AK1', "Email contacto Organo Contratación");
  534. return $spreadsheet;
  535. }
  536. //Cabeceras
  537. private function cabecerasOpenPlacspDocumentos($spreadsheet, $hojaActiva)
  538. {
  539. $spreadsheet->setActiveSheetIndex($hojaActiva);
  540. $spreadsheet->getActiveSheet()->SetCellValue('A1', "Identificador");
  541. $spreadsheet->getActiveSheet()->SetCellValue('B1', "Link Documento");
  542. $spreadsheet->getActiveSheet()->SetCellValue('C1', "Nombre Documento");
  543. $spreadsheet->getActiveSheet()->SetCellValue('D1', "Hash Documento");
  544. return $spreadsheet;
  545. }
  546. private function cabecerasOpenPlacsBitacora($spreadsheet, $hojaActiva)
  547. {
  548. $spreadsheet->setActiveSheetIndex($hojaActiva);
  549. $spreadsheet->getActiveSheet()->SetCellValue('A1', "Identificador");
  550. $spreadsheet->getActiveSheet()->SetCellValue('B1', "Objeto del lote");
  551. $spreadsheet->getActiveSheet()->SetCellValue('C1', "Número de lote");
  552. $spreadsheet->getActiveSheet()->SetCellValue('D1', "Importe sin Impuestos");
  553. $spreadsheet->getActiveSheet()->SetCellValue('E1', "Importe con Impuestos");
  554. $spreadsheet->getActiveSheet()->SetCellValue('F1', "Lugar de ejecución del lote");
  555. $spreadsheet->getActiveSheet()->SetCellValue('G1', "Codigo de ejecución del lote");
  556. $spreadsheet->getActiveSheet()->SetCellValue('H1', "Ciudad de ejecución del lote");
  557. $spreadsheet->getActiveSheet()->SetCellValue('I1', "CPV Project Lot");
  558. return $spreadsheet;
  559. }
  560. private function cabeceraMediosComunicacion($spreadsheet)
  561. {
  562. $spreadsheet->setActiveSheetIndex(2);
  563. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  564. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Tipo de anuncio');
  565. $spreadsheet->getActiveSheet()->SetCellValue('C1', 'Medio de publicación');
  566. return $spreadsheet;
  567. }
  568. private function cabeceraMediosComunicacionDocumentos($spreadsheet)
  569. {
  570. $spreadsheet->setActiveSheetIndex(3);
  571. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  572. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Documento');
  573. $spreadsheet->getActiveSheet()->SetCellValue('C1', 'Nombre Documento');
  574. return $spreadsheet;
  575. }
  576. private function cabeceraTenderResult($spreadsheet)
  577. {
  578. $spreadsheet->setActiveSheetIndex(4);
  579. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  580. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Tipo de resultado');
  581. $spreadsheet->getActiveSheet()->SetCellValue('C1', 'Motivación adjudicación');
  582. $spreadsheet->getActiveSheet()->SetCellValue('D1', 'Fecha del acuerdo');
  583. $spreadsheet->getActiveSheet()->SetCellValue('E1', 'Número de licitadores participadores');
  584. $spreadsheet->getActiveSheet()->SetCellValue('F1', 'Importe Oferta mas baja');
  585. $spreadsheet->getActiveSheet()->SetCellValue('G1', 'Importe Oferta mas alta');
  586. $spreadsheet->getActiveSheet()->SetCellValue('H1', 'Fecha de entrada en vigor');
  587. $spreadsheet->getActiveSheet()->SetCellValue('I1', 'Identifica si es una PYME');
  588. $spreadsheet->getActiveSheet()->SetCellValue('J1', 'Identificador del contrato');
  589. $spreadsheet->getActiveSheet()->SetCellValue('K1', 'Fecha de formalización');
  590. $spreadsheet->getActiveSheet()->SetCellValue('L1', 'Adjudicatario CIF');
  591. $spreadsheet->getActiveSheet()->SetCellValue('M1', 'Nombre Adjudicatario');
  592. $spreadsheet->getActiveSheet()->SetCellValue('N1', 'Importe de adjudicación sin impuestos');
  593. $spreadsheet->getActiveSheet()->SetCellValue('O1', 'Importe de adjudicación con impuestos');
  594. return $spreadsheet;
  595. }
  596. private function cabeceraTipoProcedimiento($spreadsheet)
  597. {
  598. $spreadsheet->setActiveSheetIndex(5);
  599. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  600. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Tipo de Procedimiento');
  601. $spreadsheet->getActiveSheet()->SetCellValue('C1', 'Tipo de Tramitación');
  602. $spreadsheet->getActiveSheet()->SetCellValue('D1', 'Sistema de Contratación');
  603. $spreadsheet->getActiveSheet()->SetCellValue('E1', 'Número de lotes a los que se debe ofertar');
  604. $spreadsheet->getActiveSheet()->SetCellValue('F1', 'Presentación de la oferta');
  605. $spreadsheet->getActiveSheet()->SetCellValue('G1', 'Número de lotes a los que se puede ofertar');
  606. $spreadsheet->getActiveSheet()->SetCellValue('H1', 'Número máximo de lotes que se puede adjudicar un licitador');
  607. $spreadsheet->getActiveSheet()->SetCellValue('I1', 'El poder adjudicador se reserva el derecho de adjudicar contratos que combinen lotes');
  608. $spreadsheet->getActiveSheet()->SetCellValue('J1', 'Fecha limite para la presentación de ofertas');
  609. $spreadsheet->getActiveSheet()->SetCellValue('K1', 'Tiempo limite para la presentación de ofertas');
  610. $spreadsheet->getActiveSheet()->SetCellValue('L1', 'Texto descriptivo de fecha limite de presentación de ofertas');
  611. $spreadsheet->getActiveSheet()->SetCellValue('M1', 'Usa subasta electronica');
  612. $spreadsheet->getActiveSheet()->SetCellValue('N1', 'Fecha límite para obtener los pliegos');
  613. $spreadsheet->getActiveSheet()->SetCellValue('O1', 'Hora límite para obtener los pliegos');
  614. return $spreadsheet;
  615. }
  616. private function cabeceraTenderingTerms($spreadsheet)
  617. {
  618. $spreadsheet->setActiveSheetIndex(6);
  619. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  620. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Se requiere la presentación de Curriculum Vitae de las personas que realizarán el proyecto');
  621. $spreadsheet->getActiveSheet()->SetCellValue('C1', 'Indica que se pueden ofertar variantes');
  622. $spreadsheet->getActiveSheet()->SetCellValue('D1', 'Código descriptivo del tipo de programas que financian este contrato');
  623. $spreadsheet->getActiveSheet()->SetCellValue('E1', 'Tipo de garantia');
  624. $spreadsheet->getActiveSheet()->SetCellValue('F1', 'Porcentaje de la garantíaa');
  625. $spreadsheet->getActiveSheet()->SetCellValue('G1', 'Idioma');
  626. $spreadsheet->getActiveSheet()->SetCellValue('H1', 'Porcentaje de subcontratación máximo especificado para este contrato.');
  627. $spreadsheet->getActiveSheet()->SetCellValue('I1', 'Descripción del objeto de la subcontratación');
  628. $spreadsheet->getActiveSheet()->SetCellValue('J1', 'Descripción textual de los requisitos específicos del operador económico para poder participar en la licitación');
  629. $spreadsheet->getActiveSheet()->SetCellValue('K1', 'Contrato sujeto a regulación armonizadaF');
  630. return $spreadsheet;
  631. }
  632. private function cabeceraCriterioADjudicacion($spreadsheet)
  633. {
  634. $spreadsheet->setActiveSheetIndex(7);
  635. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  636. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Tipo criterio de adjudicación');
  637. $spreadsheet->getActiveSheet()->SetCellValue('C1', 'Descripción textual del criterio de adjudicación');
  638. return $spreadsheet;
  639. }
  640. private function cabeceraCriteriosFinancieros($spreadsheet)
  641. {
  642. $spreadsheet->setActiveSheetIndex(8);
  643. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  644. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Tipo criterio de evaluación financiera');
  645. $spreadsheet->getActiveSheet()->SetCellValue('C1', 'Descripción textual del criterio de evaluación financiera');
  646. return $spreadsheet;
  647. }
  648. private function cabeceraCriteriosTecnicos($spreadsheet)
  649. {
  650. $spreadsheet->setActiveSheetIndex(9);
  651. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  652. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Tipo criterio de evaluación técnica');
  653. $spreadsheet->getActiveSheet()->SetCellValue('C1', 'Descripción textual del criterio de evaluación técnica');
  654. return $spreadsheet;
  655. }
  656. private function cabeceraRequisitosParticipacion($spreadsheet)
  657. {
  658. $spreadsheet->setActiveSheetIndex(10);
  659. $spreadsheet->getActiveSheet()->SetCellValue('A1', 'Identificador');
  660. $spreadsheet->getActiveSheet()->SetCellValue('B1', 'Tipo Requisitos Participacion');
  661. return $spreadsheet;
  662. }
  663. }
  664. /* End of file ExportXls.php */
  665. /* Location: ./application/controllers/ExportXls.php */