/// <summary> /// Возвращает товар из справочника. Если такого нет, то создает новую запись /// </summary> /// <param name="r"></param> /// <returns></returns> private Dme.Core.Partm GetPartm(Inbound.СтрТабл r) { Dme.Core.Partm p; int partID = 0; string id1 = r.Код; if (id1 == null || id1 == string.Empty) { var y = r.Характеристика.Where(x => x.Имя == "КодСантэнс").FirstOrDefault(); if (y == null) { throw new Exception("Поле \"Код\" должно быть заполнено"); } else { partID = Int32.Parse(y.Значение); } } if (partID > 0) { p = _Context.Partm.FirstOrDefault(i => i.PartID == partID); if (p == null) { throw new Exception(String.Format("Поле \"КодСантэнс\" содержит недопустимое значение {0}", partID)); } } else { p = _Context.Partm.FirstOrDefault(i => i.id1 == id1); if (p == null) { p = new Core.Partm(); p.PartID = GetPartmNewID(); p.partdsc = r.Название; p.partdsc2 = r.Производитель; p.id1 = id1; p.tempcl = r.ТемпРежим ?? "general"; p.glass = r.Стекло ?? false; p.specaccount = r.Пку ?? false; p.hazcl = r.КлассОпасн ?? "general"; p.minorder = r.МинЗаказ ?? 1; p.mulorder = r.КратнЗаказ ?? 1; _Context.Partm.Add(p); _Context.SaveChanges(); } } return(p); }
/// <summary> /// Возвращает товар из справочника. Если такого нет, то создает новую запись /// </summary> /// <param name="r"></param> /// <returns></returns> private Dme.Core.Partm GetPartm(Inbound.СтрТабл r) { Dme.Core.Partm p; int partID = 0; string id1 = r.Код; if (id1 == null || id1 == string.Empty) { var y = r.Характеристика.Where(x => x.Имя == "КодСантэнс").FirstOrDefault(); if (y == null) throw new Exception("Поле \"Код\" должно быть заполнено"); else partID = Int32.Parse(y.Значение); } if (partID > 0) { p = _Context.Partm.FirstOrDefault(i => i.PartID == partID); if (p == null) throw new Exception(String.Format("Поле \"КодСантэнс\" содержит недопустимое значение {0}", partID)); } else { p = _Context.Partm.FirstOrDefault(i => i.id1 == id1); if (p == null) { p = new Core.Partm(); p.PartID = GetPartmNewID(); p.partdsc = r.Название; p.partdsc2 = r.Производитель; p.id1 = id1; p.tempcl = r.ТемпРежим ?? "general"; p.glass = r.Стекло ?? false; p.specaccount = r.Пку ?? false; p.hazcl = r.КлассОпасн ?? "general"; p.minorder = r.МинЗаказ ?? 1; p.mulorder = r.КратнЗаказ ?? 1; _Context.Partm.Add(p); _Context.SaveChanges(); } } return p; }