saksh-wallet
Version:
A Node.js library for managing user wallets, including functionalities for crediting, debiting, and converting currencies, as well as retrieving balances and transaction reports.
49 lines (36 loc) • 1.85 kB
JavaScript
const EventEmitter = require('events');
const mongoose = require('mongoose');
const Transaction = require('../models/Transaction');
const WalletUser = require('../models/WalletUser');
const RecurringPayment = require('../models/RecurringPayment');
const SakshUserManagement = require('../SakshUserManagement');
const SakshTransactionManagement = require('../SakshTransactionManagement');
const SakshBudgetManagement = require('../SakshBudgetManagement');
const SakshRecurringPayments = require('../SakshRecurringPayments');
//const SakshReporting = require('../SakshReporting');
var str = "mongodb+srv://susheel2339:iJQcnYKE1jRG591G@susheel2339.wmx2d.mongodb.net/";
// Connect to MongoDB
mongoose.connect(str, { useNewUrlParser: true, useUnifiedTopology: true });
async function main() {
// Initialize the classes
const userManagement = new SakshUserManagement();
const transactionManagement = new SakshTransactionManagement();
// Example usage
const userId = 'user123';
const toUserId = 'user456';
const amount = 100;
const currency = 'USD';
const description = 'Payment for services';
const referenceNumber = 'REF123';
const category = 'Services';
const interval = 'monthly';
// User Management
await userManagement.sakshSetAdmin('adminUserId');
await userManagement.sakshSetLimit(true);
// Transaction Management
await transactionManagement.sakshCredit(userId, amount, currency, description, referenceNumber, category);
// await transactionManagement.sakshDebit(userId, amount, currency, description, referenceNumber, category);
// await transactionManagement.sakshTransferFunds(userId, toUserId, amount, currency, description, referenceNumber, category);
console.log(45);
}
main().catch(console.error);