inserimento in Movimenti del Circuito

This commit is contained in:
Surya Paolo
2024-01-04 15:43:13 +01:00
parent b754492b41
commit d7ae8baec4
8 changed files with 45 additions and 26 deletions

View File

@@ -116,4 +116,8 @@ paoloar77: 14 RIS]
Mer 29/11 ORE 17:14: [<b>Circuito RIS Italia</b>]: Inviate Monete da SuryaArena a paoloar77 2 RIS [causale: Massaggio !] Mer 29/11 ORE 17:14: [<b>Circuito RIS Italia</b>]: Inviate Monete da SuryaArena a paoloar77 2 RIS [causale: Massaggio !]
Saldi: Saldi:
SuryaArena: -13 RIS] SuryaArena: -13 RIS]
paoloar77: 13 RIS] paoloar77: 13 RIS]
Gio 04/01 ORE 14:00: [<b>Euro</b>]: Inviate Monete da PaoloRiso a piuchebuono 44.4 € [causale: Pagato Ordine n.101]
Saldi:
PaoloRiso: -44.4 €]
piuchebuono: 44.4 €]

View File

@@ -272,8 +272,8 @@ AccountSchema.statics.getAccountByUsernameAndCircuitId = async function (idapp,
const { Circuit } = require('../models/circuit'); const { Circuit } = require('../models/circuit');
if (username === undefined) // if (username === undefined)
return false; // return false;
let myquery = { let myquery = {
idapp, idapp,

View File

@@ -104,7 +104,7 @@ module.exports.createMovementCashByOrdersCart = async function (ordersCart, user
type: shared_consts.TYPECASH.IN, type: shared_consts.TYPECASH.IN,
fromUsername: ordersCart.user.username, fromUsername: ordersCart.user.username,
toUsername: usernameStore, toUsername: usernameStore,
causale: 'Pagato Ordine n.' + ordersCart.numorder, causal: 'Pagato Ordine n.' + ordersCart.numorder,
price: ordersCart.totalPrice, price: ordersCart.totalPrice,
internal, internal,
} }

View File

@@ -669,6 +669,7 @@ CircuitSchema.statics.sendCoins = async function (onlycheck, idapp, usernameOrig
const esisteDest = await Account.isExistAccountByUsernameAndCircuitId(idapp, extrarec.dest, circuittable._id, extrarec.groupdest, extrarec.contoComDest); const esisteDest = await Account.isExistAccountByUsernameAndCircuitId(idapp, extrarec.dest, circuittable._id, extrarec.groupdest, extrarec.contoComDest);
if (!esisteDest) { if (!esisteDest) {
// Fallo entrare anche sul Circuito (oltre ad aver creato l'Account). // Fallo entrare anche sul Circuito (oltre ad aver creato l'Account).
await User.addCircuitToUser(idapp, usernameOrig, extrarec.circuitname, false, extrarec.groupdest, extrarec.contoComDest); await User.addCircuitToUser(idapp, usernameOrig, extrarec.circuitname, false, extrarec.groupdest, extrarec.contoComDest);
@@ -708,7 +709,7 @@ CircuitSchema.statics.sendCoins = async function (onlycheck, idapp, usernameOrig
if (!onlycheck) { if (!onlycheck) {
// Add a Transaction ! // Add a Transaction !
if (ris.cansend) { if (ris.cansend) {
ris.rec = await Movement.addMov(idapp, accountorigTable, accountdestTable, myqty, extrarec.causal, extrarec.notifId, null); ris.rec = await Movement.addMov(idapp, accountorigTable, accountdestTable, myqty, extrarec.causal, extrarec.notifId, extrarec.idOrdersCart);
} }
if (ris.cansend && ris.rec) { if (ris.cansend && ris.rec) {
@@ -1225,12 +1226,14 @@ CircuitSchema.statics.setFido = async function (idapp, username, circuitName, gr
return null; return null;
}; };
CircuitSchema.statics.addMovementByOrdersCart = async function (idapp, ordersCart, usernameDest, groupDest) { CircuitSchema.statics.addMovementByOrdersCart = async function (ordersCart, usernameDest, groupDest) {
const { User } = require('../models/user'); const { User } = require('../models/user');
const idapp = ordersCart.idapp;
let extrarec = { let extrarec = {
causale: 'Pagato Ordine n.' + ordersCart.numorder, causal: 'Pagato Ordine n.' + ordersCart.numorder,
circuitname: 'Euro', circuitname: 'Euro',
idOrdersCart: ordersCart._id, idOrdersCart: ordersCart._id,
qty: ordersCart.totalPrice, qty: ordersCart.totalPrice,
@@ -1239,7 +1242,7 @@ CircuitSchema.statics.addMovementByOrdersCart = async function (idapp, ordersCar
contoComDest: '', contoComDest: '',
}; };
const usernameOrig = await User.getUsernameById(idapp, userId); const usernameOrig = await User.getUsernameById(idapp, ordersCart.userId);
return this.sendCoins(false, idapp, usernameOrig, extrarec); return this.sendCoins(false, idapp, usernameOrig, extrarec);

View File

@@ -107,7 +107,7 @@ MovementSchema.statics.addMov = async function (idapp, accountFromIdTable, accou
transactionDate: new Date(), transactionDate: new Date(),
accountFromId: accountFromIdTable._id, accountFromId: accountFromIdTable._id,
accountToId: accountToIdTable._id, accountToId: accountToIdTable._id,
idOrdersCart: idOrdersCart._id ?? null, idOrdersCart,
amount, amount,
causal, causal,
residual: 0, residual: 0,

View File

@@ -473,14 +473,15 @@ module.exports.createOrdersCart = async function (newOrdersCart) {
} }
module.exports.addOrderToMovement = async function (idorderscart, usernameStore, groupnameStore, req) { module.exports.addOrderToMovement = async function (myOrderCart, usernameStore, groupnameStore, req) {
try { try {
if (myOrderCart) {
const mymov = await Circuit.addMovementByOrdersCart(myOrderCart, usernameStore, groupnameStore);
return mymov;
}
const myorderscart = await OrdersCart.findOne({ _id: idorderscart }).populate('items.order').lean(); return null;
const mymov = await Circuit.addMovementByOrdersCart(id, myOrderCart, usernameStore, groupnameStore);
// const mycash = await Cash.createMovementCashByOrdersCart(myorderscart, usernameStore, req);
} catch (e) { } catch (e) {
console.error('Err', e); console.error('Err', e);
@@ -661,28 +662,38 @@ module.exports.updateStockQtaPerCancellazioneOrdine = async function (idordersca
} }
module.exports.getStorehouseByOrdersCart = function (ordersCart) {
return ordersCart && ordersCart.items && ordersCart.items.length > 0 && ordersCart.items[0].order.storehouse
? ordersCart.items[0].order.storehouse
: null
}
module.exports.getUsernameStorehouseActual = async function (ordersCart) { module.exports.getUsernameStorehouseActual = async function (ordersCart) {
return ordersCart && ordersCart.storehouse && ordersCart.storehouse.lenght > 0 const storehouse = OrdersCart.getStorehouseByOrdersCart(ordersCart);
? ordersCart.storehouse[0].username return storehouse
? storehouse.username
: null : null
} }
module.exports.getGroupnameStorehouseActual = async function (ordersCart) { module.exports.getGroupnameStorehouseActual = async function (ordersCart) {
return ordersCart && ordersCart.storehouse && ordersCart.storehouse.lenght > 0 const storehouse = OrdersCart.getStorehouseByOrdersCart(ordersCart);
? ordersCart.storehouse[0].groupname return storehouse
? storehouse.groupname
: null : null
} }
module.exports.updateCmd = async function (ordersCart, status, value, req, options) { module.exports.updateCmd = async function (ordersCart, status, value, req, options) {
let myOrderCart = await OrdersCart.findOne({ _id: ordersCart._id }) let myOrderCart = await OrdersCart.getOrdersCartById(ordersCart._id);
.populate('items.order').lean(); // let myOrderCart = await OrdersCart.findOne({ _id: ordersCart._id })
// .populate('items.order').lean();
const usernameStore = OrdersCart.getUsernameStorehouseActual(ordersCart); const usernameStore = await OrdersCart.getUsernameStorehouseActual(myOrderCart);
const groupnameStore = OrdersCart.getGroupnameStorehouseActual(ordersCart); const groupnameStore = await OrdersCart.getGroupnameStorehouseActual(myOrderCart);
try { try {
if (!!myOrderCart) { if (!!myOrderCart) {
@@ -705,7 +716,7 @@ module.exports.updateCmd = async function (ordersCart, status, value, req, optio
} else if (status === shared_consts.OrderStatus.PAYED) { } else if (status === shared_consts.OrderStatus.PAYED) {
if (value) { if (value) {
await OrdersCart.addOrderToMovement(id, usernameStore, groupnameStore, req); await OrdersCart.addOrderToMovement(myOrderCart, usernameStore, groupnameStore, req);
} }
ris = await OrdersCart.setPagatoById(value, myOrderCart); ris = await OrdersCart.setPagatoById(value, myOrderCart);

View File

@@ -125,6 +125,7 @@ const SiteSchema = new Schema({
showMsgs: { type: Boolean, default: false }, showMsgs: { type: Boolean, default: false },
showNotif: { type: Boolean, default: false }, showNotif: { type: Boolean, default: false },
showCoins: { type: Boolean, default: false }, showCoins: { type: Boolean, default: false },
showMenuCoins: { type: Boolean, default: false },
showNameSurname: { type: Boolean, default: false }, showNameSurname: { type: Boolean, default: false },
showCompetenze: { type: Boolean, default: false }, showCompetenze: { type: Boolean, default: false },
showConnected: { type: Boolean, default: false }, showConnected: { type: Boolean, default: false },

View File

@@ -256,8 +256,6 @@ router.post('/:userId/createorderscart', authenticate, async function (req, res,
let numorder = await OrdersCart.getLastNumOrder(idapp); let numorder = await OrdersCart.getLastNumOrder(idapp);
let numord_pers = await OrdersCart.getLastNumOrdPers(userId, idapp); let numord_pers = await OrdersCart.getLastNumOrdPers(userId, idapp);
const userDest = await User.getUserById(idapp, userId);
// Esiste l'ordine ? // Esiste l'ordine ?
let myorderCart = await OrdersCart.getRecCartByUserId(userId, idapp, numorder); let myorderCart = await OrdersCart.getRecCartByUserId(userId, idapp, numorder);
if (!myorderCart) { if (!myorderCart) {
@@ -284,6 +282,8 @@ router.post('/:userId/createorderscart', authenticate, async function (req, res,
statusOrderCart = myorderCart.status; statusOrderCart = myorderCart.status;
const idordercart = myorderCart._id; const idordercart = myorderCart._id;
const userDest = await User.findById(userId).lean();
if (!!mycart) { if (!!mycart) {
if (status === shared_consts.OrderStatus.CHECKOUT_SENT) { if (status === shared_consts.OrderStatus.CHECKOUT_SENT) {
@@ -359,7 +359,6 @@ router.post('/:userId/ordercartstatus', authenticate, async function (req, res,
const { User } = require('../models/user'); const { User } = require('../models/user');
const userDest = await User.getUserById(userId);
let orderCart = await OrdersCart.findOne({ idapp, _id: order_id }).lean(); let orderCart = await OrdersCart.findOne({ idapp, _id: order_id }).lean();
@@ -376,6 +375,7 @@ router.post('/:userId/ordercartstatus', authenticate, async function (req, res,
await OrdersCart.findOneAndUpdate({ _id: order_id }, { $set: fields_to_update } await OrdersCart.findOneAndUpdate({ _id: order_id }, { $set: fields_to_update }
, { new: false }) , { new: false })
.then(async (ris) => { .then(async (ris) => {
const userDest = await User.findById(orderCart.userId).lean();
if (ris) { if (ris) {