public Int64 Insert(tblChlnAmntPayment_Head obj, DataTable Dttemp)
        {
            Int64 AmntHeadId = 0;

            using (TransportMandiEntities db = new TransportMandiEntities(MultipleDBDAL.strDynamicConString()))
            {
                tblChlnAmntPayment_Head AmtHead = new tblChlnAmntPayment_Head();
                db.Connection.Open();
                //    using (DbTransaction dbTran = db.Connection.BeginTransaction())
                //   {
                try
                {
                    tblChlnAmntPayment_Head RH = db.tblChlnAmntPayment_Head.Where(rh => rh.Rcpt_No == obj.Rcpt_No && rh.BaseCity_Idno == obj.BaseCity_Idno && rh.Year_IdNo == obj.Year_IdNo).FirstOrDefault();
                    if (RH != null)
                    {
                        AmntHeadId = -1;
                    }
                    else
                    {
                        obj.Date_Added    = DateTime.Now;
                        obj.Date_Modified = DateTime.Now;
                        db.tblChlnAmntPayment_Head.AddObject(obj);
                        db.SaveChanges();
                        AmntHeadId = obj.Id;
                        if (Dttemp != null && Dttemp.Rows.Count > 0)
                        {
                            foreach (DataRow Dr in Dttemp.Rows)
                            {
                                tblChlnAmntPayment_Detl objtblAmntRecvGR_Detl = new tblChlnAmntPayment_Detl();
                                objtblAmntRecvGR_Detl.Head_Idno     = AmntHeadId;
                                objtblAmntRecvGR_Detl.Chln_Idno     = Convert.ToInt64(Dr["chln_Idno"]);
                                objtblAmntRecvGR_Detl.Chln_No       = Convert.ToInt64(Dr["Chln_No"]);
                                objtblAmntRecvGR_Detl.Chln_Date     = Convert.ToDateTime(Dr["Chln_Date"]);
                                objtblAmntRecvGR_Detl.FromCity_Idno = Convert.ToInt64(Dr["Fromcity_Idno"]);
                                objtblAmntRecvGR_Detl.Challan_Amnt  = Convert.ToDouble(Dr["Challan_Amnt"]);
                                objtblAmntRecvGR_Detl.Recvd_Amnt    = Convert.ToDouble(Dr["Recvd_Amnt"]);
                                objtblAmntRecvGR_Detl.Truck_Idno    = Convert.ToInt64(Dr["Truck_Idno"]);
                                objtblAmntRecvGR_Detl.Driver_Idno   = Convert.ToInt64(Dr["Driver_Idno"]);
                                db.tblChlnAmntPayment_Detl.AddObject(objtblAmntRecvGR_Detl);
                                db.SaveChanges();
                            }


                            //dbTran.Commit();
                        }
                    }
                }
                catch
                {
                    // dbTran.Rollback();
                }
                //   }
                return(AmntHeadId);
            }
        }
        public Int64 Update(tblChlnAmntPayment_Head obj, Int32 Head_Idno, DataTable Dttemp)
        {
            Int64 AmntHeadId = 0;

            using (TransportMandiEntities db = new TransportMandiEntities(MultipleDBDAL.strDynamicConString()))
            {
                db.Connection.Open();
                //using (DbTransaction dbTran = db.Connection.BeginTransaction())
                //{
                try
                {
                    tblChlnAmntPayment_Head CH = db.tblChlnAmntPayment_Head.Where(rh => rh.Rcpt_No == obj.Rcpt_No && rh.Id != Head_Idno && rh.BaseCity_Idno == obj.BaseCity_Idno && rh.Year_IdNo == obj.Year_IdNo).FirstOrDefault();
                    if (CH != null)
                    {
                        AmntHeadId = -1;
                    }
                    else
                    {
                        tblChlnAmntPayment_Head TBH = db.tblChlnAmntPayment_Head.Where(rh => rh.Id == Head_Idno).FirstOrDefault();
                        if (TBH != null)
                        {
                            TBH.Rcpt_No       = obj.Rcpt_No;
                            TBH.Rcpt_date     = obj.Rcpt_date;
                            TBH.Year_IdNo     = obj.Year_IdNo;
                            TBH.RcptType_Idno = obj.RcptType_Idno;
                            TBH.Party_IdNo    = obj.Party_IdNo;
                            TBH.Inst_No       = obj.Inst_No;
                            TBH.Inst_Dt       = obj.Inst_Dt;
                            TBH.Bank_Idno     = obj.Bank_Idno;
                            TBH.Comp_Id       = obj.Comp_Id;
                            TBH.Remark        = obj.Remark;
                            TBH.Date_Modified = obj.Date_Modified;
                            TBH.Net_Amnt      = obj.Net_Amnt;
                            TBH.BaseCity_Idno = obj.BaseCity_Idno;
                            TBH.Loc_Idno      = obj.Loc_Idno;
                            TBH.Date_Modified = DateTime.Now;
                            db.SaveChanges();
                            AmntHeadId = TBH.Id;
                            List <tblChlnAmntPayment_Detl> ChlnDetl = db.tblChlnAmntPayment_Detl.Where(rd => rd.Head_Idno == Head_Idno).ToList();
                            foreach (tblChlnAmntPayment_Detl rgd in ChlnDetl)
                            {
                                db.tblChlnAmntPayment_Detl.DeleteObject(rgd);
                                db.SaveChanges();
                            }
                            if (Dttemp != null && Dttemp.Rows.Count > 0)
                            {
                                foreach (DataRow Dr in Dttemp.Rows)
                                {
                                    tblChlnAmntPayment_Detl objtblAmntRecvGR_Detl = new tblChlnAmntPayment_Detl();
                                    objtblAmntRecvGR_Detl.Head_Idno     = AmntHeadId;
                                    objtblAmntRecvGR_Detl.Chln_Idno     = Convert.ToInt64(Dr["chln_Idno"]);
                                    objtblAmntRecvGR_Detl.Chln_No       = Convert.ToInt64(Dr["Chln_No"]);
                                    objtblAmntRecvGR_Detl.Chln_Date     = Convert.ToDateTime(Dr["Chln_Date"]);
                                    objtblAmntRecvGR_Detl.FromCity_Idno = Convert.ToInt64(Dr["Fromcity_Idno"]);
                                    objtblAmntRecvGR_Detl.Challan_Amnt  = Convert.ToDouble(Dr["Challan_Amnt"]);
                                    objtblAmntRecvGR_Detl.Recvd_Amnt    = Convert.ToDouble(Dr["Recvd_Amnt"]);
                                    objtblAmntRecvGR_Detl.Truck_Idno    = Convert.ToInt64(Dr["Truck_Idno"]);
                                    objtblAmntRecvGR_Detl.Driver_Idno   = Convert.ToInt64(Dr["Driver_Idno"]);
                                    db.tblChlnAmntPayment_Detl.AddObject(objtblAmntRecvGR_Detl);
                                    db.SaveChanges();
                                }
                            }
                        }
                    }
                }
                catch
                {
                }
                //}
            }
            return(AmntHeadId);
        }