Exemplo n.º 1
0
        /// <summary>
        /// determines Orders processing-state
        /// </summary>
        /// <param name="orderIdentifier"></param>
        /// <returns></returns>



        public ViewModels.OrderViewModel AddOrder(List <ViewModels.OrderItemViewModel> items, ViewModels.UserDataViewModel customerUser, ViewModels.UserDataViewModel storeUser)
        {
            var Order = new Models.OrderModel()
            {
                OrderState      = Enums.EnumOrderState.ClientPlacedOrder,
                OrderType       = Enums.EnumOrderType.Default,
                OrderIdentifier = Guid.NewGuid().ToString(),
                CustomerUser    = userContext.GetUser(customerUser.Id),
                StoreUser       = userContext.GetUser(storeUser.Id)
            };

            Order.Items = new List <Models.OrderItemModel>();
            foreach (var item in items)
            {
                Order.Items.Add(new Models.OrderItemModel()
                {
                    PartNo = item.PartNumber,
                    Price  = item.Price,
                    Name   = item.Name,
                    Amount = item.Amount,
                });
            }

            Order.OrderIdentifier = Guid.NewGuid().ToString();
            var newObj = orderContext.AddOrUpdateOrder(Order);

            return(newObj.ToOrderViewModel());
        }
Exemplo n.º 2
0
        public JsonResult CreateImportConfig(int Owner, int Type, string Source, string Name)
        {
            ViewModels.ProductImportConfigurationViewModel model = new ProductImportConfigurationViewModel();
            model.Owner  = userContext.GetUser(Owner).ToUserDataViewModel();
            model.Name   = Name;
            model.Source = Source;
            model.Type   = (Enums.EnumImportType)Type;

            var resvm = productRepository.CreateOrUpdateImportConfiguration(0, Owner, Type, Source, Name);

            return(Json(new { Result = "OK", Record = resvm }));
        }
Exemplo n.º 3
0
 public ViewModels.UserDataViewModel GetUser(int Id)
 {
     return(userContext.GetUser(Id).ToUserDataViewModel());
 }
        public bool ImportSource(string src, int ownerId, List <string> connections)
        {
            try
            {
                var user   = userRepository.GetUser(ownerId);
                var dbuser = userContext.GetUser(ownerId);

                var xe    = XElement.Load(src);
                var items = xe.Elements("channel").Elements("item");

                if (items.Count() == 0)
                {
                    return(false);
                }

                int cntr  = 0;
                int total = items.Count();
                foreach (var item in items)
                {
                    cntr++;
                    Utils.ProgressDialogUtils.Update("productImport", BaseResource.Get("ProcessingItem") + " (" + cntr + " / " + total + ")", Utils.ProductUtils.calc_percent(cntr, total), connections);

                    var pmodel = buildImportModel(item, dbuser);
                    _db.ProductTmpImport.Add(pmodel);

                    var existing = _db.Products.FirstOrDefault(ln => ln.SrcIdentifier == pmodel.SrcId && ln.Owner.ID == user.Id);

                    if (existing == null)
                    {
                        _db.Products.Add(new Models.ProductModel()
                        {
                            Name              = pmodel.Title,
                            Description       = pmodel.Description,
                            ImageUrl          = pmodel.ImageLink,
                            Owner             = dbuser,
                            PartNo            = pmodel.Mpn,
                            Price             = getPrice(pmodel.PriceString),
                            SrcIdentifier     = pmodel.SrcId,
                            ProductIdentifier = Guid.NewGuid().ToString()
                        });
                    }
                    else
                    {
                        existing.Description = pmodel.Description;
                        existing.ImageUrl    = pmodel.ImageLink;
                        existing.Name        = pmodel.Title;
                        existing.Owner       = pmodel.Owner;
                        existing.PartNo      = pmodel.Mpn;
                        existing.Price       = getPrice(pmodel.PriceString);
                    }
                }

                _db.SaveChanges();

                Utils.ProgressDialogUtils.Update("productImport", BaseResource.Get("RecreatingLuceneIndex"), 100, user.SignalRConnections);
                Utils.LuceneUtils.AddUpdateLuceneIndex(_db.ProductTmpImport.Where(ln => ln.Owner.ID == user.Id));
                Utils.ProgressDialogUtils.Update("productImport", BaseResource.Get("ProductImportFinished"), 100, user.SignalRConnections);

                return(true);
            }
            catch (Exception ex)
            {
                return(false);

                throw;
            }
        }