#pragma once

#include "domain.h"
#include "repository.h"
#include <vector>
#include <algorithm>

class Controller{
    private:
        Repository _repository;
    public:
        Controller();
        ~Controller();
        /*
        Add function
        Input: company_name - char*
               serial_number - char*
               sum - int
               isPaid - bool
        Output: true - if the bill was added
                false - if the bill was not added
        */
        bool add(char* company_name,char* serial_number,int sum,bool isPaid);
        std::vector<Bill>::iterator begin();
        std::vector<Bill>::iterator end();
        std::vector<Bill> getBills();
        /*
        Get paid bills function
        Output: paid_bills - std::vector<Bill>
        */
        std::vector<Bill> getPaidBills();
};
