Ejemplo n.º 1
0
        public bool InsertData(ChargeViewModel chargeViewModel)
        {
            bool retVal = false;

            chargeViewModel.CreatedBy = Convert.ToInt32(Session["UserLoginId"]);
            chargeViewModel.UpdatedBy = Convert.ToInt32(Session["UserLoginId"]);
            Mst_Charge        tblCharge        = new Mst_Charge();
            Mst_ChargeDetails tblChargeDetails = new Mst_ChargeDetails();

            try
            {
                tblCharge.Chg_Name            = chargeViewModel.ChargeName;
                tblCharge.Chg_ReferenceDate   = chargeViewModel.ReferenceDate;
                tblCharge.Chg_Status          = chargeViewModel.Status;
                tblCharge.Chg_RecordCreated   = DateTime.Now;
                tblCharge.Chg_RecordCreatedBy = chargeViewModel.CreatedBy;
                tblCharge.Chg_RecordUpdated   = DateTime.Now;
                tblCharge.Chg_RecordUpdatedBy = chargeViewModel.UpdatedBy;
                dd._context.Mst_Charge.Add(tblCharge);
                dd._context.SaveChanges();

                int PID = dd._context.Mst_Charge.Max(x => x.Chg_Id);

                //save the data in Charge Details table
                foreach (var p in chargeViewModel.chargeDetailsCollection)
                {
                    var chargetrn = new Mst_ChargeDetails
                    {
                        Chgd_ChgRefId          = PID,
                        Chgd_LoanAmountGreater = p.LoanAmountGreaterthan,
                        Chgd_LoanAmountLess    = p.LoanAmountLessthan,
                        Chgd_ChargesAmt        = p.ChargeAmount,
                        Chgd_ChargeType        = p.ChargeType,
                        Chg_RecordCreatedBy    = Convert.ToInt32(Session["UserLoginId"]),
                        Chg_RecordCreated      = DateTime.Now,
                        Chg_RecordUpdatedBy    = Convert.ToInt32(Session["UserLoginId"]),
                        Chg_RecordUpdated      = DateTime.Now,
                    };
                    dd._context.Mst_ChargeDetails.Add(chargetrn);
                    dd._context.SaveChanges();
                }
                retVal = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(retVal);
        }
Ejemplo n.º 2
0
        public bool UpdateData(ChargeViewModel chargeViewModel)
        {
            bool retVal = false;

            try
            {
                var chargeObj = dd._context.Mst_Charge.Where(x => x.Chg_Id == chargeViewModel.ID).FirstOrDefault();

                //update the data in charge table
                chargeObj.Chg_Name            = chargeViewModel.ChargeName;
                chargeObj.Chg_ReferenceDate   = chargeViewModel.ReferenceDate;
                chargeObj.Chg_Status          = chargeViewModel.Status;
                chargeObj.Chg_RecordUpdatedBy = Convert.ToInt32(Session["UserLoginId"]);
                chargeObj.Chg_RecordUpdated   = DateTime.Now;

                List <Mst_ChargeDetails> NewChargeDetailsList = new List <Mst_ChargeDetails>();

                //update the data in Charge Details table
                foreach (var p in chargeViewModel.chargeDetailsCollection)
                {
                    var FindChargebject = dd._context.Mst_ChargeDetails.Where(x => x.Chgd_Id == p.ID && x.Chgd_ChgRefId == chargeViewModel.ID).FirstOrDefault();
                    if (FindChargebject == null)
                    {
                        var chargetrnnew = new Mst_ChargeDetails
                        {
                            Chgd_ChgRefId          = chargeViewModel.ID,
                            Chgd_LoanAmountGreater = p.LoanAmountGreaterthan,
                            Chgd_LoanAmountLess    = p.LoanAmountLessthan,
                            Chgd_ChargesAmt        = p.ChargeAmount,
                            Chgd_ChargeType        = p.ChargeType,
                            Chg_RecordCreatedBy    = Convert.ToInt32(Session["UserLoginId"]),
                            Chg_RecordCreated      = DateTime.Now,
                            Chg_RecordUpdatedBy    = Convert.ToInt32(Session["UserLoginId"]),
                            Chg_RecordUpdated      = DateTime.Now
                        };
                        dd._context.Mst_ChargeDetails.Add(chargetrnnew);
                    }
                    else
                    {
                        FindChargebject.Chgd_LoanAmountGreater = p.LoanAmountGreaterthan;
                        FindChargebject.Chgd_LoanAmountLess    = p.LoanAmountLessthan;
                        FindChargebject.Chgd_ChargesAmt        = p.ChargeAmount;
                        FindChargebject.Chgd_ChargeType        = p.ChargeType;
                        FindChargebject.Chg_RecordUpdatedBy    = Convert.ToInt32(Session["UserLoginId"]);
                        FindChargebject.Chg_RecordUpdated      = DateTime.Now;
                    }
                    NewChargeDetailsList.Add(FindChargebject);
                }
                #region charge details remove
                //take the loop of table and check from list if found in list then not remove else remove from table itself
                var chargetrnobjlist = dd._context.Mst_ChargeDetails.Where(x => x.Chgd_ChgRefId == chargeViewModel.ID).ToList();
                if (chargetrnobjlist != null)
                {
                    foreach (Mst_ChargeDetails item in chargetrnobjlist)
                    {
                        if (NewChargeDetailsList.Contains(item))
                        {
                            continue;
                        }
                        else
                        {
                            dd._context.Mst_ChargeDetails.Remove(item);
                        }
                    }
                    dd._context.SaveChanges();
                }
                #endregion charge trn remove
                retVal = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(retVal);
        }