Exemplo n.º 1
0
        public async Task <IResult> SetOrderStatus(StatusModel model)
        {
            Status  statusValue;
            IResult result = new Result();

            var order = _orderRepository.First(s => s.OxId == model.Id);

            if (order != null)
            {
                if (Enum.TryParse <Status>(model.Status.ToString(), out statusValue))
                {
                    order.OrderStatus = model.Status;
                    await _orderRepository.UpdateAsync(order);

                    await _orderRepository.SaveAsync();

                    result.Success = true;
                }

                result.Success = true; result.Message = MessagesDictionary.GetErrorMessag("SuccessUpdated");
            }
            else
            {
                result.Message = MessagesDictionary.GetErrorMessag("Error");
            }

            return(result);
        }
Exemplo n.º 2
0
        public async Task <IDataResult <IEnumerable <Orders> > > GetOrders(FilterOrdersModel model)
        {
            IDataResult <IEnumerable <Orders> > dataResult =
                new DataResult <IEnumerable <Orders> >();

            Status        statusValue;
            List <Orders> orders = new List <Orders>();

            if (model.OxId != null && model.OxId > 0)
            {
                Orders order = _orderService.First(s => s.OxId == model.OxId);
                orders.Add(order);

                dataResult.Success = true;
                dataResult.Data    = orders;

                return(dataResult);
            }
            else if (model.InvoiceNumber != null && model.InvoiceNumber > 0)
            {
                var order = _orderService.First(s => s.InvoiceNumber == model.InvoiceNumber);
                orders.Add(order);

                dataResult.Success = true;
                dataResult.Data    = orders;

                return(dataResult);
            }

            orders = await _orderService.FetchAsync();

            if (Enum.TryParse <Status>(model.OrderStatus.ToString(), out statusValue))
            {
                orders = orders.Where(s => s.OrderStatus.HasValue &&
                                      s.OrderStatus.Value == (byte)statusValue).ToList();
            }

            if (model.OrderDatetimeStart != null && model.OrderDatetimeEnd != null)
            {
                orders = orders.Where(s => s.OrderDatetime <= model.OrderDatetimeEnd &&
                                      s.OrderDatetime >= model.OrderDatetimeStart).ToList();
            }

            dataResult.Data = orders;

            if (orders == null)
            {
                dataResult.Message = MessagesDictionary.GetErrorMessag("Empty");
            }

            return(dataResult);
        }
        public async Task <IResult> SetInvoiceNumber(InvoiceNumberModel model)
        {
            IResult result = new Result();

            var order = _orderRepository.First(s => s.OxId == model.Id);

            if (order != null)
            {
                order.InvoiceNumber = model.InvoiceNumber;
                await _orderRepository.UpdateAsync(order);

                await _orderRepository.SaveAsync();

                result.Success = true;
                result.Message = MessagesDictionary.GetErrorMessag("SuccessUpdated");
            }
            else
            {
                result.Message = MessagesDictionary.GetErrorMessag("Error");
            }

            return(result);
        }
Exemplo n.º 4
0
        public async Task <IResult> ImportOrder()
        {
            IResult result = new Result();

            using (OrdersDBContext db = new OrdersDBContext())
            {
                using (var transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        string path          = Path.Combine(_env.ContentRootPath, _settings.XmlFileName);
                        string xmlInputData  = string.Empty;
                        string xmlOutputData = string.Empty;

                        xmlInputData = await File.ReadAllTextAsync(path);

                        XML.Orders item = Deserialize(xmlInputData);


                        //save to db
                        await SaveDataToDB(item);

                        result.Success = true;

                        transaction.Commit();
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        result.Message = $"{MessagesDictionary.GetErrorMessag("Error")} Exception: {ex.Message}";
                    }
                }
            }

            return(result);
        }