Пример #1
0
        public JsonResult VerifyBeneficiaryAccount(string id)
        {
            try
            {
                const string agentId    = "395Y36706";
                var          db         = new DBContext();
                var          Mem_IDval  = long.Parse(CurrentMerchant.MEM_ID.ToString());
                var          remitterid = Session["MerchantDMRId"].ToString();
                long         benid      = long.Parse(id);
                var          benefiVal  = db.TBL_REMITTER_BENEFICIARY_INFO.Where(x => x.ID == benid).FirstOrDefault();

                var getremitterinfo = (from benef in db.TBL_REMITTER_BENEFICIARY_INFO
                                       join rem in db.TBL_DMR_REMITTER_INFORMATION on benef.RemitterID equals rem.RemitterID
                                       select new
                {
                    mobileno = rem.MobileNo
                }).FirstOrDefault();

                var PaymentValidation = MoneyTransferAPI.BeneficiaryAccountVerification(getremitterinfo.mobileno, benefiVal.Account.ToString(), benefiVal.IFSC.ToString(), agentId);
                //var PaymentValidation = MoneyTransferAPI.BeneficiaryDelete(benefiVal.RemitterID, benefiVal.BeneficiaryID);

                string errorcode = string.IsNullOrEmpty(PaymentValidation.statuscode.Value) ? PaymentValidation.statuscode.Value : PaymentValidation.statuscode.Value;//res.res_code;
                //if (PaymentValidation != "Unknown Error")
                //{
                //if (PaymentValidation.statuscode == "TXN")
                if (errorcode == "TXN")
                {
                    var ipat_id             = benefiVal.RemitterID;
                    var Benificiary_id      = benefiVal.BeneficiaryID;
                    var RemitterId          = ipat_id;
                    var msg                 = PaymentValidation.status.Value;
                    var msgcode             = PaymentValidation.statuscode.Value;
                    var Verification_Status = PaymentValidation.data.verification_status.Value;
                    var bankrefno           = PaymentValidation.data.bankrefno.Value;
                    var ipay_id             = PaymentValidation.data.ipay_id.Value;

                    var updatebenefstatus = db.TBL_REMITTER_BENEFICIARY_INFO.Where(x => x.ID == benid).FirstOrDefault();
                    if (updatebenefstatus != null)
                    {
                        updatebenefstatus.Verification_Status = Verification_Status;
                        updatebenefstatus.BankRefNo           = bankrefno;
                        updatebenefstatus.Ipay_Id             = ipay_id;
                        db.Entry(updatebenefstatus).State     = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                    }

                    decimal Trans_Amt = 1;
                    #region Retailer Commission
                    var membtype = (from mm in db.TBL_MASTER_MEMBER
                                    join
                                    rm in db.TBL_MASTER_MEMBER_ROLE on mm.MEMBER_ROLE equals rm.ROLE_ID
                                    where mm.MEM_ID == CurrentMerchant.MEM_ID
                                    select new
                    {
                        RoleId = mm.MEMBER_ROLE,
                        roleName = rm.ROLE_NAME,
                        Amount = mm.BALANCE
                    }).FirstOrDefault();
                    var tbl_account = db.TBL_ACCOUNTS.Where(z => z.MEM_ID == CurrentMerchant.MEM_ID).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                    if (tbl_account != null)
                    {
                        decimal      ClosingAmt = tbl_account.CLOSING;
                        decimal      SubAmt     = ClosingAmt - Trans_Amt;
                        TBL_ACCOUNTS objaccnt   = new TBL_ACCOUNTS()
                        {
                            API_ID           = 0,
                            MEM_ID           = CurrentMerchant.MEM_ID,
                            MEMBER_TYPE      = membtype.roleName,
                            TRANSACTION_TYPE = "Verification",
                            TRANSACTION_DATE = System.DateTime.Now,
                            TRANSACTION_TIME = DateTime.Now,
                            DR_CR            = "DR",
                            AMOUNT           = Trans_Amt,
                            NARRATION        = "Account Verification",
                            OPENING          = ClosingAmt,
                            CLOSING          = SubAmt,
                            REC_NO           = 0,
                            COMM_AMT         = 0
                        };
                        db.TBL_ACCOUNTS.Add(objaccnt);
                        db.SaveChanges();
                    }
                    #endregion
                    //return Json(new { remitterid = remitterid, beneficiaryid = benefiVal.BeneficiaryID, status = msg, msgcode = msgcode, idval = id });
                    return(Json(new { Result = "true" }));
                }
                else
                {
                    return(Json(new { Result = "fail" }));
                    //return Json(new { remitterid = "", beneficiaryid = "", status = PaymentValidation.status.Value, msgcode = PaymentValidation.statuscode.Value });
                    ///return Json(PaymentValidation.status);
                }
            }
            catch (Exception ex)
            {
                return(Json(ex.InnerException.InnerException.ToString()));

                throw ex;
            }
        }
Пример #2
0
        public JsonResult CalculateGSTAmount(string MonthID = "", string ServiceName = "", string Year = "")
        {
            initpage();
            if (MonthID != null)
            {
                var db       = new DBContext();
                int Monthval = 0;
                int.TryParse(MonthID, out Monthval);

                long serviceid = 0;
                long.TryParse(ServiceName, out serviceid);

                var serviceId = db.TBL_SERVICE_PROVIDERS.Where(x => x.ID == serviceid).Select(c => c.SERVICE_NAME).FirstOrDefault();

                //var GSTValu12e = (from x in db.TBL_ACCOUNTS
                //                where x.MEM_ID == CurrentMerchant.MEM_ID && x.TRANSACTION_DATE.Month == Monthval && x.DR_CR == "CR" && x.TRANSACTION_TYPE == "Mobile Recharge" && x.SERVICE_ID == serviceid && x.MEMBER_TYPE == "RETAILER" && x.NARRATION == "Commission"
                //                select new
                //                {
                //                    MEM_ID = x.MEM_ID,
                //                    TRANSACTION_TYPE = x.TRANSACTION_TYPE,
                //                    TRANSACTION_DATE = x.TRANSACTION_DATE,
                //                    AMOUNT = x.AMOUNT,
                //                    GST = x.GST,
                //                    GSTPERCENTAGE = x.GST_PERCENTAGE,
                //                    TDS = x.TDS,
                //                    TDSPERCENTAGE = x.TDS_PERCENTAGE,
                //                }).AsEnumerable().Select(z => new TBL_ACCOUNTS
                //                {
                //                    MEM_ID = z.MEM_ID,
                //                    TRANSACTION_TYPE = z.TRANSACTION_TYPE,
                //                    timevalue = z.TRANSACTION_DATE.ToString(),
                //                    //TRANSACTION_DATE = z.TRANSACTION_DATE,
                //                    AMOUNT = z.AMOUNT,
                //                    GST = z.GST,
                //                    GST_PERCENTAGE = z.GSTPERCENTAGE,
                //                    TDS = z.TDS,
                //                    TDS_PERCENTAGE = z.TDSPERCENTAGE

                //                }).ToList().Distinct();
                var GSTValue = (from x in db.TBL_ACCOUNTS
                                where x.MEM_ID == CurrentMerchant.MEM_ID && x.TRANSACTION_DATE.Month == Monthval && x.DR_CR == "CR" && x.TRANSACTION_TYPE == "Mobile Recharge" && x.SERVICE_ID == serviceid && x.MEMBER_TYPE == "RETAILER" && x.NARRATION == "Commission"
                                select new
                {
                    Operator = db.TBL_SERVICE_PROVIDERS.Where(d => d.ID == x.SERVICE_ID).Select(c => c.SERVICE_NAME).FirstOrDefault(),
                    COMMISSIONAMT = x.COMM_AMT
                }).Sum(c => (decimal?)c.COMMISSIONAMT) ?? 0;

                var getListGSTComm = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == CurrentMerchant.MEM_ID && x.TRANSACTION_DATE.Month == Monthval && x.DR_CR == "CR" && x.TRANSACTION_TYPE == "Mobile Recharge" && x.SERVICE_ID == serviceid && x.MEMBER_TYPE == "RETAILER" && x.NARRATION == "Commission").FirstOrDefault();

                TBL_ACCOUNTS objval = new TBL_ACCOUNTS()
                {
                    MEMBER_TYPE    = serviceId,
                    COMM_AMT       = GSTValue,
                    timevalue      = DateTime.Now.ToString("dd-MM-yyyy"),
                    GST_PERCENTAGE = 18
                };


                return(Json(objval, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json("There is no GST Available in this month", JsonRequestBehavior.AllowGet));
            }
        }
