Beispiel #1
0
        public DdsSallesViewModel(DdsDnevnikModel ddsmodel)
        {
            ddsDnevnikModel    = ddsmodel;
            KindDocLookup      = new ObservableCollection <LookUpSpecific>(context.GetAllDocTypes());
            SelectedLookup     = new ObservableCollection <ContragentInfo>();
            ActivityTypeLookup = new ObservableCollection <LookUpSpecific>
            {
                new LookUpSpecific {
                    CodetId = "01", Id = 1, Name = "Покупки"
                },
                new LookUpSpecific {
                    CodetId = "02", Id = 2, Name = "Продажби"
                },
                new LookUpSpecific {
                    CodetId = "03", Id = 3, Name = "Други"
                },
            };
            this.Lookups = new ObservableCollection <LookUpMetaData>(context.GetAllLookups(" where NAMEENG='k'"));

            AllFields = new ObservableCollection <DdsDnevnicItem>();
            foreach (var items in ddsDnevnikModel.DetailItems)
            {
                AllFields.Add(new DdsDnevnicItem(items));
            }
            if (ddsmodel.LookupID > 0)
            {
                Lookup = Lookups.FirstOrDefault(e => e.Id == ddsmodel.LookupID);
            }
            if (ddsmodel.LookupElementID > 0)
            {
                LookupElementInfo = SelectedLookup.FirstOrDefault(e => e.Id == ddsmodel.LookupElementID);
            }
        }
Beispiel #2
0
        public Lexicon.Type GetOrCreateDataTypeByName(ICSharpClosure closure, string name, Func <string, Lexicon.Type> create = null)
        {
            var dt = closure?.GetByName(name);

            if (dt != null)
            {
                return(dt);
            }
            dt = Objects.SingleOrDefault(ddt => ddt.FullName.Equals(name) && (ddt.Closure?.Equals(closure) ?? closure == ddt.Closure));
            if (dt == null)
            {
                dt = Lookups.FirstOrDefault(ddt => ddt.FullName.Equals(name) && (ddt.FromClosure?.Equals(closure) ?? closure == ddt.FromClosure));
                if (dt == null)
                {
                    if (create == null)
                    {
                        LookupObjectType lt = new LookupObjectType(closure, name);
                        dt = lt;
                        Lookups.Add(lt);
                    }
                    else
                    {
                        Objects.Add(dt = create(name));
                    }
                }
            }
            return(dt);
        }
Beispiel #3
0
        public DdsViewModel(DdsDnevnikModel ddsmodel)
        {
            ddsDnevnikModel = ddsmodel;
            KindDocLookup   = new ObservableCollection <LookUpSpecific>(Context.GetAllDocTypes());
            if (ddsDnevnikModel.CodeDoc == null)
            {
                ddsDnevnikModel.CodeDoc = "01";
            }
            KindDoc            = KindDocLookup.FirstOrDefault(e => e.CodetId == ddsDnevnikModel.CodeDoc);
            ActivityTypeLookup = new ObservableCollection <LookUpSpecific>
            {
                new LookUpSpecific {
                    CodetId = "01", Id = 1, Name = "Покупки"
                },
                new LookUpSpecific {
                    CodetId = "02", Id = 2, Name = "Продажби"
                },
                new LookUpSpecific {
                    CodetId = "03", Id = 3, Name = "Други"
                },
            };
            this.Lookups = new ObservableCollection <LookUpMetaData>(Context.GetAllLookups(" where NAMEENG='k'"));

            AllFields = new ObservableCollection <DdsDnevnicItem>();
            foreach (var items in ddsDnevnikModel.DetailItems)
            {
                AllFields.Add(new DdsDnevnicItem(items));
            }
            if (ddsmodel.LookupID > 0)
            {
                Lookup = Lookups.FirstOrDefault(e => e.Id == ddsmodel.LookupID);
                if (Lookup == null)
                {
                    Lookup = ddsmodel.KindActivity == 2 ? Lookups.FirstOrDefault(e => e.Name == "Клиенти") : Lookups.FirstOrDefault(e => e.Name == "Доставчици");
                    ddsmodel.LookupElementID = 0;
                }
            }
            else
            {
                Lookup = ddsmodel.KindActivity == 2 ? Lookups.FirstOrDefault(e => e.Name == "Клиенти") : Lookups.FirstOrDefault(e => e.Name == "Доставчици");
            }
            if (SelectedItem == null)
            {
                SelectedItem = new SaldoItem();
            }
            SelectedItem.Value = ddsDnevnikModel.ClNum;
            Bustad             = ddsDnevnikModel.Bulstat;
            DdsId  = ddsDnevnikModel.Nzdds;
            ClName = ddsDnevnikModel.NameKontr;
            if (Lookup != null)
            {
                SelectedItem.Name = Lookup.Name;
            }
            OnPropertyChanged("SelectedItem");
            ddsDnevnikModel.Total = ddsDnevnikModel.DetailItems.Sum(e => e.DdsSuma).ToString(Vf.LevFormatUI);
        }
Beispiel #4
0
        public Lexicon.Type GetOrCreateArrayDataTypeByName(ICSharpClosure closure, Lexicon.Type type)
        {
            string name = type.FullName + "[]";
            var    dt   = closure?.GetByName(name);

            if (dt != null)
            {
                return(dt);
            }
            dt = Objects.SingleOrDefault(ddt => ddt.FullName.Equals(name) && (ddt.Closure?.Equals(closure) ?? closure == ddt.Closure));
            if (dt == null)
            {
                dt = Lookups.FirstOrDefault(ddt => ddt.FullName.Equals(name) && (ddt.FromClosure?.Equals(closure) ?? closure == ddt.FromClosure));
                if (dt == null)
                {
                    LookupObjectType lt = new LookupObjectType(closure, name);
                    dt = lt;
                    Lookups.Add(lt);
                }
            }
            return(dt);
        }
