Пример #1
0
 def delete(self,id):
     try:
         proposal = ProposalModel.get_by_id(id)
         proposal.delete()
         return 'No Content', 204
     except Exception as e:
         return f"{e}", 500
Пример #2
0
    def _get_proposal(self, id):
        
        proposal = ProposalModel.get_by_id(id)

        if proposal is None:
            return {'message': 'Proposal not found'}, 404

        return {
            'id':proposal.id,
            'number':proposal.number,
            'status':proposal.status,
            'created_date':proposal.created_date.strftime("%d/%m/%Y"),
            'pet':select_pet_by_proposal_id(id)['pet'],
            'plan_proposal':select_pet_by_proposal_id(id)['proposal_details']['plan_proposal']
        }
Пример #3
0
def delete_insured(id):
    try:
        insured = InsuredModel.get_by_user_id(id)
        policy = PolicyModel.get_by_id(insured.policy_id)
        pet = PetModel.get_by_insured(insured.insured_id)
        proposal = ProposalModel.get_by_id(pet.proposal_id)
        pet_schedule = PetScheduleModel.get_by_pet(pet.id)

        if pet_schedule:
            pet_schedule.delete()

        proposal.delete()
        pet.delete()
        policy.delete()
        insured.delete()

        return {"success": True, "message": 'insured deleted'}

    except Exception as e:
        return {"success": False, "message": f"{e}"}
Пример #4
0
def select_pet_by_proposal_id(proposal_id):
    try:
        pet = PetModel.get_by_proposal(proposal_id)
        proposal = ProposalModel.get_by_id(proposal_id)
        plan = PlanProposalModel.get_by_id(proposal.plan_proposal_id)
        insured = InsuredModel.get_by_id(pet.insured_id)

        if pet is None:
            return {'success': False, 'message': 'Insured not found'}
        else:
            return {
                'pet': {
                    'id': pet.id,
                    'name': pet.name,
                    'species': pet.species,
                    'breed': pet.breed,
                    'size': pet.size,
                    'weight': pet.weight
                },
                'proposal_details': {
                    'id': proposal.id,
                    'number': proposal.number,
                    'status': proposal.status,
                    'created_date': proposal.created_date.strftime("%d/%m/%Y"),
                    'plan_proposal': {
                        'id': plan.id,
                        'name': plan.name,
                        'desc': plan.desc,
                        'status': plan.status,
                        'created_date': plan.created_date.strftime("%d/%m/%Y")
                    }
                },
                'owner': {
                    'name': f'{insured.first_name} {insured.last_name}',
                    'details':
                    f'http://127.0.0.1:8080/api/user/{insured.user_id}'
                }
            }

    except Exception as e:
        return {"succes": False, "message": f'{e} invalid payload'}
Пример #5
0
    def put(self, id):
        item = request.get_json() if request.get_json() else request.form

        try:

            if item:
                model = ProposalModel.get_by_id(id)
                
                if 'number' in item:
                    model.number = item['number']
                if 'plan_proposal_id' in item:
                    model.plan_proposal_id = item['plan_proposal_id']
                if 'status' in item:
                    model.status = item['status']
                
                model.save()

                return 'edited', 200
            else:
                return 'unedited, invalid payload', 400
        except Exception as e:
            return f"{e}",500