public ResultDto AddUpdateMemberReceipt(GroupMemberReceiptDto _groupMemberReceiptDto, int userId, int groupId)
        {
            GroupMemberReceiptDal objDal = new GroupMemberReceiptDal();
            string memberReceiptTranxml  = CommonMethods.SerializeListDto <List <GroupMemberReceiptTranDto> >(_groupMemberReceiptDto.Transactions);

            return(objDal.AddUpdateMemberReceipt(_groupMemberReceiptDto, memberReceiptTranxml, userId, groupId));
        }
        public ActionResult SaveLoanPreClose(string LoanMasterId)
        {
            MemberLoanClosure memberLoanClosure = new MemberLoanClosure();
            int ID = string.IsNullOrEmpty(LoanMasterId.DecryptString()) ? default(int) : Convert.ToInt32(LoanMasterId.DecryptString());
            var memberLoanDisbursement = _memberloanapplicationService.GetMemberLoanDisbursementDetailsById(ID, UserInfo.UserID);

            LoadDropDowns();
            memberLoanClosure = _memberloanapplicationService.GetLoanClosureDemands(ID, GroupInfo.MeetingDate);
            List <GroupMemberDemandDto> lstDemands = new List <GroupMemberDemandDto>();

            lstDemands = _groupMemberReceiptService.GetTransactionDemands(Convert.ToString(GroupInfo.MeetingDate), memberLoanDisbursement.MemberID);
            var lstloanDemands = lstDemands.Where(x => x.LoanMasterId == ID).ToList();
            GroupMemberReceiptDto _grpMbrRecptDto = new GroupMemberReceiptDto();

            try
            {
                ViewBag.LockStatus = GroupInfo.LockStatus;
                _grpMbrRecptDto.AccountMasterID = memberLoanDisbursement.AccountMasterId;
                _grpMbrRecptDto.TransactionMode = "C";


                _grpMbrRecptDto.TransactionDate = GroupInfo.MeetingDate;

                _grpMbrRecptDto.VoucherRefNumber = memberLoanDisbursement.PaymentVoucherNumber;
                _grpMbrRecptDto.CollectionAgent  = 0;


                _grpMbrRecptDto.TotalAmount = memberLoanClosure.InterestDemand + memberLoanClosure.PrincipleDemand;

                _grpMbrRecptDto.MemberId  = memberLoanDisbursement.MemberID;
                _grpMbrRecptDto.Narration = "Loan Pre Closing";

                //Transactions Read
                _grpMbrRecptDto.Transactions = new List <GroupMemberReceiptTranDto>();
                foreach (var memberdemand in lstloanDemands)
                {
                    GroupMemberReceiptTranDto objTran = null;
                    objTran                 = new GroupMemberReceiptTranDto();
                    objTran.SLAccountId     = memberdemand.SLAhId;
                    objTran.GLAccount       = memberdemand.GLAhName;
                    objTran.SLAccount       = memberdemand.SLAhName;
                    objTran.ReferenceNumber = "RefCloser";
                    objTran.SubAhId         = memberdemand.SubAhId;
                    objTran.Amount          = memberLoanClosure.PrincipleDemand;
                    objTran.InterestDue     = 0;
                    _grpMbrRecptDto.Transactions.Add(objTran);
                }
                //Save
                int       GroupId   = GroupInfo.GroupID;
                ResultDto resultDto = _groupMemberReceiptService.AddUpdateMemberReceipt(_grpMbrRecptDto, UserInfo.UserID, GroupId);
                _grpMbrRecptDto.VoucherNumber   = resultDto.ObjectCode;
                _grpMbrRecptDto.AccountMasterID = resultDto.ObjectId;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(View());
        }
 public GroupMemberReceiptController()
 {
     _groupMemberReceiptService = new GroupMemberReceiptService();
     _masterService             = new MasterService();
     _groupOtherReceiptService  = new GroupOtherReceiptService();
     _grpMbrRecptDto            = new GroupMemberReceiptDto();
     _grpMbrRcptDal             = new GroupMemberReceiptDal();
 }
Пример #4
0
        public ResultDto AddUpdateMemberReceipt(GroupMemberReceiptDto objDto, string memberReceiptTranxml, int userId, int groupId)
        {
            ResultDto res = new ResultDto();

            try
            {
                SqlConnection con = new SqlConnection(DBConstants.MFIS_CS);
                SqlCommand    cmd = new SqlCommand("uspGroupGroupMemberReceiptInsertUpdate_v2", con);
                cmd.CommandType = CommandType.StoredProcedure;

                cmd.Parameters.AddWithValue("@TransactionMode", objDto.TransactionMode);
                cmd.Parameters.AddWithValue("@TransactionDate", objDto.TransactionDate);
                if (!string.IsNullOrWhiteSpace(objDto.VoucherRefNumber))
                {
                    cmd.Parameters.AddWithValue("@VoucherRefNumber", objDto.VoucherRefNumber);
                }
                cmd.Parameters.AddWithValue("@CollectionAgent", objDto.CollectionAgent);
                if (objDto.TransactionMode == "BC")
                {
                    cmd.Parameters.AddWithValue("@ChequeNumber", objDto.ChequeNumber);
                    cmd.Parameters.AddWithValue("@ChequeDate", objDto.ChequeDate);
                }
                cmd.Parameters.AddWithValue("@Amount", objDto.TotalAmount);
                if (objDto.TransactionMode != "C")
                {
                    cmd.Parameters.AddWithValue("@BankEntryId", objDto.BankEntryId);
                }

                cmd.Parameters.AddWithValue("@Narration", objDto.Narration);
                cmd.Parameters.AddWithValue("@UserId", userId);
                cmd.Parameters.AddWithValue("@GroupId", groupId);
                cmd.Parameters.AddWithValue("@TransactionXML", memberReceiptTranxml);
                cmd.Parameters.AddWithValue("@MemberId", objDto.MemberId);


                SqlParameter prmAccountMasterId = new SqlParameter("@AccountMasterId", SqlDbType.Int);
                prmAccountMasterId.Value     = objDto.AccountMasterID;
                prmAccountMasterId.Direction = ParameterDirection.InputOutput;
                cmd.Parameters.Add(prmAccountMasterId);

                SqlParameter prmVcoherNumber = new SqlParameter("@VoucherNumber", SqlDbType.VarChar, 32);
                prmVcoherNumber.Value     = objDto.VoucherNumber;
                prmVcoherNumber.Direction = ParameterDirection.InputOutput;
                cmd.Parameters.Add(prmVcoherNumber);
                con.Open();
                cmd.ExecuteNonQuery();

                res.ObjectId   = Convert.ToInt32(prmAccountMasterId.Value);
                res.ObjectCode = prmVcoherNumber.Value.ToString();
                con.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(res);
        }
Пример #5
0
        public GroupMemberReceiptDto EditGroupMemberReceipt(int AccountMasterId)
        {
            SqlConnection con = new SqlConnection(DBConstants.MFIS_CS);
            SqlCommand    cmd = new SqlCommand(ProcNames.uspGetGroupMemberReceiptByAccountMasterId, con);

            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@AccountMasterId", AccountMasterId);
            con.Open();
            SqlDataReader         dr       = cmd.ExecuteReader();
            GroupMemberReceiptDto recptDto = null;

            if (dr.Read())
            {
                recptDto = new GroupMemberReceiptDto();
                recptDto.AccountMasterID  = AccountMasterId;
                recptDto.TransactionDate  = Convert.ToDateTime(dr["TransactionDate"]);
                recptDto.TransactionMode  = Convert.ToString(dr["TransactionMode"]);
                recptDto.VoucherNumber    = Convert.ToString(dr["VoucherNumber"]);
                recptDto.VoucherRefNumber = Convert.ToString(dr["VoucherRefNumber"]);
                recptDto.TotalAmount      = Convert.ToDecimal(dr["Amount"]);
                recptDto.CollectionAgent  = Convert.ToInt32(dr["EmployeeID"]);
                recptDto.MemberId         = Convert.ToInt32(dr["MemberId"]);
                if (!Convert.IsDBNull(dr["ChequeDate"]))
                {
                    recptDto.ChequeDate = Convert.ToDateTime(dr["ChequeDate"]);
                }
                recptDto.ChequeNumber = Convert.ToString(dr["ChequeNumber"]);
                if (!Convert.IsDBNull(dr["BankAccount"]))
                {
                    recptDto.BankEntryId = Convert.ToInt32(dr["BankAccount"]);
                }
                recptDto.Narration = Convert.ToString(dr["Narration"]);
            }
            if (dr.NextResult())
            {
                recptDto.Transactions = new List <GroupMemberReceiptTranDto>();
                GroupMemberReceiptTranDto objTran = null;
                while (dr.Read())
                {
                    objTran             = new GroupMemberReceiptTranDto();
                    objTran.SLAccountId = Convert.ToInt32(dr["SLAHId"]);
                    if (dr["SubAhId"] != DBNull.Value)
                    {
                        objTran.SubAhId = Convert.ToInt32(dr["SubAhId"]);
                    }
                    objTran.ReferenceNumber = Convert.ToString(dr["ReferenceNumber"]);
                    objTran.Amount          = Convert.ToDecimal(dr["CrAmount"]);
                    objTran.GLAccount       = Convert.ToString(dr["GLAHName"]);
                    objTran.SLAccount       = Convert.ToString(dr["SLAHName"]);

                    recptDto.Transactions.Add(objTran);
                }
            }
            return(recptDto);
        }
        public ActionResult CreateGroupMemberReceipt(string Id)
        {
            GroupMemberReceiptDto grpMemberReceiptDto = new GroupMemberReceiptDto();
            int AccountMasterId = string.IsNullOrEmpty(Id.DecryptString()) ? default(int) : Convert.ToInt32(Id.DecryptString());

            if (AccountMasterId > 0)
            {
                //edit
                grpMemberReceiptDto         = _groupMemberReceiptService.EditGroupMemberReceipt(AccountMasterId);
                ViewBag.AccountHeadsTeplate = grpMemberReceiptDto.Transactions;
            }
            else
            {
                //add
                List <GroupMemberReceiptTranDto> lstgrpmbrrptTemplate = new List <GroupMemberReceiptTranDto>();
                lstgrpmbrrptTemplate        = _groupMemberReceiptService.GetMemberReceiptTemplate();
                ViewBag.AccountHeadsTeplate = lstgrpmbrrptTemplate;
            }

            LoadMemberReceiptDropDowns();

            return(View(grpMemberReceiptDto));
        }
        public GroupMemberReceiptDto EditGroupMemberReceipt(int AccountMasterId)
        {
            GroupMemberReceiptDto groupMemberReceiptDto = _groupMemberReceiptDal.EditGroupMemberReceipt(AccountMasterId);

            return(groupMemberReceiptDto);
        }
 public GroupMemberReceiptService()
 {
     _groupMemberReceiptDal = new GroupMemberReceiptDal();
     _groupMemberReceiptDto = new GroupMemberReceiptDto();
     _dbContext             = new MFISDBContext();
 }
        public ActionResult CreateGroupMemberReceipt(FormCollection form)
        {
            GroupMemberReceiptDto _grpMbrRecptDto = new GroupMemberReceiptDto();

            try
            {
                ViewBag.LockStatus = GroupInfo.LockStatus;
                _grpMbrRecptDto.AccountMasterID = Convert.ToInt32(Request.Form["AccountMasterID"]);
                _grpMbrRecptDto.TransactionMode = Convert.ToString(Request.Form["TransactionMode"]);

                string   tranDate   = _grpMbrRecptDto.TransactionMode == "C" ? Request.Form["TransactionDate"] : Request.Form["txtTransactionDate"];
                DateTime dtTranDate = tranDate.ConvertToDateTime();
                _grpMbrRecptDto.TransactionDate = dtTranDate;

                _grpMbrRecptDto.VoucherRefNumber = Convert.ToString(Request.Form["VoucherRefNumber"]);
                _grpMbrRecptDto.CollectionAgent  = Convert.ToInt32(Request.Form["CollectionAgent"]);

                if (_grpMbrRecptDto.TransactionMode == "BC")
                {
                    _grpMbrRecptDto.ChequeNumber = Convert.ToString(Request.Form["ChequeNumber"]);
                    _grpMbrRecptDto.ChequeDate   = Request.Form["ChequeDate"].ConvertToDateTime();
                }
                _grpMbrRecptDto.TotalAmount = Convert.ToDecimal(Request.Form["hdnTotalAmount"]);
                if (_grpMbrRecptDto.TransactionMode != "C")
                {
                    _grpMbrRecptDto.BankEntryId = Convert.ToInt32(Request.Form["BankEntryId"]);
                }
                _grpMbrRecptDto.MemberId  = Convert.ToInt32(Request.Form["MemberId"]);
                _grpMbrRecptDto.Narration = Convert.ToString(Request.Form["Narration"]);

                //Transactions Read
                _grpMbrRecptDto.Transactions = new List <GroupMemberReceiptTranDto>();

                int maxCount = Convert.ToInt32(Request.Form["hdnMaxTranCount"]);
                GroupMemberReceiptTranDto objTran = null;
                for (int index = 1; index < maxCount; index++)
                {
                    objTran                 = new GroupMemberReceiptTranDto();
                    objTran.SLAccountId     = Convert.ToInt32(Request.Form["hdnSlAccountID_" + index]);
                    objTran.GLAccount       = Convert.ToString(Request.Form["hdnGlAccount_" + index]);
                    objTran.SLAccount       = Convert.ToString(Request.Form["hdnSlAccount_" + index]);
                    objTran.ReferenceNumber = Convert.ToString(Request.Form["hdnRefNumber_" + index]);
                    decimal expectedDemand = default(decimal);
                    decimal.TryParse(Request.Form["hdnexpectedamount_" + index], out expectedDemand);
                    int subAhId = default(int);
                    int.TryParse(Request.Form["hdnSubAHID_" + index], out subAhId);
                    objTran.SubAhId = subAhId;

                    objTran.Amount = Convert.ToDecimal(Request.Form["CrAmount_" + index]);
                    if (objTran.SLAccount.ToUpper().Contains("SERVICE COST") && objTran.Amount < expectedDemand)
                    {
                        objTran.InterestDue = expectedDemand - objTran.Amount;
                    }
                    if (objTran.SLAccount.ToUpper().Contains("LOAN") && objTran.Amount < expectedDemand && !(objTran.SLAccount.ToUpper().Contains("SERVICE COST")))
                    {
                        objTran.PrincipleDue = expectedDemand - objTran.Amount;
                    }
                    _grpMbrRecptDto.Transactions.Add(objTran);
                }

                //Save
                int       GroupId   = GroupInfo.GroupID;
                ResultDto resultDto = _groupMemberReceiptService.AddUpdateMemberReceipt(_grpMbrRecptDto, UserInfo.UserID, GroupId);
                _grpMbrRecptDto.VoucherNumber   = resultDto.ObjectCode;
                _grpMbrRecptDto.AccountMasterID = resultDto.ObjectId;

                LoadMemberReceiptDropDowns();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(View(_grpMbrRecptDto));
        }