public List <RetrievalBO> getCombinedRetrievalBOsByStatus(string statusPar)
        {
            string status = null;

            if (statusPar == "Unfullfill Orders")
            {
                status = "Unfulfilled";
            }
            else if (statusPar == "New Orders")
            {
                status = "New";
            }
            context = new ADTeam1Entities();
            List <RetrievalBO>      retrievalBOs      = new List <RetrievalBO>();
            List <Requisition_Item> requisition_Items = context.Requisition_Item.Where(x => x.Status == status && x.Requisition.Status == "Approved").GroupBy(x => x.ItemID).Select(x => x.FirstOrDefault()).ToList();

            //find Requisition_Item list group by ItemID
            foreach (Requisition_Item r_Item in requisition_Items)
            {
                RetrievalBO retrievalBO = new RetrievalBO();
                Item        item        = r_Item.Item;
                retrievalBO.Bin         = item.Bin;
                retrievalBO.ItemNumber  = item.ItemNumber;
                retrievalBO.Description = item.Description;
                retrievalBO.UOM         = item.UnitOfMeasure;
                retrievalBO.InStock     = (int)item.InStockQty;
                retrievalBO.Requested   = (int)context.Requisition_Item.Where(x => x.Status == status && x.Requisition.Status == "Approved" && x.ItemID == r_Item.ItemID).Sum(x => x.RequestedQty);
                // retrieve the sum of unfulfilledQutity group by ItemID
                retrievalBO.Unfulfilled = (int)context.Requisition_Item.Where(x => x.Status == status && x.Requisition.Status == "Approved" && x.ItemID == r_Item.ItemID).Sum(x => x.UnfulfilledQty);
                retrievalBO.ToRetrieve  = (int)context.Requisition_Item.Where(x => x.Status == status && x.Requisition.Status == "Approved" && x.ItemID == r_Item.ItemID).Sum(x => x.ToRetrieveQty);
                retrievalBOs.Add(retrievalBO);
            }
            return(retrievalBOs);
        }
        public List <RetrievalBO> getRetrievalBOsByStatusAndItemNumber(string statusPar, string itemNumber)//get spec itemNumber Retrievals divided by each department
        {
            string status = null;

            if (statusPar == "Unfullfill Orders")
            {
                status = "Unfulfilled";
            }
            else if (statusPar == "New Orders")
            {
                status = "New";
            }
            context = new ADTeam1Entities();
            List <RetrievalBO>      retrievalBOs      = new List <RetrievalBO>();
            List <Requisition_Item> requisition_Items = context.Requisition_Item.Where(x => x.Status == status && x.Item.ItemNumber == itemNumber && x.Requisition.Status == "Approved").ToList();

            foreach (Requisition_Item r_Item in requisition_Items)
            {
                RetrievalBO retrievalBO = new RetrievalBO();
                Item        item        = r_Item.Item;
                retrievalBO.Bin               = item.Bin;
                retrievalBO.ItemNumber        = item.ItemNumber;
                retrievalBO.Description       = item.Description;
                retrievalBO.UOM               = item.UnitOfMeasure;
                retrievalBO.InStock           = (int)item.InStockQty;
                retrievalBO.DepartmentID      = (int)r_Item.Requisition.DepartmentID;
                retrievalBO.Requested         = (int)r_Item.RequestedQty;
                retrievalBO.Unfulfilled       = (int)r_Item.UnfulfilledQty;
                retrievalBO.ToRetrieve        = (int)r_Item.ToRetrieveQty;
                retrievalBO.DepartmentName    = r_Item.Requisition.Department.DepartmentName;
                retrievalBO.RequisitionItemID = r_Item.Requisition_ItemID;
                retrievalBOs.Add(retrievalBO);
            }
            return(retrievalBOs);
        }
Ejemplo n.º 3
0
 protected void btnConfirm_Click(object sender, EventArgs e)
 {
     try
     {
         List <RetrievalBO> confirmedRetrievals = new List <RetrievalBO>();
         bool validate = true;
         for (int i = 0; i < ckbList.Count; i++)
         {
             int         index = ckbList[i];
             RetrievalBO confirmedRetrievalBO = new RetrievalBO();
             confirmedRetrievalBO        = retrievals[index];
             confirmedRetrievalBO.Status = "Pending";
             confirmedRetrievals.Add(confirmedRetrievalBO);
             if (toRetrieveList[i] == 0)
             {
                 validate = false;
             }
         }
         if (validate)
         {
             retrievalBL.addDisbursementItem(confirmedRetrievals, status).ToString();
             retrievalBL.updateRetrievalBOsStatus(confirmedRetrievals, status).ToString();
             Response.Redirect("RetrievalPage.aspx?status=" + status);
         }
         else
         {
             LblValidate.Text = "must allocate before retrieve";
         }
     }catch (Exception ex)
     {
         Console.Write(ex.ToString());
     }
 }