- Nuovo Sistema di Flotte per Tutor.

X - Mettere anche la email del sognatore, per chi è abituato ad inviarla in quel modo...
X - Controllare che sul sito compaiano le informazioni del Sognatore...
This commit is contained in:
Paolo Arena
2020-06-08 13:31:05 +02:00
parent 140e181fcc
commit c939be279e
21 changed files with 2037 additions and 254 deletions

View File

@@ -10,7 +10,9 @@ const { authenticate } = require('../middleware/authenticate');
const { User } = require('../models/user');
const { Nave } = require('../models/nave');
const { Flotta } = require('../models/flotta');
const { NavePersistente } = require('../models/navepersistente');
const { MsgTemplate } = require('../models/msg_template');
const mongoose = require('mongoose');
const Subscription = mongoose.model('subscribers');
@@ -94,10 +96,11 @@ router.post('/msgnave', authenticate, async (req, res) => {
if (mydata.tipomsg === tools.TipoMsg.SEND_MSG_SINGOLO) {
let mymsg = '';
if (!!mydata.username_mitt) {
mymsg = '[' + tools.getres__('MSG_SEND_FROM', res) + ' ' + mydata.username_mitt + ']:' + tools.ACAPO;
mymsg = '[' + tools.getres__('MSG_SEND_FROM', res) + ' ' + mydata.username_mitt + ' a ' + mydata.username + ']:' + tools.ACAPO;
}
mymsg += mydata.msgpar1;
ris = await telegrambot.sendMsgTelegram(idapp, mydata.username, mymsg, true, mydata.username_mitt); // Anche a STAFF
// ris = await telegrambot.sendMsgTelegram(idapp, mydata.username, mymsg, true, mydata.username_mitt); // Anche a STAFF
ris = await telegrambot.sendMsgTelegram(idapp, mydata.username, mymsg, true); // Anche a STAFF
} else
ris = await telegrambot.sendMsgTelegramToNave(idapp, mydata);
@@ -113,6 +116,27 @@ router.post('/msgnave', authenticate, async (req, res) => {
});
router.post('/msgflotta', authenticate, async (req, res) => {
const idapp = req.body.idapp;
let mydata = req.body;
try {
let ris = null;
ris = await telegrambot.sendMsgTelegramToNave(idapp, mydata);
if (ris)
res.send({ code: server_constants.RIS_CODE_OK, ris });
else
res.send({ code: server_constants.RIS_CODE_ERR, ris: null });
} catch (e) {
res.status(400).send(e);
}
});
router.post('/getnave', authenticate, async (req, res) => {
const idapp = req.body.idapp;
const riga = req.body.riga;
@@ -144,6 +168,9 @@ router.post('/getnave', authenticate, async (req, res) => {
router.post('/getnavi', authenticate, async (req, res) => {
const idapp = req.body.idapp;
const { Flotta } = require('../models/flotta');
let arrnavi = await NavePersistente.findAllIdApp(idapp);
// let arrnavi = await NavePersistente.find({idapp, date_gift_chat_open: { $gte: tools.IncDateNow(-1000 * 3600 * 24 * 7 ) } }).sort({ riga: 1, col: 1 });
@@ -163,6 +190,8 @@ router.post('/getnavi', authenticate, async (req, res) => {
// }
// nave._doc.rec.donatore.navepersistente = await NavePersistente.findByRigaColByDonatore(idapp, riganave, colnave, 0);
nave._doc.rec.donatore.navepersistente = await NavePersistente.findOne({ idapp, riga: riganave, col: colnave });
if (!!nave._doc.rec.donatore.navepersistente)
nave._doc.rec.donatore.flotta = await Flotta.getFlottaByNavePersistente(idapp, nave._doc.rec.donatore.navepersistente);
}
const navi_partenza = await NavePersistente.findAllIdApp(idapp);
@@ -176,6 +205,48 @@ router.post('/getnavi', authenticate, async (req, res) => {
});
router.post('/getmsg_templates', authenticate, async (req, res) => {
const idapp = req.body.idapp;
let ris = await MsgTemplate.findAllIdApp(idapp);
if (!!ris)
res.send({ code: server_constants.RIS_CODE_OK, ris });
else
res.status(400).send(e);
});
router.post('/getflotte', authenticate, async (req, res) => {
const idapp = req.body.idapp;
let arrflotte = await Flotta.findAllIdApp(idapp);
if (!!arrflotte)
res.send({ code: server_constants.RIS_CODE_OK, arrflotte });
else
res.status(400).send(e);
});
router.post('/getflotta', authenticate, async (req, res) => {
const idapp = req.body.idapp;
const riga = req.body.riga;
const col_prima = req.body.col_prima;
const col_ultima = req.body.col_ultima;
let ris = await Nave.getFlotta(idapp, riga, col_prima, col_ultima);
ris.flotta._doc.log_attivita = tools.readFlottaLog(idapp, ris.flotta.riga, ris.flotta.col_prima);
if (!!ris)
res.send({ code: server_constants.RIS_CODE_OK, flotta: ris.flotta, arrdonatori: ris.arrdonatori });
else
res.status(400).send(e);
});
router.post('/getdoninavi', authenticate, async (req, res) => {
const idapp = req.body.idapp;
const ricalcola = req.body.ricalcola;
@@ -185,7 +256,7 @@ router.post('/getdoninavi', authenticate, async (req, res) => {
if (showall)
arrnavi = await NavePersistente.findAllIdApp(idapp);
else
arrnavi = await NavePersistente.find({idapp, date_gift_chat_open: { $gte: tools.IncDateNow(-1000 * 3600 * 24 * 7 ) } }).sort({ riga: 1, col: 1 });
arrnavi = await NavePersistente.find({idapp, date_gift_chat_open: { $gte: tools.IncDateNow(-1000 * 3600 * 24 * 10 ) } }).sort({ riga: 1, col: 1 });
let test = false;
@@ -201,6 +272,7 @@ router.post('/getdoninavi', authenticate, async (req, res) => {
}
} else {
// arrnavi = await NavePersistente.findAllIdApp(idapp);
let index = 1;
for (nave of arrnavi) {
if (nave.provvisoria || nave.DoniTotali !== nave.DoniConfermati) {
nave._doc.rec = await Nave.getNaveByRigaCol(idapp, nave.riga1don, nave.col1don);
@@ -214,8 +286,13 @@ router.post('/getdoninavi', authenticate, async (req, res) => {
nave._doc.rec = {};
nave._doc.rec.donatore = {};
nave._doc.rec.donatore.navepersistente = await NavePersistente.findByRigaColByDonatore(idapp, rigapos, colpos, tools.Placca.SONOFUOCO);
index++;
}
if (index > 8 * 6 ) {
break;
}
}
}
ris = { arrnavi };