/* ============================================================================ *\
|| ########################################################################## ||
|| # Auction Software Marketplace Release: 0.6 Build 0.7 # ||
|| # ---------------------------------------------------------------------- # ||
|| # License # 35YAHCNR9344X6O666C123AB # ||
|| # ---------------------------------------------------------------------- # ||
|| # Copyright ©2014–2021 Develop Scripts LLC. All Rights Reserved # ||
|| # This file may not be redistributed in whole or significant part. # ||
|| # ------------- AUCTION SOFTWARE IS NOT FREE SOFTWARE ------------------ # ||
|| # http://www.auctionsoftwaremarketplace.com|support@auctionsoftware.com # ||
|| # ---------------------------------------------------------------------- # ||
|| ########################################################################## ||
\* ============================================================================ */
const dateFormat = require('dateformat')
const md5 = require('md5')
const _ = require('underscore')
const commonSQL = require('../../../common/sql').default
const mysqclass = require('../mysqli').default
/**
* @class class to handle deposit functions
*/
class northcapitalPaymentModule {
/**
* insert log
*
* @param {string} nameID email ID to check in the database.
* @returns {object} sql response
*/
static async insertLog(data, options, type) {
const mysql = {}
const escapeData = [
data.user_id,
data.project_id,
type,
JSON.stringify(options.data),
dateFormat(new Date(), 'yyyy-mm-dd HH:MM:ss'),
]
const strQuery = await mysqclass.mysqli(mysql, 'northcapital_log_insert')
const dataReturn = await global.mysql.query(strQuery, escapeData)
return dataReturn
}
/**
* update log
*
* @param {string} data log data
* @returns {object} sql response
*/
static async updateLog(data) {
const mysql = {}
const escapeData = [
JSON.stringify(data.response),
data.status,
dateFormat(new Date(), 'yyyy-mm-dd HH:MM:ss'),
data.id,
]
const strQuery = await mysqclass.mysqli(mysql, 'northcapital_log_update')
const dataReturn = await global.mysql.query(strQuery, escapeData)
return dataReturn
}
/**
* insert entiry response
*
* @param {object} userId user id
* @param {object} partyID party id
* @returns {object} response object
*/
static async insertEntityResponse(userId, partyId) {
const mysql = {}
const escapeData = [userId, partyId, dateFormat(new Date(), 'yyyy-mm-dd HH:MM:ss')]
const strQuery = await mysqclass.mysqli(mysql, 'northcapital_insert_party_id')
const dataReturn = await global.mysql.query(strQuery, escapeData)
return dataReturn
}
/**
* insert party response
*
* @param {object} userId user id
* @param {object} partyID party id
* @returns {object} response object
*/
static async insertPartyResponse(userId, partyId) {
const mysql = {}
const escapeData = [userId, partyId]
const strQuery = await mysqclass.mysqli(mysql, 'northcapital_insert_party_id')
const dataReturn = await global.mysql.query(strQuery, escapeData)
return dataReturn
}
/**
* update North capital response
*
* @param {object} body data to update
* @param {object} userId user id
* @returns {object} response object
*/
static async updateNorthCapitalResponse(body, userId) {
const mysql = {}
const postData = body
const acceptedObjects = global.configColumns.third_payment_north.array_columns
let escapeData = []
const defaultKeys = []
const defaultValues = []
const valueInsert = commonSQL.updateSQLFunction(
postData,
acceptedObjects,
defaultKeys,
defaultValues,
)
mysql.keys = valueInsert.keys
escapeData = valueInsert.escapeData
mysql.user_id = userId
const strQuery = await mysqclass.mysqli(mysql, 'northcapital_update')
const dataReturn = await global.mysql.query(strQuery, escapeData)
return dataReturn
}
/**
* get user northcapital details
*
* @param {object} body data to update
* @param {object} userId user id
* @returns {object} response object
*/
static async getUserNorthDetails(userId) {
const mysql = {}
const escapeData = [userId]
const strQuery = await mysqclass.mysqli(mysql, 'northcapital_get_user_details')
const dataReturn = await global.mysql.query(strQuery, escapeData)
return dataReturn
}
/**
* get northcapital project details
*
* @param {object} body data to update
* @param {object} userId user id
* @returns {object} response object
*/
static async getOfferingNorthDetails(projectId) {
const mysql = {}
const escapeData = [projectId]
const strQuery = await mysqclass.mysqli(mysql, 'northcapital_get_project_details')
const dataReturn = await global.mysql.query(strQuery, escapeData)
return dataReturn
}
// static async newDocument(file, folder, type, userId) {
// const mysql = {}
// const dateNow = dateFormat(new Date(), 'yyyy-mm-dd HH:MM:ss')
// const escapeData = [file, folder, type, userId, dateNow]
// const strQuery = await mysqclass.mysqli(mysql, 'northcapital_doc_insert')
// const dataReturn = await global.mysql.query(strQuery, escapeData)
// return dataReturn
// }
}
module.exports.default = northcapitalPaymentModule