public Object EditFulorder(FulfillOrderViewDTO FulOrder)
 {
     try
     {
         bool     isSuccess   = false;
         string   result      = string.Empty;
         int      fulOrderId  = FulOrder.fulOrderId;
         FulOrder FulOrderObj = (from fo in context.FulOrder
                                 where fo.FulOrderId == fulOrderId
                                 select fo).FirstOrDefault();
         if (FulOrderObj != null)
         {
             FulOrderObj.Error_FLG      = FulOrder.errorFlag == "No" ? false : true;
             FulOrderObj.OnHold_FLG     = FulOrder.onHoldFlag == "No" ? false : true;
             FulOrderObj.OnHoldReasonId = Convert.ToInt32(FulOrder.onHoldReason);
             FulOrderObj.ErrorReasonId  = Convert.ToInt32(FulOrder.errorReason);
             context.FulOrder.Update(FulOrderObj);
             context.SaveChanges();
             result    = _iconfiguration["FULORDER_EDITED_SUCCESSFUL"];
             isSuccess = true;
         }
         return(new { status = isSuccess, fulOrderID = FulOrder.fulOrderId, message = result });
     }
     catch (Exception ex)
     {
         if (ex.InnerException != null)
         {
             return(new { status = false, fulOrderID = FulOrder.fulOrderId, message = ex.InnerException.Message });
         }
         else
         {
             return(new { status = false, fulOrderID = FulOrder.fulOrderId, message = ex.Message });
         }
         throw ex;
     }
 }
        public object GetFullOrder(int FulOrderId)
        {
            FulfillOrderViewDTO FulOrderObj = new FulfillOrderViewDTO();

            FulOrderObj = (from fo in context.FulOrder
                           join c in context.CancelReason on fo.CancelReasonId equals c.CancelReasonId into crjoin
                           from cjoin in crjoin.DefaultIfEmpty()
                           join awh in context.Warehouse on fo.AssignedWarehouseId equals awh.WarehouseId into awhjoined
                           from awhj in awhjoined.DefaultIfEmpty()
                           join ac in context.Carrier on fo.AssignedCarrierId equals ac.CarrierId into acjoined
                           from acj in acjoined.DefaultIfEmpty()
                           join b in context.Box on fo.BoxId equals b.BoxId into bjoin
                           from bj in bjoin.DefaultIfEmpty()
                           join acs in context.CarrierService on fo.AssignedCarrierServiceId equals acs.CarrierServiceId into acsjoined
                           from acsj in acsjoined.DefaultIfEmpty()
                           join p in context.Pallet on fo.PalletId equals p.PalletId into pjoin
                           from pj in pjoin.DefaultIfEmpty()
                           join e in context.ErrorReason on fo.ErrorReasonId equals e.ErrorReasonId into ejoin
                           from ej in ejoin.DefaultIfEmpty()
                           join ohr in context.OnHoldReason on fo.OnHoldReasonId equals ohr.OnHoldReasonId into ohrjoined
                           from ohrj in ohrjoined.DefaultIfEmpty()
                           join fos in context.FulOrderStatus on fo.FulOrderStatusId equals fos.FulOrderStatusId into fosjoined
                           from fosj in fosjoined.DefaultIfEmpty()
                           where fo.FulOrderId == FulOrderId
                           select new FulfillOrderViewDTO
            {
                assignedCarrier = (acj != null ? acj.Name : ""),
                assignedCarrierService = (acsj != null ? acsj.Name : ""),
                assignedWareHouse = (awhj != null ? awhj.Name : ""),
                assignmentDate = fo.Assignment_DT,
                box = (bj != null ? bj.Name : ""),
                cancelReason = (cjoin != null ? cjoin.Name : ""),
                carrierDescription = fo.CarrierDescription,
                carrierUpdateDate = fo.CarrierUpdateDT,
                errorFlag = (fo.Error_FLG != null ? fo.Error_FLG.ToString() : "No"),
                errorReason = (ej != null ? ej.Name : ""),
                fullItemDetails = new List <FulItemViewDTO>(),
                fulOrderId = fo.FulOrderId,
                fulOrderStatus = (fosj != null ? fosj.Name : ""),
                isPrime = (fo.IsPrime_FLG != null ? fo.IsPrime_FLG.ToString() : "No"),
                labelBatchId = fo.LabelBatchId,
                onHoldFlag = (fo.OnHold_FLG != null ? fo.OnHold_FLG.ToString() : "No"),
                onHoldReason = (ohrj != null ? ohrj.Name : ""),
                orderId = fo.OrderId,
                originalFulOrderId = fo.OriginalFulOrderId,
                palletName = (pj != null ? pj.Name : ""),
                pickingBatchId = fo.PickingBatchId,
                shipByDate = fo.ShipByDT
            }).FirstOrDefault();
            if (FulOrderObj != null)
            {
                FulOrderObj.fullItemDetails = (from fi in context.FulItem
                                               join psku in context.ProductSKU on new { p1 = 1, p2 = fi.ProductId } equals new { p1 = psku.SKUTypeId, p2 = psku.ProductId } into pskujoined
                                               from pskuj in pskujoined.DefaultIfEmpty()
                                               join pv in context.ProductVersion on pskuj.ProductId equals pv.ProductId into pvjoined
                                               from pvj in pvjoined.DefaultIfEmpty()
                                               where fi.FulOrderId == FulOrderId
                                               select new FulItemViewDTO
                {
                    fulItemId = fi.FulItemId,
                    orderLineId = fi.OrderLineId,
                    productId = fi.ProductId,
                    productVersion = (pvj != null) ? pvj.Version : 0,
                    quantity = fi.Quantity,
                    sku = (pskuj != null) ? pskuj.SKU : ""
                }).OrderBy(x => x.fulItemId).ToList();
            }

            return(FulOrderObj);
        }
Beispiel #3
0
        public ActionResult <Object> EditFulorder(FulfillOrderViewDTO FulOrder)
        {
            var result = fulfillService.EditFulorder(FulOrder);

            return(Ok(result));
        }