public OrganizedRepository GetRepository(int IDRepository)
        {
            Dictionary <string, object> insaddr = new Dictionary <string, object>();

            insaddr.Add("IDRepository", IDRepository);
            OrganizedRepository retour = base.GetOneDefault <OrganizedRepository>(insaddr);

            return(retour);
        }
        public OrganizedRepository Create(DataInvoice.SOLUTIONS.GENERAL.ACCOUNT.Account account, string RepositoryLabel, ENUMS.RepositoryModeEnum mode = ENUMS.RepositoryModeEnum.DATAINVOICECLOUD)
        {
            try
            {
                OrganizedRepository nouveau = new OrganizedRepository();
                nouveau.LabelRepository = RepositoryLabel;
                nouveau.IDAccount       = account.IDAccount;
                nouveau.DateCreate      = DateTime.Now;
                nouveau.RepositoryMode  = mode;
                nouveau["IDRepository"] = DBNull.Value;

                // Insert
                base.InsertBubble(nouveau, false, true);

                return(nouveau);
            }
            catch (Exception ex)
            {
                throw new Exception("Create Repository " + ex.Message, ex);
            }
        }
        public void CopyFile(OrganizedRepository repo, System.IO.FileInfo fi, Dictionary <string, string> customFieldResutls = null, string userRenameFile = null)
        {
            if (repo.RepositoryMode != ENUMS.RepositoryModeEnum.LOCALDIRECTORY)
            {
                throw new Exception("Mode non disponible");
            }

            string directorytocopy = GenerateCustomName(repo.FormatedDirectoryName, customFieldResutls);
            string filetocopy      = "";

            if (!string.IsNullOrWhiteSpace(repo.FormatedFileName))
            {
                filetocopy = GenerateCustomName(repo.FormatedFileName, customFieldResutls);
            }
            else if (!string.IsNullOrWhiteSpace(userRenameFile))
            {
                filetocopy = userRenameFile;
            }
            else
            {
                filetocopy = fi.Name;
            }

            string fullpath = NGLib.COMPONENTS.FILE.FileTools.SlashEnd(localRootDirectory) + NGLib.COMPONENTS.FILE.FileTools.SlashEnd(directorytocopy) + filetocopy;


            // COPIE
            System.IO.FileInfo fifullpath = new System.IO.FileInfo(fullpath);
            if (!fifullpath.Directory.Exists && repo.CreateDirectoryIfNotExist)
            {
                fifullpath.Directory.Create();
            }
            else if (!fifullpath.Directory.Exists)
            {
                throw new Exception("Output Directory not found");
            }

            System.IO.File.Copy(fi.FullName, fullpath, false);
        }