- Add New Record directly by the QSelect
This commit is contained in:
@@ -339,63 +339,81 @@ router.post('/settable', authenticate, (req, res) => {
|
||||
|
||||
mydata.idapp = req.user.idapp;
|
||||
|
||||
if ((!User.isAdmin(req.user.perm) && !User.isManager(req.user.perm) &&
|
||||
!User.isEditor(req.user.perm) && !User.isTutor(req.user.perm)) &&
|
||||
!tools.ModificheConsentite(params.table, fieldsvalue)) {
|
||||
// If without permissions, exit
|
||||
return res.status(404).
|
||||
send({code: server_constants.RIS_CODE_ERR_UNAUTHORIZED, msg: ''});
|
||||
}
|
||||
let consentito = false;
|
||||
|
||||
if (shared_consts.TABLES_USER_ID.includes(params.table)) {
|
||||
mydata.userId = req.user._id;
|
||||
}
|
||||
|
||||
delete mydata['__v'];
|
||||
delete mydata['__proto__'];
|
||||
|
||||
let mytablerec = new mytable(mydata);
|
||||
// console.log('mytablerec', mytablerec);
|
||||
|
||||
const mytablestrutt = getTableByTableName(params.table);
|
||||
|
||||
if (mydata['_id'] !== undefined && mydata['_id'] !== 0) {
|
||||
mytablerec.isNew = false;
|
||||
}
|
||||
|
||||
if (shared_consts.TABLES_ID_NUMBER.includes(params.table)) {
|
||||
} else if (params.table === 'hours') {
|
||||
|
||||
} else {
|
||||
if (mydata['_id'] === undefined) {
|
||||
mydata._id = new ObjectID();
|
||||
try {
|
||||
if (User.isAdmin(req.user.perm) || User.isManager(req.user.perm) ||
|
||||
User.isEditor(req.user.perm) || User.isTutor(req.user.perm)) {
|
||||
consentito = true;
|
||||
}
|
||||
}
|
||||
|
||||
return mytablerec.save().then(rec => {
|
||||
// tools.mylog('rec', rec);
|
||||
return res.send(rec);
|
||||
if ((!User.isAdmin(req.user.perm) && !User.isManager(req.user.perm) &&
|
||||
!User.isEditor(req.user.perm) && !User.isTutor(req.user.perm)) &&
|
||||
!tools.ModificheConsentite(params.table, fieldsvalue)) {
|
||||
// If without permissions, exit
|
||||
return res.status(404).
|
||||
send({code: server_constants.RIS_CODE_ERR_UNAUTHORIZED, msg: ''});
|
||||
}
|
||||
|
||||
}).catch((e) => {
|
||||
if (e.code === 11000) {
|
||||
const id = mytablerec._id;
|
||||
delete mytablerec._doc['_id'];
|
||||
const myfields = mytablerec._doc;
|
||||
if (!myfields.userId) {
|
||||
myfields.userId = req.user._id.toString();
|
||||
if (shared_consts.TABLES_USER_ID.includes(params.table)) {
|
||||
mydata.userId = req.user._id;
|
||||
}
|
||||
|
||||
if (shared_consts.TABLES_PERM_NEWREC.includes(params.table)) {
|
||||
if (!consentito) {
|
||||
mydata.verifyrec = false;
|
||||
}
|
||||
return mytablestrutt.findByIdAndUpdate(id, {$set: myfields}).
|
||||
then(async (rec) => {
|
||||
return res.send(rec);
|
||||
}).
|
||||
catch((err) => {
|
||||
tools.mylog('error: ', err.message);
|
||||
return res.status(400).send(err);
|
||||
});
|
||||
} else {
|
||||
console.log(e.message);
|
||||
}
|
||||
});
|
||||
|
||||
delete mydata['__v'];
|
||||
delete mydata['__proto__'];
|
||||
|
||||
let mytablerec = new mytable(mydata);
|
||||
// console.log('mytablerec', mytablerec);
|
||||
|
||||
const mytablestrutt = getTableByTableName(params.table);
|
||||
|
||||
if (mydata['_id'] !== undefined && mydata['_id'] !== 0) {
|
||||
mytablerec.isNew = false;
|
||||
}
|
||||
|
||||
if (shared_consts.TABLES_ID_NUMBER.includes(params.table)) {
|
||||
} else if (params.table === 'hours') {
|
||||
|
||||
} else {
|
||||
if (mydata['_id'] === undefined) {
|
||||
mydata._id = new ObjectID();
|
||||
}
|
||||
}
|
||||
|
||||
return mytablerec.save().then(rec => {
|
||||
// tools.mylog('rec', rec);
|
||||
return res.send(rec);
|
||||
|
||||
}).catch((e) => {
|
||||
if (e.code === 11000) {
|
||||
const id = mytablerec._id;
|
||||
delete mytablerec._doc['_id'];
|
||||
const myfields = mytablerec._doc;
|
||||
if (!myfields.userId) {
|
||||
myfields.userId = req.user._id.toString();
|
||||
}
|
||||
return mytablestrutt.findByIdAndUpdate(id, {$set: myfields}).
|
||||
then(async (rec) => {
|
||||
return res.send(rec);
|
||||
}).
|
||||
catch((err) => {
|
||||
tools.mylog('error: ', err.message);
|
||||
return res.status(400).send(err);
|
||||
});
|
||||
} else {
|
||||
console.log(e.message);
|
||||
}
|
||||
});
|
||||
|
||||
}catch (e) {
|
||||
return res.status(400).send(e);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
@@ -1653,13 +1671,19 @@ function uploadFile(req, res, version) {
|
||||
|
||||
// Salva le immagini in formato compresso
|
||||
(async () => {
|
||||
await resizer(newname, setup_image_compress);
|
||||
try {
|
||||
const ris = await resizer(newname, setup_image_compress);
|
||||
|
||||
tools.delete(newname, false, () => {})
|
||||
if (ris) {
|
||||
tools.delete(newname, false, () => {})
|
||||
|
||||
tools.move(resized_img, newname, (err) => {
|
||||
tools.move(resized_img, newname, (err) => {
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
}catch (e) {
|
||||
console.error('newname', e);
|
||||
}
|
||||
|
||||
})();
|
||||
res.end();
|
||||
|
||||
Reference in New Issue
Block a user