private TblRecInvDetailProd DeleteTblRecInvDetailProd(TblRecInvDetailProd row, int index, string company) { using (var entity = new WorkFlowManagerDBEntities()) { var query = (from e in entity.TblRecInvDetailProds where e.Glserial == row.Glserial && e.Dserial == row.Dserial select e).SingleOrDefault(); if (query != null) { entity.DeleteObject(query); } entity.SaveChanges(); } return(row); }
private TblRecInvDetailProd UpdateOrInsertTblRecInvDetailProds(TblRecInvDetailProd newRow, bool save, int index, out int outindex, string company) { outindex = index; using (var entity = new WorkFlowManagerDBEntities()) { if (save) { entity.TblRecInvDetailProds.AddObject(newRow); } else { var oldRow = (from e in entity.TblRecInvDetailProds where e.Glserial == newRow.Glserial && e.Dserial == newRow.Dserial select e).SingleOrDefault(); if (oldRow != null) { GenericUpdate(oldRow, newRow, entity); } } entity.SaveChanges(); return(newRow); } }
private TblRecInvHeaderProd GetTblRecieveDetail(List <int?> headerProds, TblRecInvHeaderProd tblRecInvHeaderProd, string company) { using (var entity = new WorkFlowManagerDBEntities()) { tblRecInvHeaderProd.Code = HandelSequence(tblRecInvHeaderProd.Code, company); tblRecInvHeaderProd.CreationDate = DateTime.Now; entity.TblRecInvHeaderProds.AddObject(tblRecInvHeaderProd); entity.SaveChanges(); foreach (var headerProd in headerProds) { entity.TblRecInvHeaderLinkProds.AddObject(new TblRecInvHeaderLinkProd { TblRecInvHeaderProd = tblRecInvHeaderProd.Iserial, TblRecInvHeaderTypeProd = tblRecInvHeaderProd.TblRecInvHeaderTypeProd, TblPurchaseReceiveHeader = (int)headerProd }); } string comand = "select tblPurchaseReceiveDetail.BatchNo,TblPurchaseOrderDetailRequest.ItemId Style,TblPurchaseOrderDetailRequest.FabricColor TblColor,TblPurchaseOrderDetailRequest.Size SizeCode,TblPurchaseOrderHeaderRequest.TblCurrency Currency" + ",CAST( isnull(SUM(TblPurchaseReceiveDetail.Qty*TblPurchaseReceiveDetail.Cost)/SUM(TblPurchaseReceiveDetail.Qty),0) AS DECIMAL(19,4)) Cost" + ",CAST(sum(TblPurchaseReceiveDetail.Qty) AS DECIMAL(19,4)) Quantity from TblPurchaseReceiveDetail" + " inner join TblPurchaseOrderDetailRequest on TblPurchaseOrderDetailRequest.Iserial= TblPurchaseReceiveDetail.TblPurchaseOrderDetailRequest" + " inner join TblPurchaseOrderHeaderRequest on TblPurchaseOrderDetailRequest.TblPurchaseOrderHeaderRequest=TblPurchaseOrderHeaderRequest.Iserial" + " where TblPurchaseReceiveDetail.TblPurchaseReceiveHeader in ({0}) " + " group by TblPurchaseReceiveDetail.BatchNo,TblPurchaseOrderDetailRequest.ItemId,TblPurchaseOrderDetailRequest.FabricColor,Size,TblPurchaseOrderHeaderRequest.TblCurrency "; comand = comand.Replace("{0}", string.Join(",", headerProds)); List <RecInvDataTable> List = entity.ExecuteStoreQuery <RecInvDataTable>(comand).ToList(); foreach (var row in List) { var firstOrDefault = entity.Fabric_UnitID.FirstOrDefault(x => x.Fabric_Code == row.Style); if (firstOrDefault != null) { var styleIserial = firstOrDefault; var newRow = new TblRecInvMainDetailProd { ItemType = firstOrDefault.Type, Cost = (double)row.Cost, TblCurrency = row.Currency, Qty = (double)row.Quantity, TblItem = styleIserial.Iserial, TblRecInvHeaderProd = tblRecInvHeaderProd.Iserial, SizeCode = row.SizeCode, TblColor = row.TblColor, BatchNo = row.BatchNo, ExchangeRate = 1 }; entity.TblRecInvMainDetailProds.AddObject(newRow); } } IQueryable <TblPurchaseReceiveDetail> query = entity.TblPurchaseReceiveDetails.Include("TblPurchaseOrderDetailRequest1").Where(x => headerProds.Contains(x.TblPurchaseReceiveHeader)); foreach (var row in query) { var firstOrDefault = entity.Fabric_UnitID.FirstOrDefault(x => x.Fabric_Code == row.TblPurchaseOrderDetailRequest1.ItemId); if (firstOrDefault != null) { var recDetail = new TblRecInvDetailProd { Cost = row.Cost, TblRecInvHeaderProd = tblRecInvHeaderProd.Iserial, Dserial = row.Iserial, Flg = 0, Glserial = (int)row.TblPurchaseReceiveHeader, Tblitem = firstOrDefault.Iserial, ItemType = firstOrDefault.Type, TblColor = row.TblPurchaseOrderDetailRequest1.FabricColor, BatchNo = row.BatchNo, SizeCode = row.TblPurchaseOrderDetailRequest1.Size, ExchangeRate = 1 }; entity.TblRecInvDetailProds.AddObject(recDetail); } } entity.SaveChanges(); } return(tblRecInvHeaderProd); }