public ActionResult _FilterPostOrders(PurchaseInvoiceLineFilterViewModel vm) { List <PurchaseInvoiceLineViewModel> temp = _PurchaseInvoiceLineService.GetPurchaseOrderForFilters(vm).ToList(); PurchaseInvoiceMasterDetailModel svm = new PurchaseInvoiceMasterDetailModel(); svm.PurchaseInvoiceLineViewModel = temp; return(PartialView("_Results", svm)); }
public ActionResult _ForReceipt(int id, int sid) { PurchaseInvoiceLineFilterViewModel vm = new PurchaseInvoiceLineFilterViewModel(); vm.PurchaseInvoiceHeaderId = id; vm.SupplierId = sid; return(PartialView("_Filters", vm)); }
public ActionResult _ForOrder(int id, int sid) { PurchaseInvoiceLineFilterViewModel vm = new PurchaseInvoiceLineFilterViewModel(); vm.PurchaseInvoiceHeaderId = id; PurchaseInvoiceHeader Header = new PurchaseInvoiceHeaderService(_unitOfWork).Find(id); vm.DocumentTypeSettings = new DocumentTypeSettingsService(_unitOfWork).GetDocumentTypeSettingsForDocument(Header.DocTypeId); vm.SupplierId = sid; return(PartialView("_OrderFilters", vm)); }
public IEnumerable <PurchaseInvoiceLineViewModel> GetPurchaseReceiptForFilters(PurchaseInvoiceLineFilterViewModel vm) { string[] ProductIdArr = null; if (!string.IsNullOrEmpty(vm.ProductId)) { ProductIdArr = vm.ProductId.Split(",".ToCharArray()); } else { ProductIdArr = new string[] { "NA" }; } string[] SaleOrderIdArr = null; if (!string.IsNullOrEmpty(vm.PurchaseGoodsReceiptHeaderId)) { SaleOrderIdArr = vm.PurchaseGoodsReceiptHeaderId.Split(",".ToCharArray()); } else { SaleOrderIdArr = new string[] { "NA" }; } string[] ProductGroupIdArr = null; if (!string.IsNullOrEmpty(vm.ProductGroupId)) { ProductGroupIdArr = vm.ProductGroupId.Split(",".ToCharArray()); } else { ProductGroupIdArr = new string[] { "NA" }; } var temp = (from p in db.ViewPurchaseGoodsReceiptBalance join t in db.PurchaseGoodsReceiptHeader on p.PurchaseGoodsReceiptHeaderId equals t.PurchaseGoodsReceiptHeaderId into table from tab in table.DefaultIfEmpty() join t1 in db.PurchaseGoodsReceiptLine on p.PurchaseGoodsReceiptLineId equals t1.PurchaseGoodsReceiptLineId into table1 from tab1 in table1.DefaultIfEmpty() join Pol in db.PurchaseOrderLine on tab1.PurchaseOrderLineId equals Pol.PurchaseOrderLineId into PurchaseOrderLineTable from PurchaseOrderLineTab in PurchaseOrderLineTable.DefaultIfEmpty() join product in db.Product on p.ProductId equals product.ProductId into table2 from tab2 in table2.DefaultIfEmpty() where (string.IsNullOrEmpty(vm.ProductId) ? 1 == 1 : ProductIdArr.Contains(p.ProductId.ToString())) && (string.IsNullOrEmpty(vm.PurchaseGoodsReceiptHeaderId) ? 1 == 1 : SaleOrderIdArr.Contains(p.PurchaseGoodsReceiptHeaderId.ToString())) && (string.IsNullOrEmpty(vm.ProductGroupId) ? 1 == 1 : ProductGroupIdArr.Contains(tab2.ProductGroupId.ToString())) && p.BalanceQty > 0 orderby tab.DocDate, tab.DocNo, tab1.Sr select new PurchaseInvoiceLineViewModel { ProductUidName = tab1.ProductUid != null?tab1.ProductUid.ProductUidName:"", Dimension1Name = tab1.Dimension1.Dimension1Name, Dimension2Name = tab1.Dimension2.Dimension2Name, Specification = tab1.Specification, ReceiptBalQty = p.BalanceQty, Qty = p.BalanceQty, DocQty = p.BalanceDocQty, ReceiptBalDocQty = p.BalanceDocQty, PurchaseGoodsReceiptHeaderDocNo = tab.DocNo, ShortQty = p.BalanceDocQty - p.BalanceQty, ProductName = tab2.ProductName, ProductId = p.ProductId, PurchaseInvoiceHeaderId = vm.PurchaseInvoiceHeaderId, PurchaseGoodsReceiptLineId = p.PurchaseGoodsReceiptLineId, UnitId = tab2.UnitId, UnitName = tab2.Unit.UnitName, DealUnitId = tab1.DealUnitId, DealUnitName = tab1.DealUnit.UnitName, unitDecimalPlaces = tab2.Unit.DecimalPlaces, DealunitDecimalPlaces = tab1.DealUnit.DecimalPlaces, ReceiptBalDealQty = p.BalanceDealQty, DealQty = (tab1.UnitConversionMultiplier == null || tab1.UnitConversionMultiplier == 0)?p.BalanceQty:p.BalanceQty * tab1.UnitConversionMultiplier, UnitConversionMultiplier = tab1.UnitConversionMultiplier, Rate = tab1.PurchaseOrderLine == null ? 0 : tab1.PurchaseOrderLine.Rate ?? 0, RateAfterDiscount = tab1.PurchaseOrderLine == null ? 0 : (tab1.PurchaseOrderLine.Amount / tab1.PurchaseOrderLine.DealQty) ?? 0, DiscountPer = PurchaseOrderLineTab.DiscountPer } ); return(temp); }
public IEnumerable <PurchaseInvoiceLineViewModel> GetPurchaseIndentForFilters(PurchaseInvoiceLineFilterViewModel vm) { byte?UnitConvForId = new PurchaseInvoiceHeaderService(_unitOfWork).Find(vm.PurchaseInvoiceHeaderId).UnitConversionForId; string[] ProductIdArr = null; if (!string.IsNullOrEmpty(vm.ProductId)) { ProductIdArr = vm.ProductId.Split(",".ToCharArray()); } else { ProductIdArr = new string[] { "NA" }; } string[] SaleOrderIdArr = null; if (!string.IsNullOrEmpty(vm.PurchaseIndentHeaderId)) { SaleOrderIdArr = vm.PurchaseIndentHeaderId.Split(",".ToCharArray()); } else { SaleOrderIdArr = new string[] { "NA" }; } string[] ProductGroupIdArr = null; if (!string.IsNullOrEmpty(vm.ProductGroupId)) { ProductGroupIdArr = vm.ProductGroupId.Split(",".ToCharArray()); } else { ProductGroupIdArr = new string[] { "NA" }; } if (!string.IsNullOrEmpty(vm.DealUnitId)) { Unit Dealunit = new UnitService(_unitOfWork).Find(vm.DealUnitId); var temp = (from p in db.ViewPurchaseIndentBalance join t in db.PurchaseIndentHeader on p.PurchaseIndentHeaderId equals t.PurchaseIndentHeaderId into table from tab in table.DefaultIfEmpty() join product in db.Product on p.ProductId equals product.ProductId into table2 join t1 in db.PurchaseIndentLine on p.PurchaseIndentLineId equals t1.PurchaseIndentLineId into table1 from tab1 in table1.DefaultIfEmpty() from tab2 in table2.DefaultIfEmpty() join t3 in db.UnitConversion on new { p1 = p.ProductId, DU1 = vm.DealUnitId, U1 = UnitConvForId ?? 0 } equals new { p1 = t3.ProductId ?? 0, DU1 = t3.ToUnitId, U1 = t3.UnitConversionForId } into table3 from tab3 in table3.DefaultIfEmpty() where (string.IsNullOrEmpty(vm.ProductId) ? 1 == 1 : ProductIdArr.Contains(p.ProductId.ToString())) && (string.IsNullOrEmpty(vm.PurchaseIndentHeaderId) ? 1 == 1 : SaleOrderIdArr.Contains(p.PurchaseIndentHeaderId.ToString())) && (string.IsNullOrEmpty(vm.ProductGroupId) ? 1 == 1 : ProductGroupIdArr.Contains(tab2.ProductGroupId.ToString())) && p.BalanceQty > 0 select new PurchaseInvoiceLineViewModel { Dimension1Name = tab1.Dimension1.Dimension1Name, Dimension2Name = tab1.Dimension2.Dimension2Name, Dimension1Id = tab1.Dimension1Id, Dimension2Id = tab1.Dimension2Id, Specification = tab1.Specification, IndentBalQty = p.BalanceQty, Qty = p.BalanceQty, Rate = vm.Rate, ProductName = tab2.ProductName, ProductId = p.ProductId, PurchaseInvoiceHeaderId = vm.PurchaseInvoiceHeaderId, PurchaseIndentLineId = p.PurchaseIndentLineId, UnitId = tab2.UnitId, PurchaseIndentHeaderDocNo = p.PurchaseIndentNo, DealUnitId = (tab3 == null ? tab2.UnitId : vm.DealUnitId), UnitConversionMultiplier = (tab3 == null ? 1 : tab3.ToQty / tab3.FromQty), UnitConversionException = tab3 == null ? true : false, unitDecimalPlaces = tab2.Unit.DecimalPlaces, DealunitDecimalPlaces = (tab3 == null ? tab2.Unit.DecimalPlaces : Dealunit.DecimalPlaces), } ); return(temp); } else { var temp = (from p in db.ViewPurchaseIndentBalance join t in db.PurchaseIndentHeader on p.PurchaseIndentHeaderId equals t.PurchaseIndentHeaderId into table from tab in table.DefaultIfEmpty() join product in db.Product on p.ProductId equals product.ProductId into table2 join t1 in db.PurchaseIndentLine on p.PurchaseIndentLineId equals t1.PurchaseIndentLineId into table1 from tab1 in table1.DefaultIfEmpty() from tab2 in table2.DefaultIfEmpty() where (string.IsNullOrEmpty(vm.ProductId) ? 1 == 1 : ProductIdArr.Contains(p.ProductId.ToString())) && (string.IsNullOrEmpty(vm.PurchaseIndentHeaderId) ? 1 == 1 : SaleOrderIdArr.Contains(p.PurchaseIndentHeaderId.ToString())) && (string.IsNullOrEmpty(vm.ProductGroupId) ? 1 == 1 : ProductGroupIdArr.Contains(tab2.ProductGroupId.ToString())) && p.BalanceQty > 0 select new PurchaseInvoiceLineViewModel { Dimension1Name = tab1.Dimension1.Dimension1Name, Dimension1Id = tab1.Dimension1Id, Dimension2Name = tab1.Dimension2.Dimension2Name, Dimension2Id = tab1.Dimension2Id, Specification = tab1.Specification, IndentBalQty = p.BalanceQty, Qty = p.BalanceQty, Rate = vm.Rate, PurchaseIndentHeaderDocNo = tab.DocNo, ProductName = tab2.ProductName, ProductId = p.ProductId, PurchaseInvoiceHeaderId = vm.PurchaseInvoiceHeaderId, PurchaseIndentLineId = p.PurchaseIndentLineId, UnitId = tab2.UnitId, DealUnitId = tab2.UnitId, UnitConversionMultiplier = 1, unitDecimalPlaces = tab2.Unit.DecimalPlaces, DealunitDecimalPlaces = tab2.Unit.DecimalPlaces, } ); return(temp); } }