public BranchService(IBranchQuery branchQuery, IBranchRepository branchRepository, IBranchValidator branchValidator, IBranchDealerRepository branchDealerRepository, IBranchDealerValidator branchDealerValidator, IBranchFactory branchFactory)
 {
     _branchQuery            = branchQuery;
     _branchRepository       = branchRepository;
     _branchValidator        = branchValidator;
     _branchDealerRepository = branchDealerRepository;
     _branchDealerValidator  = branchDealerValidator;
     _branchFactory          = branchFactory;
 }
        public BranchDealerValidator(IBranchRepository branchRepository, IDealerRepository dealerRepository, IBranchDealerRepository branchDealerRepository)
        {
            _branchRepository       = branchRepository;
            _dealerRepository       = dealerRepository;
            _branchDealerRepository = branchDealerRepository;

            RuleSet("Base", () =>
            {
                RuleFor(branchDealer => branchDealer.BranchId).Must(branchId => branchId.IsNotZero()).WithMessage("Tienes que elegir una sucursal");
                RuleFor(branchDealer => branchDealer.DealerId).Must(dealerId => dealerId.IsNotZero()).WithMessage("Tienes que elegir un distribuidor");
                Custom(ReferencesValidate);
            });
        }