public ProcurementListQueryViewModel GetStockList() { var result = new ProcurementListQueryViewModel(); BizModel context = new BizModel(); var procurementRepo = new BizRepository <Procurement>(context); var productRepo = new BizRepository <Product>(context); var temp = from p in productRepo.GetAll() join q in procurementRepo.GetAll() on p.PartNo equals q.PartNo select new { PartNo = p.PartNo, PartName = p.PartName, Quantity = q.InvetoryQuantity }; var group = from t in temp group t by new { t.PartNo, t.PartName } into g select new ProcurementQueryViewModel { PartName = g.Key.PartName, PartNo = g.Key.PartNo, TotalInvetoryQuantity = g.Sum((x) => x.Quantity) }; result.Items = group.ToList(); return(result); }
public OperationResult Create(SellingViewModel input) { var result = new OperationResult(); try { BizModel context = new BizModel(); using (var transaction = context.Database.BeginTransaction())//Rollback { var sellCount = input.Quantity; var procurementRepo = new BizRepository <Procurement>(context); var sellingSourceRepo = new BizRepository <SellingSource>(context); var sellingRepo = new BizRepository <Selling>(context); Selling entity = new Selling() { PartNo = input.PartNo, Quantity = input.Quantity, SalesJobNumber = input.SalesJobNumber, SellingDay = input.SellingDay, UnitPrice = input.UnitPrice }; sellingRepo.Create(entity); context.SaveChanges(); var products = procurementRepo.GetAll() .Where((x) => x.PartNo == input.PartNo).OrderBy((x) => x.PurchasingDay); foreach (var p in products) { if (sellCount <= 0) { break; } else { if (p.InvetoryQuantity >= sellCount) { p.InvetoryQuantity = p.InvetoryQuantity - sellCount; CreateSellingSource(sellingSourceRepo, entity.SellingId, p.ProcurementId, sellCount); sellCount = 0; } else { sellCount = sellCount - p.InvetoryQuantity; CreateSellingSource(sellingSourceRepo, entity.SellingId, p.ProcurementId, p.InvetoryQuantity); p.InvetoryQuantity = 0; } } } context.SaveChanges(); result.IsSuccessful = true; transaction.Commit(); } } catch (Exception ex) { result.IsSuccessful = false; result.exception = ex; } return(result); }
public SellingListQueryViewModel GetSellingBySalesAndDay(int jobNumber, DateTime begin, DateTime end) { var result = new SellingListQueryViewModel(); BizModel context = new BizModel(); var sellingRepo = new BizRepository <Selling>(context); var salesManRepo = new BizRepository <SalesMan>(context); var temp = from selling in sellingRepo.GetAll() join sales in salesManRepo.GetAll() on selling.SalesJobNumber equals sales.JobNumber where selling.SalesJobNumber == jobNumber && selling.SellingDay >= begin && selling.SellingDay < end select new SellingQueryViewModel { PartNo = selling.PartNo, Quantity = selling.Quantity, SalesJobNumber = selling.SalesJobNumber, SalesName = sales.Name, SellingDay = selling.SellingDay, SellingId = selling.SellingId, UnitPrice = selling.UnitPrice, TotalPrice = selling.UnitPrice * selling.Quantity }; result.Items = temp.ToList(); return(result); }
public bool IsNameExist(SalesManViewModel input) { BizModel context = new BizModel(); BizRepository <SalesMan> repository = new BizRepository <SalesMan>(context); return(repository.GetAll().Any((x) => x.Name == input.Name)); }
public SellingListQueryViewModel GetSellingBySalesMan(int JobNumber) { var result = new SellingListQueryViewModel(); result.Item = new List <SellingQueryViewModel>(); BizModel context = new BizModel(); BizRepository <Selling> SellingRepo = new BizRepository <Selling>(context); BizRepository <SalesMan> SalesManRepo = new BizRepository <SalesMan>(context); var temp = from p in SellingRepo.GetAll() join s in SalesManRepo.GetAll() on p.SalesJobNumber equals s.JobNumber where s.JobNumber == JobNumber select new SellingQueryViewModel { PartNo = p.PartNo, Quantity = p.Quantity, UnitPrice = p.UnitPrice, SalesJobNumber = s.JobNumber, SalesName = s.Name, SellingDay = p.SellingDay, SellingId = p.SellingId, TotalPrice = p.UnitPrice * p.Quantity }; result.Item = temp.ToList(); return(result); }
public List <Product> GetAll() { BizModel context = new BizModel(); BizRepository <Product> repository = new BizRepository <Product>(context); var result = repository.GetAll().ToList(); return(result); }
public Product GetByPartNo(string partNo) { BizModel context = new BizModel(); BizRepository <Product> repository = new BizRepository <Product>(context); var result = repository.GetAll().FirstOrDefault(x => x.PartNo == partNo); return(result); }
public List <Product> GetAll() { BizModel content = new BizModel(); BizRepository <Product> repository = new BizRepository <Product>(content); var result = repository.GetAll().OrderBy((x) => x.PartNo).ToList(); return(result); }
public int GetStock(string partNo) { BizModel context = new BizModel(); var repository = new BizRepository <Procurement>(context); var items = repository.GetAll().Where((x) => x.PartNo == partNo); int result = 0; if (items.Count() > 0) { result = items.Sum((x) => x.InvetoryQuantity); } return(result); }
public int GetStocks(string PartNo) { BizModel context = new BizModel(); BizRepository <Procurement> repository = new BizRepository <Procurement>(context); var item = repository.GetAll().Where(x => x.PartNo == PartNo); var result = 0; if (item.Count() > 0) { result = item.Sum(x => x.InvetoryQuantity); } return(result); }
public ProductListViewModel GetProducts() { var result = new ProductListViewModel(); result.Items = new List<ProductViewModel>(); BizModel context = new BizModel(); BizRepository<Product> repository = new BizRepository<Product>(context); foreach (var item in repository.GetAll().OrderBy((x) => x.PartNo)) { var p = new ProductViewModel() { PartNo = item.PartNo, PartName = item.PartName }; result.Items.Add(p); } return result; }
public SalesManListViewModel GetSalesMen() { var result = new SalesManListViewModel(); result.Items = new List <SalesManViewModel>(); BizModel context = new BizModel(); var repository = new BizRepository <SalesMan>(context); foreach (var item in repository.GetAll().OrderBy((x) => x.JobNumber)) { var p = new SalesManViewModel() { JobNumber = item.JobNumber, Name = item.Name }; result.Items.Add(p); } return(result); }