Пример #3
0
        public async Task <ActionResult> Index(TBL_BALANCE_TRANSFER_LOGS obj_bal)
        {
            try
            {
                var db = new DBContext();
                var checkAvailableMember = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == obj_bal.FROM_MEMBER).FirstOrDefault();
                if (checkAvailableMember != null)
                {
                    var obj = obj_bal;
                    //var mem_id = Request.Form["memberDomainId"].ToString();
                    long memberid = long.Parse(obj_bal.FROM_MEMBER.ToString());

                    decimal closingamt = 0;
                    decimal Openingamt = 0;
                    decimal transamt   = 0;
                    decimal AddAmount  = 0;
                    var     amtval     = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == memberid).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                    if (amtval != null)
                    {
                        Openingamt = amtval.OPENING;
                        closingamt = amtval.CLOSING;
                        transamt   = amtval.AMOUNT;
                        if (obj_bal.PAYMENT_METHOD == "CR")
                        {
                            AddAmount = decimal.Parse(obj_bal.AMOUNT.ToString()) + closingamt;
                        }
                        else
                        {
                            AddAmount = closingamt - decimal.Parse(obj_bal.AMOUNT.ToString());
                        }
                    }
                    else
                    {
                        closingamt = obj_bal.AMOUNT;
                        AddAmount  = obj_bal.AMOUNT;
                    }


                    TBL_ACCOUNTS objaccnt = new TBL_ACCOUNTS()
                    {
                        API_ID           = 0,
                        MEM_ID           = memberid,
                        MEMBER_TYPE      = "RETAILER",
                        TRANSACTION_TYPE = "Cash Deposit in bank",
                        TRANSACTION_DATE = DateTime.Now,
                        TRANSACTION_TIME = DateTime.Now,
                        DR_CR            = obj_bal.PAYMENT_METHOD,
                        AMOUNT           = obj_bal.AMOUNT,
                        NARRATION        = obj_bal.TRANSACTION_DETAILS,
                        CLOSING          = AddAmount,
                        OPENING          = closingamt,
                        REC_NO           = 0,
                        COMM_AMT         = 0
                    };
                    db.TBL_ACCOUNTS.Add(objaccnt);
                    db.SaveChanges();
                    var memberlist = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == memberid).FirstOrDefaultAsync();

                    memberlist.BALANCE         = AddAmount;
                    db.Entry(memberlist).State = System.Data.Entity.EntityState.Modified;
                    await db.SaveChangesAsync();

                    #region For WhiteLevel

                    decimal WLOpening  = 0;
                    decimal WLClosing  = 0;
                    decimal WLAmtvalue = 0;
                    var     tbl_accnt  = await db.TBL_ACCOUNTS.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefaultAsync();

                    if (tbl_accnt != null)
                    {
                        WLOpening = tbl_accnt.OPENING;
                        WLClosing = tbl_accnt.CLOSING;
                        if (obj_bal.PAYMENT_METHOD == "CR")
                        {
                            WLAmtvalue = WLClosing - decimal.Parse(obj_bal.AMOUNT.ToString());
                        }
                        else
                        {
                            WLAmtvalue = WLClosing + decimal.Parse(obj_bal.AMOUNT.ToString());
                        }
                        TBL_ACCOUNTS objWL = new TBL_ACCOUNTS()
                        {
                            API_ID           = 0,
                            MEM_ID           = MemberCurrentUser.MEM_ID,
                            MEMBER_TYPE      = "DISTRIBUTOR",
                            TRANSACTION_TYPE = "Cash Deposit in bank",
                            TRANSACTION_DATE = DateTime.Now,
                            TRANSACTION_TIME = DateTime.Now,
                            DR_CR            = obj_bal.PAYMENT_METHOD,
                            AMOUNT           = obj_bal.AMOUNT,
                            NARRATION        = obj_bal.TRANSACTION_DETAILS,
                            CLOSING          = WLAmtvalue,
                            OPENING          = WLClosing,
                            REC_NO           = 0,
                            COMM_AMT         = 0
                        };
                        db.TBL_ACCOUNTS.Add(objWL);
                        db.SaveChanges();
                        var WLBalance = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).FirstOrDefaultAsync();

                        WLBalance.BALANCE         = WLAmtvalue;
                        db.Entry(WLBalance).State = System.Data.Entity.EntityState.Modified;
                        await db.SaveChangesAsync();
                    }
                    #endregion

                    return(View("DisplayAccount"));
                }
                else
                {
                    ViewBag.msg = "Please provide valid merchant user name";
                    return(View("Index"));
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Пример #4
0
        public async Task <JsonResult> POSTApplyIssueDebitCreditNote(TBL_DEBIT_CREDIT_SETTIING objDRCR)
        {
            initpage();////
            var db = new DBContext();

            using (System.Data.Entity.DbContextTransaction ContextTransaction = db.Database.BeginTransaction())
            {
                try
                {
                    string COrelationID = Settings.GetUniqueKey(MemberCurrentUser.MEM_ID.ToString());
                    long   MemberType   = 0;
                    long.TryParse(objDRCR.MEM_TYPE.ToString(), out MemberType);
                    long    Dist_Id      = 0;
                    long    Mer_Id       = 0;
                    long    DR_CR_ISSUED = 0;
                    string  MEM_ROLE     = string.Empty;
                    decimal TDS_Val      = 0;
                    decimal.TryParse(objDRCR.TDS_AMOUNT.ToString(), out TDS_Val);
                    decimal DeductTDS  = 0;
                    decimal Remain_AMt = 0;
                    decimal Trans_Amt  = 0;
                    decimal SGST       = 0;
                    decimal CGST       = 0;
                    decimal IGST       = 0;
                    decimal SGST_VAL   = 0;
                    decimal CGST_VAL   = 0;
                    decimal IGST_VAL   = 0;
                    decimal TotalGST   = 0;
                    if (MemberType == 4)
                    {
                        MEM_ROLE = "DISTRIBUTOR";
                        long.TryParse(objDRCR.DIST_ID.ToString(), out DR_CR_ISSUED);
                        Dist_Id = DR_CR_ISSUED;
                    }
                    else
                    {
                        MEM_ROLE = "MERCHANT";
                        long.TryParse(objDRCR.MER_ID.ToString(), out DR_CR_ISSUED);
                        long.TryParse(objDRCR.DIST_ID.ToString(), out Dist_Id);
                    }
                    if (objDRCR.MER_ID == null)
                    {
                        Mer_Id = 0;
                    }
                    else
                    {
                        long.TryParse(objDRCR.MER_ID.ToString(), out Mer_Id);
                    }

                    var checkAvailableMember = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == DR_CR_ISSUED).FirstOrDefault();
                    if (checkAvailableMember != null)
                    {
                        var obj = objDRCR;
                        //var mem_id = Request.Form["memberDomainId"].ToString();
                        long memberid = DR_CR_ISSUED;

                        decimal closingamt = 0;
                        decimal Openingamt = 0;
                        decimal transamt   = 0;
                        decimal AddAmount  = 0;
                        decimal SubAmt     = 0;
                        //var amtval = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == memberid).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                        var amtval = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == memberid).FirstOrDefault();
                        if (amtval != null)
                        {
                            var MemAcnt = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == memberid).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                            if (MemAcnt != null)
                            {
                                Openingamt = MemAcnt.OPENING;
                                closingamt = MemAcnt.CLOSING;
                                transamt   = MemAcnt.AMOUNT;
                            }
                            else
                            {
                                Openingamt = 0;
                                closingamt = 0;
                                transamt   = 0;
                            }
                            decimal.TryParse(objDRCR.TRANS_AMOUNT.ToString(), out Trans_Amt);
                            if (objDRCR.TDS_APPLICABLE_VALUE == "1")
                            {
                                DeductTDS  = (Trans_Amt * TDS_Val) / 100;
                                Remain_AMt = Trans_Amt - DeductTDS;
                            }
                            else
                            {
                                DeductTDS  = 0;
                                Remain_AMt = Trans_Amt - DeductTDS;
                            }
                            if (objDRCR.TDS_APPLICABLE_VALUE == "1")
                            {
                                var GetGST = db.TBL_STATES.Where(x => x.STATEID == checkAvailableMember.STATE_ID).FirstOrDefault();
                                if (GetGST != null)
                                {
                                    decimal.TryParse(GetGST.SGST.ToString(), out SGST);
                                    decimal.TryParse(GetGST.CGST.ToString(), out CGST);
                                    decimal.TryParse(GetGST.IGST.ToString(), out IGST);
                                    SGST_VAL = (Remain_AMt * SGST) / 100;
                                    CGST_VAL = (Remain_AMt * CGST) / 100;
                                    IGST_VAL = (Remain_AMt * IGST) / 100;
                                    TotalGST = SGST_VAL + CGST_VAL + IGST_VAL;
                                }
                            }
                            else
                            {
                                SGST     = 0;
                                CGST     = 0;
                                IGST     = 0;
                                SGST_VAL = 0;
                                CGST_VAL = 0;
                                IGST_VAL = 0;
                                TotalGST = SGST_VAL + CGST_VAL + IGST_VAL;
                            }
                            if (objDRCR.TRANS_TYPE == "CR")
                            {
                                //decimal.TryParse(objDRCR.TRANS_AMOUNT.ToString(), out SubAmt);
                                decimal.TryParse(Remain_AMt.ToString(), out SubAmt);

                                AddAmount = SubAmt + closingamt;
                            }
                            else
                            {
                                //decimal.TryParse(objDRCR.TRANS_AMOUNT.ToString(), out SubAmt);
                                decimal.TryParse(Remain_AMt.ToString(), out SubAmt);

                                AddAmount = Convert.ToDecimal(closingamt - SubAmt);
                            }
                        }
                        TBL_ACCOUNTS objaccnt = new TBL_ACCOUNTS()
                        {
                            API_ID           = 0,
                            MEM_ID           = memberid,
                            MEMBER_TYPE      = MEM_ROLE,
                            TRANSACTION_TYPE = "Cash Deposit in bank",
                            TRANSACTION_DATE = DateTime.Now,
                            TRANSACTION_TIME = DateTime.Now,
                            DR_CR            = objDRCR.TRANS_TYPE,
                            AMOUNT           = objDRCR.TRANS_AMOUNT,
                            NARRATION        = objDRCR.TRANS_DETAILS,
                            CLOSING          = AddAmount,
                            OPENING          = closingamt,
                            REC_NO           = 0,
                            COMM_AMT         = 0,
                            GST          = (float)TotalGST,
                            TDS          = (float)DeductTDS,
                            SERVICE_ID   = 0,
                            CORELATIONID = COrelationID,
                        };
                        db.TBL_ACCOUNTS.Add(objaccnt);
                        db.SaveChanges();
                        var memberlist = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == memberid).FirstOrDefaultAsync();

                        memberlist.BALANCE         = AddAmount;
                        db.Entry(memberlist).State = System.Data.Entity.EntityState.Modified;
                        await db.SaveChangesAsync();

                        bool IsGstApply = false;
                        if (objDRCR.GST_APPLICABLE_VALUE == "1")
                        {
                            IsGstApply = true;
                        }
                        else
                        {
                            IsGstApply = false;
                        }
                        bool IsTdsApply = false;
                        if (objDRCR.TDS_APPLICABLE_VALUE == "1")
                        {
                            IsTdsApply = true;
                        }
                        else
                        {
                            IsTdsApply = false;
                        }
                        TBL_DEBIT_CREDIT_SETTIING ObjDRCRval = new TBL_DEBIT_CREDIT_SETTIING()
                        {
                            CORELLATION_ID  = COrelationID,
                            MER_ID          = Mer_Id,
                            DIST_ID         = Dist_Id,
                            WLP_ID          = MemberCurrentUser.MEM_ID,
                            MEM_TYPE        = objDRCR.MEM_TYPE,
                            TRANS_AGAINST   = DR_CR_ISSUED,
                            TRANS_ISSUED_BY = MemberCurrentUser.MEM_ID,
                            TRANS_DONE_BY   = MemberCurrentUser.MEM_ID,
                            TRANS_TYPE      = objDRCR.TRANS_TYPE,
                            TRANS_AMOUNT    = objDRCR.TRANS_AMOUNT,
                            TRANS_REF_NO    = objDRCR.TRANS_REF_NO,
                            TRANS_DETAILS   = objDRCR.TRANS_DETAILS,
                            TRANS_REMARKS   = objDRCR.TRANS_REMARKS,
                            GST_APPLICABLE  = IsGstApply,
                            TDS_APPLICABLE  = IsTdsApply,
                            TDS_PER         = objDRCR.TDS_PER,
                            TDS_AMOUNT      = DeductTDS,
                            TRANS_DATE      = DateTime.Now,
                            STATUS          = true
                        };
                        db.TBL_DEBIT_CREDIT_SETTIING.Add(ObjDRCRval);
                        await db.SaveChangesAsync();

                        ContextTransaction.Commit();

                        //#region For WhiteLevel
                        //decimal WLOpening = 0;
                        //decimal WLClosing = 0;
                        //decimal WLAmtvalue = 0;
                        //string WLP_TranType = string.Empty;
                        //decimal WLPBal = 0;
                        //if (objDRCR.TRANS_TYPE == "CR")
                        //{
                        //    WLP_TranType = "DR";
                        //    WLAmtvalue = objDRCR.TRANS_AMOUNT;
                        //}
                        //else
                        //{
                        //    WLP_TranType = "CR";
                        //    WLAmtvalue = objDRCR.TRANS_AMOUNT;
                        //}
                        //var wlingo = (from x in db.TBL_MASTER_MEMBER
                        //              join y in db.TBL_MASTER_MEMBER_ROLE on x.MEMBER_ROLE equals y.ROLE_ID
                        //              where x.MEM_ID == MemberCurrentUser.MEM_ID
                        //              select new
                        //              {
                        //                  MemberType = y.ROLE_NAME
                        //              }).FirstOrDefault();
                        //var tbl_accnt = await db.TBL_ACCOUNTS.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefaultAsync();
                        //if (tbl_accnt != null)
                        //{
                        //    WLOpening = tbl_accnt.OPENING;
                        //    WLClosing = tbl_accnt.CLOSING;
                        //    if (objDRCR.TRANS_TYPE == "CR")
                        //    {
                        //        WLP_TranType = "DR";
                        //        WLAmtvalue = WLClosing - decimal.Parse(objDRCR.TRANS_AMOUNT.ToString());
                        //    }
                        //    else
                        //    {
                        //        WLP_TranType = "CR";
                        //        WLAmtvalue = WLClosing + decimal.Parse(objDRCR.TRANS_AMOUNT.ToString());
                        //    }
                        //    TBL_ACCOUNTS objWL = new TBL_ACCOUNTS()
                        //    {
                        //        API_ID = 0,
                        //        MEM_ID = MemberCurrentUser.MEM_ID,
                        //        MEMBER_TYPE = wlingo.MemberType,
                        //        TRANSACTION_TYPE = "Cash Deposit in bank",
                        //        TRANSACTION_DATE = DateTime.Now,
                        //        TRANSACTION_TIME = DateTime.Now,
                        //        DR_CR = WLP_TranType,
                        //        AMOUNT = objDRCR.TRANS_AMOUNT,
                        //        NARRATION = objDRCR.TRANS_DETAILS,
                        //        CLOSING = WLAmtvalue,
                        //        OPENING = 0,
                        //        REC_NO = 0,
                        //        COMM_AMT = 0,
                        //        GST = 0,
                        //        TDS = 0,
                        //        SERVICE_ID = 0,
                        //    };
                        //    db.TBL_ACCOUNTS.Add(objWL);
                        //    db.SaveChanges();
                        //    decimal AddWLPBal =0;

                        //    var WLBalance = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).FirstOrDefaultAsync();
                        //    decimal.TryParse(WLBalance.BALANCE.ToString(), out WLPBal);
                        //    if (objDRCR.TRANS_TYPE == "CR")
                        //    {
                        //        AddWLPBal = WLPBal - WLAmtvalue;
                        //    }
                        //    else
                        //    {
                        //        AddWLPBal = WLPBal + WLAmtvalue;
                        //    }
                        //    WLBalance.BALANCE = AddWLPBal;
                        //    db.Entry(WLBalance).State = System.Data.Entity.EntityState.Modified;
                        //    await db.SaveChangesAsync();
                        //}
                        //else
                        //{
                        //    TBL_ACCOUNTS objWL = new TBL_ACCOUNTS()
                        //    {
                        //        API_ID = 0,
                        //        MEM_ID = MemberCurrentUser.MEM_ID,
                        //        MEMBER_TYPE = wlingo.MemberType,
                        //        TRANSACTION_TYPE = "Cash Deposit in bank",
                        //        TRANSACTION_DATE = DateTime.Now,
                        //        TRANSACTION_TIME = DateTime.Now,
                        //        DR_CR = "",
                        //        AMOUNT = objDRCR.TRANS_AMOUNT,
                        //        NARRATION = objDRCR.TRANS_DETAILS,
                        //        CLOSING = WLAmtvalue,
                        //        OPENING = WLClosing,
                        //        REC_NO = 0,
                        //        COMM_AMT = 0,
                        //        GST = 0,
                        //        TDS = 0,
                        //        SERVICE_ID = 0,
                        //    };
                        //    db.TBL_ACCOUNTS.Add(objWL);
                        //    db.SaveChanges();
                        //    decimal AddWLPBal = 0;
                        //    var WLBalance = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).FirstOrDefaultAsync();
                        //    decimal.TryParse(WLBalance.BALANCE.ToString(), out WLPBal);
                        //    if (objDRCR.TRANS_TYPE == "CR")
                        //    {
                        //        AddWLPBal = WLPBal - WLAmtvalue;
                        //    }
                        //    else
                        //    {
                        //        AddWLPBal = WLPBal + WLAmtvalue;
                        //    }
                        //    WLBalance.BALANCE = AddWLPBal;
                        //    db.Entry(WLBalance).State = System.Data.Entity.EntityState.Modified;
                        //    await db.SaveChangesAsync();
                        //}


                        //ContextTransaction.Commit();
                        //#endregion

                        return(Json("Debit Credit Note Issued successfully.", JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        ContextTransaction.Rollback();
                        string Msg = string.Empty;
                        Msg = "Please provide valid super distributor user name";
                        return(Json(Msg, JsonRequestBehavior.AllowGet));
                    }
                }
                catch (Exception ex)
                {
                    string Msg = string.Empty;
                    Msg = "Try After Some Time";
                    return(Json(Msg, JsonRequestBehavior.AllowGet));

                    throw;
                }
            }
            return(Json(""));
        }
