<?php

namespace App\Reports\Sources\OrderServices;

class FiltersManager extends \App\Reports\Sources\FiltersManagerAbstract
{

	protected array $filtersCfg = [

		'orderDate'					=> [ 'type' => "dateInterval", 'mandatory' => true ],
		'idOrderRespUsers'			=> [ 'type' => 'users' ],  // TODO: [refactorReportSerialization] orderResponsibleOfficeUser -> idOrderRespUsers
		'idOrderRespOffices'		=> [ 'type' => 'offices' ],  // TODO: [refactorReportSerialization] orderResponsibleOfficeUser -> idOrderRespOffices
		'idOrderRespDepartments'	=> [ 'type' => 'departments' ], // TODO: [refactorReportSerialization] orderResponsibleDepartment -> idOrderRespDepartments

		'offerStartDate'			=> [ 'type' => "dateInterval" ],
		'offerEndDate'				=> [ 'type' => "dateInterval" ],

		'addTime'					=> [ 'type' => 'dateInterval'],
		'idServiceRespUsers'		=> [ 'type' => 'users' ],  // TODO: [refactorReportSerialization] serviceResponsibleOfficeUser -> idServiceRespUsers
		'idServiceRespOffices'		=> [ 'type' => 'offices' ],  // TODO: [refactorReportSerialization] serviceResponsibleOfficeUser -> idServiceRespOffices
		'idServiceRespDepartments'	=> [ 'type' => 'departments' ], // TODO: [refactorReportSerialization] serviceResponsibleDepartment -> idServiceRespDepartments
		'serviceType'				=> [ 'type' => "servicesSimple" ],
		'serviceStatusOp'			=> [ 'type' => "serviceStatusOp" ],
		'serviceStatusFin'			=> [ 'type' => "serviceStatusFin" ],
		'offerServiceType'			=> [ 'type' => "servicesSimple" ],
		'idOfferSuppliers'			=> [ 'type' => 'suppliers' ], // TODO: [refactorReportSerialization] offerSupplier -> idOfferSuppliers
		'offerSupplierGroups'		=> [ 'type' => 'supplierGroups' ], // TODO: [refactorReportSerialization] supplierGroups -> offerSupplierGroups

		'invoiceDate'				=> [ 'type' => "dateInterval" ],
		'idInvoiceCorporates'		=> [ 'type' => 'corporates' ], // TODO: [refactorReportSerialization] invoiceClientCorporate -> idInvoiceCorporates
		'invoiceCorporateGroups'	=> [ 'type' => 'corporateGroups' ], // TODO: [refactorReportSerialization] corporateGroups -> invoiceCorporateGroups
		'idInvoiceCustomers'		=> [ 'type' => 'customers' ], // TODO: [refactorReportSerialization] invoiceClientCustomer -> idInvoiceCustomers
		'serviceBalanced'			=> [ 'type' => 'boolean' ],

	];

}