public string UpdateRetrieval(WCFRetrievalForm wcfr)
        {
            try
            {
                List <RetrieveForm> list = (List <RetrieveForm>)HttpContext.Current.Application["retrieveForm"];
                RetrieveForm        rf   = list.Where(x => x.ItemCode == wcfr.ItemCode).First();

                Stationery item = stationeryService.FindStationeryByItemCode(wcfr.ItemCode);
                if (wcfr.QtyRetrieved.Value > item.stockQty)
                {
                    return("Value of Retrieved Qty cannot exceed Stock Qty.");
                }

                if (wcfr.QtyRetrieved > rf.Qty)
                {
                    return("Value of Retrieved Qty cannot exceed requested qty.");
                }

                var index = list.FindIndex(x => x.description == wcfr.Description);
                list[index].retrieveQty = wcfr.QtyRetrieved;
                /*  list[index].Qty -= wcfr.QtyRetrieved;*/ //reduce amount that is still pending retrieval

                HttpContext.Current.Application["retrieveForm"] = list;
                return("true");
            }

            catch (Exception e)
            {
                String error = e.Message;

                return(error);
            }
        }
Esempio n. 2
0
        public static WCFRetrievalForm ConvertToWCFRetrieval(RetrieveForm retrieval)
        {
            WCFRetrievalForm wcfR = new WCFRetrievalForm();

            wcfR.Description  = retrieval.description;
            wcfR.Qty          = retrieval.Qty;
            wcfR.QtyRetrieved = retrieval.retrieveQty;
            //wcfR.QtyAllocated = retrieval.allocatedQty;
            wcfR.ItemCode = retrieval.ItemCode;
            //add location to WCFRetrievalForm object
            StationeryModel entity = new StationeryModel();

            wcfR.Location = entity.Stationeries.Where(x => x.description == retrieval.description).First().location;


            return(wcfR);
        }
Esempio n. 3
0
        public List <RetrieveForm> GetRetrieveFormByDateTime(DateTime?time)
        {
            StationeryModel           entity       = new StationeryModel();
            List <Requisition_Record> rr           = entity.Requisition_Records.Where(x => x.status == RequisitionStatus.APPROVED_PROCESSING || x.status == RequisitionStatus.PARTIALLY_FULFILLED).ToList();
            List <RetrieveForm>       retrieveList = new List <RetrieveForm>();
            List <string>             ItemCodes    = new List <string>();
            List <int?> Qty = new List <int?>();

            foreach (var item in rr)
            {
                var list = item.Requisition_Detail.ToList();
                foreach (var l in list)
                {
                    if (!ItemCodes.Contains(l.itemCode))
                    {
                        ItemCodes.Add(l.itemCode);
                    }
                }
            }
            for (int i = 0; i < ItemCodes.Count; i++)
            {
                Qty.Add((int?)0);
            }
            for (int i = 0; i < ItemCodes.Count; i++)
            {
                foreach (var b in rr)
                {
                    if ((b.Requisition_Detail.Where(x => x.itemCode == ItemCodes[i]).Count()) > 0 && (b.status == RequisitionStatus.APPROVED_PROCESSING || b.status == RequisitionStatus.PARTIALLY_FULFILLED))
                    {
                        Qty[i] = Qty[i] + b.Requisition_Detail.Where(x => x.itemCode == ItemCodes[i]).First().qty - b.Requisition_Detail.Where(x => x.itemCode == ItemCodes[i]).First().fulfilledQty;
                    }
                }
            }
            for (int i = 0; i < ItemCodes.Count; i++)
            {
                RetrieveForm rf = new RetrieveForm();
                rf.ItemCode    = ItemCodes[i];
                rf.description = entity.Stationeries.Where(x => x.itemCode == rf.ItemCode).First().description;
                rf.Qty         = Qty[i];
                rf.retrieveQty = 0;
                rf.StockQty    = entity.Stationeries.Where(x => x.itemCode == rf.ItemCode).First().stockQty;
                retrieveList.Add(rf);
            }
            return(retrieveList);
        }
        public ActionResult GenerateRetrieveForm(FormCollection form, int?page)
        {
            DateTime?           from  = DateTime.Now;
            RetrieveForm        rf    = new RetrieveForm();
            List <RetrieveForm> model = new List <RetrieveForm>();

            Session["date"] = from;

            if (HttpContext.Application["retrieveList"] == null)
            {
                model = rs.GetRetrieveFormByDateTime(from);
                HttpContext.Application["retrieveList"] = model;
            }
            else
            {
                model = (List <RetrieveForm>)HttpContext.Application["retrieveList"];
            }
            HttpContext.Application["page3"] = (page ?? 1);
            int pageSize   = 8;
            int pageNumber = (page ?? 1);

            return(View(model.ToPagedList(pageNumber, pageSize)));
        }