Exemplo n.º 1
0
 public void ProcessInbound(Inbound.Документ s)
 {
     var userID = Helper.GetUserName();
     var userB2B = _Context.B2BUser.First(r => r.B2BUserID == userID);
     // Заказ
     var o = new Dme.Core.Order();
     o.UserID = userID;
     o.DT = DateTime.Now;
     o.CustOrderID = s.Номер;
     o.CustOrderDT = s.Дата;
     string orderTypeName = GetParameter(s, "Тип") ?? "Поставка";
     o.OrderType = _Context.OrderType.Where(ot=>ot.Name==orderTypeName && ot.Sign=="+").FirstOrDefault();
     if (o.OrderType == null)
         throw new Exception("Неизвестный тип документа");
     o.CustomerID = userB2B.CustomerID;
     var t = s.ТаблДок.First();
     // Отправитель
     o.Supplier = GetSupplier(s.Отправитель.First().СвЮЛ.First());
     // Строки
     int rowNo = 1;
     foreach (var r in t.СтрТабл)
     {
         var i = new Core.OrderDocRow();
         i.Partm = GetPartm(r);
         i.BatchNo = r.Серия;
         i.InvQual = r.Качество ?? "N";
         i.SpecInvID = r.Маркер;
         i.ExpireDT = r.СрокГодности;
         i.Qty = r.Кол_во;
         i.Price = r.Цена;
         i.RowNo = rowNo;
         o.OrderDocRow.Add(i);
         rowNo++;
     }
     // сохраняем изменения
     _Context.Order.Add(o);
 }
