예제 #1
0
        // Check if series in database
        public static void CreateSeries(bool DeleteOldSeries = true)
        {
            if (DeleteOldSeries)
            {
                var oldseries = DS.db.GetAll <SeriesName>(a => true) as IEnumerable <SeriesName>;
                DS.db.DeleteMany(oldseries);
            }

            var modulesWithSeries = DS.db.GetAll <ModuleErp>(a => true) as IEnumerable <ModuleErp>;

            if (modulesWithSeries != null)
            {
                foreach (var module in modulesWithSeries)
                {
                    try
                    {
                        var serie = new SeriesName();
                        serie.Libelle = module.Name;
                        serie.Sufix   = new string(module.Libelle.Take(2).ToArray()).ToUpper() + "-########";
                        serie.Indexe  = 1;
                        serie.ForceIgniorValidatUnique = true;
                        serie.Save();
                        module.SeriesNames = new List <SeriesName>();
                        module.SeriesNames.Add(serie);
                        module.SeriesDefault = serie.Id;
                        module.Save();
                    }
                    catch (Exception s)
                    {
                        DataHelpers.Logger.LogError(s);
                        throw s;
                    }
                }
            }
        }
예제 #2
0
        public static void CreateSeries(ModuleErp module, long currentIndex, bool createAnyway = false)
        {
            if (!module.HasSeries && createAnyway == false)
            {
                return;
            }

            var serie = new SeriesName();

            serie.Libelle = _(module.Name);

            string suffix  = "";
            string libelle = module.Libelle;

            var trim = libelle.Split(' ');

            if (trim.Length == 1)
            {
                var word = trim.FirstOrDefault();
                suffix += word.Substring(0, 2).ToUpper();
            }
            else
            {
                foreach (var item in trim)
                {
                    if (item.Length > 2)
                    {
                        var firstCharcter = new string(item.Take(1).ToArray());
                        suffix += firstCharcter.ToUpper();
                    }
                }
            }

            serie.Sufix  = suffix + "-########";
            serie.Indexe = currentIndex++;
            serie.ForceIgniorValidatUnique = true;
            serie.Save();
            // module.SeriesNames = new List<SeriesName>();
            module.SeriesNames.Add(serie);
            if (module.SeriesDefault.IsValide() == false)
            {
                module.SeriesDefault = serie.Id;
            }
            module.ForceIgniorValidatUnique = true;
            module.Save();
        }