public int Delete(Int64 HeadId) { //clsAccountPosting objclsAccountPosting = new clsAccountPosting(); int value = 0; using (TransportMandiEntities db = new TransportMandiEntities(MultipleDBDAL.strDynamicConString())) { MatIssHead qth = db.MatIssHeads.Where(h => h.MatIss_Idno == HeadId).FirstOrDefault(); List <MatIssDetl> qtd = db.MatIssDetls.Where(d => d.MatIssDet_Idno == HeadId).ToList(); if (qth != null) { foreach (var d in qtd) { if (d.Serial_Idno > 0) { Stckdetl Sd = db.Stckdetls.Where(r => r.SerlDetl_id == d.Serial_Idno).FirstOrDefault(); Sd.MtrlIssue_Idno = 0; Sd.Is_Issued = false; db.MatIssDetls.DeleteObject(d); db.SaveChanges(); } } db.MatIssHeads.DeleteObject(qth); db.SaveChanges(); value = 1; } List <MatIssIdDetl> MtId = db.MatIssIdDetls.Where(d => d.DocIdno == HeadId).ToList(); if (MtId != null) { foreach (var d in MtId) { if (d.StckIdno > 0) { Stckdetl Sd = db.Stckdetls.Where(r => r.SerlDetl_id == d.StckIdno).FirstOrDefault(); Sd.MtrlIssue_Idno = 0; Sd.Is_Issued = false; db.MatIssIdDetls.DeleteObject(d); db.SaveChanges(); } } } } return(value); }
public Int64 InsertMat(DateTime?dtMat_Date, Int32 IAgainst, Int64 intMat_No, Int32 intLoc_Idno, Int32 TruckNoIdno, string km, Double DNetAmnt, Int32 YearIdno, DataTable dtDetail, Int32 intIssueTo, string strRemark, Int64 DriverIdno, Int64 intPrtyIdno, string strOwnerName, Int64 IssueType) { Int64 intMateIdno = 0; using (TransportMandiEntities db = new TransportMandiEntities(MultipleDBDAL.strDynamicConString())) { try { MatIssHead objMatHead = db.MatIssHeads.Where(rh => (rh.MatIss_No == intMat_No) && (rh.Loc_Idno == intLoc_Idno) && (rh.Year_Idno == YearIdno)).FirstOrDefault(); if (objMatHead == null) { objMatHead = new MatIssHead(); objMatHead.MatIss_Date = dtMat_Date; objMatHead.MatIss_Typ = IAgainst; objMatHead.MatIss_No = intMat_No; objMatHead.Loc_Idno = intLoc_Idno; objMatHead.Truck_Idno = TruckNoIdno; objMatHead.Fitment_km = km; objMatHead.Net_Amnt = DNetAmnt; objMatHead.Year_Idno = YearIdno; objMatHead.Issue_To = intIssueTo; objMatHead.ReMark = strRemark; objMatHead.Date_Added = System.DateTime.Now; objMatHead.Mat_Frm = "BK"; objMatHead.Driver_Idno = DriverIdno; objMatHead.Prty_Idno = intPrtyIdno; objMatHead.Issue_Type = IssueType; objMatHead.Owner_Name = strOwnerName; db.MatIssHeads.AddObject(objMatHead); db.SaveChanges(); intMateIdno = objMatHead.MatIss_Idno; if (intMateIdno > 0) { foreach (DataRow row in dtDetail.Rows) { MatIssDetl objMatDetl = new MatIssDetl(); objMatDetl.MatIssHead_Idno = Convert.ToInt64(intMateIdno); objMatDetl.Iteam_Idno = Convert.ToInt32(row["Item_Idno"]); objMatDetl.Item_Qty = Convert.ToInt64(row["Quantity"]); objMatDetl.Item_Weght = Convert.ToDouble(row["Weight"]); objMatDetl.Item_Rate = Convert.ToDouble(row["Rate"]); objMatDetl.Item_Amnt = Convert.ToDouble(row["Amount"]); objMatDetl.Remark = Convert.ToString(row["Detail"]); objMatDetl.Serial_Idno = Convert.ToInt64(row["SerialId"]); objMatDetl.Serial_Number = Convert.ToString(row["SerialNo"]); objMatDetl.NSD = Convert.ToString(row["NSD"]); objMatDetl.PSI = Convert.ToString(row["PSI"]); objMatDetl.TType = Convert.ToInt32(row["TType"]); objMatDetl.RSerial_Idno = Convert.ToInt64(row["RSerialId"]); objMatDetl.RSerial_No = Convert.ToString(row["RSerialNo"]); objMatDetl.RNSD = Convert.ToString(row["RNSD"]); objMatDetl.RPSI = Convert.ToString(row["RPSI"]); objMatDetl.RTType = Convert.ToInt32(row["RTType"]); objMatDetl.TyresizeIdno = Convert.ToInt32(row["Tyresize_Idno"]); objMatDetl.Tyreposition_Idno = Convert.ToInt32(row["Tyreposition_Idno"]); objMatDetl.Align = string.IsNullOrEmpty(Convert.ToString(row["Align"])) ? false : Convert.ToBoolean(row["Align"]); if ((Convert.ToString(row["AlignDate"]) != "")) { objMatDetl.AlignDate = Convert.ToDateTime(row["AlignDate"]); } if ((Convert.ToString(row["PrevAlignDate"]) != "")) { objMatDetl.Prev_AlignDate = Convert.ToDateTime(row["PrevAlignDate"]); } objMatDetl.RPrice = Convert.ToDouble(row["RPrice"]); db.MatIssDetls.AddObject(objMatDetl); db.SaveChanges(); Int64 SrId = Convert.ToInt64(row["SerialId"]); List <Stckdetl> StckDetl = db.Stckdetls.Where(rd => rd.SerlDetl_id == SrId).ToList(); foreach (var d in StckDetl) { d.MtrlIssue_Idno = intMateIdno; d.Is_Issued = true; db.SaveChanges(); } Int64 RSrId = Convert.ToInt64(row["RSerialId"]); List <Stckdetl> RStckDetl = db.Stckdetls.Where(rd => rd.SerlDetl_id == RSrId).ToList(); foreach (var d in RStckDetl) { d.MtrlIssue_Idno = 0; d.Is_Issued = false; db.SaveChanges(); } MatIssIdDetl MtIdDetl = new MatIssIdDetl(); MtIdDetl.MtrlDetlIdno = objMatDetl.MatIssDet_Idno; MtIdDetl.DocIdno = intMateIdno; MtIdDetl.StckIdno = SrId; MtIdDetl.DocType = "MT"; db.MatIssIdDetls.AddObject(MtIdDetl); db.SaveChanges(); } // tScope.Complete(); } } else { intMateIdno = -1; } } catch (Exception Ex) { intMateIdno = 0; } } return(intMateIdno); }