Пример #5
0
        //public async Task<ActionResult> Index(TBL_BALANCE_TRANSFER_LOGS obj_bal)
        public async Task <JsonResult> Index(TBL_BALANCE_TRANSFER_LOGS obj_bal)
        {
            initpage();////
            var db = new DBContext();

            using (System.Data.Entity.DbContextTransaction ContextTransaction = db.Database.BeginTransaction())
            {
                try
                {
                    //var checkAvailableMember = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == obj_bal.FROM_MEMBER).FirstOrDefault();
                    var checkAvailableMember = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).FirstOrDefault();
                    //if (checkAvailableMember != null)
                    if (checkAvailableMember != null)
                    {
                        var obj = obj_bal;
                        //var mem_id = Request.Form["memberDomainId"].ToString();
                        long memberid = long.Parse(obj_bal.FROM_MEMBER.ToString());

                        decimal closingamt    = 0;
                        decimal Openingamt    = 0;
                        decimal transamt      = 0;
                        decimal AddAmount     = 0;
                        string  MEWR_TYHPETRN = string.Empty;
                        var     amtval        = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == memberid).OrderByDescending(z => z.ACC_NO).FirstOrDefault();
                        if (amtval != null)
                        {
                            Openingamt = amtval.OPENING;
                            closingamt = amtval.CLOSING;
                            transamt   = amtval.AMOUNT;
                            if (obj_bal.PAYMENT_METHOD == "CR")
                            {
                                AddAmount = decimal.Parse(obj_bal.AMOUNT.ToString()) + closingamt;
                            }
                            else
                            {
                                AddAmount = closingamt - decimal.Parse(obj_bal.AMOUNT.ToString());
                            }
                        }
                        else
                        {
                            Openingamt = 0;
                            closingamt = decimal.Parse(obj_bal.AMOUNT.ToString());
                            AddAmount  = decimal.Parse(obj_bal.AMOUNT.ToString());
                        }
                        TBL_ACCOUNTS objaccnt = new TBL_ACCOUNTS()
                        {
                            API_ID      = 0,
                            MEM_ID      = memberid,
                            MEMBER_TYPE = "RETAILER",
                            //TRANSACTION_TYPE = "Cash Deposit in bank",
                            TRANSACTION_TYPE = obj_bal.TRANSACTION_DETAILS,
                            TRANSACTION_DATE = DateTime.Now,
                            TRANSACTION_TIME = DateTime.Now,
                            DR_CR            = obj_bal.PAYMENT_METHOD,
                            AMOUNT           = obj_bal.AMOUNT,
                            NARRATION        = obj_bal.TRANSACTION_DETAILS,
                            CLOSING          = AddAmount,
                            OPENING          = closingamt,
                            REC_NO           = 0,
                            COMM_AMT         = 0,
                            GST        = 0,
                            TDS        = 0,
                            SERVICE_ID = 0,
                        };
                        db.TBL_ACCOUNTS.Add(objaccnt);
                        //await db.SaveChangesAsync();
                        var memberlist = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == memberid).FirstOrDefaultAsync();

                        memberlist.BALANCE         = AddAmount;
                        db.Entry(memberlist).State = System.Data.Entity.EntityState.Modified;
                        //await db.SaveChangesAsync();

                        #region For WhiteLevel

                        decimal WLOpening  = 0;
                        decimal WLClosing  = 0;
                        decimal WLAmtvalue = 0;
                        var     tbl_accnt  = await db.TBL_ACCOUNTS.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).OrderByDescending(z => z.ACC_NO).FirstOrDefaultAsync();

                        if (tbl_accnt != null)
                        {
                            string trasftyoe = string.Empty;
                            WLOpening = tbl_accnt.OPENING;
                            WLClosing = tbl_accnt.CLOSING;
                            if (obj_bal.PAYMENT_METHOD == "CR")
                            {
                                trasftyoe  = "DR";
                                WLAmtvalue = WLClosing - decimal.Parse(obj_bal.AMOUNT.ToString());
                            }
                            else
                            {
                                trasftyoe  = "CR";
                                WLAmtvalue = WLClosing + decimal.Parse(obj_bal.AMOUNT.ToString());
                            }
                            TBL_ACCOUNTS objWL = new TBL_ACCOUNTS()
                            {
                                API_ID      = 0,
                                MEM_ID      = MemberCurrentUser.MEM_ID,
                                MEMBER_TYPE = "DISTRIBUTOR",
                                //TRANSACTION_TYPE = "Cash Deposit in bank",
                                TRANSACTION_TYPE = obj_bal.TRANSACTION_DETAILS,
                                TRANSACTION_DATE = DateTime.Now,
                                TRANSACTION_TIME = DateTime.Now,
                                DR_CR            = trasftyoe,
                                AMOUNT           = obj_bal.AMOUNT,
                                NARRATION        = obj_bal.TRANSACTION_DETAILS,
                                CLOSING          = WLAmtvalue,
                                OPENING          = WLClosing,
                                REC_NO           = 0,
                                COMM_AMT         = 0,
                                GST        = 0,
                                TDS        = 0,
                                SERVICE_ID = 0,
                            };
                            db.TBL_ACCOUNTS.Add(objWL);
                            //await db.SaveChangesAsync();
                            var WLBalance = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).FirstOrDefaultAsync();

                            WLBalance.BALANCE         = WLAmtvalue;
                            db.Entry(WLBalance).State = System.Data.Entity.EntityState.Modified;
                            await db.SaveChangesAsync();
                        }
                        ContextTransaction.Commit();
                        #endregion

                        //return View("DisplayAccount");
                        return(Json("Manual Balance Transfer done successfully.", JsonRequestBehavior.AllowGet));
                    }
                    else
                    {
                        //ViewBag.msg = "Please provide valid merchant user name";
                        //return View("Index");
                        return(Json("Please contact to your administrator.", JsonRequestBehavior.AllowGet));
                    }
                }
                catch (Exception ex)
                {
                    ContextTransaction.Rollback();
                    throw ex;
                }
            }
        }
        public async Task <JsonResult> PostCREDITBALANCE(MemberCreditBalanceModel objCredit)
        {
            var DBcon = new DBContext();

            using (System.Data.Entity.DbContextTransaction ContextTransaction = DBcon.Database.BeginTransaction())
            {
                try
                {
                    var     MerberName        = DBcon.TBL_MASTER_MEMBER.FirstOrDefault(x => x.MEM_ID == objCredit.FROM_MEM_ID);
                    var     TDSVal            = DBcon.TBL_TAX_MASTERS.FirstOrDefault(x => x.SLN == 2).TAX_VALUE;
                    string  COrelationID      = Settings.GetUniqueKey(MemberCurrentUser.MEM_ID.ToString());
                    var     member_Role       = DBcon.TBL_MASTER_MEMBER_ROLE.FirstOrDefault(x => x.ROLE_ID == objCredit.MEMBER_ROLE).ROLE_NAME;
                    decimal TdsVal            = 0;
                    decimal GstVal            = 0;
                    decimal TotalGST          = 0;
                    decimal TDS_Amount        = 0;
                    decimal GST_Amount        = 0;
                    decimal TotalCreditAmt    = 0;
                    decimal CreditAmtWhithTDS = 0;
                    decimal AddMainBalance    = 0;
                    decimal UpdateMainBalance = 0;
                    decimal.TryParse(TDSVal.ToString(), out TdsVal);
                    if (objCredit.CREDIT_TYPE == "DR")
                    {
                        var GetGSTVAlue = DBcon.TBL_STATES.FirstOrDefault(x => x.STATEID == MerberName.STATE_ID);
                        TotalGST = GetGSTVAlue.SGST + GetGSTVAlue.IGST + GetGSTVAlue.CGST;
                        decimal.TryParse(TotalGST.ToString(), out GstVal);
                        if (objCredit.GSTAPPLY == "Yes")
                        {
                            GST_Amount     = ((objCredit.CREDIT_AMOUNT) * TotalGST) / 100;
                            TotalCreditAmt = objCredit.CREDIT_AMOUNT + GST_Amount;
                        }
                        else
                        {
                            GST_Amount     = 0;
                            TotalCreditAmt = objCredit.CREDIT_AMOUNT + GST_Amount;
                        }
                    }
                    else
                    {
                        GST_Amount     = 0;
                        TotalCreditAmt = objCredit.CREDIT_AMOUNT + GST_Amount;
                    }
                    if (objCredit.TDSAPPLY == "Yes")
                    {
                        TDS_Amount        = ((objCredit.CREDIT_AMOUNT) * TdsVal) / 100;
                        CreditAmtWhithTDS = objCredit.CREDIT_AMOUNT - TDS_Amount;
                        TotalCreditAmt    = objCredit.CREDIT_AMOUNT + GST_Amount - TDS_Amount;
                    }
                    else
                    {
                        TDS_Amount        = 0;
                        CreditAmtWhithTDS = objCredit.CREDIT_AMOUNT - TDS_Amount;
                        TotalCreditAmt    = objCredit.CREDIT_AMOUNT + GST_Amount - TDS_Amount;
                    }
                    AddMainBalance = Convert.ToDecimal(MerberName.BALANCE);
                    if (objCredit.CREDIT_TYPE == "DR")
                    {
                        UpdateMainBalance = AddMainBalance - TotalCreditAmt;
                    }
                    else
                    {
                        UpdateMainBalance = AddMainBalance + TotalCreditAmt;
                    }
                    TBL_CREDIT_BALANCE_DISTRIBUTION objcr = new TBL_CREDIT_BALANCE_DISTRIBUTION()
                    {
                        TO_MEM_ID   = MemberCurrentUser.MEM_ID,
                        FROM_MEM_ID = objCredit.FROM_MEM_ID,
                        MEMBER_ROLE = objCredit.MEMBER_ROLE,
                        CREDIT_DATE = DateTime.Now,
                        CREDIT_TYPE = objCredit.CREDIT_TYPE,
                        //CREDIT_AMOUNT = objCredit.CREDIT_AMOUNT,
                        CREDIT_AMOUNT           = TotalCreditAmt,
                        GST_VAL                 = TotalGST,
                        GST_AMOUNT              = GST_Amount,
                        TDS_VAL                 = TdsVal,
                        TDS_AMOUNT              = TDS_Amount,
                        CREDIT_NOTE_DESCRIPTION = objCredit.CREDIT_NOTE_DESCRIPTION,
                        CREDIT_STATUS           = true
                    };
                    DBcon.TBL_CREDIT_BALANCE_DISTRIBUTION.Add(objcr);
                    DBcon.SaveChanges();
                    MerberName.BALANCE            = UpdateMainBalance;
                    DBcon.Entry(MerberName).State = System.Data.Entity.EntityState.Modified;
                    DBcon.SaveChanges();
                    decimal Frm_OpeningAmt    = 0;
                    decimal Frm_ClosingAmt    = 0;
                    decimal Frm_AddOpeningAmt = 0;
                    decimal Frm_AddClosingAmt = 0;
                    //var FromMemberamtobj = DBcon.TBL_ACCOUNTS.Where(x => x.MEM_ID == objCredit.FROM_MEM_ID).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                    var FromMemberamtobj = DBcon.TBL_ACCOUNTS.Where(x => x.MEM_ID == objCredit.FROM_MEM_ID).OrderByDescending(z => z.ACC_NO).FirstOrDefault();
                    if (FromMemberamtobj != null)
                    {
                        decimal.TryParse(FromMemberamtobj.CLOSING.ToString(), out Frm_ClosingAmt);
                        if (objCredit.CREDIT_TYPE == "DR")
                        {
                            Frm_AddClosingAmt = Frm_ClosingAmt - TotalCreditAmt;
                        }
                        else
                        {
                            Frm_AddClosingAmt = Frm_ClosingAmt + TotalCreditAmt;
                        }
                    }
                    else
                    {
                        Frm_AddClosingAmt = TotalCreditAmt;
                    }
                    TBL_ACCOUNTS objacnt = new TBL_ACCOUNTS()
                    {
                        API_ID           = 0,
                        MEM_ID           = objCredit.FROM_MEM_ID,
                        MEMBER_TYPE      = member_Role,
                        TRANSACTION_TYPE = "CREDIT NOTES",
                        TRANSACTION_DATE = DateTime.Now,
                        TRANSACTION_TIME = DateTime.Now,
                        DR_CR            = objCredit.CREDIT_TYPE,
                        AMOUNT           = (decimal)TotalCreditAmt,
                        NARRATION        = objCredit.CREDIT_NOTE_DESCRIPTION,
                        OPENING          = Frm_ClosingAmt,
                        CLOSING          = Frm_AddClosingAmt,
                        REC_NO           = 0,
                        COMM_AMT         = 0,
                        GST          = (double)GST_Amount,
                        TDS          = (double)TDS_Amount,
                        IPAddress    = "",
                        SERVICE_ID   = 0,
                        CORELATIONID = COrelationID
                    };
                    DBcon.TBL_ACCOUNTS.Add(objacnt);
                    DBcon.SaveChanges();
                    ContextTransaction.Commit();
                    //var member_Role = DBcon.TBL_MASTER_MEMBER_ROLE.FirstOrDefault(x => x.ROLE_ID == objCredit.MEMBER_ROLE).ROLE_NAME;
                    return(Json("Credit balance given to " + MerberName.UName + ". "));
                }
                catch (Exception ex)
                {
                    ContextTransaction.Rollback();
                    return(Json("Try again after some time"));

                    throw;
                }
            }
        }
        public async Task <JsonResult> PostCREDITLIMITBALANCE(TBL_CREDIT_LIMIT_BALANCE_DISTRIBUTION objCredit)
        {
            var db = new DBContext();

            using (System.Data.Entity.DbContextTransaction ContextTransaction = db.Database.BeginTransaction())
            {
                try
                {
                    decimal creditlimitBalance        = 0;
                    decimal MainBal                   = 0;
                    decimal creditLimitMainBal        = 0;
                    decimal AddMainBalance            = 0;
                    decimal AddMainCreditLimitBalance = 0;
                    decimal closingAmt                = 0;
                    decimal AddCloingAMt              = 0;
                    decimal.TryParse(objCredit.CREDIT_AMOUNT.ToString(), out creditlimitBalance);
                    string  COrelationID      = Settings.GetUniqueKey(MemberCurrentUser.MEM_ID.ToString());
                    decimal CR_Opening        = 0;
                    decimal CR_Closinging     = 0;
                    decimal ADD_CR_Closinging = 0;
                    var     CreditLimit_Val   = db.TBL_CREDIT_LIMIT_BALANCE_DISTRIBUTION.Where(x => x.FROM_MEM_ID == objCredit.FROM_MEM_ID).OrderByDescending(c => c.SLN).FirstOrDefault();
                    if (CreditLimit_Val != null)
                    {
                        CR_Opening        = (decimal)CreditLimit_Val.CREDIT_OPENING;
                        CR_Closinging     = (decimal)CreditLimit_Val.CREDITCLOSING;
                        ADD_CR_Closinging = CR_Closinging + creditlimitBalance;
                    }
                    else
                    {
                        CR_Closinging     = 0;
                        ADD_CR_Closinging = creditlimitBalance;
                    }
                    TBL_CREDIT_LIMIT_BALANCE_DISTRIBUTION objLimit = new TBL_CREDIT_LIMIT_BALANCE_DISTRIBUTION()
                    {
                        TO_MEM_ID   = MemberCurrentUser.MEM_ID,
                        FROM_MEM_ID = objCredit.FROM_MEM_ID,
                        CREDIT_DATE = DateTime.Now,
                        //CREDIT_AMOUNT = objCredit.CREDIT_AMOUNT,
                        CREDIT_AMOUNT           = creditlimitBalance,
                        GST_VAL                 = 0,
                        GST_AMOUNT              = 0,
                        TDS_VAL                 = 0,
                        TDS_AMOUNT              = 0,
                        CREDIT_NOTE_DESCRIPTION = objCredit.CREDIT_NOTE_DESCRIPTION,
                        CREDIT_STATUS           = true,
                        CREDIT_OPENING          = CR_Closinging,
                        CREDITCLOSING           = ADD_CR_Closinging,
                        CREDIT_TRN_TYPE         = "CR",
                        CORELATIONID            = COrelationID
                    };
                    db.TBL_CREDIT_LIMIT_BALANCE_DISTRIBUTION.Add(objLimit);
                    db.SaveChanges();

                    var memberinfo = db.TBL_MASTER_MEMBER.FirstOrDefault(x => x.MEM_ID == objCredit.FROM_MEM_ID);
                    decimal.TryParse(memberinfo.BALANCE.ToString(), out MainBal);
                    decimal.TryParse(memberinfo.CREDIT_LIMIT.ToString(), out creditLimitMainBal);
                    AddMainBalance             = MainBal + creditlimitBalance;
                    AddMainCreditLimitBalance  = creditLimitMainBal + creditlimitBalance;
                    memberinfo.BALANCE         = AddMainBalance;
                    memberinfo.CREDIT_LIMIT    = AddMainCreditLimitBalance;
                    db.Entry(memberinfo).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();
                    //Accounts
                    //var FromMemberamtobj = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == objCredit.FROM_MEM_ID).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                    var FromMemberamtobj = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == objCredit.FROM_MEM_ID).OrderByDescending(z => z.ACC_NO).FirstOrDefault();
                    if (FromMemberamtobj != null)
                    {
                        decimal.TryParse(FromMemberamtobj.CLOSING.ToString(), out closingAmt);
                        AddCloingAMt = closingAmt + creditlimitBalance;
                    }
                    else
                    {
                        AddCloingAMt = creditlimitBalance;
                        //decimal.TryParse(FromMemberamtobj.CLOSING.ToString(), out closingAmt);
                    }
                    TBL_ACCOUNTS objacnt = new TBL_ACCOUNTS()
                    {
                        API_ID           = 0,
                        MEM_ID           = objCredit.FROM_MEM_ID,
                        MEMBER_TYPE      = "DISTRIBUTOR",
                        TRANSACTION_TYPE = "CREDIT LIMIT",
                        TRANSACTION_DATE = DateTime.Now,
                        TRANSACTION_TIME = DateTime.Now,
                        DR_CR            = "CR",
                        AMOUNT           = creditlimitBalance,
                        NARRATION        = objCredit.CREDIT_NOTE_DESCRIPTION,
                        OPENING          = closingAmt,
                        CLOSING          = AddCloingAMt,
                        REC_NO           = 0,
                        COMM_AMT         = 0,
                        GST          = 0,
                        TDS          = 0,
                        IPAddress    = "",
                        SERVICE_ID   = 0,
                        CORELATIONID = COrelationID
                    };
                    db.TBL_ACCOUNTS.Add(objacnt);
                    db.SaveChanges();
                    ContextTransaction.Commit();
                    return(Json("Credit Limit is given to distributor"));
                }
                catch (Exception ex)
                {
                    ContextTransaction.Rollback();
                    return(Json("Please try again after some time"));

                    throw ex;
                }
            }
        }
