//public JsonResult AddSingleChequeOperation()
        //{
        //    RetailUnitOfWork.SingleCheque.Add();
        //    RetailUnitOfWork.Commit();
        //    return Json();
        //}

        //public JsonResult AddMultipleChequeOperation()
        //{
        //    RetailUnitOfWork.MultipleCheque.Add();
        //    RetailUnitOfWork.Commit();
        //    return Json();
        //}

        //public JsonResult AddChequeUploadOperation()
        //{
        //    RetailUnitOfWork.ChequeUpload.Add();
        //    RetailUnitOfWork.Commit();
        //    return Json();
        //}

        public JsonResult AddChequeWithdrawal(TblFinanceTransaction withdrawal)
        {
            withdrawal.ValueDate       = DateTime.Now;
            withdrawal.PostedBy        = "sys";
            withdrawal.PostingTime     = DateTime.Now.ToShortTimeString();
            withdrawal.Ref             = "TRN/201/0020654";
            withdrawal.TransactionDate = DateTime.Now;
            withdrawal.SCoyCode        = "101";



            RetailUnitOfWork.Transaction.Add(withdrawal);

            TblFinanceCounterpartyTransaction withdrawCountParty = new TblFinanceCounterpartyTransaction();

            //var user = User.Identity.Name;
            var user = "******";

            withdrawCountParty.TransactionDate = DateTime.Now;
            withdrawCountParty.UserName        = user;
            withdrawCountParty.Coy             = "1";
            withdrawCountParty.PostDate        = DateTime.Now.Date;
            withdrawCountParty.SystemDateTime  = DateTime.Now;
            withdrawCountParty.BatchRef        = "TRN/201/0020654";

            RetailUnitOfWork.FinCounterParty.Add(withdrawCountParty);


            RetailUnitOfWork.Commit();
            return(Json(withdrawal.Id));
        }
        public JsonResult AddLodgement(TblFinanceTransaction transactions)
        {
            transactions.ValueDate   = DateTime.Now;
            transactions.PostedBy    = "sys";
            transactions.PostingTime = DateTime.Now.ToShortTimeString();
            transactions.Ref         = "TRN/201/0020655";
            transactions.SCoyCode    = "101";


            RetailUnitOfWork.Transaction.Add(transactions);

            TblFinanceCounterpartyTransaction counterParty = new TblFinanceCounterpartyTransaction();

            //var user = User.Identity.Name;
            var user = "******";

            counterParty.TransactionDate = DateTime.Now;
            counterParty.UserName        = user;
            counterParty.Coy             = "1";
            counterParty.PostDate        = DateTime.Now.Date;
            counterParty.SystemDateTime  = DateTime.Now;
            counterParty.BatchRef        = "TRN/201/0020655";

            RetailUnitOfWork.FinCounterParty.Add(counterParty);


            RetailUnitOfWork.Commit();
            return(Json(transactions.Id));
        }
        public JsonResult AddVaultToTill(TblFinanceTransaction vaulttoTill)
        {
            //var loginUsers = RetailUnitOfWork.Transaction.Find(o => o.StaffName == User.Identity.Name);
            var user = "******";               //@TODO, Change to login user later

            vaulttoTill.TransactionDate   = DateTime.Now;
            vaulttoTill.ValueDate         = DateTime.Now;
            vaulttoTill.PostedBy          = "sys";
            vaulttoTill.PostingTime       = DateTime.Now.ToShortTimeString();
            vaulttoTill.SCoyCode          = "101";
            vaulttoTill.ApprovedBy        = user;
            vaulttoTill.SourceBranch      = user;
            vaulttoTill.DestinationBranch = "201";
            vaulttoTill.BatchRef          = "TRN/201/0020655";
            vaulttoTill.ApplicationId     = "FintrakBanking";

            RetailUnitOfWork.Transaction.Add(vaulttoTill);
            RetailUnitOfWork.Commit();
            return(Json(vaulttoTill.Id));
        }