Ejemplo n.º 1
0
        public void ChangeSTT(OrderAVM item, Guid SlotId)
        {
            if (item.Status.Equals("ongoing"))
            {
                item.STT = "Khách vừa đặt hàng - cần tìm shipper";
            }
            else if (item.Status.Equals("taken"))
            {
                item.STT = "Đơn hàng đang mang về kho";
            }
            else if (item.Status.Equals("onwarehousetake"))
            {
                item.STT = "Đơn hàng đã mang về kho - chuyển cho cửa hàng";
            }
            else if (item.Status.Equals("onstore"))
            {
                item.STT = "Cửa hàng đã nhận đồ";
            }
            else if (item.Status.Equals("washed"))
            {
                item.STT = "Đơn hàng đã giặt xong cần mang về kho";
            }
            else if (item.Status.Equals("onwarehousedelivery"))
            {
                item.STT = "Đơn hàng đã xử lý xong - cần tìm shipper";
            }
            else if (item.Status.Equals("ondelivery"))
            {
                item.STT = "Đơn hàng đang được trả cho khách";
            }
            else if (item.Status.Equals("done"))
            {
                item.STT = "Đơn hàng đã hoàn thành";
            }
            else if (item.Status.Equals("cancel"))
            {
                item.STT = "Đơn hàng đã bị huỷ";
            }


            if (item.SlotDeliveryId == SlotId)
            {
                item.Process = "Thời Gian Trả Hàng";
            }
            else if (item.SlotTakeId == SlotId)
            {
                item.Process = " Thời Gian Nhận hàng";
            }
        }
Ejemplo n.º 2
0
        public ActionResult GetOrder(string date, Guid SlotId)
        {
            try
            {
                List <OrderAVM> list     = new List <OrderAVM>();
                DateTime        dateFind = DateTime.Parse(date);
                if (SlotId == Guid.Empty)
                {
                    List <OrderAVM> listOrder = _orderService.GetOrders(o => !o.IsDelete).Where(o1 => o1.DateCreate.Date == dateFind.Date).Adapt <List <OrderAVM> >();
                    foreach (var item in listOrder)
                    {
                        var orderservice = _orderServiceService.GetOrderServices(t => !t.IsDelete).Where(t1 => t1.OrderId == item.Id).FirstOrDefault();
                        var service      = _serviceService.GetServices(t => !t.IsDelete).Where(t1 => t1.Id == orderservice.ServiceId).FirstOrDefault();
                        var store        = _storeService.GetStores(t => !t.IsDelete).Where(t1 => t1.Id == service.StoreId).FirstOrDefault();
                        if (item.ShipperTakeId.HasValue)
                        {
                            var shipperTake = _shipperService.GetShippers(t => t.Id == item.ShipperTakeId).FirstOrDefault();
                            item.ShipperTakeName = shipperTake.Name;
                        }
                        if (item.ShipperDeliverId.HasValue)
                        {
                            var shipperDelivery = _shipperService.GetShippers(t => t.Id == item.ShipperDeliverId.Value).FirstOrDefault();
                            item.ShipperDeliveryName = shipperDelivery.Name;
                        }
                        item.StoreName = store.Name;
                        ChangeSTT(item, SlotId);
                    }
                    return(Ok(listOrder));
                }

                var result1 = _orderService.GetOrders(o => !o.IsDelete)
                              .Where(o1 => o1.DateCreate.Date == dateFind.Date)
                              .Where(o2 => o2.SlotTakeId == SlotId);

                var result2 = _orderService.GetOrders(o => !o.IsDelete)
                              .Where(o1 => o1.DateCreate.Date == dateFind.Date)
                              .Where(o2 => o2.SlotDeliveryId == SlotId);
                var result = result1.Union(result2);
                foreach (var item in result)
                {
                    var      orderservice = _orderServiceService.GetOrderServices(t => !t.IsDelete).Where(t1 => t1.OrderId == item.Id).FirstOrDefault();
                    var      service      = _serviceService.GetServices(t => !t.IsDelete).Where(t1 => t1.Id == orderservice.ServiceId).FirstOrDefault();
                    var      store        = _storeService.GetStores(t => !t.IsDelete).Where(t1 => t1.Id == service.StoreId).FirstOrDefault();
                    OrderAVM temp         = item.Adapt <OrderAVM>();
                    temp.StoreName = store.Name;
                    if (item.ShipperTakeId.HasValue)
                    {
                        var shipperTake = _shipperService.GetShippers(t => t.Id == item.ShipperTakeId).FirstOrDefault();
                        temp.ShipperTakeName = shipperTake.Name;
                    }
                    if (item.ShipperDeliverId.HasValue)
                    {
                        var shipperDelivery = _shipperService.GetShippers(t => t.Id == item.ShipperDeliverId.Value).FirstOrDefault();
                        temp.ShipperDeliveryName = shipperDelivery.Name;
                    }
                    temp.StoreName = store.Name;
                    ChangeSTT(temp, SlotId);
                    list.Add(temp);
                }
                return(Ok(list));
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }