Exemple #1
0
        public List <PRDChemProdReqItem> GetStockPackSizeInfo(string _StoreID, int _ItemID)
        {
            using (var context = new BLC_DEVEntities())
            {
                var StockResult = (from p in context.INV_ChemStockSupplier
                                   where (p.StoreID).ToString() == _StoreID && p.ItemID == _ItemID
                                   group p by new
                {
                    p.SupplierID,
                    p.PackSize,
                    p.SizeUnit
                } into g
                                   select new
                {
                    TransectionID = g.Max(p => p.TransectionID),
                    PackSize = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.PackSize).FirstOrDefault(),
                    SizeUnit = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.SizeUnit).FirstOrDefault(),
                    UnitID = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.UnitID).FirstOrDefault(),
                    SupplierID = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.SupplierID).FirstOrDefault(),
                    PackClosingQty = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.PackClosingQty).FirstOrDefault(),
                    ClosingQty = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.ClosingQty).FirstOrDefault(),
                }).ToList();


                var Data = (from s in StockResult
                            where s.ClosingQty > 0
                            from si in context.Sys_Size.AsEnumerable().Where(x => x.SizeID == Convert.ToByte(s.PackSize)).DefaultIfEmpty()
                            from su in context.Sys_Unit.AsEnumerable().Where(x => x.UnitID == Convert.ToByte(s.SizeUnit)).DefaultIfEmpty()

                            join stockUnit in context.Sys_Unit on s.UnitID equals stockUnit.UnitID into StockUnits
                            from stockUnit in StockUnits.DefaultIfEmpty()

                            from sup in context.Sys_Supplier.AsEnumerable().Where(x => x.SupplierID == Convert.ToInt16(s.SupplierID)).DefaultIfEmpty()
                            select new PRDChemProdReqItem
                {
                    PackSize = Convert.ToByte(s.PackSize),
                    PackSizeName = si.SizeName,
                    SizeUnit = Convert.ToByte(s.SizeUnit),
                    SizeUnitName = su.UnitName,
                    SupplierID = s.SupplierID,
                    SupplierName = sup.SupplierName,
                    PackQty = Convert.ToInt32(s.PackClosingQty),
                    StockQty = s.ClosingQty,
                    IssueUnit = Convert.ToByte(s.UnitID),
                    IssueUnitName = (stockUnit == null ? null : stockUnit.UnitName)
                }).ToList();

                return(Data);
            }
        }
Exemple #2
0
        public List <PRDChemProdReqItem> GetTransactionItemListForStockAdjust(long _TransactionID, string _IssueFrom)
        {
            using (var context = new BLC_DEVEntities())
            {
                var StockResult = DalChemicalStock.CombinationWiseStockInSpecificProductionFloor(Convert.ToByte(_IssueFrom));


                var Data = (from i in context.INV_StoreTransItem.AsEnumerable()
                            where i.TransactionID == _TransactionID

                            join s in StockResult on new { ItemID = (i.ItemID == null? 0: i.ItemID), SupplierID = (i.SupplierID == null? 0 : i.SupplierID),
                                                           UnitID = (i.TransactionUnit == null?0:i.TransactionUnit) } equals
                            new { ItemID = s.ItemID, SupplierID = s.SupplierID, UnitID = s.UnitID } into StockInfo
                            from item in StockInfo.DefaultIfEmpty()

                            join su in context.Sys_Unit on(item == null ? 0 : item.UnitID) equals su.UnitID into StockUnits
                            from su in StockUnits.DefaultIfEmpty()

                            join sup in context.Sys_Supplier on(item == null ? 0 : item.SupplierID) equals sup.SupplierID into Suppliers
                            from sup in Suppliers.DefaultIfEmpty()

                            from it in context.Sys_ChemicalItem.Where(x => x.ItemID == i.ItemID).DefaultIfEmpty()


                            from iu in context.Sys_Unit.Where(x => x.UnitID == i.TransactionUnit).DefaultIfEmpty()


                            select new PRDChemProdReqItem
                {
                    TransItemID = i.TransItemID,
                    ItemID = i.ItemID,
                    ItemName = (it == null ? null : it.ItemName),

                    StockQty = (item == null ? 0 : item.ClosingQty),
                    StockUnitName = (su == null ? null : su.UnitName),
                    SupplierID = (sup == null ? 0 : sup.SupplierID),
                    SupplierName = (sup == null ? null : sup.SupplierName),
                    IssueQty = i.TransactionQty,
                    IssueUnit = i.TransactionUnit,
                    IssueUnitName = (iu == null ? "" : iu.UnitName)
                }).ToList();

                return(Data);
            }
        }
        public async Task <IActionResult> Post([FromRoute] int Id, [FromBody] ProductModel model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            List <StockUnitsModel> lstStockUnits  = new List <StockUnitsModel>();
            StockUnits             stockUnitModel = new StockUnits();

            stockUnitModel.stockCount = lstStockUnits.Count();
            //var stockCount = await _stockUnitsRepository.Query().Where(p => p.Id == Id).SelectMany(t => t.ProductId).Count();

            stockUnitModel = await _stockUnitsRepository.GetAsync(Id);

            if (stockUnitModel == null)
            {
                return(NotFound());
            }

            var products = new Product
            {
                ProductId   = Id,
                Name        = model.Name,
                Description = model.Description,
                Price       = model.Price,
                Size        = model.Size
            };

            await _productRepository.InsertAsync(products);

            var result = new ProductModel
            {
                ProductId   = products.Id,
                Name        = products.Name,
                Description = products.Description,
                Price       = products.Price,
                Size        = products.Size
            };

            return(Created($"stockUnit/{Id}/products/{products.Id}", result));
        }
