- fix: "Circuito RIS {nomecircuito}" uniformati tutti quanti.

- fix Strette di mano dicitura.
- poter vedere e cliccare sul gruppo telegram della provincia (dalla lista dei circuiti).
This commit is contained in:
Surya Paolo
2024-04-25 23:26:16 +02:00
parent c79f6e8cc6
commit 7773c2a87b
11 changed files with 235 additions and 13 deletions

View File

@@ -253,7 +253,7 @@ CircuitSchema.statics.findAllIdApp = async function (idapp) {
CircuitSchema.statics.isCircuitAdmin = async function (idrec, username) {
const Circuit = this;
const mycirc = await Circuit.findOne({ _id: idrec }).lean();
if (mycirc) {
return mycirc.admins.some(admin => admin.username === username);
@@ -1315,7 +1315,7 @@ CircuitSchema.statics.CheckTransazioniCircuiti = async function (correggi) {
// CORREGGI DUPLICATI NEI CIRCUITI
for (const user of usersWithDuplicateCircuits) {
// Troviamo l'utente dal suo _id e aggiorniamo il suo documento
const arraycirc = await User.findOne({_id: user._id}).lean();
const arraycirc = await User.findOne({ _id: user._id }).lean();
let risdel = await User.updateOne(
{ _id: user._id },
@@ -1544,6 +1544,99 @@ CircuitSchema.statics.CheckTransazioniCircuiti = async function (correggi) {
};
CircuitSchema.statics.replaceAllCircuitNames = async function (idapp) {
const Circuit = this;
const { City } = require('../models/city');
const { Province } = require('../models/province');
const { MyGroup } = require('../models/mygroup');
const { User } = require('../models/user');
const myfind = { idapp };
let circuits = [];
try {
circuits = await Circuit.find(myfind);
let quanti = 0;
for (const circuit of circuits) {
if (!circuit || !circuit._id) {
console.error('Error: circuit is null or has no _id property');
continue;
}
const circuitId = circuit._id;
let provincia = '';
if (circuit.idCity && circuit.idCity.length > 0) {
provincia = await City.getProvinceByIdCity(circuit.idCity[0]);
}
if (!provincia)
provincia = circuit.strProv;
if (provincia) {
provincia = await Province.getStrProvinceByProv(provincia);
}
if (!provincia) {
console.log('PROVINCIA NON ESISTENTE !', circuit.name);
}
let path = '';
if (!circuit.showAlways) {
let newname = 'Circuito RIS ' + provincia;
// Se newname contiene 'ROMA', allora non aggiorna
if (circuit.name == 'RIS Roma Sud Est ' || circuit.name === 'Circuito RIS Roma Sud Est') {
newname = 'Circuito RIS Roma Sud Est';
} else if (circuit.name == 'Circuito RIS Roma Sud e Litora') {
newname = 'Circuito RIS Roma Sud e Litora';
} else if (circuit.name.trim() === 'RISO Roma Nord' || circuit.name.trim() === 'Circuito RISO Roma Nord') {
newname = 'Circuito RIS Roma Nord';
/* } else if (circuit.name == 'Circuito RIS Benevento' || circuit.name == 'Circuito RIS Campania') {
newname = 'Circuito RIS Campania';
path = 'riscampania'; */
} else if (circuit.name == 'Circuito RIS Milano Est') {
newname = 'Circuito RIS Milano Est';
} else if (circuit.name == 'Circuito RIS Repubblica di San Marino') {
newname = 'Circuito RIS Repubblica di San Marino';
}
if (((newname !== circuit.name) && (newname.indexOf('ROMA') === -1)) || path) {
console.log(`Sostituisci ${circuit.name} con ${newname}`);
quanti++;
if (path) {
// Update path
await Circuit.findOneAndUpdate({ _id: circuitId }, { $set: { path } })
.catch(e => console.error('Err ', e));
}
await Circuit.findOneAndUpdate({ _id: circuitId }, { $set: { name: newname } })
.catch(e => console.error('Err ', e));
// Rename profile.mycircuits.circuitname in User
await User.renameCircuitName(idapp, circuit.name, newname)
.catch(e => console.error('Err ', e));
await MyGroup.renameCircuitName(idapp, circuit.name, newname)
.catch(e => console.error('Err ', e));
}
}
}
console.log('Circuiti aggiornati: ' + quanti);
} catch (e) {
console.error('Err ', e);
return;
}
};
CircuitSchema.statics.addMovementByOrdersCart = async function (ordersCart, usernameDest, groupDest) {
const { User } = require('../models/user');