<?php

namespace App\Repositories\Dashboard;


interface DashboardRepositoryInterface
{
    public function countCustomer($fromDate, $toDate);
    public function countConversation($fromDate, $toDate);
    public function countOpportunities($fromDate, $toDate);
    public function countOpportunitiesProject($fromDate, $toDate, $project_id);

    public function countOpportunityStage($fromDate, $toDate, $stage_id);
    public function countOpportunityStageProject($fromDate, $toDate, $stage_id, $project_id);
    public function averageClosureTimeProject($fromDate, $toDate, $project_id);
    public function averageClosureTime($fromDate, $toDate);

    public function countActivityVisitProject($fromDate, $toDate,  $projectId);
    public function countQuoteProject( $fromDate, $toDate,$projectId);
    public function countSaleProject($fromDate, $toDate, $projectId);
    public function countSaleStateProject($fromDate, $toDate, $state, $projectId);


    public function countActivityVisit($fromDate, $toDate);
    public function countQuote( $fromDate, $toDate);
    public function countSale($fromDate, $toDate);
    public function countSaleState($fromDate, $toDate, $state);

    public function countQuoteApproved($fromDate, $toDate, $approved);
    public function countQuoteProjectApproved($fromDate, $toDate, $approved, $projectId);

    // public function sellerReportProject($fromDate, $toDate, $projectId);
    public function sellerReport($fromDate, $toDate);
    public function sellerReportProject($fromDate, $toDate, $project_id);

    public function totalpropertyProject($fromDate, $toDate, $project_id);
    public function propertyAveragePriceProject($fromDate, $toDate, $project_id);
    public function propertyStatusProject($fromDate, $toDate,$status,$project_id);

    public function totalproperty($fromDate, $toDate);
    public function propertyAveragePrice($fromDate, $toDate);
    public function propertyStatus($fromDate, $toDate,$status);


    public function totalpropertyTypeProject($project_id, $propertyType);
    public function propertyTypeAveragePriceProject($fromDate, $toDate, $project_id, $propertyType);
    public function propertyTypeStatusProject($status,$project_id, $propertyType);

    public function totalpropertyType( $propertyType);
    public function propertyTypeAveragePrice($fromDate, $toDate, $propertyType);
    public function propertyTypeStatus($status, $propertyType);

    public function totalAmountSaleProject($fromDate, $toDate, $project_id);
    public function totalAmountSale($fromDate, $toDate);


    public function countActivity($fromDate, $toDate);
    public function countActivityType($fromDate, $toDate, $type_id);
    public function countActivityStage($fromDate, $toDate, $stage);

}