Пример #8
0
        public async Task <ActionResult> Index(TBL_BALANCE_TRANSFER_LOGS obj_bal)
        {
            try
            {
                var db    = new DBContext();
                var memid = db.TBL_WHITE_LEVEL_HOSTING_DETAILS.Where(x => x.DOMAIN == obj_bal.FromUser).FirstOrDefault();
                //var checkAvailableMember = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == memid.MEM_ID).FirstOrDefault();
                if (memid != null)
                {
                    var  obj      = obj_bal;
                    var  mem_id   = Request.Form["memberDomainId"].ToString();
                    long memberid = long.Parse(mem_id);

                    decimal closingamt = 0;
                    decimal Openingamt = 0;
                    decimal transamt   = 0;
                    decimal AddAmount  = 0;
                    var     amtval     = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == memberid).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                    if (amtval != null)
                    {
                        Openingamt = amtval.OPENING;
                        closingamt = amtval.CLOSING;
                        transamt   = amtval.AMOUNT;
                        if (obj_bal.PAYMENT_METHOD == "CR")
                        {
                            AddAmount = decimal.Parse(obj_bal.AMOUNT.ToString()) + closingamt;
                        }
                        else
                        {
                            AddAmount = closingamt - decimal.Parse(obj_bal.AMOUNT.ToString());
                        }
                    }
                    TBL_ACCOUNTS objaccnt = new TBL_ACCOUNTS()
                    {
                        API_ID           = 0,
                        MEM_ID           = memberid,
                        MEMBER_TYPE      = "WHITE LEVEL",
                        TRANSACTION_TYPE = "Cash Deposit in bank",
                        TRANSACTION_DATE = DateTime.Now,
                        TRANSACTION_TIME = DateTime.Now,
                        DR_CR            = obj_bal.PAYMENT_METHOD,
                        AMOUNT           = obj_bal.AMOUNT,
                        NARRATION        = obj_bal.TRANSACTION_DETAILS,
                        CLOSING          = AddAmount,
                        OPENING          = closingamt,
                        REC_NO           = 0,
                        COMM_AMT         = 0,
                        GST = 0,
                        TDS = 0
                    };
                    db.TBL_ACCOUNTS.Add(objaccnt);
                    db.SaveChanges();
                    var memberlist = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == memberid).FirstOrDefaultAsync();

                    memberlist.BALANCE         = AddAmount;
                    db.Entry(memberlist).State = System.Data.Entity.EntityState.Modified;
                    await db.SaveChangesAsync();

                    return(View("DisplayAccount"));
                }
                else
                {
                    ViewBag.msg = "Please provide valid white level user name";
                    return(View("Index"));
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Пример #9
0
        public JsonResult ChangeTransactionStatus(string trandate = "", string TransationStatus = "", string slnval = "")
        {
            var db = new DBContext();

            using (System.Data.Entity.DbContextTransaction ContextTransaction = db.Database.BeginTransaction())
            {
                try
                {
                    long    sln           = long.Parse(slnval);
                    decimal addamount     = 0;
                    decimal memb_bal      = 0;
                    decimal trans_bal     = 0;
                    decimal availableamt  = 0;
                    decimal addavilamt    = 0;
                    decimal closingamt    = 0;
                    decimal addclosingamt = 0;
                    var     transinfo     = db.TBL_BALANCE_TRANSFER_LOGS.Where(x => x.SLN == sln).FirstOrDefault();
                    var     memberlist    = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == transinfo.FROM_MEMBER).FirstOrDefault();



                    var membtype = (from mm in db.TBL_MASTER_MEMBER
                                    join
                                    rm in db.TBL_MASTER_MEMBER_ROLE on mm.MEMBER_ROLE equals rm.ROLE_ID
                                    where mm.MEM_ID == transinfo.FROM_MEMBER
                                    select new
                    {
                        RoleId = mm.MEMBER_ROLE,
                        roleName = rm.ROLE_NAME
                    }).FirstOrDefault();
                    //transinfo.REQUEST_DATE = Convert.ToDateTime(trandate);
                    transinfo.STATUS          = "Approve";
                    transinfo.APPROVAL_DATE   = DateTime.Now;
                    transinfo.APPROVAL_TIME   = DateTime.Now;
                    transinfo.APPROVED_BY     = "Power Admin";
                    db.Entry(transinfo).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();

                    memb_bal           = decimal.Parse(memberlist.BALANCE.ToString());
                    trans_bal          = decimal.Parse(transinfo.AMOUNT.ToString());
                    addamount          = memb_bal + trans_bal;
                    memberlist.BALANCE = addamount;
                    //db.Entry(memberlist).State = System.Data.Entity.EntityState.Modified;
                    //db.SaveChanges();
                    var amtobj = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == transinfo.FROM_MEMBER).FirstOrDefault();
                    if (amtobj != null)
                    {
                        availableamt           = amtobj.AMOUNT;
                        addavilamt             = availableamt + trans_bal;
                        amtobj.AMOUNT          = addavilamt;
                        closingamt             = amtobj.CLOSING;
                        addclosingamt          = closingamt + trans_bal;
                        amtobj.CLOSING         = addclosingamt;
                        amtobj.OPENING         = trans_bal;
                        db.Entry(amtobj).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                    }
                    else
                    {
                        TBL_ACCOUNTS objacnt = new TBL_ACCOUNTS()
                        {
                            API_ID           = 0,
                            MEM_ID           = transinfo.FROM_MEMBER,
                            MEMBER_TYPE      = membtype.roleName,
                            TRANSACTION_TYPE = transinfo.PAYMENT_METHOD,
                            TRANSACTION_DATE = Convert.ToDateTime(transinfo.REQUEST_DATE),
                            TRANSACTION_TIME = DateTime.Now,
                            DR_CR            = "CR",
                            AMOUNT           = transinfo.AMOUNT,
                            NARRATION        = transinfo.TRANSACTION_DETAILS,
                            OPENING          = 0,
                            CLOSING          = addamount,
                            REC_NO           = 0
                        };
                        db.TBL_ACCOUNTS.Add(objacnt);
                        db.SaveChanges();
                    }
                    db.Entry(memberlist).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();

                    ContextTransaction.Commit();
                    return(Json(new { Result = "true" }));
                }
                catch (Exception ex)
                {
                    ContextTransaction.Rollback();
                    return(Json(new { Result = "false " }));
                }
            }
        }
