public AccountStatementImport ImportFile(StreamReader reader, User user)
        {
            //Boolean firstLine = true;

            //verifier en tete fichier selon banque: rejet ou definit la banque
            while (!reader.EndOfStream)
            {
                var line = reader.ReadLine();
                if (line.Contains(';'))
                {
                    var values = line.Split(';');

                    EnumBankFamily enumBankFamily = GetFileBankType(values);
                    switch (enumBankFamily)
                    {
                    case EnumBankFamily.BanquePopulaire:
                        return(ImportFileBanquePopulaire(reader, user));

                    case EnumBankFamily.CreditAgricole:
                        return(ImportFileCreditAgricole(reader, user));
                    }
                }
            }
            throw new Exception("Type de fichier incorrect");
        }
        public OperationMethod GetOperationMethodByFileLabel(string operationLabel, EnumBankFamily enumBankFamily)
        {
            List <OperationMethodLexical> operationMethodLexicals = _operationMethodLexicalService.GetAllByOrder().Where(x => x.IdBankFamily == (int)enumBankFamily).ToList();

            //chercher le mot clef du lexique dans l'operation label
            foreach (var operationMethodLexical in operationMethodLexicals)
            {
                if (operationLabel.Contains(operationMethodLexical.Keyword))
                {
                    var operationMethod = _operationMethodRepository.GetById(operationMethodLexical.IdOperationMethod);
                    operationMethod.KeywordWork = operationMethodLexical.Keyword;
                    return(operationMethod);
                }
            }

            return(GetById((int)EnumOperationMethod.Inconnu));
        }