Exemple #4
0
        //For LOV in Grid
        public List <PRDChemProdReqItem> GetStoreWiseChemicalItemStock(string _IssueFrom)
        {
            using (_context)
            {
                var StockResult = (from p in _context.INV_ChemStockSupplier
                                   where p.StoreID.ToString() == _IssueFrom
                                   group p by new
                {
                    //p.StoreID,
                    p.SupplierID,
                    p.PackSize,
                    p.ItemID,
                    p.SizeUnit,
                    p.UnitID
                } into g
                                   select new
                {
                    TransectionID = g.Max(p => p.TransectionID),
                    //StoreID = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.StoreID).FirstOrDefault(),
                    ItemID = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.ItemID).FirstOrDefault(),
                    SupplierID = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.SupplierID).FirstOrDefault(),
                    //UnitID = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.UnitID).FirstOrDefault(),
                    PackSize = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.PackSize).FirstOrDefault(),
                    SizeUnit = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.SizeUnit).FirstOrDefault(),
                    PackQty = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.PackClosingQty).FirstOrDefault(),
                    ClosingQty = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.ClosingQty).FirstOrDefault(),
                    StockUnit = g.Where(p => p.TransectionID == g.Max(q => q.TransectionID)).Select(x => x.UnitID).FirstOrDefault()
                }).ToList();



                var Data = (from s in StockResult
                            where s.ClosingQty > 0

                            join i in _context.Sys_ChemicalItem on(s == null ? null : s.ItemID) equals i.ItemID into Items
                            from i in Items.DefaultIfEmpty()


                            join sup in _context.Sys_Supplier on(s == null ? 0 : s.SupplierID) equals sup.SupplierID into Suppliers
                            from sup in Suppliers.DefaultIfEmpty()

                            join si in _context.Sys_Size on(s == null ? 0 : s.PackSize) equals si.SizeID into Sizes
                            from si in Sizes.DefaultIfEmpty()

                            join siu in _context.Sys_Unit on(s == null ? 0 : s.SizeUnit) equals siu.UnitID into Units
                            from siu in Units.DefaultIfEmpty()

                            join su in _context.Sys_Unit on(s == null ? 0 : s.StockUnit) equals su.UnitID into StockUnits
                            from su in StockUnits.DefaultIfEmpty()

                            orderby(i == null ? null : i.ItemName)

                            select new PRDChemProdReqItem
                {
                    ItemID = s.ItemID,
                    ItemName = (i == null ? null : i.ItemName),

                    SupplierID = s.SupplierID,
                    SupplierName = (sup == null ? null : sup.SupplierName),

                    PackSize = s.PackSize,
                    PackSizeName = (si == null ? null : si.SizeName),

                    SizeUnit = s.SizeUnit,
                    SizeUnitName = (siu == null ? null : siu.UnitName),

                    StockQty = s.ClosingQty,
                    StockUnit = s.StockUnit,
                    StockUnitName = (su == null ? null : su.UnitName),

                    PackQty = (Int32)(s.PackQty)
                }).ToList();

                return(Data);
            }
        }
 public void InitializeStockUnitTables()
 {
     StockUnits = CloudTableClient.GetTableReference(Constants.StorageTableNames.StockUnits);
     StockUnits.CreateIfNotExists();
 }