Пример #10
0
        //public async Task<ActionResult> Index(TBL_BALANCE_TRANSFER_LOGS obj_bal)
        public async Task <JsonResult> Index(TBL_BALANCE_TRANSFER_LOGS obj_bal)
        {
            var db = new DBContext();

            using (System.Data.Entity.DbContextTransaction ContextTransaction = db.Database.BeginTransaction())
            {
                try
                {
                    var checkAvailableMember = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == obj_bal.FROM_MEMBER).FirstOrDefault();
                    if (checkAvailableMember != null)
                    {
                        var obj = obj_bal;
                        //var mem_id = Request.Form["memberDomainId"].ToString();
                        long memberid = long.Parse(obj_bal.FROM_MEMBER.ToString());

                        decimal closingamt = 0;
                        decimal Openingamt = 0;
                        decimal transamt   = 0;
                        decimal AddAmount  = 0;
                        decimal SubAmt     = 0;
                        //var amtval = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == memberid).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                        var amtval = db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == memberid).FirstOrDefault();
                        if (amtval != null)
                        {
                            //var MemAcnt = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == memberid).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefault();
                            var MemAcnt = db.TBL_ACCOUNTS.Where(x => x.MEM_ID == memberid).OrderByDescending(z => z.ACC_NO).FirstOrDefault();
                            if (MemAcnt != null)
                            {
                                Openingamt = MemAcnt.OPENING;
                                closingamt = MemAcnt.CLOSING;
                                transamt   = MemAcnt.AMOUNT;
                            }
                            else
                            {
                                Openingamt = 0;
                                closingamt = obj_bal.AMOUNT;
                                AddAmount  = obj_bal.AMOUNT;
                            }
                            //Openingamt = amtval.OPENING;
                            //closingamt = amtval.CLOSING;
                            //transamt = amtval.AMOUNT;
                            //if (obj_bal.PAYMENT_METHOD == "CR")
                            //{
                            //    AddAmount = decimal.Parse(obj_bal.AMOUNT.ToString()) + closingamt;
                            //}
                            //else
                            //{
                            //    AddAmount = closingamt - decimal.Parse(obj_bal.AMOUNT.ToString());
                            //}
                            if (obj_bal.PAYMENT_METHOD == "CR")
                            {
                                decimal.TryParse(obj_bal.AMOUNT.ToString(), out SubAmt);
                                AddAmount = SubAmt + closingamt;
                            }
                            else
                            {
                                decimal.TryParse(obj_bal.AMOUNT.ToString(), out SubAmt);

                                AddAmount = Convert.ToDecimal(closingamt - SubAmt);
                            }
                        }

                        TBL_ACCOUNTS objaccnt = new TBL_ACCOUNTS()
                        {
                            API_ID      = 0,
                            MEM_ID      = memberid,
                            MEMBER_TYPE = "DISTRIBUTOR",
                            //TRANSACTION_TYPE = "Cash Deposit in bank",
                            TRANSACTION_TYPE = obj_bal.TRANSACTION_DETAILS,
                            TRANSACTION_DATE = DateTime.Now,
                            TRANSACTION_TIME = DateTime.Now,
                            DR_CR            = obj_bal.PAYMENT_METHOD,
                            AMOUNT           = obj_bal.AMOUNT,
                            NARRATION        = obj_bal.TRANSACTION_DETAILS,
                            CLOSING          = AddAmount,
                            OPENING          = closingamt,
                            REC_NO           = 0,
                            COMM_AMT         = 0,
                            GST        = 0,
                            TDS        = 0,
                            SERVICE_ID = 0,
                        };
                        db.TBL_ACCOUNTS.Add(objaccnt);
                        //await db.SaveChangesAsync();
                        var memberlist = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == memberid).FirstOrDefaultAsync();

                        memberlist.BALANCE         = AddAmount;
                        db.Entry(memberlist).State = System.Data.Entity.EntityState.Modified;
                        await db.SaveChangesAsync();

                        ContextTransaction.Commit();
                        //#region For WhiteLevel

                        //decimal WLOpening = 0;
                        //decimal WLClosing = 0;
                        //decimal WLAmtvalue = 0;
                        //var wlingo = (from x in db.TBL_MASTER_MEMBER
                        //              join y in db.TBL_MASTER_MEMBER_ROLE on x.MEMBER_ROLE equals y.ROLE_ID
                        //              where x.MEM_ID == MemberCurrentUser.MEM_ID
                        //              select new
                        //              {
                        //                  MemberType = y.ROLE_NAME
                        //              }).FirstOrDefault();
                        //var tbl_accnt = await db.TBL_ACCOUNTS.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).OrderByDescending(z => z.TRANSACTION_TIME).FirstOrDefaultAsync();
                        //if (tbl_accnt != null)
                        //{
                        //    WLOpening = tbl_accnt.OPENING;
                        //    WLClosing = tbl_accnt.CLOSING;
                        //    if (obj_bal.PAYMENT_METHOD == "CR")
                        //    {
                        //        WLAmtvalue = WLClosing - decimal.Parse(obj_bal.AMOUNT.ToString());
                        //    }
                        //    else
                        //    {
                        //        WLAmtvalue = WLClosing + decimal.Parse(obj_bal.AMOUNT.ToString());
                        //    }
                        //    TBL_ACCOUNTS objWL = new TBL_ACCOUNTS()
                        //    {
                        //        API_ID = 0,
                        //        MEM_ID = MemberCurrentUser.MEM_ID,
                        //        MEMBER_TYPE = wlingo.MemberType,
                        //        TRANSACTION_TYPE = "Cash Deposit in bank",
                        //        TRANSACTION_DATE = DateTime.Now,
                        //        TRANSACTION_TIME = DateTime.Now,
                        //        DR_CR = obj_bal.PAYMENT_METHOD,
                        //        AMOUNT = obj_bal.AMOUNT,
                        //        NARRATION = obj_bal.TRANSACTION_DETAILS,
                        //        CLOSING = WLAmtvalue,
                        //        OPENING = WLClosing,
                        //        REC_NO = 0,
                        //        COMM_AMT = 0,
                        //        GST=0,
                        //        TDS=0,
                        //        SERVICE_ID = 0,
                        //    };
                        //    db.TBL_ACCOUNTS.Add(objWL);
                        //    db.SaveChanges();
                        //    var WLBalance = await db.TBL_MASTER_MEMBER.Where(x => x.MEM_ID == MemberCurrentUser.MEM_ID).FirstOrDefaultAsync();
                        //    WLBalance.BALANCE = WLAmtvalue;
                        //    db.Entry(WLBalance).State = System.Data.Entity.EntityState.Modified;
                        //    await db.SaveChangesAsync();
                        //}
                        //#endregion

                        return(Json("Manual Balance Transfer done successfully.", JsonRequestBehavior.AllowGet));
                        //return View("DisplayAccount");
                    }
                    else
                    {
                        return(Json("Please contact to your administrator.", JsonRequestBehavior.AllowGet));
                        //ViewBag.msg = "Please provide valid super distributor user name";
                        //return View("Index");
                    }
                }
                catch (Exception ex)
                {
                    ContextTransaction.Rollback();
                    throw;
                }
            }
        }