diff --git a/booking.py b/booking.py index a3989db..a78d570 100644 --- a/booking.py +++ b/booking.py @@ -742,9 +742,9 @@ class BookingLine(ModelSQL, ModelView): guests = fields.One2Many('hotel.booking.guest', 'booking_line', 'Guests') operation = fields.Many2One('hotel.operation', 'Operation') nationality = fields.Many2One('party.nationality', 'Nationality') - origin_city = fields.Many2One('hotel.migration_city', 'Origin City', + origin_country = fields.Many2One('party.nationality', 'Origin Country', select=True) - target_city = fields.Many2One('hotel.migration_city', 'Target City', + target_country = fields.Many2One('party.nationality', 'Target Country', select=True) registration_state = fields.Selection(REGISTRATION_STATE, 'State Registration', readonly=True) @@ -1181,9 +1181,9 @@ class Guest(ModelSQL, ModelView): ], 'Type Guest') type_guest_string = type_guest.translated('type_guest') nationality = fields.Many2One('party.nationality', 'Nationality') - origin_city = fields.Many2One('hotel.migration_city', 'Origin City', + origin_country = fields.Many2One('party.nationality', 'Origin Country', select=True) - target_city = fields.Many2One('hotel.migration_city', 'Target City', + target_country = fields.Many2One('party.nationality', 'Target Country', select=True) # New fields for speed reason @@ -1204,6 +1204,40 @@ class Guest(ModelSQL, ModelView): ('male', 'Male'), ('', ''), ], 'Sex') + first_name = fields.Char('First Name') + second_name = fields.Char('Second Name') + first_family_name = fields.Char('First Family Name') + second_family_name = fields.Char('Second Family Name') + type_person = fields.Selection([ + ('persona_natural', 'Persona Natural'), + ('persona_juridica', 'Persona Juridica'), + ], 'Type Person') + + @fields.depends('name', 'first_name', 'second_name', + 'first_family_name', 'second_family_name', 'type_person') + def on_change_name(self): + second_family_name = None + first_family_name = None + second_name = None + first_name = None + if self.name and self.type_person == 'persona_natural': + names = self.name.split(' ') + first_name = names[0] + second_family_name = names[-1] + if len(names) > 1: + first_family_name = names[-2] + if len(names) == 2: + second_family_name = None + first_family_name = names[1] + elif len(names) == 5: + second_name = names[1] + ' ' + names[2] + elif len(names) == 4: + second_name = names[1] + + self.second_family_name = second_family_name + self.first_family_name = first_family_name + self.second_name = second_name + self.first_name = first_name def get_rec_name(self, name): if self.party: @@ -1217,6 +1251,10 @@ class Guest(ModelSQL, ModelView): def default_sex(): return 'male' + @staticmethod + def default_type_person(): + return 'persona_natural' + @staticmethod def default_type_document(): return '13' @@ -1225,10 +1263,11 @@ class Guest(ModelSQL, ModelView): def default_principal_guest(): return False - @fields.depends('origin_city', 'target_city') - def on_change_origin_city(self): - if self.origin_city: - self.target_city = self.origin_city.id + @fields.depends('nationality', 'origin_country', 'target_country') + def on_change_nationality(self): + if self.nationality: + self.target_country = self.nationality.id + self.origin_country = self.nationality.id @classmethod def create(cls, vlist): @@ -1251,6 +1290,11 @@ class Guest(ModelSQL, ModelView): 'type_document': v['type_document'], 'birthday': v['birthday'], 'sex': v['sex'], + 'first_name': v['first_name'], + 'second_name': v['second_name'], + 'first_family_name': v['first_family_name'], + 'second_family_name': v['second_family_name'], + 'type_person': v['type_person'], 'contact_mechanisms': [ ('create', [ {'type': 'email', 'value': v['email']}, diff --git a/city.py b/city.py index e0f4228..0a69f59 100644 --- a/city.py +++ b/city.py @@ -4,10 +4,11 @@ from trytond.model import ModelView, ModelSQL, fields __all__ = ['MigrationCity'] + class MigrationCity(ModelSQL, ModelView): "Migration City" __name__ = "hotel.migration_city" - _rec_name = 'name' + _rec_name = 'name' name = fields.Char('Name', required=True) code = fields.Char('Code') diff --git a/code_city_migrations.csv b/code_city_migrations.csv new file mode 100644 index 0000000..c2b3b81 --- /dev/null +++ b/code_city_migrations.csv @@ -0,0 +1,1123 @@ +code,name +5001,MEDELLÍN +5002,ABEJORRAL +5004,ABRIAQUÍ +5021,ALEJANDRÍA +5030,AMAGÁ +5031,AMALFI +5034,ANDES +5036,ANGELÓPOLIS +5038,ANGOSTURA +5040,ANORÍ +5042,SANTAFÉ DE ANTIOQUIA +5044,ANZA +5045,APARTADÓ +5051,ARBOLETES +5055,ARGELIA +5059,ARMENIA +5079,BARBOSA +5086,BELMIRA +5088,BELLO +5091,BETANIA +5093,BETULIA +5101,CIUDAD BOLÍVAR +5107,BRICEÑO +5113,BURITICÁ +5120,CÁCERES +5125,CAICEDO +5129,CALDAS +5134,CAMPAMENTO +5138,CAÑASGORDAS +5142,CARACOLÍ +5145,CARAMANTA +5147,CAREPA +5148,EL CARMEN DE VIBORAL +5150,CAROLINA +5154,CAUCASIA +5172,CHIGORODÓ +5190,CISNEROS +5197,COCORNÁ +5206,CONCEPCIÓN +5209,CONCORDIA +5212,COPACABANA +5234,DABEIBA +5237,DONMATÍAS +5240,EBÉJICO +5250,EL BAGRE +5264,ENTRERRIOS +5266,ENVIGADO +5282,FREDONIA +5284,FRONTINO +5306,GIRALDO +5308,GIRARDOTA +5310,GÓMEZ PLATA +5313,GRANADA +5315,GUADALUPE +5318,GUARNE +5321,GUATAPE +5347,HELICONIA +5353,HISPANIA +5360,ITAGUI +5361,ITUANGO +5364,JARDÍN +5368,JERICÓ +5376,LA CEJA +5380,LA ESTRELLA +5390,LA PINTADA +5400,LA UNIÓN +5411,LIBORINA +5425,MACEO +5440,MARINILLA +5467,MONTEBELLO +5475,MURINDÓ +5480,MUTATÁ +5483,NARIÑO +5490,NECOCLÍ +5495,NECHÍ +5501,OLAYA +5541,PEÑOL +5543,PEQUE +5576,PUEBLORRICO +5579,PUERTO BERRÍO +5585,PUERTO NARE +5591,PUERTO TRIUNFO +5604,REMEDIOS +5607,RETIRO +5615,RIONEGRO +5628,SABANALARGA +5631,SABANETA +5642,SALGAR +5647,SAN ANDRÉS DE CUERQUÍA +5649,SAN CARLOS +5652,SAN FRANCISCO +5656,SAN JERÓNIMO +5658,SAN JOSÉ DE LA MONTAÑA +5659,SAN JUAN DE URABÁ +5660,SAN LUIS +5664,SAN PEDRO DE LOS MILAGROS +5665,SAN PEDRO DE URABA +5667,SAN RAFAEL +5670,SAN ROQUE +5674,SAN VICENTE FERRER +5679,SANTA BÁRBARA +5686,SANTA ROSA DE OSOS +5690,SANTO DOMINGO +5697,EL SANTUARIO +5736,SEGOVIA +5756,SONSON +5761,SOPETRÁN +5789,TÁMESIS +5790,TARAZÁ +5792,TARSO +5809,TITIRIBÍ +5819,TOLEDO +5837,TURBO +5842,URAMITA +5847,URRAO +5854,VALDIVIA +5856,VALPARAÍSO +5858,VEGACHÍ +5861,VENECIA +5873,VIGÍA DEL FUERTE +5885,YALÍ +5887,YARUMAL +5890,YOLOMBÓ +5893,YONDÓ +5895,ZARAGOZA +8001,BARRANQUILLA +8078,BARANOA +8137,CAMPO DE LA CRUZ +8141,CANDELARIA +8296,GALAPA +8372,JUAN DE ACOSTA +8421,LURUACO +8433,MALAMBO +8436,MANATÍ +8520,PALMAR DE VARELA +8549,PIOJÓ +8558,POLONUEVO +8560,PONEDERA +8573,PUERTO COLOMBIA +8606,REPELÓN +8634,SABANAGRANDE +8638,SABANALARGA +8675,SANTA LUCÍA +8685,SANTO TOMÁS +8758,SOLEDAD +8770,SUAN +8832,TUBARÁ +8849,USIACURÍ +11001,"BOGOTÁ, D.C." +13001,CARTAGENA +13006,ACHÍ +13030,ALTOS DEL ROSARIO +13042,ARENAL +13052,ARJONA +13062,ARROYOHONDO +13074,BARRANCO DE LOBA +13140,CALAMAR +13160,CANTAGALLO +13188,CICUCO +13212,CÓRDOBA +13222,CLEMENCIA +13244,EL CARMEN DE BOLÍVAR +13248,EL GUAMO +13268,EL PEÑÓN +13300,HATILLO DE LOBA +13430,MAGANGUÉ +13433,MAHATES +13440,MARGARITA +13442,MARÍA LA BAJA +13458,MONTECRISTO +13468,MOMPÓS +13473,MORALES +13490,NOROSÍ +13549,PINILLOS +13580,REGIDOR +13600,RÍO VIEJO +13620,SAN CRISTÓBAL +13647,SAN ESTANISLAO +13650,SAN FERNANDO +13654,SAN JACINTO +13655,SAN JACINTO DEL CAUCA +13657,SAN JUAN NEPOMUCENO +13667,SAN MARTÍN DE LOBA +13670,SAN PABLO +13673,SANTA CATALINA +13683,SANTA ROSA +13688,SANTA ROSA DEL SUR +13744,SIMITÍ +13760,SOPLAVIENTO +13780,TALAIGUA NUEVO +13810,TIQUISIO +13836,TURBACO +13838,TURBANÁ +13873,VILLANUEVA +13894,ZAMBRANO +15001,TUNJA +15022,ALMEIDA +15047,AQUITANIA +15051,ARCABUCO +15087,BELÉN +15090,BERBEO +15092,BETÉITIVA +15097,BOAVITA +15104,BOYACÁ +15106,BRICEÑO +15109,BUENAVISTA +15114,BUSBANZÁ +15131,CALDAS +15135,CAMPOHERMOSO +15162,CERINZA +15172,CHINAVITA +15176,CHIQUINQUIRÁ +15180,CHISCAS +15183,CHITA +15185,CHITARAQUE +15187,CHIVATÁ +15189,CIÉNEGA +15204,CÓMBITA +15212,COPER +15215,CORRALES +15218,COVARACHÍA +15223,CUBARÁ +15224,CUCAITA +15226,CUÍTIVA +15232,CHÍQUIZA +15236,CHIVOR +15238,DUITAMA +15244,EL COCUY +15248,EL ESPINO +15272,FIRAVITOBA +15276,FLORESTA +15293,GACHANTIVÁ +15296,GAMEZA +15299,GARAGOA +15317,GUACAMAYAS +15322,GUATEQUE +15325,GUAYATÁ +15332,GÜICÁN +15362,IZA +15367,JENESANO +15368,JERICÓ +15377,LABRANZAGRANDE +15380,LA CAPILLA +15401,LA VICTORIA +15403,LA UVITA +15407,VILLA DE LEYVA +15425,MACANAL +15442,MARIPÍ +15455,MIRAFLORES +15464,MONGUA +15466,MONGUÍ +15469,MONIQUIRÁ +15476,MOTAVITA +15480,MUZO +15491,NOBSA +15494,NUEVO COLÓN +15500,OICATÁ +15507,OTANCHE +15511,PACHAVITA +15514,PÁEZ +15516,PAIPA +15518,PAJARITO +15522,PANQUEBA +15531,PAUNA +15533,PAYA +15537,PAZ DE RÍO +15542,PESCA +15550,PISBA +15572,PUERTO BOYACÁ +15580,QUÍPAMA +15599,RAMIRIQUÍ +15600,RÁQUIRA +15621,RONDÓN +15632,SABOYÁ +15638,SÁCHICA +15646,SAMACÁ +15660,SAN EDUARDO +15664,SAN JOSÉ DE PARE +15667,SAN LUIS DE GACENO +15673,SAN MATEO +15676,SAN MIGUEL DE SEMA +15681,SAN PABLO DE BORBUR +15686,SANTANA +15690,SANTA MARÍA +15693,SANTA ROSA DE VITERBO +15696,SANTA SOFÍA +15720,SATIVANORTE +15723,SATIVASUR +15740,SIACHOQUE +15753,SOATÁ +15755,SOCOTÁ +15757,SOCHA +15759,SOGAMOSO +15761,SOMONDOCO +15762,SORA +15763,SOTAQUIRÁ +15764,SORACÁ +15774,SUSACÓN +15776,SUTAMARCHÁN +15778,SUTATENZA +15790,TASCO +15798,TENZA +15804,TIBANÁ +15806,TIBASOSA +15808,TINJACÁ +15810,TIPACOQUE +15814,TOCA +15816,TOGÜÍ +15820,TÓPAGA +15822,TOTA +15832,TUNUNGUÁ +15835,TURMEQUÉ +15837,TUTA +15839,TUTAZÁ +15842,UMBITA +15861,VENTAQUEMADA +15879,VIRACACHÁ +15897,ZETAQUIRA +17001,MANIZALES +17013,AGUADAS +17042,ANSERMA +17050,ARANZAZU +17088,BELALCÁZAR +17174,CHINCHINÁ +17272,FILADELFIA +17380,LA DORADA +17388,LA MERCED +17433,MANZANARES +17442,MARMATO +17444,MARQUETALIA +17446,MARULANDA +17486,NEIRA +17495,NORCASIA +17513,PÁCORA +17524,PALESTINA +17541,PENSILVANIA +17614,RIOSUCIO +17616,RISARALDA +17653,SALAMINA +17662,SAMANÁ +17665,SAN JOSÉ +17777,SUPÍA +17867,VICTORIA +17873,VILLAMARÍA +17877,VITERBO +18001,FLORENCIA +18029,ALBANIA +18094,BELÉN DE LOS ANDAQUÍES +18150,CARTAGENA DEL CHAIRÁ +18205,CURILLO +18247,EL DONCELLO +18256,EL PAUJIL +18410,LA MONTAÑITA +18460,MILÁN +18479,MORELIA +18592,PUERTO RICO +18610,SAN JOSÉ DEL FRAGUA +18753,SAN VICENTE DEL CAGUÁN +18756,SOLANO +18785,SOLITA +18860,VALPARAÍSO +19001,POPAYÁN +19022,ALMAGUER +19050,ARGELIA +19075,BALBOA +19100,BOLÍVAR +19110,BUENOS AIRES +19130,CAJIBÍO +19137,CALDONO +19142,CALOTO +19212,CORINTO +19256,EL TAMBO +19290,FLORENCIA +19300,GUACHENÉ +19318,GUAPI +19355,INZÁ +19364,JAMBALÓ +19392,LA SIERRA +19397,LA VEGA +19418,LÓPEZ +19450,MERCADERES +19455,MIRANDA +19473,MORALES +19513,PADILLA +19517,PAEZ +19532,PATÍA +19533,PIAMONTE +19548,PIENDAMÓ +19573,PUERTO TEJADA +19585,PURACÉ +19622,ROSAS +19693,SAN SEBASTIÁN +19698,SANTANDER DE QUILICHAO +19701,SANTA ROSA +19743,SILVIA +19760,SOTARA +19780,SUÁREZ +19785,SUCRE +19807,TIMBÍO +19809,TIMBIQUÍ +19821,TORIBIO +19824,TOTORÓ +19845,VILLA RICA +20001,VALLEDUPAR +20011,AGUACHICA +20013,AGUSTÍN CODAZZI +20032,ASTREA +20045,BECERRIL +20060,BOSCONIA +20175,CHIMICHAGUA +20178,CHIRIGUANÁ +20228,CURUMANÍ +20238,EL COPEY +20250,EL PASO +20295,GAMARRA +20310,GONZÁLEZ +20383,LA GLORIA +20400,LA JAGUA DE IBIRICO +20443,MANAURE +20517,PAILITAS +20550,PELAYA +20570,PUEBLO BELLO +20614,RÍO DE ORO +20621,LA PAZ +20710,SAN ALBERTO +20750,SAN DIEGO +20770,SAN MARTÍN +20787,TAMALAMEQUE +23001,MONTERÍA +23068,AYAPEL +23079,BUENAVISTA +23090,CANALETE +23162,CERETÉ +23168,CHIMÁ +23182,CHINÚ +23189,CIÉNAGA DE ORO +23300,COTORRA +23350,LA APARTADA +23417,LORICA +23419,LOS CÓRDOBAS +23464,MOMIL +23466,MONTELÍBANO +23500,MOÑITOS +23555,PLANETA RICA +23570,PUEBLO NUEVO +23574,PUERTO ESCONDIDO +23580,PUERTO LIBERTADOR +23586,PURÍSIMA +23660,SAHAGÚN +23670,SAN ANDRÉS DE SOTAVENTO +23672,SAN ANTERO +23675,SAN BERNARDO DEL VIENTO +23678,SAN CARLOS +23682,SAN JOSÉ DE URÉ +23686,SAN PELAYO +23807,TIERRALTA +23815,TUCHÍN +23855,VALENCIA +25001,AGUA DE DIOS +25019,ALBÁN +25035,ANAPOIMA +25040,ANOLAIMA +25053,ARBELÁEZ +25086,BELTRÁN +25095,BITUIMA +25099,BOJACÁ +25120,CABRERA +25123,CACHIPAY +25126,CAJICÁ +25148,CAPARRAPÍ +25151,CAQUEZA +25154,CARMEN DE CARUPA +25168,CHAGUANÍ +25175,CHÍA +25178,CHIPAQUE +25181,CHOACHÍ +25183,CHOCONTÁ +25200,COGUA +25214,COTA +25224,CUCUNUBÁ +25245,EL COLEGIO +25258,EL PEÑÓN +25260,EL ROSAL +25269,FACATATIVÁ +25279,FOMEQUE +25281,FOSCA +25286,FUNZA +25288,FÚQUENE +25290,FUSAGASUGÁ +25293,GACHALA +25295,GACHANCIPÁ +25297,GACHETÁ +25299,GAMA +25307,GIRARDOT +25312,GRANADA +25317,GUACHETÁ +25320,GUADUAS +25322,GUASCA +25324,GUATAQUÍ +25326,GUATAVITA +25328,GUAYABAL DE SIQUIMA +25335,GUAYABETAL +25339,GUTIÉRREZ +25368,JERUSALÉN +25372,JUNÍN +25377,LA CALERA +25386,LA MESA +25394,LA PALMA +25398,LA PEÑA +25402,LA VEGA +25407,LENGUAZAQUE +25426,MACHETA +25430,MADRID +25436,MANTA +25438,MEDINA +25473,MOSQUERA +25483,NARIÑO +25486,NEMOCÓN +25488,NILO +25489,NIMAIMA +25491,NOCAIMA +25506,VENECIA +25513,PACHO +25518,PAIME +25524,PANDI +25530,PARATEBUENO +25535,PASCA +25572,PUERTO SALGAR +25580,PULÍ +25592,QUEBRADANEGRA +25594,QUETAME +25596,QUIPILE +25599,APULO +25612,RICAURTE +25645,SAN ANTONIO DEL TEQUENDAMA +25649,SAN BERNARDO +25653,SAN CAYETANO +25658,SAN FRANCISCO +25662,SAN JUAN DE RÍO SECO +25718,SASAIMA +25736,SESQUILÉ +25740,SIBATÉ +25743,SILVANIA +25745,SIMIJACA +25754,SOACHA +25758,SOPÓ +25769,SUBACHOQUE +25772,SUESCA +25777,SUPATÁ +25779,SUSA +25781,SUTATAUSA +25785,TABIO +25793,TAUSA +25797,TENA +25799,TENJO +25805,TIBACUY +25807,TIBIRITA +25815,TOCAIMA +25817,TOCANCIPÁ +25823,TOPAIPÍ +25839,UBALÁ +25841,UBAQUE +25843,VILLA DE SAN DIEGO DE UBATE +25845,UNE +25851,ÚTICA +25862,VERGARA +25867,VIANÍ +25871,VILLAGÓMEZ +25873,VILLAPINZÓN +25875,VILLETA +25878,VIOTÁ +25885,YACOPÍ +25898,ZIPACÓN +25899,ZIPAQUIRÁ +27001,QUIBDÓ +27006,ACANDÍ +27025,ALTO BAUDÓ +27050,ATRATO +27073,BAGADÓ +27075,BAHÍA SOLANO +27077,BAJO BAUDÓ +27099,BOJAYA +27135,EL CANTÓN DEL SAN PABLO +27150,CARMEN DEL DARIÉN +27160,CÉRTEGUI +27205,CONDOTO +27245,EL CARMEN DE ATRATO +27250,EL LITORAL DEL SAN JUAN +27361,ISTMINA +27372,JURADÓ +27413,LLORÓ +27425,MEDIO ATRATO +27430,MEDIO BAUDÓ +27450,MEDIO SAN JUAN +27491,NÓVITA +27495,NUQUÍ +27580,RÍO IRÓ +27600,RÍO QUITO +27615,RIOSUCIO +27660,SAN JOSÉ DEL PALMAR +27745,SIPÍ +27787,TADÓ +27800,UNGUÍA +27810,UNIÓN PANAMERICANA +41001,NEIVA +41006,ACEVEDO +41013,AGRADO +41016,AIPE +41020,ALGECIRAS +41026,ALTAMIRA +41078,BARAYA +41132,CAMPOALEGRE +41206,COLOMBIA +41244,ELÍAS +41298,GARZÓN +41306,GIGANTE +41319,GUADALUPE +41349,HOBO +41357,IQUIRA +41359,ISNOS +41378,LA ARGENTINA +41396,LA PLATA +41483,NÁTAGA +41503,OPORAPA +41518,PAICOL +41524,PALERMO +41530,PALESTINA +41548,PITAL +41551,PITALITO +41615,RIVERA +41660,SALADOBLANCO +41668,SAN AGUSTÍN +41676,SANTA MARÍA +41770,SUAZA +41791,TARQUI +41797,TESALIA +41799,TELLO +41801,TERUEL +41807,TIMANÁ +41872,VILLAVIEJA +41885,YAGUARÁ +44001,RIOHACHA +44035,ALBANIA +44078,BARRANCAS +44090,DIBULLA +44098,DISTRACCIÓN +44110,EL MOLINO +44279,FONSECA +44378,HATONUEVO +44420,LA JAGUA DEL PILAR +44430,MAICAO +44560,MANAURE +44650,SAN JUAN DEL CESAR +44847,URIBIA +44855,URUMITA +44874,VILLANUEVA +47001,SANTA MARTA +47030,ALGARROBO +47053,ARACATACA +47058,ARIGUANÍ +47161,CERRO SAN ANTONIO +47170,CHIVOLO +47189,CIÉNAGA +47205,CONCORDIA +47245,EL BANCO +47258,EL PIÑON +47268,EL RETÉN +47288,FUNDACIÓN +47318,GUAMAL +47460,NUEVA GRANADA +47541,PEDRAZA +47545,PIJIÑO DEL CARMEN +47551,PIVIJAY +47555,PLATO +47570,PUEBLOVIEJO +47605,REMOLINO +47660,SABANAS DE SAN ANGEL +47675,SALAMINA +47692,SAN SEBASTIÁN DE BUENAVISTA +47703,SAN ZENÓN +47707,SANTA ANA +47720,SANTA BÁRBARA DE PINTO +47745,SITIONUEVO +47798,TENERIFE +47960,ZAPAYÁN +47980,ZONA BANANERA +50001,VILLAVICENCIO +50006,ACACÍAS +50110,BARRANCA DE UPÍA +50124,CABUYARO +50150,CASTILLA LA NUEVA +50223,SAN LUIS DE CUBARRAL +50226,CUMARAL +50245,EL CALVARIO +50251,EL CASTILLO +50270,EL DORADO +50287,FUENTE DE ORO +50313,GRANADA +50318,GUAMAL +50325,MAPIRIPÁN +50330,MESETAS +50350,LA MACARENA +50370,URIBE +50400,LEJANÍAS +50450,PUERTO CONCORDIA +50568,PUERTO GAITÁN +50573,PUERTO LÓPEZ +50577,PUERTO LLERAS +50590,PUERTO RICO +50606,RESTREPO +50680,SAN CARLOS DE GUAROA +50683,SAN JUAN DE ARAMA +50686,SAN JUANITO +50689,SAN MARTÍN +50711,VISTAHERMOSA +52001,PASTO +52019,ALBÁN +52022,ALDANA +52036,ANCUYÁ +52051,ARBOLEDA +52079,BARBACOAS +52083,BELÉN +52110,BUESACO +52203,COLÓN +52207,CONSACÁ +52210,CONTADERO +52215,CÓRDOBA +52224,CUASPUD +52227,CUMBAL +52233,CUMBITARA +52240,CHACHAGÜÍ +52250,EL CHARCO +52254,EL PEÑOL +52256,EL ROSARIO +52258,EL TABLÓN DE GÓMEZ +52260,EL TAMBO +52287,FUNES +52317,GUACHUCAL +52320,GUAITARILLA +52323,GUALMATÁN +52352,ILES +52354,IMUÉS +52356,IPIALES +52378,LA CRUZ +52381,LA FLORIDA +52385,LA LLANADA +52390,LA TOLA +52399,LA UNIÓN +52405,LEIVA +52411,LINARES +52418,LOS ANDES +52427,MAGÜI +52435,MALLAMA +52473,MOSQUERA +52480,NARIÑO +52490,OLAYA HERRERA +52506,OSPINA +52520,FRANCISCO PIZARRO +52540,POLICARPA +52560,POTOSÍ +52565,PROVIDENCIA +52573,PUERRES +52585,PUPIALES +52612,RICAURTE +52621,ROBERTO PAYÁN +52678,SAMANIEGO +52683,SANDONÁ +52685,SAN BERNARDO +52687,SAN LORENZO +52693,SAN PABLO +52694,SAN PEDRO DE CARTAGO +52696,SANTA BÁRBARA +52699,SANTACRUZ +52720,SAPUYES +52786,TAMINANGO +52788,TANGUA +52835,SAN ANDRES DE TUMACO +52838,TÚQUERRES +52885,YACUANQUER +54001,CÚCUTA +54003,ABREGO +54051,ARBOLEDAS +54099,BOCHALEMA +54109,BUCARASICA +54125,CÁCOTA +54128,CACHIRÁ +54172,CHINÁCOTA +54174,CHITAGÁ +54206,CONVENCIÓN +54223,CUCUTILLA +54239,DURANIA +54245,EL CARMEN +54250,EL TARRA +54261,EL ZULIA +54313,GRAMALOTE +54344,HACARÍ +54347,HERRÁN +54377,LABATECA +54385,LA ESPERANZA +54398,LA PLAYA +54405,LOS PATIOS +54418,LOURDES +54480,MUTISCUA +54498,OCAÑA +54518,PAMPLONA +54520,PAMPLONITA +54553,PUERTO SANTANDER +54599,RAGONVALIA +54660,SALAZAR +54670,SAN CALIXTO +54673,SAN CAYETANO +54680,SANTIAGO +54720,SARDINATA +54743,SILOS +54800,TEORAMA +54810,TIBÚ +54820,TOLEDO +54871,VILLA CARO +54874,VILLA DEL ROSARIO +63001,ARMENIA +63111,BUENAVISTA +63130,CALARCA +63190,CIRCASIA +63212,CÓRDOBA +63272,FILANDIA +63302,GÉNOVA +63401,LA TEBAIDA +63470,MONTENEGRO +63548,PIJAO +63594,QUIMBAYA +63690,SALENTO +66001,PEREIRA +66045,APÍA +66075,BALBOA +66088,BELÉN DE UMBRÍA +66170,DOSQUEBRADAS +66318,GUÁTICA +66383,LA CELIA +66400,LA VIRGINIA +66440,MARSELLA +66456,MISTRATÓ +66572,PUEBLO RICO +66594,QUINCHÍA +66682,SANTA ROSA DE CABAL +66687,SANTUARIO +68001,BUCARAMANGA +68013,AGUADA +68020,ALBANIA +68051,ARATOCA +68077,BARBOSA +68079,BARICHARA +68081,BARRANCABERMEJA +68092,BETULIA +68101,BOLÍVAR +68121,CABRERA +68132,CALIFORNIA +68147,CAPITANEJO +68152,CARCASÍ +68160,CEPITÁ +68162,CERRITO +68167,CHARALÁ +68169,CHARTA +68176,CHIMA +68179,CHIPATÁ +68190,CIMITARRA +68207,CONCEPCIÓN +68209,CONFINES +68211,CONTRATACIÓN +68217,COROMORO +68229,CURITÍ +68235,EL CARMEN DE CHUCURÍ +68245,EL GUACAMAYO +68250,EL PEÑÓN +68255,EL PLAYÓN +68264,ENCINO +68266,ENCISO +68271,FLORIÁN +68276,FLORIDABLANCA +68296,GALÁN +68298,GAMBITA +68307,GIRÓN +68318,GUACA +68320,GUADALUPE +68322,GUAPOTÁ +68324,GUAVATÁ +68327,GÜEPSA +68344,HATO +68368,JESÚS MARÍA +68370,JORDÁN +68377,LA BELLEZA +68385,LANDÁZURI +68397,LA PAZ +68406,LEBRIJA +68418,LOS SANTOS +68425,MACARAVITA +68432,MÁLAGA +68444,MATANZA +68464,MOGOTES +68468,MOLAGAVITA +68498,OCAMONTE +68500,OIBA +68502,ONZAGA +68522,PALMAR +68524,PALMAS DEL SOCORRO +68533,PÁRAMO +68547,PIEDECUESTA +68549,PINCHOTE +68572,PUENTE NACIONAL +68573,PUERTO PARRA +68575,PUERTO WILCHES +68615,RIONEGRO +68655,SABANA DE TORRES +68669,SAN ANDRÉS +68673,SAN BENITO +68679,SAN GIL +68682,SAN JOAQUÍN +68684,SAN JOSÉ DE MIRANDA +68686,SAN MIGUEL +68689,SAN VICENTE DE CHUCURÍ +68705,SANTA BÁRBARA +68720,SANTA HELENA DEL OPÓN +68745,SIMACOTA +68755,SOCORRO +68770,SUAITA +68773,SUCRE +68780,SURATÁ +68820,TONA +68855,VALLE DE SAN JOSÉ +68861,VÉLEZ +68867,VETAS +68872,VILLANUEVA +68895,ZAPATOCA +70001,SINCELEJO +70110,BUENAVISTA +70124,CAIMITO +70204,COLOSO +70215,COROZAL +70221,COVEÑAS +70230,CHALÁN +70233,EL ROBLE +70235,GALERAS +70265,GUARANDA +70400,LA UNIÓN +70418,LOS PALMITOS +70429,MAJAGUAL +70473,MORROA +70508,OVEJAS +70523,PALMITO +70670,SAMPUÉS +70678,SAN BENITO ABAD +70702,SAN JUAN DE BETULIA +70708,SAN MARCOS +70713,SAN ONOFRE +70717,SAN PEDRO +70742,SAN LUIS DE SINCÉ +70771,SUCRE +70820,SANTIAGO DE TOLÚ +70823,TOLÚ VIEJO +73001,IBAGUÉ +73024,ALPUJARRA +73026,ALVARADO +73030,AMBALEMA +73043,ANZOÁTEGUI +73055,ARMERO +73067,ATACO +73124,CAJAMARCA +73148,CARMEN DE APICALÁ +73152,CASABIANCA +73168,CHAPARRAL +73200,COELLO +73217,COYAIMA +73226,CUNDAY +73236,DOLORES +73268,ESPINAL +73270,FALAN +73275,FLANDES +73283,FRESNO +73319,GUAMO +73347,HERVEO +73349,HONDA +73352,ICONONZO +73408,LÉRIDA +73411,LÍBANO +73443,SAN SEBASTIÁN DE MARIQUITA +73449,MELGAR +73461,MURILLO +73483,NATAGAIMA +73504,ORTEGA +73520,PALOCABILDO +73547,PIEDRAS +73555,PLANADAS +73563,PRADO +73585,PURIFICACIÓN +73616,RIOBLANCO +73622,RONCESVALLES +73624,ROVIRA +73671,SALDAÑA +73675,SAN ANTONIO +73678,SAN LUIS +73686,SANTA ISABEL +73770,SUÁREZ +73854,VALLE DE SAN JUAN +73861,VENADILLO +73870,VILLAHERMOSA +73873,VILLARRICA +76001,CALI +76020,ALCALÁ +76036,ANDALUCÍA +76041,ANSERMANUEVO +76054,ARGELIA +76100,BOLÍVAR +76109,BUENAVENTURA +76111,GUADALAJARA DE BUGA +76113,BUGALAGRANDE +76122,CAICEDONIA +76126,CALIMA +76130,CANDELARIA +76147,CARTAGO +76233,DAGUA +76243,EL ÁGUILA +76246,EL CAIRO +76248,EL CERRITO +76250,EL DOVIO +76275,FLORIDA +76306,GINEBRA +76318,GUACARÍ +76364,JAMUNDÍ +76377,LA CUMBRE +76400,LA UNIÓN +76403,LA VICTORIA +76497,OBANDO +76520,PALMIRA +76563,PRADERA +76606,RESTREPO +76616,RIOFRÍO +76622,ROLDANILLO +76670,SAN PEDRO +76736,SEVILLA +76823,TORO +76828,TRUJILLO +76834,TULUÁ +76845,ULLOA +76863,VERSALLES +76869,VIJES +76890,YOTOCO +76892,YUMBO +76895,ZARZAL +81001,ARAUCA +81065,ARAUQUITA +81220,CRAVO NORTE +81300,FORTUL +81591,PUERTO RONDÓN +81736,SARAVENA +81794,TAME +85001,YOPAL +85010,AGUAZUL +85015,CHAMEZA +85125,HATO COROZAL +85136,LA SALINA +85139,MANÍ +85162,MONTERREY +85225,NUNCHÍA +85230,OROCUÉ +85250,PAZ DE ARIPORO +85263,PORE +85279,RECETOR +85300,SABANALARGA +85315,SÁCAMA +85325,SAN LUIS DE PALENQUE +85400,TÁMARA +85410,TAURAMENA +85430,TRINIDAD +85440,VILLANUEVA +86001,MOCOA +86219,COLÓN +86320,ORITO +86568,PUERTO ASÍS +86569,PUERTO CAICEDO +86571,PUERTO GUZMÁN +86573,PUERTO LEGUÍZAMO +86749,SIBUNDOY +86755,SAN FRANCISCO +86757,SAN MIGUEL +86760,SANTIAGO +86865,VALLE DEL GUAMUEZ +86885,VILLAGARZÓN +88001,SAN ANDRÉS +88564,PROVIDENCIA +91001,LETICIA +91263,EL ENCANTO +91405,LA CHORRERA +91407,LA PEDRERA +91430,LA VICTORIA +91460,MIRITI - PARANÁ +91530,PUERTO ALEGRÍA +91536,PUERTO ARICA +91540,PUERTO NARIÑO +91669,PUERTO SANTANDER +91798,TARAPACÁ +94001,INÍRIDA +94343,BARRANCO MINAS +94663,MAPIRIPANA +94883,SAN FELIPE +94884,PUERTO COLOMBIA +94885,LA GUADALUPE +94886,CACAHUAL +94887,PANA PANA +94888,MORICHAL +95001,SAN JOSÉ DEL GUAVIARE +95015,CALAMAR +95025,EL RETORNO +95200,MIRAFLORES +97001,MITÚ +97161,CARURU +97511,PACOA +97666,TARAIRA +97777,PAPUNAUA +97889,YAVARATÉ +99001,PUERTO CARREÑO +99524,LA PRIMAVERA +99624,SANTA ROSALÍA +99773,CUMARIBO diff --git a/code_city_migrations.ods b/code_city_migrations.ods new file mode 100644 index 0000000..96c202f Binary files /dev/null and b/code_city_migrations.ods differ diff --git a/migration_report.ods b/migration_report.ods index 744428b..499d354 100644 Binary files a/migration_report.ods and b/migration_report.ods differ diff --git a/party.py b/party.py index 1c9f22a..f3ec4af 100644 --- a/party.py +++ b/party.py @@ -7,7 +7,7 @@ from trytond.wizard import Wizard, StateView, Button, StateTransition, StateRepo from trytond.transaction import Transaction -__all__ = ['Party','CreateGuest','CreateGuestStart'] +__all__ = ['Party', 'CreateGuest', 'CreateGuestStart'] TYPE = [ @@ -50,12 +50,75 @@ class Party(metaclass=PoolMeta): visa_number = fields.Char('Visa Number') visa_date = fields.Date('Visa Date') + class CreateGuestStart(ModelView): 'Create Party to Guest Start' __name__ = 'hotel.party.guest.start' - name = fields.Char('Name', required=True) + full_name = fields.Char('Name') + first_name = fields.Char('First Name') + second_name = fields.Char('Second Name') + first_family_name = fields.Char('First Family Name') + second_family_name = fields.Char('Second Family Name') type_document = fields.Selection(TYPE_DOCUMENT, 'Type Document') id_number = fields.Char('Id Number') + type_document = fields.Selection([ + ('12', 'Tarjeta de Identidad'), + ('13', 'Cedula de Ciudadania'), + ('21', 'Tarjeta de Extranjeria'), + ('22', 'Cedula de Extranjeria'), + ('41', 'Pasaporte'), + ], 'Document Type') + mobile = fields.Char('Mobile', select=True) + email = fields.Char('Email', select=True) + birthday = fields.Date('Birthday', select=True) + sex = fields.Selection([ + ('female', 'Female'), + ('male', 'Male'), + ('', ''), + ], 'Sex') + type_person = fields.Selection([ + ('persona_natural', 'Persona Natural'), + ('persona_juridica', 'Persona Juridica'), + ], 'Type Person') + + @fields.depends('full_name', 'first_name', 'second_name', + 'first_family_name', 'second_family_name','type_person') + def on_change_full_name(self): + second_family_name = None + first_family_name = None + second_name = None + first_name = None + if self.full_name and self.type_person == 'persona_natural': + names = self.full_name.split(' ') + first_name = names[0] + second_family_name = names[-1] + if len(names) > 1: + first_family_name = names[-2] + if len(names) == 2: + second_family_name = None + first_family_name = names[1] + elif len(names) == 5: + second_name = names[1] + ' ' + names[2] + elif len(names) == 4: + second_name = names[1] + + self.second_family_name = second_family_name + self.first_family_name = first_family_name + self.second_name = second_name + self.first_name = first_name + + @staticmethod + def default_sex(): + return 'male' + + @staticmethod + def default_type_person(): + return 'persona_natural' + + @staticmethod + def default_type_document(): + return '13' + class CreateGuest(Wizard): 'Create Party to Guest' @@ -86,11 +149,23 @@ class CreateGuest(Wizard): else: party, = Party.create([{ 'name': self.start.name, + 'id_number': self.start.id_number, 'type_document': self.start.type_document, - 'id_number': self.start.id_number + 'birthday': self.start.birthday, + 'sex': self.start.sex, + 'first_name': self.start.first_name, + 'second_name': self.start.second_name, + 'first_family_name': self.start.first_family_name, + 'second_family_name': self.start.second_family_name, + 'contact_mechanisms': [ + ('create', [ + {'type': 'email', 'value': self.start.email}, + {'type': 'mobile', 'value': self.start.mobile}, + ]) + ] }]) - party.save() - Booking.write([record], {'party': party}) + party_id = party.id + Booking.write([record], {'party': party_id}) return 'end' def get_message(self, message): diff --git a/view/booking_line_form.xml b/view/booking_line_form.xml index 15ebf8e..dafc904 100644 --- a/view/booking_line_form.xml +++ b/view/booking_line_form.xml @@ -24,10 +24,10 @@ this repository contains the full copyright notices and license terms. -->