Exemple #6
0
        // After Requisition LOV
        public PRDChemProdReq GetRequisitionDetailsFromFixedStore(int _RequisitionID, byte _RequisitionAt)
        {
            var FinalStock = DalChemicalStock.ItemWiseStockInSpecificChemicalStore(_RequisitionAt);

            var model = new PRDChemProdReq();

            var RequisitionInfo = (from r in _context.PRD_ChemProdReq.AsEnumerable()
                                   where r.RequisitionID == _RequisitionID

                                   from u in _context.Users.Where(x => x.UserID == r.ReqRaisedBy).DefaultIfEmpty()

                                   select new PRDChemProdReq
            {
                RequisitionID = r.RequisitionID,
                RequisitionNo = r.RequisitionNo,
                JobOrderID = Convert.ToInt16(r.JobOrderID),
                JobOrderNo = r.JobOrderNo,
                ReqRaisedOn = (Convert.ToDateTime(r.ReqRaisedOn)).ToString("dd'/'MM'/'yyyy"),
                ReqRaisedBy = Convert.ToInt16(r.ReqRaisedBy),
                ReqRaisedByName = (u == null ? null : (u.FirstName + " " + u.MiddleName + " " + u.LastName)),
                RequiredByTime = Convert.ToByte(r.RequiredByTime),
                RequisitionCategory = DalCommon.ReturnRequisitionCategory(r.RequisitionCategory),
                RequisitionType = DalCommon.ReturnOrderType(r.RequisitionType),
                IssueTo = r.RequisitionFrom,
                IssueFrom = _RequisitionAt
            }).FirstOrDefault();

            model.RequisitionInfo = RequisitionInfo;

            var RequisitionItemList = (from i in _context.PRD_ChemProdReqItem.AsEnumerable()
                                       where i.RequisitionID == _RequisitionID

                                       from it in _context.Sys_ChemicalItem.Where(x => x.ItemID == i.ItemID).DefaultIfEmpty()

                                       join s in FinalStock on i.ItemID equals s.ItemID into badhon
                                       from item in badhon.DefaultIfEmpty()

                                       join su in _context.Sys_Unit on(item == null? 0: item.UnitID) equals su.UnitID into StockUnits
                                       from su in StockUnits.DefaultIfEmpty()


                                       join sup in _context.Sys_Supplier on(item == null ? 0 : item.SupplierID) equals sup.SupplierID into badhon2
                                       from finalitem in badhon2.DefaultIfEmpty()

                                       from siu in _context.Sys_Unit.Where(x => x.UnitID == i.SizeUnit).DefaultIfEmpty()
                                       from ru in _context.Sys_Unit.Where(x => x.UnitID == i.RequisitionUnit).DefaultIfEmpty()

                                       from ps in _context.Sys_Size.Where(x => x.SizeID == i.PackSize).DefaultIfEmpty()

                                       select new PRDChemProdReqItem
            {
                ItemID = i.ItemID,
                ItemName = (it == null ? null : it.ItemName),

                StockQty = (item == null ? 0 : item.ClosingQty),
                StockUnitName = (su == null ? null : su.UnitName),
                SupplierID = (finalitem == null ? 0 : finalitem.SupplierID),
                SupplierName = (finalitem == null ? null : finalitem.SupplierName),

                PackSizeName = (ps == null ? null : ps.SizeName),
                SizeUnitName = (siu == null ? null : siu.UnitName),
                PackQty = Convert.ToInt16(i.PackQty),
                RequsitionQty = i.RequsitionQty,
                RequisitionUnitName = (ru == null ? null : ru.UnitName),

                IssuePackSizeName = "Press F9",
                IssueUnitName = "",

                //IssuePackSize = Convert.ToByte(i.PackSize),
                //IssuePackSizeName = (ps == null ? null : ps.SizeName),

                //IssueSizeUnit = Convert.ToByte(i.SizeUnit),
                //IssueSizeUnitName = (siu == null ? null : siu.UnitName),
                //IssuePackQty = Convert.ToInt16(i.PackQty),
                //IssueQty = i.RequsitionQty,
                //IssueUnit = i.RequisitionUnit,
                //IssueUnitName = (ru == null ? null : ru.UnitName),
                ItemSource = "Via Requisition"
            }).ToList();



            model.RequisitionItemList = RequisitionItemList;

            return(model);
        }