Beispiel #5
0
        public DdsViewModel(DdsDnevnikModel ddsmodel, DdsDnevnicItem item)
        {
            ddsDnevnikModel = ddsmodel;
            KindDocLookup   = new ObservableCollection <LookUpSpecific>(Context.GetAllDocTypes());
            if (ddsDnevnikModel.CodeDoc == null)
            {
                ddsDnevnikModel.CodeDoc = "01";
            }
            KindDoc            = KindDocLookup.FirstOrDefault(e => e.CodetId == ddsDnevnikModel.CodeDoc);
            ActivityTypeLookup = new ObservableCollection <LookUpSpecific>
            {
                new LookUpSpecific {
                    CodetId = "01", Id = 1, Name = "Покупки"
                },
                new LookUpSpecific {
                    CodetId = "02", Id = 2, Name = "Продажби"
                },
                new LookUpSpecific {
                    CodetId = "03", Id = 3, Name = "Други"
                },
            };
            this.Lookups = new ObservableCollection <LookUpMetaData>(Context.GetAllLookups(" where NAMEENG='k'"));

            AllFields = new ObservableCollection <DdsDnevnicItem>();
            foreach (var litem in ddsDnevnikModel.DetailItems)
            {
                if (ddsDnevnikModel.IsSuma == 0)
                {
                    if (litem.Name == item.Name)
                    {
                        if (litem.DdsSuma > 0 && litem.DdsSuma != item.DdsSuma)
                        {
                            _kor    = true;
                            _oldsum = litem.DdsSuma.ToString(Vf.LevFormatUI);
                        }
                        else
                        {
                            _kor = false;
                        }
                        litem.DdsSuma = item.DdsSuma;
                        litem.In      = true;
                    }
                }
                else
                {
                    if (!ddsDnevnikModel.IsLinked)
                    {
                        if (litem.Name == item.Name)
                        {
                            litem.DdsSuma         = item.DdsSuma;
                            ddsDnevnikModel.Total = item.DdsSuma.ToString(Vf.LevFormatUI);
                            litem.In = true;
                        }
                    }
                }
                AllFields.Add(new DdsDnevnicItem(litem));
            }

            if (ddsmodel.LookupID > 0)
            {
                Lookup = Lookups.FirstOrDefault(e => e.Id == ddsmodel.LookupID);
                if (Lookup == null)
                {
                    Lookup = ddsmodel.KindActivity == 2
                        ? Lookups.FirstOrDefault(e => e.Name == "Клиенти")
                        : Lookups.FirstOrDefault(e => e.Name == "Доставчици");
                    ddsmodel.LookupElementID = 0;
                }
            }
            else
            {
                Lookup = ddsmodel.KindActivity == 2
                    ? Lookups.FirstOrDefault(e => e.Name == "Клиенти")
                    : Lookups.FirstOrDefault(e => e.Name == "Доставчици");
            }
            if (ddsmodel.LookupElementID > 0)
            {
                string SerachedField = "";
                if (Lookup != null)
                {
                    SerachedField = Context.GetLookup(Lookup.Id).Fields[0].NameEng;
                }
                var list = Context.GetLookupDictionary(_lookUpMetaData.Tablename,
                                                       ConfigTempoSinglenton.GetInstance().CurrentFirma.Id,
                                                       string.Format("And \"{0}\"={1}", SerachedField, ddsmodel.LookupElementID));
                foreach (var li in list)
                {
                    if (li != null)
                    {
                        if (li.ContainsKey("Name"))
                        {
                            SelectedItem.Lookupval = li["Name"].ToString();
                            ClName = SelectedItem.Lookupval;
                        }
                        if (li.ContainsKey("VAT"))
                        {
                            DdsId = li["VAT"].ToString();
                        }
                        if (li.ContainsKey("BULSTAT"))
                        {
                            Bustad = li["BULSTAT"].ToString();
                        }
                        if (li.ContainsKey("KONTRAGENT"))
                        {
                            SelectedItem.Value = li["KONTRAGENT"].ToString();
                        }
                    }
                }
            }
            else
            {
                if (ddsmodel.ClNum != null)
                {
                    string SerachedField = "";
                    if (Lookup != null)
                    {
                        SerachedField = Context.GetLookup(Lookup.Id).Fields[1].NameEng;
                    }
                    var list = Context.GetLookupDictionary(_lookUpMetaData.Tablename,
                                                           ConfigTempoSinglenton.GetInstance().CurrentFirma.Id,
                                                           string.Format("And \"{0}\"={1}", SerachedField, ddsmodel.ClNum));
                    foreach (var li in list)
                    {
                        if (li != null)
                        {
                            if (li.ContainsKey("Name"))
                            {
                                SelectedItem.Lookupval = li["Name"].ToString();
                                ClName = SelectedItem.Lookupval;
                            }
                            if (li.ContainsKey("VAT"))
                            {
                                DdsId = li["VAT"].ToString();
                            }
                            if (li.ContainsKey("BULSTAT"))
                            {
                                Bustad = li["BULSTAT"].ToString();
                            }
                            if (li.ContainsKey("KONTRAGENT"))
                            {
                                SelectedItem.Value = li["KONTRAGENT"].ToString();
                            }
                            if (li.ContainsKey("Id"))
                            {
                                int id;
                                ddsDnevnikModel.LookupElementID = int.TryParse(li["Id"].ToString(), out id)?id:0;
                            }
                        }
                    }
                }
            }
        }
Beispiel #6
0
 public static OpLookup Find(string op, string parameters)
 {
     return(Lookups.FirstOrDefault(x => (x.Op == op) && x.Mode.IsMatch(parameters)));
 }