Exemplo n.º 2
0
        public void ProcessOutbound(Outbound.Документ s)
        {
            var userID  = Helper.GetUserName();
            var userB2B = _Context.B2BUser.First(r => r.B2BUserID == userID);
            // Заказ
            var o = new Dme.Core.Order();

            o.UserID      = userID;
            o.DT          = DateTime.Now;
            o.CustOrderID = s.Номер;
            o.CustOrderDT = s.Дата;
            string orderTypeName = GetParameter(s, "Тип") ?? "Отгрузка";

            o.OrderType = _Context.OrderType.Where(ot => ot.Name == orderTypeName && ot.Sign == "-").FirstOrDefault();
            if (o.OrderType == null)
            {
                throw new Exception("Неизвестный тип документа");
            }
            o.CustomerID = userB2B.CustomerID;
            var t = s.ТаблДок.First();

            // Отправитель
            o.Dest                   = new Core.Dest();
            o.Dest.Name              = GetParameter(s, "ПолучательНаим", true);
            o.Dest.Addr              = GetParameter(s, "ПолучательАдрес", true);
            o.Dest.Phone             = GetParameter(s, "ПолучательТел");
            o.Dest.Note              = GetParameter(s, "ПолучательПримечание");
            o.Dest.WorkSchW1From     = TimeSpan.Parse(GetParameter(s, "НачалоРаботыПн") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW2From     = TimeSpan.Parse(GetParameter(s, "НачалоРаботыВт") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW3From     = TimeSpan.Parse(GetParameter(s, "НачалоРаботыСр") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW4From     = TimeSpan.Parse(GetParameter(s, "НачалоРаботыЧт") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW5From     = TimeSpan.Parse(GetParameter(s, "НачалоРаботыПт") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW6From     = TimeSpan.Parse(GetParameter(s, "НачалоРаботыСб") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW7From     = TimeSpan.Parse(GetParameter(s, "НачалоРаботыВс") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW1To       = TimeSpan.Parse(GetParameter(s, "КонецРаботыПн") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW2To       = TimeSpan.Parse(GetParameter(s, "КонецРаботыВт") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW3To       = TimeSpan.Parse(GetParameter(s, "КонецРаботыСр") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW4To       = TimeSpan.Parse(GetParameter(s, "КонецРаботыЧт") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW5To       = TimeSpan.Parse(GetParameter(s, "КонецРаботыПт") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW6To       = TimeSpan.Parse(GetParameter(s, "КонецРаботыСб") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.WorkSchW7To       = TimeSpan.Parse(GetParameter(s, "КонецРаботыВс") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW1From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиПн") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW2From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиВт") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW3From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиСр") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW4From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиЧт") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW5From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиПт") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW6From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиСб") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW7From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиВс") ?? "00:00:00", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW1To   = TimeSpan.Parse(GetParameter(s, "КонецПриемкиПн") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW2To   = TimeSpan.Parse(GetParameter(s, "КонецПриемкиВт") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW3To   = TimeSpan.Parse(GetParameter(s, "КонецПриемкиСр") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW4To   = TimeSpan.Parse(GetParameter(s, "КонецПриемкиЧт") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW5To   = TimeSpan.Parse(GetParameter(s, "КонецПриемкиПт") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW6To   = TimeSpan.Parse(GetParameter(s, "КонецПриемкиСб") ?? "23:59:59", CultureInfo.InvariantCulture);
            o.Dest.DeliverySchW7To   = TimeSpan.Parse(GetParameter(s, "КонецПриемкиВс") ?? "23:59:59", CultureInfo.InvariantCulture);
            _Context.Dest.Add(o.Dest);
            // Примечание
            string orderNote = GetParameter(s, "Примечание");

            if (orderNote != null)
            {
                o.OrderNote.Add(new Core.OrderNote {
                    Note = orderNote
                });
            }
            // Строки
            int rowNo = 1;

            foreach (var r in t.СтрТабл)
            {
                var i = new Core.OrderDocRow();
                i.Partm     = _Context.Partm.FirstOrDefault(p => p.id1 == r.Код);
                i.BatchNo   = r.Серия;
                i.InvQual   = r.Качество ?? "N";
                i.SpecInvID = r.Маркер;
                i.ExpireDT  = r.СрокГодности;
                i.Qty       = r.Кол_во;
                i.Price     = r.Цена;
                i.RowNo     = rowNo;
                o.OrderDocRow.Add(i);
                rowNo++;
            }
            // сохраняем изменения
            _Context.Order.Add(o);
        }
Exemplo n.º 3
0
 public void ProcessOutbound(Outbound.Документ s)
 {
     var userID = Helper.GetUserName();
     var userB2B = _Context.B2BUser.First(r => r.B2BUserID == userID);
     // Заказ
     var o = new Dme.Core.Order();
     o.UserID = userID;
     o.DT = DateTime.Now;
     o.CustOrderID = s.Номер;
     o.CustOrderDT = s.Дата;
     string orderTypeName = GetParameter(s, "Тип") ?? "Отгрузка";
     o.OrderType = _Context.OrderType.Where(ot => ot.Name == orderTypeName && ot.Sign == "-").FirstOrDefault();
     if (o.OrderType == null)
         throw new Exception("Неизвестный тип документа");
     o.CustomerID = userB2B.CustomerID;
     var t = s.ТаблДок.First();
     // Отправитель
     o.Dest = new Core.Dest();
     o.Dest.Name = GetParameter(s, "ПолучательНаим", true);
     o.Dest.Addr = GetParameter(s, "ПолучательАдрес", true);
     o.Dest.Phone = GetParameter(s, "ПолучательТел");
     o.Dest.Note = GetParameter(s, "ПолучательПримечание");
     o.Dest.WorkSchW1From = TimeSpan.Parse(GetParameter(s, "НачалоРаботыПн") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW2From = TimeSpan.Parse(GetParameter(s, "НачалоРаботыВт") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW3From = TimeSpan.Parse(GetParameter(s, "НачалоРаботыСр") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW4From = TimeSpan.Parse(GetParameter(s, "НачалоРаботыЧт") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW5From = TimeSpan.Parse(GetParameter(s, "НачалоРаботыПт") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW6From = TimeSpan.Parse(GetParameter(s, "НачалоРаботыСб") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW7From = TimeSpan.Parse(GetParameter(s, "НачалоРаботыВс") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW1To = TimeSpan.Parse(GetParameter(s, "КонецРаботыПн") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW2To = TimeSpan.Parse(GetParameter(s, "КонецРаботыВт") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW3To = TimeSpan.Parse(GetParameter(s, "КонецРаботыСр") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW4To = TimeSpan.Parse(GetParameter(s, "КонецРаботыЧт") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW5To = TimeSpan.Parse(GetParameter(s, "КонецРаботыПт") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW6To = TimeSpan.Parse(GetParameter(s, "КонецРаботыСб") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.WorkSchW7To = TimeSpan.Parse(GetParameter(s, "КонецРаботыВс") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW1From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиПн") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW2From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиВт") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW3From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиСр") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW4From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиЧт") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW5From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиПт") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW6From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиСб") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW7From = TimeSpan.Parse(GetParameter(s, "НачалоПриемкиВс") ?? "00:00:00", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW1To = TimeSpan.Parse(GetParameter(s, "КонецПриемкиПн") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW2To = TimeSpan.Parse(GetParameter(s, "КонецПриемкиВт") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW3To = TimeSpan.Parse(GetParameter(s, "КонецПриемкиСр") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW4To = TimeSpan.Parse(GetParameter(s, "КонецПриемкиЧт") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW5To = TimeSpan.Parse(GetParameter(s, "КонецПриемкиПт") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW6To = TimeSpan.Parse(GetParameter(s, "КонецПриемкиСб") ?? "23:59:59", CultureInfo.InvariantCulture);
     o.Dest.DeliverySchW7To = TimeSpan.Parse(GetParameter(s, "КонецПриемкиВс") ?? "23:59:59", CultureInfo.InvariantCulture);
     _Context.Dest.Add(o.Dest);
     // Примечание
     string orderNote = GetParameter(s, "Примечание");
     if (orderNote != null)
         o.OrderNote.Add(new Core.OrderNote { Note = orderNote });
     // Строки
     int rowNo = 1;
     foreach (var r in t.СтрТабл)
     {
         var i = new Core.OrderDocRow();
         i.Partm = _Context.Partm.FirstOrDefault(p => p.id1 == r.Код);
         i.BatchNo = r.Серия;
         i.InvQual = r.Качество ?? "N";
         i.SpecInvID = r.Маркер;
         i.ExpireDT = r.СрокГодности;
         i.Qty = r.Кол_во;
         i.Price = r.Цена;
         i.RowNo = rowNo;
         o.OrderDocRow.Add(i);
         rowNo++;
     }
     // сохраняем изменения
     _Context.Order.Add(o);
 }