private void OnClickMenuPastePribor(object sender, RoutedEventArgs e) { if (Clipboard.ContainsData(DataFormats.Text)) { using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { string data = Clipboard.GetText(); string[] array = Regex.Replace(data, @"\r\n?", ";").Split(';'); //MessageBox.Show(array.Length.ToString()); foreach (var item in array) { if (!WorkContext.PriborContexts.Where(x => int.Parse(x.Pribor.Code) == int.Parse(item)).Any()) { //MessageBox.Show("=" + str + "="); MessageBox.Show("=" + item + "="); foreach (var t in db.Pribors) { MessageBox.Show(t.Code + "=" + int.Parse(item)); } ////Pribor pribor = db.Pribors.Where(x => int.Parse(x.Code) == int.Parse(item)).First(); //if (pribor != null) //{ // WorkContext.PriborContexts.Add(new PriborContext(pribor)); //} } } } } else { MessageBox.Show("Ошибка формата"); } }
private void LoadOrClear() { if (size != null && !(Commentaries.Any() && Materials.Any() && Pribors.Any())) { using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { Materials.Clear(); db.MaterialGroups.Where(x => x.WorkId == Id).ToList().ForEach(x => { Materials.Add(new MaterialGroupDemView(x, diff + 1)); }); Pribors.Clear(); db.PriborGroups.Where(x => x.WorkId == Id).ToList().ForEach(x => { Pribors.Add(new PriborGroupView(x)); }); Commentaries.Clear(); db.Commentaries.Where(x => x.WorkSectionId == WorkSectionId).ToList().ForEach(x => { Commentaries.Add(new CommentaryView(x)); }); } } else { Commentaries.Clear(); Materials.Clear(); Pribors.Clear(); } }
private void OnClickContextMenuPasteMaterial(object sender, RoutedEventArgs e) { if (Clipboard.ContainsData(DataFormats.Text)) { using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { string data = Clipboard.GetText(); string[] array = data.Split('\n'); //MessageBox.Show(array.Length.ToString()); foreach (var item in array) { string str = item.Replace("\n", ""); if (!WorkContext.MaterailContexts.Where(x => int.Parse(x.Material.Code) == int.Parse(str)).Any()) { //MessageBox.Show(str); str = int.Parse(str).ToString(); Material material = db.Materials.Where(x => int.Parse(x.Code) == int.Parse(str)).FirstOrDefault(); if (material != null) { WorkContext.MaterailContexts.Add(new MaterialContext(material)); } } } } } else { MessageBox.Show("Ошибка формата"); } }
public PriborGroupView(PriborGroup PriborGroup) { Id = PriborGroup.Id; count = PriborGroup.Count; using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { Pribor = db.Pribors.Where(x => x.Id == PriborGroup.PriborId).SingleOrDefault(); } IsYes = true; }
public TeamContext(WorkTeam workTeam) { this.workTeam = workTeam; this.count = workTeam.Count; using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { Post = db.Posts.Where(x => x.Id == workTeam.PostId).FirstOrDefault(); } PaybyHour = Post.Pay / 168; }
public MaterialGroupDemView(MaterialGroup MaterialGroup, int diff) { Id = MaterialGroup.Id; ForAllObject = MaterialGroup.ForAllObject; Count = (double)Helper.Count(MaterialGroup, diff); using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { Material = db.Materials.Where(x => x.Id == MaterialGroup.MaterialId).SingleOrDefault(); } IsYes = true; }
private void SetDefault() { Time = (double)Helper.Time(Work, Diff); // Vaqtni bir soatga to'langan pulga hamma vaqtni ko'paytirib if (Diff == 1) { Work.PricePay *= Time; } Diffucult = Helper.Diffucults[Diff - 1]; //if (Diff > 1) //{ using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { // Read Material group List <MaterialGroup> list = db.MaterialGroups.ToList().Where(x => x.WorkId == Work.Id).ToList(); Work.PriceMaterial = 0; list.ForEach(x => { var current = db.Materials.ToList().Where(y => y.Id == x.MaterialId).First(); double d = (double)Helper.Count(x, Diff); Work.PriceMaterial += d * current.Price; Materials.Add(new MaterialMainView() { Count = d, Material = current, Status = true }); }); // Read Pribor group List <PriborGroup> list1 = db.PriborGroups.ToList().Where(x => x.WorkId == Work.Id).ToList(); Work.PricePribor = 0; list1.ForEach(x => { var current = db.Pribors.ToList().Where(y => y.Id == x.PriborId).First(); Work.PricePribor += current.Price * x.Count * current.Percent / 100 / 12 / 30 / 24; //Pribors.Add(new PriborGroupView() //{ // Count = x.Count, // Pribor = current, // Status = true //}); }); } //} }
public WorkContext() { WorkSections = new ObservableCollection <WorkSection>(); using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { db.WorkSections.ForEach(x => { WorkSections.Add(x); }); workTypes = db.WorkTypes; SelectedWorkType = workTypes[0]; } TeamContexts = new ObservableCollection <TeamContext>(); MaterailContexts = new ObservableCollection <MaterialContext>(); PriborContexts = new ObservableCollection <PriborContext>(); Work = new Work(); }
public WindowAddFromPriborList(ObservableCollection <PriborContext> PriborContext) { InitializeComponent(); list = new ObservableCollection <PriborContext>(); data.ItemsSource = list; using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { foreach (var item in db.Pribors) { PriborContext search = PriborContext.Where(x => x.Pribor.Id == item.Id).FirstOrDefault(); if (search != null) { list.Add(search); } else { list.Add(new PriborContext(item)); } } } }
public WindowAddFromMaterialList(ObservableCollection <MaterialContext> MaterialContext) { InitializeComponent(); list = new ObservableCollection <Context.MaterialContext>(); data.ItemsSource = list; using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { foreach (var item in db.Materials) { MaterialContext search; if ((search = MaterialContext.Where(x => x.Material.Id == item.Id).FirstOrDefault()) != null) { list.Add(search); } else { list.Add(new MaterialContext(item)); } } } }
private void MyCommandExecuted(object sender, ExecutedRoutedEventArgs e) { if (Clipboard.ContainsData(DataFormats.Text)) { try { // get all text string data = Clipboard.GetText(); // split to lines string[] array = data.Split('\n'); // First line is nomer norma WorkContext.Work.Number = array[0]; // Second line is Name of process WorkContext.Work.Name = array[1]; // Third line is measure of process without "Измеритель" WorkContext.Work.Measure = array[2].Replace("Измеритель", ""); // 4, 5, 6, 7, 8, 9, 10 are useless's lines List <PriborContext> priborContexts = new List <PriborContext>(); using (var db = new SmetaApplication.DbContexts.SmetaDbAppContext()) { foreach (var item in db.Pribors) { priborContexts.Add(new PriborContext(item)); } int i = 9; bool IsMaterial = true; for (; IsMaterial && i < array.Length; i++) { int code; string[] split = array[i].Split('\t'); // first column is code of pribor, if it isn't pribor, then set IsMaterial = false //MessageBox.Show(array[i]); if (int.TryParse(split[0], out code)) { PriborContext priborContext = priborContexts.Find(x => int.Parse(x.Pribor.Code) == code); if (priborContext == null) { throw new NullReferenceException("Прибор нет: " + split[0] + " : " + split[1]); } priborContext.PriborGroup.Count = 1; WorkContext.PriborContexts.Add(priborContext); // 2 column is name of pribor // 3 column is measure of pribor // begin from 4 if (i == 9) { double time; bool IsBegin = true; if (double.TryParse(split[3].Replace('.', ','), out time)) { WorkContext.Work.Time1 = time; } else { IsBegin = false; } if (IsBegin && double.TryParse(split[4].Replace('.', ','), out time)) { WorkContext.Work.Time2 = time; } else { IsBegin = false; } if (IsBegin && double.TryParse(split[5].Replace('.', ','), out time)) { WorkContext.Work.Time3 = time; } else { IsBegin = false; } if (IsBegin && double.TryParse(split[6].Replace('.', ','), out time)) { WorkContext.Work.Time4 = time; } else { IsBegin = false; } if (IsBegin && double.TryParse(split[7].Replace('.', ','), out time)) { WorkContext.Work.Time5 = time; } else { IsBegin = false; } } } else { IsMaterial = false; } } List <MaterialContext> materialContexts = new List <MaterialContext>(); foreach (var item in db.Materials) { materialContexts.Add(new MaterialContext(item)); } // Materials for (; i < array.Length; i++) { int code; string[] split = array[i].Split('\t'); // first column is code of material, if it isn't material, then for does'nt work //MessageBox.Show(array[i]); if (int.TryParse(split[0], out code)) { MaterialContext materialContext = materialContexts.Find(x => int.Parse(x.Material.Code) == code); WorkContext.MaterailContexts.Add(materialContext); if (materialContext == null) { throw new NullReferenceException("Материал нет: " + split[0] + " : " + split[1]); } // 2 column is name of material // 3 column is measure of material // begin from 4 double time; bool IsBegin = true; //MessageBox.Show(split[3]); if (double.TryParse(split[3].Replace('.', ','), out time)) { materialContext.MaterialGroup.Count1 = time; } else { IsBegin = false; } if (IsBegin && double.TryParse(split[4].Replace('.', ','), out time)) { materialContext.MaterialGroup.Count2 = time; } else { IsBegin = false; } if (IsBegin && double.TryParse(split[5].Replace('.', ','), out time)) { materialContext.MaterialGroup.Count3 = time; } else { IsBegin = false; } if (IsBegin && double.TryParse(split[6].Replace('.', ','), out time)) { materialContext.MaterialGroup.Count4 = time; } else { IsBegin = false; } if (IsBegin && double.TryParse(split[7].Replace('.', ','), out time)) { materialContext.MaterialGroup.Count5 = time; } else { IsBegin = false; } } } } //WorkContext.Work.PriceMaterial = WorkContext.MaterailContexts.Sum(x => x.Material.Price * x.MaterialGroup.Count1); //WorkContext.Work.PricePribor = WorkContext.PriborContexts.Sum(x => x.Pribor.Price * x.PriborGroup.Count); } catch (Exception exc) { MessageBox.Show("Ошибка формата: " + exc.ToString()); } } else { MessageBox.Show("Ошибка формата"); } }