Ejemplo n.º 1
0
        public List <Model.GoodsReceivedNoteItem> GetGRNItemz4rmbin(Model.Bin bin)
        {
            var or    = SessionData.CurrentSession.OrderRequestList.FirstOrDefault(p => p.OrderRequestItems.Where(k => k.Id == bin.OrderRequestItemId).Count() > 0);
            var ppitm = SessionData.CurrentSession.ProcurementPlanItemList.FirstOrDefault(p => p.Id == bin.ProcurementPlanItemId);

            if (ppitm != null)
            {
                return(SessionData.CurrentSession.GoodsReceivedNoteItemList
                       .Where(gitmz => gitmz.PurchaseOrderItem.ProcurementPlanItem != null &&
                              gitmz.PurchaseOrderItem.ProcurementPlanItem.ProcurementPlan.Id == ppitm.ProcurementPlan.Id &&
                              gitmz.GoodsReceivedNote.WareHouseId == bin.WareHouseId &&
                              (gitmz.BinItems.Count == 0 || gitmz.BinItems.Sum(d => d.QTYReceived) < (Int64)gitmz.QuantityDelivered) &&
                              gitmz.PurchaseOrderItem.Item.Id == ppitm.ItemId && gitmz.GoodsReceivedNote.Verified).ToList());
            }
            else
            {
                var oritm = or.OrderRequestItems.FirstOrDefault(p => p.Id == bin.OrderRequestItemId);
                return(SessionData.CurrentSession.GoodsReceivedNoteItemList
                       .Where(gitmz => gitmz.PurchaseOrderItem.OrderRequestItem != null &&
                              gitmz.PurchaseOrderItem.OrderRequestItem.OrderRequest.Id == oritm.OrderRequest.Id &&
                              gitmz.GoodsReceivedNote.WareHouseId == bin.WareHouseId &&
                              (gitmz.BinItems.Count == 0 || gitmz.BinItems.Sum(d => d.QTYReceived) < (Int64)gitmz.QuantityDelivered) &&
                              gitmz.PurchaseOrderItem.Item.Id == oritm.ItemId && gitmz.GoodsReceivedNote.Verified).ToList());
            }
        }
Ejemplo n.º 2
0
        public ActionResult SelectStockItem()
        {
            var model = new Model.Bin()
            {
                ORItemsItems = new SelectList(new List <Model.Item>(), "Id", "Name"),
                Projects     = new SelectList(_orService.GetProjectNos(), "Id", "ProjectNumber")
            };

            return(View(model));
        }
Ejemplo n.º 3
0
        public ActionResult SaveBC(Model.Bin entity)
        {
            entity.Id = Guid.NewGuid();
            entity.CountryProgrammeId = countryProg.Id;
            entity.PreparedBy         = currentStaff.Id;
            entity.PreparedOn         = DateTime.Now;
            entity.RefNumber          = _binService.GenerateUniquBCNo();
            entity.QTY = 0;
            if (!_binService.IsBinAdded(entity))
            {
                LoadBin();
            }

            return(ViewBinCard());
        }
