def post(self): item = request.get_json() if request.get_json() else request.form try: if item: insert_into_proposal(item['proposal']) proposal = ProposalModel.get_by_number( item['proposal']['number']) model = PetModel() model.name = item['name'] model.species = item['species'] model.breed = item['breed'] model.size = item['size'] model.weight = item['weight'] model.insured_id = item['insured_id'] model.proposal_id = proposal.id model.created_date = date.today() model.save() return 'created', 201 else: proposal.delete() return 'not created, invalid payload', 400 except Exception as e: return f"{e}", 500
def select_emergency_pet_by_proposal(proposal_number): proposal = ProposalModel.get_by_number(proposal_number) emergency = EmergencyPetModel.get_by_proposal(proposal.id) pet = PetModel.get_by_proposal(emergency.proposal_id) if emergency.provider_id != 0: provider = ProviderModel.get_by_id(emergency.provider_id) provider_associated = { 'id': provider.id, 'fantasy_name': provider.fantasy_name, 'provider_details': f'http://127.0.0.1:8080/api/user/{provider.user_id}' } else: provider_associated = '' insured_pacient = { 'id': pet.id, 'name': pet.name, 'species': pet.species, 'breed': pet.breed, 'size': pet.size, 'weight': pet.weight, 'proposal': { 'id': proposal.id, 'number': proposal.number, 'status': proposal.status, 'created_date': proposal.created_date.strftime("%d/%m/%Y"), 'plan': select_plan_proposal_by_id(proposal.plan_proposal_id) } } return { 'id': emergency.id, 'label': emergency.label, 'call_type': emergency.call_type, 'call': emergency.call, 'latitude': emergency.latitude, 'longitude': emergency.longitude, 'status_emergency': emergency.status, 'created_date': emergency.created_date.strftime("%d/%m/%Y"), 'provider': provider_associated, 'insured_pacient': insured_pacient }