Exemple #7
0
        public List <PRDChemProdReqItem> GetTransactionItemList(long _TransactionID, string _IssueFrom)
        {
            using (var context = new BLC_DEVEntities())
            {
                var FinalStock = DalChemicalStock.ItemWiseStockInSpecificChemicalStore(Convert.ToByte(_IssueFrom));

                var RequisitionID = (from r in context.INV_StoreTransRequest.AsEnumerable()
                                     where r.TransactionID == _TransactionID
                                     select r.RequisitionID
                                     ).FirstOrDefault();

                var Data = (from i in context.INV_StoreTransItem.AsEnumerable()
                            where i.TransactionID == _TransactionID

                            from r in context.PRD_ChemProdReqItem.Where(x => x.RequisitionID == RequisitionID & x.ItemID == i.ItemID).DefaultIfEmpty()

                            join reqsize in context.Sys_Size on(r == null?null:r.PackSize) equals reqsize.SizeID into ReqPackSizes
                            from reqsize in ReqPackSizes.DefaultIfEmpty()

                            join reqsizeunit in context.Sys_Unit on(r == null ? null : r.SizeUnit) equals reqsizeunit.UnitID into ReqPackSizeUnits
                            from reqsizeunit in ReqPackSizeUnits.DefaultIfEmpty()

                            join requnit in context.Sys_Unit on(r == null ? 0 : r.RequisitionUnit) equals requnit.UnitID into ReqUnits
                            from requnit in ReqUnits.DefaultIfEmpty()

                            join s in FinalStock on i.ItemID equals s.ItemID into badhon
                            from item in badhon.DefaultIfEmpty()

                            join su in context.Sys_Unit on(item == null ? 0 : item.UnitID) equals su.UnitID into StockUnits
                            from su in StockUnits.DefaultIfEmpty()

                            join sup in context.Sys_Supplier on(item == null ? 0 : item.SupplierID) equals sup.SupplierID into badhon2
                            from finalitem in badhon2.DefaultIfEmpty()

                            from it in context.Sys_ChemicalItem.Where(x => x.ItemID == i.ItemID).DefaultIfEmpty()
                            from sup in context.Sys_Supplier.Where(x => x.SupplierID == i.SupplierID).DefaultIfEmpty()
                            from iu in context.Sys_Unit.Where(x => x.UnitID == i.TransactionUnit).DefaultIfEmpty()
                            from issuesize in context.Sys_Size.Where(x => x.SizeID == i.PackSize).DefaultIfEmpty()
                            from issuesizeunit in context.Sys_Unit.Where(x => x.UnitID == i.SizeUnit).DefaultIfEmpty()

                            select new PRDChemProdReqItem
                {
                    TransItemID = i.TransItemID,
                    ItemID = Convert.ToInt16(i.ItemID),
                    ItemName = (it == null ? null : it.ItemName),

                    StockQty = (item == null ? 0 : item.ClosingQty),
                    StockUnitName = (su == null ? null : su.UnitName),
                    SupplierID = (finalitem == null ? 0 : finalitem.SupplierID),
                    SupplierName = (finalitem == null ? null : finalitem.SupplierName),

                    PackSizeName = (reqsize == null ? null : reqsize.SizeName),
                    SizeUnitName = (reqsizeunit == null ? null : reqsizeunit.UnitName),
                    PackQty = (r == null ? 0 : Convert.ToInt16(r.PackQty)),
                    RequsitionQty = (r == null ? 0 : r.RequsitionQty),
                    RequisitionUnitName = (requnit == null ? null : requnit.UnitName),

                    IssuePackSize = Convert.ToByte(i.PackSize),
                    IssuePackSizeName = (issuesize == null ? null : issuesize.SizeName),
                    IssueSizeUnit = Convert.ToByte(i.SizeUnit),
                    IssueSizeUnitName = (issuesizeunit == null ? null : issuesizeunit.UnitName),
                    IssuePackQty = Convert.ToInt16(i.PackQty),
                    IssueQty = Convert.ToDecimal(i.TransactionQty),
                    IssueUnitName = (iu == null ? null : iu.UnitName),

                    ItemSource = DalCommon.ReturnItemSource(i.ItemSource)
                }).ToList();

                foreach (var item in Data)
                {
                    if (item.ItemSource == "From Order")
                    {
                        item.PackSizeName        = null;
                        item.SizeUnitName        = null;
                        item.PackQty             = 0;
                        item.RequsitionQty       = 0;
                        item.RequisitionUnitName = null;
                    }
                }
                return(Data);
            }
        }
 public ProductInformation(StockUnits currentStock)
 {
     CurrentStock = currentStock;
 }