Ejemplo n.º 4
0
 public bool IsBinEdited(Model.Bin binEntity)
 {
     using (var db = new SCMSEntities())
     {
         db.Bins.Attach(binEntity);
         ((IObjectContextAdapter)db).ObjectContext.ObjectStateManager.ChangeObjectState(binEntity, System.Data.EntityState.Modified);
         if (db.SaveChanges() > 0)
         {
             SessionData.CurrentSession.BinList = null; return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Ejemplo n.º 5
0
        public ActionResult LoadBin()
        {
            var model = new Model.Bin()
            {
                //                Warehouses = new SelectList(SessionData.CurrentSession.WarehouseList, "Id", "Name"),
                Warehouses   = new SelectList(new List <Model.WareHouse>(), "Id", "Name"),
                ItemPackages = new SelectList(new List <Model.ItemPackage>(), "Id", "Name"),
                RefNumber    = string.Format("--{0}--", Resources.BinCard_LoadBin___NewBinCard___),
                PPlans       = new SelectList(_binService.GetBinPPs(), "Id", "RefNumber"),
                PPlansItems  = new SelectList(new List <Model.ProcurementPlanItem>(), "Id", "ItemName"),
                ORequests    = new SelectList(_binService.GetBinORs(), "Id", "RefNumber"),
                ORItemsItems = new SelectList(new List <Model.OrderRequestItem>(), "Id", "ItemName"),
                RefLable     = Resources.Global_String_OrderRequestNo,
                RefItemLable = Resources.OrderRequest_String_OrderRequestItems
            };

            return(View("LoadBin", model));
        }
Ejemplo n.º 6
0
        public string GenerateUniquBCNo()
        {
            string code      = "BC/";
            string refNumber = "";
            long   count     = 1;

            var total = this.GetAll().Count();// SessionData.CurrentSession.BinList.Count();

            count = total;
            Model.Bin m = null;
            do
            {
                count++;
                if (count < 100000)
                {
                    if (count < 10)
                    {
                        refNumber = code + "00000" + count;
                    }
                    if (count < 100 && count >= 10)
                    {
                        refNumber = code + "0000" + count;
                    }
                    if (count < 1000 && count >= 100)
                    {
                        refNumber = code + "000" + count;
                    }
                    if (count < 10000 && count >= 1000)
                    {
                        refNumber = code + "00" + count;
                    }
                    if (count < 100000 && count >= 10000)
                    {
                        refNumber = code + "0" + count;
                    }
                }
                m = SessionData.CurrentSession.BinList.FirstOrDefault(p => p.RefNumber == refNumber);
            } while (m != null);
            return(refNumber);
        }
Ejemplo n.º 7
0
 public bool IsBinAdded(Model.Bin binEntity)
 {
     using (var db = new SCMSEntities())
     {
         if (binEntity.BinType == "OR")
         {
             binEntity.ProcurementPlanItemId = null;
         }
         else
         {
             binEntity.OrderRequestItemId = null;
         }
         db.Bins.Add(binEntity);
         if (db.SaveChanges() > 0)
         {
             SessionData.CurrentSession.BinList = null; return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Ejemplo n.º 8
0
 public bool IsBinItemAdded(Model.BinItem binItemEntity, Model.Bin binEntity)
 {
     using (var db = new SCMSEntities())
     {
         if (binEntity != null)
         {
             binEntity.QTY = binItemEntity.QTYReceived;
             db.Bins.Add(binEntity);
             binItemEntity.BalanceStock = binItemEntity.QTYReceived;
             db.BinItems.Add(binItemEntity);
         }
         else
         {
             var bin     = db.Bins.FirstOrDefault(p => p.Id == binItemEntity.BinId); bin.BinType = "any";
             var binitem = db.BinItems.Where(p => p.BinId == binItemEntity.BinId).OrderByDescending(k => k.IssueDate).FirstOrDefault();
             if (binItemEntity.QTYReceived > 0)
             {
                 binItemEntity.BalanceStock = binItemEntity.QTYReceived + (binitem != null ? binitem.BalanceStock : 0); bin.QTY += binItemEntity.QTYReceived;
             }
             else
             {
                 binItemEntity.BalanceStock = binitem != null ? binitem.BalanceStock - binItemEntity.QTYIssued : binItemEntity.QTYIssued; bin.QTY -= binItemEntity.QTYIssued;
             }
             db.BinItems.Add(binItemEntity);
             ((IObjectContextAdapter)db).ObjectContext.ObjectStateManager.ChangeObjectState(bin, System.Data.EntityState.Modified);
         }
         if (db.SaveChanges() > 0)
         {
             SessionData.CurrentSession.BinList = null; SessionData.CurrentSession.BinItemList = null;
             SessionData.CurrentSession.GoodsReceivedNoteItemList = null; SessionData.CurrentSession.ReleaseOrderItemList = null; return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Ejemplo n.º 9
0
 public ActionResult EditBC(Model.Bin enitty)
 {
     _binService.IsBinEdited(enitty);
     return(ManageBin(enitty.Id));
 }